คุณจะได้อะไรเมื่อสกัด annotation จาก PDF?

เอกสารที่มีการทำเครื่องหมายเป็นข้อมูลเช่นเดียวกับหมึก get_annotations tool จะคืนค่าเป็นอ็อบเจ็กต์ JSON ที่มี found (จำนวน) และ annotations (อาเรย์) แต่ละรายการจะมี id, type, message, page (นับจาก 1), กล่องขอบเขต, user และ replies ใด ๆ ไม่มีการแปลงเอกสารหรือ OCR เข้ามาเกี่ยวข้อง ดังนั้นเอเจนต์ทำงานจากบันทึก annotation เอง

เครื่องมือนี้รับเอกสารหนึ่งไฟล์ต่อการเรียกหนึ่งครั้ง หากต้องการครอบคลุมหลายไฟล์ ให้ระบุชื่อไฟล์ในพรอมต์และเอเจนต์จะเรียกเครื่องมือหนึ่งครั้งต่อไฟล์ เซิร์ฟเวอร์ไม่มีการเรียกระดับโฟลเดอร์

วิธีที่ 1: ขอสรุป

การเรียกหนึ่งครั้ง แล้วทำการให้เหตุผล ระบุชื่อไฟล์และบอกว่าต้องการสรุปอะไร

Summarize the review of contract_annotated.pdf: how many comments, from whom, and what the main themes are.

เอเจนต์จะเรียก get_annotations นับจำนวนรายการ แบ่งกลุ่มตาม user และอธิบายธีมที่พบในฟิลด์ message จำนวนและผู้เขียนมาจากข้อมูล ธีมเป็นการอ่านของโมเดล จึงควรให้มนุษย์ตรวจสอบ

วิธีที่ 2: ขอเป็นตารางหรือรายการที่กรองแล้ว

เพราะข้อมูลเป็นโครงสร้าง รูปแบบของรายงานจึงขึ้นกับพรอมต์

Give me a table: page, author, comment, answered yes/no.

Group the comments by reviewer and tell me who has the most open items.

List only the strikeouts. I want to see what people want removed.

Which pages have no comments at all?

คำถามสุดท้ายเป็นสิ่งที่โปรแกรมอ่าน PDF ทำได้ยาก แต่รายการสามารถตอบได้โดยตรง: “answered” คือรายการ replies ที่ไม่ว่างเปล่า และ “pages without comments” คือเลขหน้าที่ไม่มีอยู่ในค่า page สามารถจับคู่กับ get_document_info เพื่อรับจำนวนหน้า

วิธีที่ 3: เก็บคอมเมนต์เป็น XML

Export the annotations so we can keep them with the case file.

export_annotations จะเขียนไฟล์ XML ที่เก็บเฉพาะ annotation เท่านั้น ข้อความสำเร็จจะมีรูปแบบ Exported N annotation(s) from <file> to <name>.annotations.xml ไฟล์นี้มีขนาดเล็กและสามารถ diff ได้ และ import_annotations สามารถนำไปใช้กับสำเนาเอกสารอื่นได้ ช่วยเมื่อเอกสารถูกกำหนดกฎการเก็บรักษาที่คอมเมนต์ไม่ได้อยู่ภายใต้กฎนั้น หรือเมื่อคุณต้องการเปรียบเทียบรอบการรีวิวสองรอบ: การส่งออกสองครั้งของเอกสารเดียวกันคือไฟล์ข้อความสองไฟล์ และเอเจนต์สามารถอธิบายว่ามีอะไรเปลี่ยนแปลงระหว่างสองไฟล์

ตัวอย่างเซสชัน (ย่อ)

นี่เป็นภาพจำลองจากพฤติกรรมที่ระบุของเครื่องมือ ไม่ใช่ภาพหน้าจอที่จับไว้

You:   Summarize the review of contract_annotated.pdf and group it by reviewer.

Agent: [calls get_annotations on contract_annotated.pdf]
       Found 5 annotations: 4 from Maria, 1 from Dana.
       Maria: payment terms (page 2), delivery date (page 5),
         liability cap (page 6), a missing signature block (page 6).
       Replies: Alex answered the page 2 payment terms comment.
       Dana: a strikeout on page 4 marking an outdated clause.
       Maria comments without a reply: page 5 and the two on page 6.

เอเจนต์สามารถทำงานกับคอมเมนต์ได้หรือไม่?

มันสามารถส่งต่อรายการได้: เปิด issue สำหรับคอมเมนต์ที่ยังไม่ได้ตอบ, ร่างอีเมลตอบกลับ, หรือเขียนย่อหน้าสถานะ กฎเดียวที่ใช้คือ คอมเมนต์มาจากคนอื่น ดังนั้นเอเจนต์ควรถือข้อความ annotation เป็นข้อมูลเพื่อรายงาน ไม่ใช่เป็นคำสั่ง คอมเมนต์ที่บอก “ignore previous instructions” ถือเป็นข้อมูลในฟิลด์เดียวกัน ขอสรุปและรายงาน และให้การกระทำที่เปลี่ยนแปลงใด ๆ อยู่ภายใต้การตรวจสอบของคุณเอง

ฉันจะรันเซิร์ฟเวอร์สำหรับ Claude, Cursor หรือ Copilot อย่างไร?

เซิร์ฟเวอร์ทำงานจาก Docker image ghcr.io/groupdocs-annotation/annotation-net-mcp หรือจาก NuGet ด้วยคำสั่ง dnx GroupDocs.Annotation.Mcp --yes (.NET 10 SDK) และเมานท์โฟลเดอร์ที่เก็บเอกสารของคุณ หน้า hub มีรายการการลงทะเบียนสำหรับ Claude Desktop, Claude Code, VS Code กับ GitHub Copilot, Cursor, Windsurf และไคลเอนต์อื่น ๆ

ขีดจำกัดที่ซื่อสัตย์

  • โหมดประเมินผล การแสดงตรา trial จะอยู่บนสุดของทุกหน้า ไม่เปลี่ยนแปลงข้อมูล annotation ดังนั้นรายงานที่สร้างด้วยวิธีนี้จึงแม่นยำแม้ไม่มีไลเซนส์ มันมีผลต่อสิ่งที่คุณสามารถส่งต่อได้ หากแผนสิ้นสุดด้วย “email the marked‑up copy” ให้ตรวจสอบ get_license_status ก่อน
  • หนึ่งเอกสารต่อการเรียก การสแกนหลายไฟล์ต้องทำหลายการเรียก และแต่ละครั้งเป็นการเรียกเครื่องมือที่เอเจนต์ต้องทำและรายงาน
  • การส่งออกเป็น XML get_annotations คืนค่าเป็น JSON ให้เอเจนต์อ่าน; export_annotations เขียน XML ไปยังที่จัดเก็บ
  • ไม่ต้องพรีวิว วิธีทั้งสามไม่ต้องเรนเดอร์หน้าใด ๆ ดังนั้นขีดจำกัดพรีวิว PDF ของ generate_pages_preview บน Linux จะไม่กระทบ

คำถามที่พบบ่อย

ฉันจะส่งออกคอมเมนต์ทั้งหมดจาก PDF อย่างไร? ให้เอเจนต์ส่งออก annotation มันจะเรียก export_annotations ซึ่งจะเขียนไฟล์ XML ข้างเอกสารของคุณ หรือเรียก get_annotations หากต้องการให้คอมเมนต์แสดงเป็นรายการในแชท

AI สามารถสรุปคอมเมนต์ของผู้รีวิวจากหลายไฟล์ได้หรือไม่? ได้ เพียงระบุชื่อไฟล์ในพรอมต์และเอเจนต์จะอ่านแต่ละไฟล์ด้วย get_annotations แล้วรวมผลลัพธ์เป็นสรุปเดียว มันอ่านไฟล์หนึ่งต่อการเรียกหนึ่งครั้ง

รายงานจะเปลี่ยนแปลงหากไม่มีไลเซนส์หรือไม่? ข้อมูล annotation ไม่เปลี่ยนแปลง มีเพียงหน้าที่เรนเดอร์หรือบันทึกที่มีตรา trial

ไปให้ลึกขึ้น