PageIndex терең талдауы: Векторсыз қорытындылы RAG, AI-ға құжаттарды адам сияқты оқуға мүмкіндік береді
PageIndex - Vectify AI командасы ашық бастаған векторсыз, қорытындылы RAG фреймворкі (GitHub 14.8k+ stars). Ол ұзын құжаттарды иерархиялық ағаш индексіне түрлендіреді, LLM-ді ағашта қорытындылы іздеу үшін пайдаланады және FinanceBench қаржылық құжаттарға сұрақ-жауап эталонында 98,7% дәлдікке жетеді.

1. Фон: Дәстүрлі RAG-ның бес ауыртпалығы
RAG үлкен модельді қолданудың іс жүзіндегі стандартына айналды. Негізгі шешімдер алдын ала өңдеу кезеңінде құжатты бекітілген ұзындықтағы бөліктерге бөледі, embedding моделі арқылы векторға түрлендіреді және векторлық дерекқорға сақтайды; сұрау кезінде пайдаланушының сұрағына бірдей embedding жасайды, содан кейін векторлық ұқсастық іздеуі арқылы Top-K нәтижелерін қайтарады және LLM-нің енгізу контексті ретінде біріктіреді.
Бұл процесс қысқа мәтіндер мен жалпы сценарийлерде тиімді, бірақ кәсіби ұзын құжаттар (қаржылық есептер, заңдар мен ережелер, техникалық нұсқаулықтар және т.б.) сценарийлерінде бес түбегейлі мәселені көрсетеді:
1) Ұқсастық ≠ Қатыстылық. Векторлық іздеу «семантикалық жағынан ең ұқсас мәтін блогы = ең қатысты жауап көзі» деп болжайды, бірақ кәсіби құжаттарда көптеген абзацтар шамамен бірдей семантиканы бөліседі, бірақ маңызды мәліметтерде үлкен айырмашылықтар бар.
2) Қатты бөліктеу контекстің толықтығын бұзады. Құжатты 512 немесе 1024 токеннің бекітілген терезесі бойынша бөлу сөйлемдерді, абзацтарды және тіпті бүкіл логикалық бөлімді қиып тастайды, бұл маңызды контекстің жоғалуына әкеледі.
3) Сұрау ниеті мен білім кеңістігінің сәйкес келмеуі. Пайдаланушының сұрауы «мазмұнды» емес, «ниетті» білдіреді, query embedding және document embedding әртүрлі семантикалық кеңістікте орналасқан.
4) Құжат ішіндегі сілтемелерді өңдей алмайды. Кәсіби құжаттарда «G қосымшасын қараңыз», «5.3 кестені қараңыз» сияқты сілтемелер жиі кездеседі, бұл сілтемелер мен сілтеме жасалған мазмұн арасында семантикалық ұқсастық жоқ, векторлық іздеу сәйкес келе алмайды.
5) Тәуелсіз сұрау, диалог тарихын пайдалана алмайды. Әрбір іздеу сұрауды тәуелсіз сұраныс ретінде қарастырады және алдыңғы диалог контекстімен біріктіріп, біртіндеп іздеу жасай алмайды.
2. PageIndex жалпы архитектурасы
PageIndex - бұл векторсыз (Vectorless), қорытындыға негізделген (Reasoning-based) RAG фреймворкі. Оның негізгі идеясы: модельге векторлық кеңістікте шамамен сәйкестік жасауға мүмкіндік бергеннен гөрі, модельге құжаттың құрылымдық көрінісінде қорытынды жасауға мүмкіндік берген дұрыс - «қайда қарау керектігін» шешу, жай ғана «не ұқсас көрінетінін» емес.
PageIndex ұзын құжаттарды оқудың адам тәжірибесін имитациялайды: алдымен мазмұнды қарап шығыңыз, сұраққа байланысты тиісті тарауларды анықтаңыз және мақсатты мазмұнды тапқанша қабат бойынша тереңдетіңіз. Бұл процесс екі қадам арқылы жүзеге асырылады:
- Ағаш құрылымының индексін құру: PDF/Markdown құжатын иерархиялық JSON ағашына түрлендіру, «LLM үшін оңтайландырылған мазмұнға» ұқсас
- Қорытындылы ағаш іздеу: LLM сұраққа байланысты ағашта қорытынды навигациясын жүргізеді, тиісті түйіндерді анықтайды, мазмұнды шығарады және жауап жасайды

3. Негізгі модульдерді бөлшектеу
3.1 PDF өңдеу құбыры
PageIndex-тің PDF өңдеу құбыры 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_id негізінде node_map ішінен сәйкес түйіннің толық мәтінін шығарады, контекст ретінде біріктіреді және LLM-ге соңғы жауапты жасауға береді.

4. Негізгі дизайнның ерекшеліктері
- Векторсыз архитектура: embedding моделі мен векторлық дерекқордың қажеті жоқ, инфрақұрылымдық шығындарды азайтады, орналастыруды жеңілдетеді
- Құжаттың табиғи құрылымын сақтау: мазмұнды құжаттың бөлімдері/кіші бөлімдері/тараулары бойынша ұйымдастыру, chunk арасындағы контекстің жоғалуын болдырмау
- Іздеудің түсініктілігі: әрбір іздеу толық қорытынды тізбегін қайтарады, бұл сәйкестік талаптары жоғары сценарийлерде айқын артықшылыққа ие
5. Бағалау нәтижелері
Mafin 2.5 - PageIndex негізіндегі қаржылық құжаттарға сұрақ-жауап жүйесі. FinanceBench (қаржылық құжаттар QA эталондық тесті) бойынша 98,7% дәлдікке жетті, бұл Perplexity (45%) және GPT-4o (31%) көрсеткіштерінен әлдеқайда жоғары.

6. Қолдану сценарийлері
Жарайды: анық иерархиялық құрылымы бар ұзын құжаттар (қаржылық есептер, заңдар, оқулықтар, нұсқаулықтар), көлемі ондағаннан жүздеген бетке дейін
Жарамайды: құрылымдық мазмұны жоқ құжаттар, OCR-ден өтпеген сканерленген көшірмелер, кестелер/диаграммалар басым құжаттар, миллисекундтық нақты уақыттағы жауапты қажет ететін сценарийлер
7. Қорытынды
PageIndex-тің негізгі үлесі - практикалық векторсыз RAG парадигмасын ұсыну: құжаттың табиғи құрылымы арқылы ағаш индексін құру, векторлық ұқсастық іздеудің орнына LLM қорытындысын пайдалану. Бұл шешім анық иерархиялық құрылымы бар кәсіби ұзын құжаттар сценарийлерінде жақсы нәтиже көрсетеді, түсініктілік пен аудит мүмкіндігі дәстүрлі шешімдерге қарағанда айтарлықтай жақсы.





