PageIndex Длабинска анализа: RAG без векторско заклучување, овозможувајќи му на AI да чита документи како човечки експерт
PageIndex е RAG рамка без векторско заклучување, заснована на заклучување, со отворен код од тимот на Vectify AI (GitHub 14.8k+ ѕвезди). Таа ги претвора долгите документи во хиерархиски индекс на дрво, користи LLM за заклучување при пребарување на дрвото и достигнува 98.7% точност на FinanceBench, репер за прашања и одговори за финансиски документи.

1. Позадина: Пет болни точки на традиционалниот RAG
RAG стана де факто стандард за апликации со големи модели. Главните решенија го делат документот на парчиња со фиксна должина во фазата на претходна обработка, ги претвораат во вектори преку embedding модел и ги складираат во векторска база на податоци; при пребарување, се прави истото embedding за прашањето на корисникот, а потоа се повикуваат Top-K резултатите преку пребарување на сличност на вектори, кои се спојуваат како влезен контекст на LLM.
Овој процес е ефикасен во кратки текстови и општи сценарија, но во сценарија со професионални долги документи (финансиски извештаи, закони и прописи, технички прирачници итн.), се откриваат пет фундаментални проблеми:
1) Сличност ≠ Релевантност. Векторското пребарување претпоставува дека „семантички најсличниот блок на текст = најрелевантниот извор на одговор“, но во професионалните документи, голем број параграфи делат приближна семантика, но се разликуваат во клучните детали.
2) Тврдото делење ја нарушува комплетноста на контекстот. Делењето на документот во фиксни прозорци од 512 или 1024 токени ќе пресече реченици, параграфи, па дури и цели логички сегменти, што ќе доведе до губење на клучниот контекст.
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 заклучување наместо пребарување на сличност на вектори. Ова решение има одлични перформанси во професионални сценарија со долги документи со јасна хиерархиска структура, а објаснивоста и ревизорската способност се исто така значително подобри од традиционалните решенија.





