แยกเนื้อหาข้อความผ่าน NextPDF Connect (Pro)
ภาพรวมโดยย่อ
หัวข้อที่มีชื่อว่า “ภาพรวมโดยย่อ”ใช้ extract_text เพื่อแยกข้อความจาก PDF ที่มีอยู่สำหรับการทำดัชนี การวิเคราะห์ หรือการประมวลผลขั้นถัดไป ผู้ให้บริการเครื่องมือระดับ Pro จะลงทะเบียน new ExtractTextTool() ภายใต้ชื่อโปรโตคอล extract_text และหน้านี้ยืนยันการผูกดังกล่าวอีกครั้ง extract_text เป็นเครื่องมือระดับ Pro ขณะเซิร์ฟเวอร์บูต ระบบจะตรวจสอบด้วย class_exists() และลงทะเบียนเครื่องมือนี้เฉพาะเมื่อมีการติดตั้งแพ็กเกจ Pro แล้วเท่านั้น คุณสามารถร้องขอเอาต์พุตแบบธรรมดา ช่วงหน้า หรือเอาต์พุตแบบมีโครงสร้างที่แบ่งตามหน้าได้
การติดตั้ง
หัวข้อที่มีชื่อว่า “การติดตั้ง”composer require nextpdf/servercomposer require nextpdf/proก่อนพึ่งพาเครื่องมือนี้ ให้ผูก transport และตรวจยืนยันด้วย diagnostic.capabilities
ภาพรวมเชิงแนวคิด
หัวข้อที่มีชื่อว่า “ภาพรวมเชิงแนวคิด”การแยกข้อความจะอ่านโอเปอเรเตอร์แสดงข้อความจากสตรีมเนื้อหาตามลำดับของสตรีม (ISO 32000-2 §9.4) เอาต์พุตจะสะท้อนลำดับการอ่านที่ เข้ารหัสไว้ (ISO 32000-2 §9.10) PDF ที่สแกนมาและไม่มีชั้นข้อความจะคืนข้อความเพียงเล็กน้อยหรือไม่คืนข้อความเลย ลักษณะนี้สะท้อนสภาพไฟล์ต้นทาง ไม่ใช่ข้อบกพร่องของเครื่องมือ format: "plain" จะคืนค่าเป็นสตริงเดียว format: "structured" จะคืนค่าเป็นออบเจ็กต์รายหน้าพร้อมจำนวนอักขระ page_range จะจำกัดหน้าที่ประมวลผล
ขอบเขต API
หัวข้อที่มีชื่อว่า “ขอบเขต API”| เครื่องมือ | ระดับ | บทบาท | ระดับความเสี่ยง |
|---|---|---|---|
extract_text | Pro | แยกข้อความ (plain / structured / range) | ปลอดภัย |
parse_pdf | Core (ควบคุมด้วยตัวแปรสภาพแวดล้อม) | โครงสร้างระดับล่าง (จำนวนหน้า, metadata) | ปลอดภัย |
ชื่อเครื่องมือคือชื่อโปรโตคอลในรีจิสทรี แคตตาล็อกเครื่องมือ คือแคตตาล็อกอ้างอิงที่เป็นทางการ เครื่องมือที่ใช้ได้ขึ้นอยู่กับระดับที่ติดตั้ง
ตัวอย่างโค้ด — เริ่มต้นใช้งานอย่างรวดเร็ว
หัวข้อที่มีชื่อว่า “ตัวอย่างโค้ด — เริ่มต้นใช้งานอย่างรวดเร็ว”extract_textที่มีsource(พาธที่เซิร์ฟเวอร์อ่านได้) และformat: "plain"extract_textที่มีpage_range: "1-3"สำหรับชุดย่อยextract_textที่มีformat: "structured"สำหรับเอาต์พุตที่แบ่งตามหน้า
ตัวอย่างโค้ด — การใช้งานจริง
หัวข้อที่มีชื่อว่า “ตัวอย่างโค้ด — การใช้งานจริง”ใช้ parse_pdf (หรือ extract_text ก่อนหน้าที่ไม่จำกัดช่วง) เพื่อหาจำนวนหน้าก่อนร้องขอช่วง สำหรับ retrieval-augmented generation (RAG) หรือการทำดัชนี ควรเลือกใช้ format: "structured" เพื่อให้แต่ละหน้าถูกแบ่งเป็นส่วนข้อมูลอิสระ สำหรับต้นทางที่เข้ารหัสลับไว้ ให้ระบุพารามิเตอร์ password จำนวนอักขระคือจำนวน code point ของ UTF-8 ไม่ใช่จำนวนไบต์
กรณีพิเศษและข้อควรระวัง
หัวข้อที่มีชื่อว่า “กรณีพิเศษและข้อควรระวัง”- ไม่พบต้นทาง พาธที่ไม่ถูกต้องจะคืนข้อผิดพลาดว่าไม่พบไฟล์ ให้ใช้พาธแบบสัมบูรณ์ที่เซิร์ฟเวอร์อ่านได้
- PDF ที่สแกนมา หากไม่มีชั้นข้อความ การแยกข้อความจะคืนข้อความว่างหรือแทบไม่มีข้อความ ให้เรียกใช้ optical character recognition (OCR) กับต้นทางก่อน
- หน้าที่อยู่นอกช่วง ช่วงที่เกินขอบเขตของเอกสารจะถูกปฏิเสธพร้อมแจ้งจำนวนหน้าที่แท้จริง
- ต้นทางที่เข้ารหัสลับ ให้ระบุพารามิเตอร์ password
- ไม่มี Pro เมื่อมีเฉพาะ Core
extract_textจะไม่ถูกลงทะเบียน ตรวจสอบด้วยdiagnostic.capabilities
ประสิทธิภาพ
หัวข้อที่มีชื่อว่า “ประสิทธิภาพ”ภาระของการแยกข้อความจะเพิ่มตามขนาดเอกสาร และงบประมาณนี้รองรับอินพุตขนาดใหญ่ได้ โปรไฟล์ของสิ่งที่สร้างขึ้นทุกรายการเป็น structural เนื่องจากเครื่องมือนี้คืนค่าเป็นข้อความ ไม่ใช่ PDF
หมายเหตุด้านความปลอดภัย
หัวข้อที่มีชื่อว่า “หมายเหตุด้านความปลอดภัย”ข้อความที่แยกออกมาอาจมีเนื้อหาที่ละเอียดอ่อน ให้ถือว่าผลลัพธ์เป็นความลับ และส่งคืนผ่านช่องทางที่เชื่อถือได้เท่านั้น เครื่องมือนี้ไม่เขียนลงระบบไฟล์ การอ่านพาธต้นทางจะใช้สิทธิ์ของเซิร์ฟเวอร์ ดังนั้นควรจำกัดพาธที่ผู้เรียกส่งได้
ความสอดคล้องตามมาตรฐาน
หัวข้อที่มีชื่อว่า “ความสอดคล้องตามมาตรฐาน”| ข้อความระบุ | ข้อกำหนด | ข้อ | รหัสอ้างอิง (reference_id) |
|---|---|---|---|
| ข้อความถูกแสดงโดยโอเปอเรเตอร์แสดงข้อความตามลำดับของสตรีม | ISO 32000-2 | §9.4 | |
| การแยกข้อความสะท้อนลำดับการอ่านที่เข้ารหัสไว้ | ISO 32000-2 | §9.10 |
แนวทางนี้ไม่ได้รับรองว่าข้อความที่แยกออกมาจะคงลำดับการอ่านเชิงตรรกะที่ถูกต้องตรงตามต้นฉบับสำหรับเอกสารที่ไม่ได้แท็ก ลำดับดังกล่าวคือลำดับที่เข้ารหัสไว้
บริบทเชิงพาณิชย์
หัวข้อที่มีชื่อว่า “บริบทเชิงพาณิชย์”extract_text เป็นเครื่องมือระดับ Pro ที่จะลงทะเบียนเฉพาะเมื่อแพ็กเกจ Pro resolve ได้ขณะเซิร์ฟเวอร์บูตเท่านั้น
ความพร้อมใช้งานของ transport
หัวข้อที่มีชื่อว่า “ความพร้อมใช้งานของ transport”| ช่องทางส่งข้อมูล (Transport) | ใช้งานได้ | หมายเหตุ |
|---|---|---|
| MCP (stdio) | ใช่ (Pro) | ข้อความขนาดใหญ่จะทำให้เฟรม stdio ขยายตัว |
| REST | ใช่ (Pro) | สตรีมผลลัพธ์ขนาดใหญ่เมื่อรองรับ |
| gRPC | ใช่ (Pro) | ขีดจำกัดขนาดข้อความมีผลกับข้อความขนาดใหญ่ |
ระดับความเสี่ยง HITL
หัวข้อที่มีชื่อว่า “ระดับความเสี่ยง HITL”extract_text เป็นเครื่องมือประเภทปลอดภัย (อ่านอย่างเดียว ไม่มีผลข้างเคียง) และจะไม่ถูกกั้นด้วยขั้นตอนยืนยันใดๆ
ซองข้อมูล JSON ของขั้นตอนยืนยัน
หัวข้อที่มีชื่อว่า “ซองข้อมูล JSON ของขั้นตอนยืนยัน”การแยกข้อความแบบอ่านอย่างเดียวจะไม่ถูกกั้นด้วยขั้นตอนยืนยันใดๆ:
{ "allowed": true }