Uchambuzi wa Kina wa PageIndex: RAG Isiyo na Vecta ya Utohoaji, Inayowezesha AI Kusoma Hati Kama Mtaalamu wa Kibinadamu
PageIndex ni mfumo huria wa RAG usio na vekta, unaotegemea utohoaji (Reasoning-based RAG framework) ulioanzishwa na timu ya Vectify AI (GitHub 14.8k+ stars). Hubadilisha hati ndefu kuwa faharasa ya mti wa kihierarkia, na hutumia LLM kufanya utafutaji wa kimantiki kwenye mti, na kufikia usahihi wa 98.7% kwenye FinanceBench, kipimo cha maswali na majibu ya hati za kifedha.

1. Asili: Changamoto Tano za RAG ya Kawaida
RAG imekuwa kiwango cha de facto kwa matumizi ya modeli kubwa. Suluhisho kuu hugawanya hati katika vipande vya urefu uliowekwa katika hatua ya uchakataji wa awali, hubadilisha kuwa vekta kupitia modeli ya embedding, na kuzihifadhi kwenye hifadhidata ya vekta; wakati wa swali, embedding sawa hufanywa kwa swali la mtumiaji, na matokeo ya Top-K yanapatikana kupitia utafutaji wa ufanano wa vekta, na kuunganishwa kama muktadha wa ingizo la LLM.
Utaratibu huu unafanya kazi vizuri katika maandishi mafupi na matukio ya jumla, lakini katika matukio ya hati ndefu za kitaalamu (ripoti za kifedha, sheria na kanuni, miongozo ya kiufundi, n.k.), matatizo matano ya msingi yanaonekana:
1) Ufanano ≠ Uhusiano. Utafutaji wa vekta unadhani kwamba "kipande cha maandishi kinachofanana zaidi kimantiki = chanzo cha jibu kinachohusiana zaidi", lakini katika hati za kitaalamu, idadi kubwa ya aya zinashiriki maana sawa lakini zina tofauti kubwa katika maelezo muhimu.
2) Ugawaji mgumu huharibu ukamilifu wa muktadha. Kugawanya hati katika madirisha ya kudumu ya tokeni 512 au 1024 kutakata sentensi, aya, na hata sehemu nzima ya kimantiki, na kusababisha upotezaji wa muktadha muhimu.
3) Nia ya swali na nafasi ya maarifa haziendani. Swali la mtumiaji linaeleza "nia" badala ya "maudhui", na embedding ya swali na embedding ya hati ziko katika nafasi tofauti za kimantiki.
4) Haiwezi kushughulikia marejeleo ndani ya hati. Marejeleo kama vile "tazama Kiambatisho G" na "rejelea Jedwali 5.3" ni ya kawaida katika hati za kitaalamu. Hakuna ufanano wa kimantiki kati ya marejeleo haya na maudhui yaliyorejelewa, na utafutaji wa vekta hauwezi kulinganisha.
5) Maswali ya kujitegemea, hayawezi kutumia historia ya mazungumzo. Kila utafutaji unachukulia swali kama ombi la kujitegemea, na hauwezi kuunganishwa na muktadha wa mazungumzo ya awali kwa utafutaji wa hatua kwa hatua.
2. Usanifu Mkuu wa PageIndex
PageIndex ni mfumo wa RAG usio na vekta (Vectorless), unaotegemea utohoaji (Reasoning-based). Wazo lake kuu ni: badala ya kuruhusu modeli kufanya ulinganifu wa karibu katika nafasi ya vekta, ni bora kuruhusu modeli kufanya utohoaji juu ya uwakilishi uliopangwa wa hati - kuamua "pa kutazama", badala ya "nini kinaonekana kufanana".
PageIndex huiga jinsi mtaalamu wa kibinadamu anavyosoma hati ndefu: kwanza huvinjari jedwali la yaliyomo, huamua sura zinazohusiana kulingana na swali, na huenda ndani zaidi hadi kupata maudhui lengwa. Mchakato huu unapatikana kupitia hatua mbili:
- Kujenga faharasa ya muundo wa mti: Kubadilisha hati za PDF/Markdown kuwa mti wa JSON wa kihierarkia, sawa na "jedwali la yaliyomo lililoboreshwa kwa LLM"
- Utafutaji wa mti wa kimantiki: LLM hufanya urambazaji wa kimantiki kwenye mti kulingana na swali, hutambua nodi zinazohusiana, hutoa maudhui na kutoa majibu

3. Uchambuzi wa Moduli Muhimu
3.1 Mchakato wa Usindikaji wa PDF
Mchakato wa usindikaji wa PDF wa PageIndex umepangwa na kazi ya tree_parser(), na mchakato mkuu ni pamoja na: ugunduzi wa jedwali la yaliyomo (matawi matatu ya modi), nyongeza ya utangulizi, ubadilishaji wa orodha tambarare kuwa mti wa kihierarkia, mgawanyiko wa kina wa nodi kubwa za kujirudia, uboreshaji wa nodi, na utoaji wa muundo wa mti wa JSON.
Modi tatu za usindikaji:
- process_toc_with_page_numbers (ina jedwali la yaliyomo + nambari za ukurasa): Tumia LLM kubadilisha jedwali la yaliyomo asili kuwa JSON iliyopangwa, na ramani nambari za ukurasa za kimantiki kwa nambari za ukurasa za kimwili
- process_no_toc (haina jedwali la yaliyomo): LLM huamua muundo wa kihierarkia moja kwa moja kutoka kwa maudhui ya maandishi
- process_toc_no_page_numbers (ina jedwali la yaliyomo lakini haina nambari za ukurasa): Toa muundo kisha uamue na uongeze nambari za ukurasa za kimwili
3.2 Muundo wa Data ya Mti
Kila nodi kwenye mti ina sehemu kama vile: title, node_id, start_index, end_index, summary, prefix_summary, text, nodes (safu ya nodi za watoto).
3.3 Utaratibu wa Utafutaji wa Kimantiki
Hatua ya utafutaji haitegemei hesabu yoyote ya vekta. LLM hupokea swali la mtumiaji na muundo wa mti wa hati, hufanya utohoaji kulingana na kichwa cha nodi na muhtasari, na hutoa "mchakato wake wa kufikiri" na orodha ya node_id zinazohusiana. Kisha mfumo hutoa maandishi kamili ya nodi inayolingana kutoka kwa node_map kulingana na node_id, na kuiunganisha kama muktadha ili LLM itoe jibu la mwisho.

4. Mambo Muhimu ya Ubunifu
- Usanifu usio na vekta: Hakuna haja ya modeli ya embedding na hifadhidata ya vekta, kupunguza gharama za miundombinu na kurahisisha upelekaji
- Hifadhi muundo wa asili wa hati: Panga maudhui kulingana na sura/sehemu/sehemu ndogo za asili za hati, epuka upotezaji wa muktadha katika vipande tofauti
- Ufafanuzi wa utafutaji: Kila utafutaji hurudisha mnyororo kamili wa utohoaji, ambao una faida dhahiri katika matukio yenye mahitaji ya juu ya kufuata
5. Matokeo ya Tathmini
Mafin 2.5 ni mfumo wa maswali na majibu ya hati za kifedha kulingana na PageIndex. Utendaji kwenye FinanceBench (kipimo cha QA cha hati za kifedha) unafikia usahihi wa 98.7%, ambayo ni mbali zaidi ya Perplexity (45%) na GPT-4o (31%).

6. Matukio Yanayofaa
Inafaa kwa: Hati ndefu zilizo na muundo wazi wa kihierarkia (ripoti za kifedha, kanuni, vitabu vya kiada, miongozo), urefu wa kurasa kadhaa hadi mamia
Haifai kwa: Hati bila maudhui yaliyopangwa, hati zilizochanganuliwa ambazo hazijafanyiwa OCR, hati zilizo na majedwali/chati kama mwili mkuu, matukio yanayohitaji majibu ya wakati halisi ya milisekunde
7. Muhtasari
Mchango mkuu wa PageIndex upo katika kupendekeza dhana ya vitendo ya RAG isiyo na vekta: tumia muundo wa asili wa hati kujenga faharasa ya mti, na utumie utohoaji wa LLM kuchukua nafasi ya utafutaji wa ufanano wa vekta. Suluhisho hili linafanya vizuri katika matukio ya hati ndefu za kitaalamu zilizo na muundo wazi wa kihierarkia, na ufafanuzi na ukaguzi wake pia ni bora zaidi kuliko suluhisho za jadi.





