Ocriva Logo

Documents

ความสามารถของแพลตฟอร์ม

ภาพรวมฟีเจอร์ครบวงจรของแพลตฟอร์ม DAT ตั้งแต่การรับเข้าไปจนถึงการ Integration

featurescapabilitiesplatform

Published: 3/31/2026

ความสามารถของแพลตฟอร์ม

ภาพรวมฟีเจอร์ครบวงจร

Ocriva ถูกจัดระเบียบตามห้าขั้นตอนของ Pipeline Document Automation Transformer (DAT): Ingest, Extract, Transform, Automate และ Integrate หน้านี้จัดทำเอกสารความสามารถหลักทุกอย่าง จัดเรียงตามขั้นตอนที่เกี่ยวข้อง


ขั้นตอนที่ 1: Ingest (รับเข้า)

ขั้นตอน Ingest จัดการการรับเอกสาร — รับไฟล์จากทุกที่ที่มาของเอกสารและเตรียมพร้อมสำหรับการประมวลผล

อัปโหลดไฟล์เดียว

  • Interface ลากวางใน Web Application
  • เลือกไฟล์โดยคลิก
  • ยืนยันการอัปโหลดทันทีพร้อม Preview ไฟล์
  • รูปแบบที่รองรับ: PDF, JPG, PNG, WebP, BMP

Batch Upload

  • อัปโหลดสูงสุด 50 ไฟล์ในการ Submit ครั้งเดียว
  • ลากวางหลายไฟล์พร้อมกัน
  • ติดตามสถานะต่อไฟล์ระหว่าง Batch Upload
  • Queue อัตโนมัติสำหรับ Batch Processing
  • Export รวมเมื่อ Batch เสร็จสมบูรณ์

API Upload

  • REST API Endpoint สำหรับการ Submit เอกสารแบบ Programmatic
  • รองรับ multipart/form-data สำหรับการอัปโหลดไฟล์
  • คืนค่า Processing ID สำหรับการติดตามสถานะ
  • ยืนยันตัวตนผ่าน JWT หรือ API Token
  • เอกสาร OpenAPI/Swagger ฉบับเต็มให้ใช้งานได้

การรับเข้าแบบ Webhook-Triggered

  • รับเอกสารจากระบบต้นทางผ่าน Webhook Events
  • Pipeline การประมวลผลแบบ Event-driven
  • ตั้งค่าได้ต่อโปรเจกต์

LINE Integration

  • รับเอกสารผ่านมือถือด้วย LINE Messaging
  • ผู้ใช้ถ่ายรูปเอกสารบนมือถือและส่งผ่าน LINE
  • เอกสารถูก Route ไปยังโปรเจกต์ Ocriva ที่กำหนดค่าโดยอัตโนมัติ
  • สามารถส่งผลลัพธ์กลับมายังบทสนทนา LINE ได้

ขั้นตอนที่ 2: Extract (สกัด)

ขั้นตอน Extract คือจุดที่ AI ประมวลผลเอกสารและระบุข้อมูลที่คุณต้องการ

AI Providers

Ocriva เชื่อมต่อกับ AI ผู้ให้บริการ 6 ราย แต่ละ Template ระบุว่าจะใช้ผู้ให้บริการและโมเดลใด

ผู้ให้บริการโมเดลลักษณะเฉพาะ
OpenAIGPT-4oความแม่นยำทั่วไปดีที่สุด, ทำตามคำสั่งได้ดี
OpenAIGPT-4o-miniเร็วกว่า, ต้นทุนต่ำกว่า, เหมาะสำหรับเอกสารง่ายๆ ปริมาณมาก
Google GeminiGemini 2.0 Flashประมวลผลความเร็วสูง, เก่งด้านการสกัดที่มีโครงสร้าง
Google GeminiGemini 2.5 Proความแม่นยำสูงสุด, รองรับเอกสารยาว
AnthropicClaude Sonnetความเข้าใจละเอียดอ่อน, เอกสารยาว, สัญญา
AnthropicClaude Haikuเร็วและประหยัดต้นทุนสำหรับการสกัดงานประจำ
DeepSeekDeepSeek V3การสกัดทั่วไปประหยัดต้นทุน
DeepSeekDeepSeek R1เสริมด้วย Reasoning สำหรับเอกสารที่ซับซ้อน
QwenQwen VLโมเดล Visual-Language ที่รองรับอักษรเอเชียได้ดี
KimiMoonshot Visionความเข้าใจเอกสาร Context ยาว

TIP

เลือก AI Provider ตามสมดุลระหว่างความแม่นยำและต้นทุน — GPT-4o แม่นที่สุด ส่วน GPT-4o-mini และ Gemini Flash คุ้มค่าสำหรับเอกสารทั่วไป

TIP

เลือกโมเดลตามความต้องการ ระหว่างความแม่นยำกับต้นทุน เช่น ใช้ GPT-4o สำหรับงานสำคัญ และ Gemini Flash หรือ DeepSeek สำหรับงานปริมาณมากที่งบจำกัด

รองรับหลายภาษา

  • ภาษาไทยและภาษาอังกฤษในเอกสารเดียวกัน จัดการในการผ่านการสกัดครั้งเดียว
  • ไม่ต้อง Configuration ภาษาแยกกัน
  • การรู้จำตัวอักษรไทย รวมถึงตัวแปรลายมือที่พบบ่อย
  • เอกสารหลายภาษา (เช่น ใบแจ้งหนี้ไทยที่มีรหัสสินค้าภาษาอังกฤษ) สกัดได้แม่นยำ

โหมดการสกัด

การสกัดแบบมีโครงสร้าง (JSON Schema)

กำหนด JSON Schema ใน Template Ocriva สั่ง AI ให้คืนข้อมูลที่ตรงกับ Schema Output เป็น JSON ที่ถูกต้องและมีประเภทข้อมูลเสมอ

ตัวอย่าง Schema:

{
  "invoice_number": "string",
  "vendor_name": "string",
  "total_amount": "number",
  "due_date": "date",
  "line_items": [
    {
      "description": "string",
      "quantity": "number",
      "unit_price": "number"
    }
  ]
}

การสกัดแบบข้อความอิสระ

ให้ Prompt อธิบายสิ่งที่ต้องการสกัด AI คืนการตอบสนองเป็นข้อความ มีประโยชน์สำหรับสรุป, การวิเคราะห์สัญญา หรือการสกัดใดๆ ที่ไม่ Map กับ Schema ตายตัว

Templates

Template คือ Configuration การสกัดที่นำมาใช้ซ้ำได้ เมื่อสร้างแล้ว Template ประมวลผลทุกเอกสารในประเภทเดิมในวิธีเดิม

แต่ละ Template กำหนด:

  • ชื่อ Template — สำหรับการระบุตัวตน
  • AI Provider และโมเดล — จะใช้ AI อะไร
  • โหมดการสกัด — JSON Schema ที่มีโครงสร้างหรือข้อความอิสระ
  • Prompt / คำสั่ง — จะสกัดอะไรและจัดการกรณีขอบอย่างไร
  • รูปแบบ Output — รูปแบบปลายทางสำหรับผลลัพธ์
  • การ Assign โปรเจกต์ — โปรเจกต์ใดที่ Template นี้อยู่

Preset Templates

Ocriva มี Preset Template 19 ตัวสำหรับประเภทเอกสารทั่วไป:

หมวดหมู่Templates
การเงินใบแจ้งหนี้, ใบกำกับภาษี, ใบเสร็จ, ใบสั่งซื้อ, รายงานค่าใช้จ่าย
บัตรประจำตัวบัตรประจำตัวประชาชนไทย, หนังสือเดินทาง, ใบขับขี่
กฎหมายสรุปสัญญา, สัญญาไม่เปิดเผยข้อมูล
HRประวัติ CV, หนังสือรับรองการทำงาน, สลิปเงินเดือน
โลจิสติกส์ป้ายจัดส่ง, ใบตราส่งสินค้า, ใบขนสินค้า
การแพทย์ใบรับรองแพทย์, ใบสั่งยา, รายงานผลตรวจ
การศึกษาผลการเรียน, ใบรับรองการสำเร็จการศึกษา

Custom Templates

สร้าง Custom Template สำหรับประเภทเอกสารที่ Preset ไม่ครอบคลุม:

  • กำหนด Schema ฟิลด์ใดก็ได้สำหรับประเภทเอกสารใดก็ได้
  • เขียนคำสั่ง AI แบบ Custom ที่เหมาะกับเอกสารเฉพาะของคุณ
  • ตั้งค่ากฎ Normalization (รูปแบบวันที่, รูปแบบตัวเลข, ลำดับชื่อ)
  • ทดสอบการสกัดบนตัวอย่างเอกสารก่อน Deploy
  • ปรับปรุงตามประวัติการสกัด

Data Files (RAG)

แนบเอกสารอ้างอิงกับ Template เพื่อปรับปรุงความแม่นยำการสกัด:

  • อัปโหลดคำศัพท์เฉพาะบริษัท, ข้อตกลงการกำหนดหมายเลข หรือหนังสือรหัส
  • AI ใช้เอกสารอ้างอิงเหล่านี้เป็นบริบทระหว่างการสกัด
  • มีประโยชน์สำหรับประเภทเอกสารภายในที่มีข้อตกลงขององค์กร
  • ไฟล์ถูก Scope ต่อ Template ไม่แชร์ข้าม Template

ขั้นตอนที่ 3: Transform (แปลง)

ขั้นตอน Transform แปลงข้อมูลที่สกัดมาเป็นรูปแบบที่ระบบปลายทางของคุณต้องการ

รูปแบบ Output

รูปแบบคำอธิบายเหมาะสำหรับ
JSONOutput Key-value ที่มีโครงสร้างพร้อมรองรับ Nesting เต็มรูปแบบAPI Integration, ฐานข้อมูล, การประมวลผลแบบ Programmatic
CSVไฟล์ Flat ตารางพร้อมรองรับการจัดลำดับคอลัมน์สเปรดชีต, Data Pipeline, การนำเข้า Analytics
PDFรายงานที่จัดรูปแบบแล้วพร้อมฟิลด์ที่สกัดมาตรวจสอบโดยมนุษย์, จัดเก็บ, Audit Trail
DOCXWord Document ที่แก้ไขได้Workflow ตรวจสอบ, การ Annotate, การแก้ไข
XMLMarkup ที่มีโครงสร้างพร้อมลำดับชั้น Elementระบบ Enterprise เก่า, EDI Integration
HTMLผลลัพธ์ที่จัดรูปแบบสำหรับเว็บการแสดงผลบนเว็บ, ฝังใน Email
TextOutput ข้อความธรรมดาPipeline ง่ายๆ, Logging, Debugging

การตั้งค่า CSV

  • ตั้งค่าลำดับคอลัมน์สำหรับ CSV Export
  • Map ชื่อฟิลด์ที่สกัดมากับชื่อคอลัมน์ Custom
  • เลือก Delimiter (จุลภาค, เซมิโคลอน, Tab)
  • Batch CSV รวม Rows จากหลายเอกสารเป็นไฟล์เดียว

โหมดการสร้างรูปภาพ

  • สร้างการแสดงภาพของข้อมูลที่สกัดมาซ้อนทับบนเอกสารต้นฉบับ
  • มีประโยชน์สำหรับ Workflow ตรวจสอบที่ต้องการเก็บเอกสารที่ Annotate ไว้คู่กับ Record
  • Output เป็นรูปภาพหรือ PDF

Batch Export

  • ประมวลผล 50 เอกสารใน Batch และ Export ผลลัพธ์ทั้งหมดเป็นไฟล์เดียว
  • JSON Array รวม, CSV รวม หรือไฟล์แยกต่อเอกสาร
  • ตั้งค่าได้ในระดับ Template

ขั้นตอนที่ 4: Automate (อัตโนมัติ)

ขั้นตอน Automate จัดการปริมาณ, กำหนดเวลา และความน่าเชื่อถือ — เปลี่ยนการประมวลผลเอกสารให้กลายเป็น Infrastructure ในการปฏิบัติงาน

Batch Processing

  • Submit สูงสุด 50 เอกสารใน Batch เดียว
  • ติดตามความคืบหน้าแบบเรียลไทม์: แต่ละเอกสารแสดงสถานะ pending, in_progress, completed หรือ failed
  • การประมวลผลแบบขนาน — หลายเอกสารถูกประมวลผลพร้อมกัน
  • สรุปสถานะระดับ Batch: จำนวนทั้งหมด, จำนวนเสร็จ, จำนวนล้มเหลว
  • UI Live Update ด้วย WebSocket — ไม่ต้อง Refresh หน้า

Processing Queue

  • เอกสารทุกฉบับเข้าสู่ Queue ที่จัดการได้เมื่อ Submit
  • Queue ประมวลผลตามลำดับพร้อม Concurrency ที่ตั้งค่าได้
  • Retry อัตโนมัติเมื่อเกิดความล้มเหลวชั่วคราว
  • เอกสารที่ล้มเหลวถูกตั้งค่าสถานะพร้อมรายละเอียดข้อผิดพลาดสำหรับการตรวจสอบ
  • สถานะ Queue มองเห็นได้ใน Web Interface และผ่าน API

Processing History

  • ทุกเอกสารที่ประมวลผลผ่าน Ocriva มีบันทึกประวัติถาวร
  • บันทึกประกอบด้วย: เอกสารต้นฉบับ, Template ที่ใช้, โมเดล AI ที่ใช้, สถานะ, Timestamps, ข้อมูลผลลัพธ์
  • Filter และค้นหาประวัติตามโปรเจกต์, Template, สถานะ, ช่วงวันที่
  • ประมวลผลซ้ำเอกสารประวัติใดก็ได้ด้วย Template เดิมหรือที่อัพเดทแล้ว
  • Export บันทึกประวัติสำหรับ Audit หรือการรายงาน

ระบบ Credits

  • การประมวลผลแต่ละเอกสารใช้ Credits ตามความซับซ้อนของเอกสารและโมเดล AI ที่ใช้
  • ซื้อ Credits ล่วงหน้าผ่าน Stripe
  • แสดง Credit Balance แบบเรียลไทม์ใน Web Interface
  • การแจ้งเตือน Balance ต่ำตั้งค่าได้ต่อองค์กร
  • ประวัติการใช้ Credit อย่างละเอียดแยกตามโปรเจกต์, Template และ AI Provider
  • การใช้ Credit ตรวจสอบได้: แต่ละ Processing Record แสดง Credit ที่ใช้ไป

WARNING

แต่ละครั้งที่ประมวลผลจะหัก Credits ตรวจสอบ Credit Balance ก่อนรัน Batch ขนาดใหญ่ และตั้งค่าการแจ้งเตือน Balance ต่ำเพื่อไม่ให้งานหยุดชะงัก

ลำดับชั้น Organization → Project → Template

Organization (หน่วย Billing, การจัดการทีม)
└── Project (การจัดกลุ่มตรรกะสำหรับ Use Case หรือแผนก)
    ├── Templates (Configuration การสกัด)
    ├── Processing History
    ├── Webhooks
    └── API Tokens
  • หลาย Organization ต่อบัญชี (สำหรับ Agency หรือบริษัทที่มีหลายนิติบุคคล)
  • หลาย Project ต่อ Organization (การเงิน, HR, โลจิสติกส์ ฯลฯ)
  • หลาย Template ต่อ Project (เครื่องมือสกัดใบแจ้งหนี้, เครื่องสแกนใบเสร็จ ฯลฯ)
  • Billing และ Credits จัดการในระดับ Organization

การติดตามสถานะ

บันทึกการประมวลผลเอกสารทุกฉบับมีสถานะใดสถานะหนึ่งใน 4 สถานะ:

สถานะความหมาย
pendingรับเอกสารแล้ว รอใน Queue
in_progressAI กำลังประมวลผลเอกสารอยู่
completedสกัดสำเร็จ ผลลัพธ์พร้อมใช้งาน
failedการประมวลผลล้มเหลว รายละเอียดข้อผิดพลาดพร้อมใช้งาน

WARNING

ทุกครั้งที่ประมวลผลเอกสารจะหัก Credits ติดตามยอดคงเหลือใน Dashboard และตั้งการแจ้งเตือนก่อน Credits หมด


ขั้นตอนที่ 5: Integrate (เชื่อมต่อ)

ขั้นตอน Integrate ส่งผลลัพธ์ไปยังระบบที่ต้องการโดยอัตโนมัติ

REST API

  • CRUD API เต็มรูปแบบสำหรับทรัพยากร Ocriva ทั้งหมด
  • Endpoints สำหรับ: Organizations, Projects, Templates, Uploads, Processing History, Analytics
  • ยืนยันตัวตนผ่าน JWT (ตาม Session) หรือ API Tokens (Service-to-service)
  • Paginated List Endpoints พร้อม Filtering และ Sorting
  • OpenAPI 3.0 Specification ที่ /api/docs
  • Swagger UI สำหรับการสำรวจ API แบบ Interactive

API Tokens

  • สร้าง API Tokens ต่อโปรเจกต์สำหรับการ Integration ภายนอก
  • Token ถูก Scope ไปยังโปรเจกต์เฉพาะ
  • หลาย Token ต่อโปรเจกต์ (หนึ่งต่อการ Integration)
  • Token สามารถ Revoke ได้โดยไม่กระทบการ Integration อื่น

Webhooks

ตั้งค่า Webhook Endpoints เพื่อรับการแจ้งเตือน Event เมื่อเหตุการณ์การประมวลผลเกิดขึ้น

Events ที่รองรับ:

EventTriggered เมื่อ
document.uploadedรับเอกสารและ Queue แล้ว
document.processedเอกสารเสร็จสมบูรณ์หรือล้มเหลว
batch.completedเอกสารทั้งหมดใน Batch ถูกประมวลผลแล้ว

โครงสร้าง Webhook Payload:

{
  "event": "document.processed",
  "timestamp": "2026-03-31T10:15:00Z",
  "organizationId": "org_xyz",
  "projectId": "proj_abc",
  "processingId": "proc_123",
  "status": "completed",
  "result": {
    "fields": { ... },
    "format": "json"
  }
}
  • Webhook มี Signature Header สำหรับการยืนยัน Payload
  • การส่ง Webhook ที่ล้มเหลวถูก Retry ด้วย Exponential Backoff
  • ประวัติและสถานะการส่งมองเห็นได้ต่อ Webhook

IMPORTANT

Webhook มีระบบ retry อัตโนมัติเมื่อ Endpoint ปลายทางตอบสนองไม่ได้ ควรตรวจสอบ Webhook Signature ทุกครั้งเพื่อยืนยันว่า Payload มาจาก Ocriva จริง

WebSocket Real-Time Notifications

  • เชื่อมต่อผ่าน Socket.IO สำหรับ Processing Events แบบเรียลไทม์
  • อัพเดทสถานะการประมวลผล Push ไปยัง Client ที่เชื่อมต่อตามที่เกิดขึ้น
  • Batch Progress Events Streamed แบบ Live
  • อัพเดท Credit Balance Push แบบเรียลไทม์
  • ไม่ต้อง Polling — UI อัพเดทอัตโนมัติ

LINE Integration

  • เชื่อมต่อ Ocriva กับ LINE Official Account
  • ผู้ใช้ส่งรูปถ่ายเอกสารโดยตรงผ่าน LINE
  • เอกสารถูกประมวลผลตาม Default Template ของโปรเจกต์
  • สามารถส่งผลลัพธ์กลับมายังบทสนทนา LINE ได้ (ตั้งค่าได้)
  • มีประโยชน์สำหรับ Workflow ที่ใช้มือถือเป็นหลัก: พนักงานภาคสนาม, พนักงานส่งของ, ปฏิบัติการสาขา

Notifications

  • การแจ้งเตือนใน App สำหรับการเสร็จสมบูรณ์ของการประมวลผล, ข้อผิดพลาด และการแจ้งเตือน Credit
  • การแจ้งเตือนทาง Email สำหรับการเสร็จสมบูรณ์ของ Batch และคำเตือน Credit ต่ำ
  • การแจ้งเตือน LINE Push สำหรับบัญชีที่เชื่อมต่อ
  • Preferences การแจ้งเตือนตั้งค่าได้ต่อผู้ใช้

เอกสาร OpenAPI / Swagger

  • เอกสาร API แบบ Interactive ที่ /api/docs
  • Schema Request/Response ครบวงจรสำหรับทุก Endpoint
  • Authentication ถูก Integrate เข้ากับ Swagger UI
  • ดาวน์โหลด OpenAPI Spec สำหรับการสร้างโค้ดหรือเครื่องมือ API Client

Security และการควบคุมการเข้าถึง

  • JWT Authentication — Auth ตาม Session สำหรับผู้ใช้ Web Application
  • API Token Authentication — Auth ตาม Token สำหรับการ Integration แบบ Programmatic
  • Data Isolation ระดับ Organization — Organization ไม่สามารถเข้าถึงข้อมูลของกันและกัน
  • Scope ระดับ Project — API Tokens ถูก Scope ไปยังโปรเจกต์เดียว
  • httpOnly Cookies — Session Token เก็บใน httpOnly Cookies ไม่สามารถเข้าถึงได้จาก JavaScript
  • Input Validation — Input ของ API ทั้งหมดถูก Validate ด้วย class-validator (NestJS)
  • Webhook Signature Verification — Payload ถูกลงนามด้วย HMAC เพื่อยืนยันความถูกต้อง