Key Extraction · API v3
คู่มือย้ายเวอร์ชัน: v1 ไป v3
Key Extraction v3 แทนที่ v1 sync สำหรับงาน production ที่ต้องการ schema ชัดเจน และ bounding box ต่อฟิลด์โดยไม่ต้องเลือกโมเดลพิเศษ
แผนที่รุ่น
| รุ่น | Endpoint หลัก | สไตล์ | bbox |
|---|---|---|---|
| Key Extraction v1 | POST /api/v1/key-extract | sync | มีเมื่อ model=aksonocr1.5 — พิกัดเป็นพิกเซล |
| OCR v3 extractor | POST /api/v3/ocr | async job | ยังไม่คืนตำแหน่งบนเอกสาร |
| Key Extraction v3 | POST /api/v3/key-extract/jobs | async files + jobs | ค่าเริ่มต้น — xyxy normalize 0–1 |
จาก v1 → v3
- แยกเป็นสองขั้น: อัปโหลดที่
/filesแล้วสร้างงานที่/jobsแทนการ POST ไฟล์ตรงไป/api/v1/key-extract - เปลี่ยน
customFields/listConfigเป็น JSON Schema ในdata_schema— อาร์เรย์ของ object คือตาราง - ใส่ header
Idempotency-Keyทุกครั้งที่สร้างงาน - poll
GET /jobs/:idแล้วดึง/resultแยก อย่าคาดหวังผลเต็มในคำตอบสร้างงาน - อ่านค่าจาก
dataไม่ใช่ root ของ response v1 อ่าน bbox จากfield_metadata[pointer].regions[].bbox - พิกัดเปลี่ยนจากพิกเซล
[x1, y1, x2, y2]เป็นค่า 0–1 คูณด้วยpages[].width/heightตอนวาด - ไม่ต้องส่ง
model=aksonocr1.5เพื่อให้ได้ bbox — ส่งoutput.evidence: "bbox"หรือละไว้
v3 ไม่รับ URL หรือ base64 ในตัวงาน ต้องอัปโหลดไฟล์ก่อน ถ้ายังต้องการยิง URL แบบ sync ให้ใช้ v1 ต่อไป แต่ bbox จะมีเฉพาะ aksonocr1.5
จาก OCR v3 extractor
action: extractorคืนstructuredDataแต่ไม่มี bbox- ย้ายมา Key Extract v3 เมื่อต้องการวาดกรอบ ตรวจทาน หรือ audit ต้นทางของแต่ละฟิลด์
templateIdของ OCR v3 ไม่ใช่เทมเพลตเดียวกันกับtemplate.idของ Key Extract v3 — สร้างเทมเพลตใหม่ใน v3
เมื่อไหร่ยังใช้ v1
prototype สั้นๆ ที่ต้องการผลในคำตอบเดียว หรือยังส่งเอกสารผ่าน URL สาธารณะ งาน production ที่ต้องการ bbox ให้ใช้ v3 เป็นค่าเริ่มต้น
อ่านต่อที่ ภาพรวม Key Extraction และ ภาพรวม Full Page OCR