การวิเคราะห์เชิงลึกของ PageIndex: RAG แบบอนุมานโดยไม่มีเวกเตอร์ ทำให้ AI อ่านเอกสารได้เหมือนผู้เชี่ยวชาญที่เป็นมนุษย์
PageIndex เป็นเฟรมเวิร์ก RAG แบบไม่มีเวกเตอร์และแบบอนุมานที่ทีม Vectify AI เปิดตัว (GitHub 14.8k+ stars) โดยจะแปลงเอกสารขนาดยาวเป็นดัชนีแบบต้นไม้ตามลำดับชั้น และใช้ LLM เพื่อทำการค้นหาแบบอนุมานบนต้นไม้ ซึ่งมีความแม่นยำถึง 98.7% ในเกณฑ์มาตรฐานการถามตอบเอกสารทางการเงิน FinanceBench

1. ที่มา: ห้าปัญหาหลักของ RAG แบบดั้งเดิม
RAG ได้กลายเป็นมาตรฐานที่แท้จริงสำหรับการใช้งานโมเดลขนาดใหญ่ โซลูชันหลักจะแบ่งเอกสารออกเป็น chunk ที่มีความยาวคงที่ในขั้นตอนการประมวลผลล่วงหน้า แปลงเป็นเวกเตอร์ผ่านโมเดล embedding และจัดเก็บไว้ในฐานข้อมูลเวกเตอร์ เมื่อทำการสืบค้น จะทำการ embedding คำถามของผู้ใช้ในลักษณะเดียวกัน จากนั้นเรียกคืนผลลัพธ์ Top-K ผ่านการค้นหาความคล้ายคลึงของเวกเตอร์ และต่อกันเป็นบริบทอินพุตของ LLM
กระบวนการนี้มีประสิทธิภาพในข้อความสั้นๆ และสถานการณ์ทั่วไป แต่ในสถานการณ์ เอกสารทางวิชาชีพขนาดยาว (รายงานทางการเงิน กฎหมายและข้อบังคับ คู่มือทางเทคนิค ฯลฯ) จะเผยให้เห็นถึงห้าปัญหาพื้นฐาน:
1) ความคล้ายคลึงกัน ≠ ความเกี่ยวข้อง การค้นหาเวกเตอร์ถือว่า "บล็อกข้อความที่มีความหมายคล้ายคลึงกันมากที่สุด = แหล่งที่มาของคำตอบที่เกี่ยวข้องมากที่สุด" แต่ในเอกสารทางวิชาชีพ ย่อหน้าจำนวนมากมีความหมายใกล้เคียงกัน แต่มีความแตกต่างอย่างมากในรายละเอียดที่สำคัญ
2) การแบ่ง chunk แบบแข็งทำลายความสมบูรณ์ของบริบท การแบ่งเอกสารตามหน้าต่างคงที่ 512 หรือ 1024 token จะตัดประโยค ย่อหน้า หรือแม้แต่ส่วนตรรกะทั้งหมด ทำให้บริบทที่สำคัญสูญหายไป
3) ความคลาดเคลื่อนระหว่างเจตนาในการสืบค้นและพื้นที่ความรู้ การแสดงออกของการสืบค้นของผู้ใช้คือ "เจตนา" ไม่ใช่ "เนื้อหา" query embedding และ document embedding อยู่ในพื้นที่ความหมายที่แตกต่างกัน
4) ไม่สามารถจัดการการอ้างอิงภายในเอกสารได้ ในเอกสารทางวิชาชีพ การอ้างอิงเช่น "ดูรายละเอียดในภาคผนวก G" "อ้างอิงตาราง 5.3" เป็นเรื่องปกติ การอ้างอิงเหล่านี้และเนื้อหาที่อ้างอิงไม่มีความคล้ายคลึงกันทางความหมาย การค้นหาเวกเตอร์ไม่สามารถจับคู่ได้
5) การสืบค้นอิสระ ไม่สามารถใช้ประโยชน์จากประวัติการสนทนาได้ การสืบค้นแต่ละครั้งจะถือว่า query เป็นคำขออิสระ ไม่สามารถรวมบริบทการสนทนาก่อนหน้าเพื่อทำการสืบค้นแบบค่อยเป็นค่อยไปได้
2. สถาปัตยกรรมโดยรวมของ PageIndex
PageIndex เป็น เฟรมเวิร์ก RAG ที่ไม่มีเวกเตอร์ (Vectorless) และอิงตามการอนุมาน (Reasoning-based) แนวคิดหลักคือ: แทนที่จะให้โมเดลทำการจับคู่โดยประมาณในพื้นที่เวกเตอร์ สู้ให้โมเดลทำการอนุมานบนการแสดงโครงสร้างของเอกสาร——ตัดสินใจว่า "จะมองไปที่ไหน" แทนที่จะเป็นเพียง "อะไรที่ดูคล้ายกัน"
PageIndex จำลองวิธีการที่ผู้เชี่ยวชาญที่เป็นมนุษย์อ่านเอกสารขนาดยาว: ขั้นแรกให้เรียกดูสารบัญ ตัดสินบทที่เกี่ยวข้องตามคำถาม เจาะลึกลงไปทีละชั้นจนกว่าจะพบเนื้อหาเป้าหมาย กระบวนการนี้ทำได้โดยสองขั้นตอน:
- สร้างดัชนีโครงสร้างต้นไม้: แปลงเอกสาร PDF/Markdown เป็นต้นไม้ JSON ตามลำดับชั้น คล้ายกับ "สารบัญที่ปรับให้เหมาะสมสำหรับ LLM"
- การค้นหาต้นไม้แบบอนุมาน: LLM ทำการนำทางแบบอนุมานบนต้นไม้ตามคำถาม กำหนดตำแหน่งโหนดที่เกี่ยวข้อง แยกเนื้อหา และสร้างคำตอบ

3. การแยกส่วนประกอบหลัก
3.1 ไปป์ไลน์การประมวลผล PDF
ไปป์ไลน์การประมวลผล PDF ของ PageIndex ถูกจัดเรียงโดยฟังก์ชัน tree_parser() กระบวนการหลักประกอบด้วย: การตรวจจับสารบัญ (สามสาขาโหมด) การเติมคำนำ การแปลงรายการแบนเป็นต้นไม้ตามลำดับชั้น การแบ่งส่วนโหนดขนาดใหญ่อย่างละเอียด การเพิ่มคุณสมบัติให้กับโหนด เอาต์พุตโครงสร้างต้นไม้ JSON
สามโหมดการประมวลผล:
- process_toc_with_page_numbers (มีสารบัญ + มีหมายเลขหน้า): ใช้ LLM เพื่อแปลงสารบัญดั้งเดิมเป็น JSON ที่มีโครงสร้าง แมปหมายเลขหน้าตรรกะกับหมายเลขหน้าจริง
- process_no_toc (ไม่มีสารบัญ): LLM อนุมานโครงสร้างตามลำดับชั้นโดยตรงจากเนื้อหาหลัก
- process_toc_no_page_numbers (มีสารบัญแต่ไม่มีหมายเลขหน้า): แยกโครงสร้างก่อน จากนั้นอนุมานเพื่อเติมหมายเลขหน้าจริง
3.2 แบบจำลองข้อมูลโครงสร้างต้นไม้
แต่ละโหนดในต้นไม้ประกอบด้วย: title, node_id, start_index, end_index, summary, prefix_summary, text, nodes (อาร์เรย์ของโหนดลูก) และฟิลด์อื่นๆ
3.3 กลไกการค้นหาแบบอนุมาน
ขั้นตอนการค้นหาไม่ขึ้นอยู่กับการคำนวณเวกเตอร์ใดๆ LLM รับคำถามของผู้ใช้และโครงสร้างต้นไม้เอกสาร ทำการอนุมานตามชื่อโหนดและบทสรุป ส่งออก "กระบวนการคิด" และรายการ node_id ที่เกี่ยวข้อง จากนั้นระบบจะดึงข้อความทั้งหมดของโหนดที่สอดคล้องกันจาก node_map ตาม node_id ต่อกันเป็นบริบท และส่งมอบให้กับ LLM เพื่อสร้างคำตอบสุดท้าย

4. จุดเด่นของการออกแบบหลัก
- สถาปัตยกรรมที่ไม่มีเวกเตอร์: ไม่จำเป็นต้องใช้โมเดล embedding และฐานข้อมูลเวกเตอร์ ลดต้นทุนโครงสร้างพื้นฐาน และลดความซับซ้อนในการปรับใช้
- รักษาโครงสร้างธรรมชาติของเอกสาร: จัดระเบียบเนื้อหาตามบท/ส่วนย่อย/ส่วนย่อยที่มีอยู่ตามธรรมชาติของเอกสาร หลีกเลี่ยงการสูญเสียบริบทข้าม chunk
- ความสามารถในการตีความของการค้นหา: การค้นหาแต่ละครั้งจะส่งคืนห่วงโซ่การอนุมานที่สมบูรณ์ ซึ่งมีข้อได้เปรียบที่ชัดเจนในสถานการณ์ที่มีข้อกำหนดด้านการปฏิบัติตามข้อกำหนดสูง
5. ผลการประเมิน
Mafin 2.5 เป็นระบบถามตอบเอกสารทางการเงินที่ใช้ PageIndex ประสิทธิภาพบน FinanceBench (เกณฑ์มาตรฐาน QA เอกสารทางการเงิน) มีความแม่นยำถึง 98.7% ซึ่งสูงกว่า Perplexity (45%) และ GPT-4o (31%) มาก

6. สถานการณ์ที่เหมาะสม
เหมาะสมสำหรับ: เอกสารขนาดยาวที่มีโครงสร้างตามลำดับชั้นที่ชัดเจน (รายงานทางการเงิน กฎหมาย ข้อบังคับ ตำราเรียน คู่มือ) ความยาวตั้งแต่หลายสิบถึงหลายร้อยหน้า
ไม่เหมาะสมสำหรับ: เอกสารที่ไม่มีเนื้อหาที่มีโครงสร้าง สแกนที่ไม่ได้ OCR เอกสารที่มีตาราง/แผนภูมิเป็นหลัก สถานการณ์ที่ต้องการการตอบสนองแบบเรียลไทม์ในระดับมิลลิวินาที
7. สรุป
การมีส่วนร่วมหลักของ PageIndex คือการนำเสนอแบบแผน RAG ที่ไม่มีเวกเตอร์ที่ใช้งานได้จริง: สร้างดัชนีต้นไม้โดยใช้โครงสร้างธรรมชาติของเอกสาร และใช้การอนุมาน LLM แทนการค้นหาความคล้ายคลึงของเวกเตอร์ โซลูชันนี้มีประสิทธิภาพที่ยอดเยี่ยมในสถานการณ์เอกสารทางวิชาชีพขนาดยาวที่มีโครงสร้างตามลำดับชั้นที่ชัดเจน ความสามารถในการตีความและการตรวจสอบได้ก็ดีกว่าโซลูชันแบบดั้งเดิมอย่างเห็นได้ชัด





