Key Extraction · API v3

คู่มือย้ายเวอร์ชัน: v1 ไป v3

Key Extraction v3 แทนที่ v1 sync สำหรับงาน production ที่ต้องการ schema ชัดเจน และ bounding box ต่อฟิลด์โดยไม่ต้องเลือกโมเดลพิเศษ

แผนที่รุ่น

รุ่นEndpoint หลักสไตล์bbox
Key Extraction v1POST /api/v1/key-extractsyncมีเมื่อ model=aksonocr1.5 — พิกัดเป็นพิกเซล
OCR v3 extractorPOST /api/v3/ocrasync jobยังไม่คืนตำแหน่งบนเอกสาร
Key Extraction v3POST /api/v3/key-extract/jobsasync 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