Tükeldamine, rerankimine ja hübriidotsing: pane RAG päriselt tööle
Enamik RAG-i rakendusi töötab halvasti, sest nad saavad kolm asja valesti. Praktiline juhend dokumentide tükeldamiseks, tulemuste rerankimiseks ja märksõna- ning semantilise otsingu kombineerimiseks — ilma et peaksid otsinguinseneriks saama.
Enamik RAG-i rakendusi töötab halvasti. Mudel on korras — Claude või GPT-5 vastavad õnnega väljaotsitud dokumentide põhjal. Otsing on see, mis kukub läbi. Sa küsid küsimuse, süsteem tagastab valed tükid ja mudel toodab enesekindla vastuse vale info põhjal.
See artikkel on praktiline juhend kolme asja kohta, mis halva otsingu parandavad: tükeldamise strateegia, rerankimine ja hübriidotsing. Saa need õigeks ja enamik "RAG ei tööta meie kasutusjuhtumi jaoks" kaebusi haihtub.
Jätame vahele sügava tehnilise matemaatika ja keskendume sellele, mida tegelikult teha.
Miks otsing kukub läbi
Vaike-RAG-i pipeline:
- Jaga dokumendid tükkideks.
- Embeddi iga tükk.
- Kui tuleb küsimus, embeddi see ja leia kõige sarnasemad tükid (koosinussarnasus).
- Anna need tükid LLM-ile.
Igal sammul on oma läbikukkumismustrid:
Halb tükeldamine toodab tükke, mis on kasulikkuseks liiga lühikesed või sidususeks liiga pikad. Või tükke, mis murduvad keset loogilist mõtet, nii et kumbki pool ei otsi end hästi välja.
Naiivne sarnasus leiab tükke, mis jagavad päringuga sõnavara, kuid pole tegelikult asjakohased. Päring "kuidas tellimust tühistada" võib leida iga tüki, mis mainib "tellimust", sealhulgas asjasse mittepuutuvat turunduskoopiat.
Rerankimise puudumine tähendab, et mida sarnasus tagastab, seda LLM näeb. Kõige sarnasem tükk pole alati kõige asjakohasem tükk.
Puhas semantiline otsing jätab vahele täpsed märksõna-vasted, mis loevad. Päring "veakood 503" võib jätta vahele tüki, kus on täpselt tekst "veakood 503", sest päringu semantiline vektor ei sobi kokku tüki üldteemaga.
Kolm parandust — parem tükeldamine, rerankimine, hübriidotsing — käsitlevad neist igaüht.
Parandus 1: Parem tükeldamine
Tükeldamine on RAG-i pipeline'i kõige mõjukam üksik otsus ja see, mille üle enamik inimesi enne kehvi tulemusi ei mõtle.
Naiivne vaikevalik enamikus no-code tööriistades on tükeldada fikseeritud tokeni-arvu järgi (nt 500 tokenit 50-tokenilise ülekattega). See töötab okei, aga murdub sageli.
Paremad strateegiad:
Semantiline tükeldamine
Jaga dokumente semantiliste piiride peal — kohtades, kus teema muutub —, mitte suvaliste tokeni-arvude peal. Enamikul kaasaegsetel raamistikel (LangChain, LlamaIndex) on semantilised tükeldajad, mis tuvastavad teemamuutusi ja jagavad seal.
Võit: tükid sisaldavad täielikke mõtteid. Mudel saab sidusa konteksti, mitte pool-argumente.
Struktuuriteadlik tükeldamine
Kui sinu dokumentidel on loomulik struktuur (Markdowni pealkirjad, HTML-i sektsioonid, PDF-i peatükid, koodifunktsioonide piirid), kasuta seda. Tükelda sektsiooni järgi, mitte tokeni järgi.
Markdowni jaoks:
- Iga H2-sektsioon on tükk (kus H1-kontekst on ette pandud).
- Pikad H2-sektsioonid on alam-tükeldatud, kus H2-pealkiri on kontekstina korratud.
Koodi jaoks:
- Iga funktsioon või klass on tükk.
- Tükk sisaldab failiteed ja kõiki importe.
See on pimedast fikseeritud-suurusega tükeldamisest dramaatiliselt parem mistahes struktureeritud sisule.
Hierarhiline tükeldamine
Hiljutise RAG-uuringu muster. Loo tükid mitmel tasemel:
- Väikesed tükid (200-500 tokenit) täpseks otsinguks.
- Keskmised tükid (1000-2000 tokenit) konteksti jaoks.
- Dokumendikokkuvõtted (50-100 tokenit) kõrgetasemeliseks sobitamiseks.
Otsides sobita väikeste tükkide vastu, aga tagasta ümbritsev keskmine tükk. LLM saab täpse asjakohasuse pluss piisavalt konteksti, et selles aru saada.
Tüki suuruse valimine
Umbkaudne reegel sisutüübi järgi:
| Sisutüüp | Tüki suurus | Põhjendus | | --- | --- | --- | | Tehniline dok / käsiraamat | 500-1000 tokenit | Kontseptsioonid on isemajandavad, mõõdukas tihedus | | Kood | Üks funktsioon/klass tüki kohta | Loogilised üksused, mitte suvalised viilud | | Pikk-vormiline artikkel / raamat | 1000-2000 tokenit | Ideed arenevad mitme lõigu jooksul | | Klienditoe piletid | Üks pilet = üks tükk | Ära poolita pileti sees | | Juriidilised / lepingud | Sektsioonipõhine, sageli 500-1500 tokenit | Loogilised üksused; säilita klauslite piirid | | Tabelarvutuse andmed | Rida + pealkirjad | Iga rida tükk, koos veerupealkirjadega |
Kui kasutad no-code tööriista, mis peidab tükeldamise, tee test: küsi 10 küsimust, mille vastused sa tead, et on korpuses. Kui otsing jätab regulaarselt õige tüki vahele, on tükeldamine sinu probleem.
Muster, mis töötab hästi: "lehekülg-või-sektsioon, siis küsimusepõhine"
Enamiku isikliku RAG-i kasutusjuhtumite jaoks töötab muster:
- Tükelda dokumendi sektsiooni järgi (Markdowni H2, PDF-i peatükk jne).
- Üle ~2000 tokeni tükkide jaoks alam-tükelda lõigu järgi.
- Pane iga tüki ette dokumendi pealkiri ja sektsiooni pealkiri kontekstina.
- Lisa iga tüki lõppu lühike kirjeldus, milliseid küsimusi see tükk vastab (kiire LLM genereerib indekseerimise ajal automaatselt).
Automaatselt genereeritud "milliseid küsimusi see tükk vastab" trikk on üllatavalt alakasutatud ja üllatavalt võimas. See töötab, sest kasutajate päringud on sageli sõnastatud küsimustena ja nende sobitamine küsimusvormis metaandmete vastu on täpsem kui sobitamine toore dokumenditeksti vastu.
Parandus 2: Rerankimine
Pärast esmast otsingut (mis tüüpiliselt tagastab 20-50 tükki vektorisarnasuse põhjal) kasuta rerankerit, et neid päringu tegeliku asjakohasuse järgi ümber järjestada.
Reranker on eraldi mudel — tavaliselt väiksem, spetsialiseeritud — mis võtab paarid (päring, tükk) ja väljastab asjakohasuse skoori. Rakendad seda oma top 20-50 tulemusele, sorteerid uue skoori järgi ja annad top 3-5 LLM-ile.
Võit: dramaatiliselt parem täpsus. Vektorisarnasus on kiire, kuid mitte väga täpne; rerankerid on aeglasemad, aga palju täpsemad. Nende kombineerimine annab sulle kiire otsingu täpse järjestamisega.
Rerankerite valikud 2026. aastal:
- Cohere Rerank — väljakujunenud API-põhine reranker. ~1 dollar / 1000 päringut.
- Voyage AI rerank-2 — tugev kommertsvalik, sageli parem kui Cohere niši-domeenidel.
- bge-reranker-v2-m3 — avatud lähtekoodiga, jookseb lokaalselt või odaval hostingul.
- Jina Reranker — veel üks tugev avatud lähtekoodiga valik.
Tüüpilises pipeline'is:
- Vektorisotsing tagastab top 50 tükki (odav, kiire).
- Reranker skoorib kõik 50 päringu vastu (kallim, aeglasem).
- Top 5 rerankeri skoori järgi lähevad LLM-ile.
Lisatud koguviivitus: ~200-500ms. Kvaliteedi paranemine: sageli 20-40% otsingu täpsuse võrdlustestide järgi.
No-code tööriistadele, mis vaikimisi rerankimist ei sisalda (NotebookLM, enamik baas-n8n seadistusi), on see üksik kõige suurema mõjuga uuendus, mida sa teha saad. n8n-il on Cohere Rerank noode; LangChain ja LlamaIndex sisaldavad rerankerite integratsioone natiivselt.
Parandus 3: Hübriidotsing
Vektorisarnasus püüab semantilisi vasteid. Märksõnaotsing (BM25 või sarnane) püüab täpseid vasteid. Mõlemad jätavad vahele asju, mida teine püüab.
Päring "kuidas parandada HTTP 503 vigu meie gateway'l":
- Vektorisotsing leiab tükid HTTP vigade, gateway-probleemide, tõrkeotsingu kohta.
- Märksõnaotsing leiab tükid, mis konkreetselt mainivad "503" — mis võib olla tegelik vastus.
Hübriidotsing jookseb mõlemat ja kombineerib tulemused. Kombinatsioon kasutab meetodit nimega Reciprocal Rank Fusion (RRF) — antud iga meetodi järjestusest, toodab RRF kombineeritud järjestuse, mis võtab arvesse mõlemat signaali.
Rakendus enamikus tööriistades on lihtne:
- Jooksuta vektorisotsing → saa järjestatud nimekiri A.
- Jooksuta BM25 / märksõnaotsing → saa järjestatud nimekiri B.
- Iga tüki jaoks arvuta RRF-skoor = 1/(k + rank_in_A) + 1/(k + rank_in_B) (kus k tüüpiliselt 60).
- Sorteeri kombineeritud skoori järgi, tagasta top-tulemused.
- aastal on hübriidotsing natiivselt toetatud:
- Weaviate (vektorisalvestus) — hübriidotsing kohe karbist välja.
- Qdrant — hübriidotsing filtreerimise kaudu.
- Pinecone — hübriidotsing hõredate vektorite kaudu.
- Elastic / OpenSearch — kombineeritud märksõna + vektor.
- Enamik n8n RAG-malle — hübriid on kaasaegsetes mallides vaikevalik.
Võit: dramaatiliselt parem kaetus päringutel, mis sisaldavad konkreetseid identifikaatoreid, koode, nimesid või kõnepruuke. Tehnilise sisu jaoks (kood, veakoodid, tootenimed, regulatiivsed viited) on hübriidotsing sisuliselt kohustuslik.
Sinu kasutusjuhtumi jaoks: kui sinu päringud sisaldavad sageli konkreetseid termineid, mis peaksid täpselt sobima (numbrid, nimed, koodid, täpsed fraasid), lülita hübriidotsing sisse. Kulu on madal ja võit on suur.
Pannes kokku
Tehnoloogia tipptaseme RAG-pipeline 2026. aastal:
Query
↓
Query rewriter (optional — clean up the query, expand abbreviations)
↓
Hybrid retrieval: vector + keyword search
↓
Top 30-50 results
↓
Reranker
↓
Top 5 by reranker score
↓
LLM with retrieved chunks + query
↓
Cited answerIga samm on individuaalselt odav. Kombineerituna toodavad nad otsingu kvaliteeti, mis on kvalitatiivselt erinev "vektorisarnasus → top 5 → LLM"-ist.
Paar vähem levinud, kuid võimast lisandust:
Päringu laiendamine. Kirjuta kasutaja päring ümber mitmeks variandiks ja otsi igaühte. Püüab erinevaid sõnastusi.
Mitmeastmeline otsing. Keerukate küsimuste jaoks tee mitu otsingut. Esimene otsing tuvastab alamküsimused; teine otsing toob iga alamküsimuse vastuse.
Vestluspõhine otsing. Mitmekäigulises vestluses kasuta vestluse ajalugu otsingu mõjutamiseks ("nad küsisid varem X kohta, niisiis selle küsimuse jaoks eelista X-iga seotud sisu").
Allika filtreerimine. Kasuta metaandmete filtreid otsingu piiritlemiseks. "Otsi ainult dokumentidest, mis on märgistatud 'EL-i regulatsioonid' ja pärast 2023-t".
Need on üha enam saadaval no-code RAG-tööriistades, aga kontrolli alati, kas saad põhilised kolm (hea tükeldamine, reranker, hübriidotsing) kätte, enne kui sirutad käe arenenute järele.
Kuidas mõõta RAG-i kvaliteeti
Sa ei saa parandada seda, mida sa ei mõõda. Mõned praktilised hindamisstrateegiad:
"Kuldsete küsimuste" test. Vali 20 küsimust, mille õigeid vastuseid sa tead. Jooksuta need oma RAG-ist läbi. Skoor: kas õiged tükid said välja otsitud? Kas mudel tootis õige vastuse? Tee seda kord kuus.
Otsingu kaetus K juures. Iga kuldse küsimuse jaoks tuvasta, millised tükid sisaldavad vastust. Siis kontrolli: kas otsingusüsteem tagastas mõne neist oma top K-s (5, 10, 20)? Mõõda osakaal.
LLM-kohtuniku hindamine. Edasijõudnum versioon: lase tugeval mudelil (Claude Opus, GPT-5) hinnata, kas vastus on õige, viitetäpne, täielik ja hästi tõenduspõhine. Jooksuta esinduslike küsimuste partii peal. Meil on terve artikkel evalide kohta.
Kasutaja-tajutud kvaliteet. Meeskonna või tootmis-RAG-i jaoks lisa pöial-üles / pöial-alla iga vastuse juurde. Vaata pöial-alla mustreid. Need koonduvad teatud küsimusetüüpide ümber — paranda need.
Suurim viga on mõõtmise üldse vahele jätta. "Tundub okei" pole mõõtmine. Sa ei saa teada, kas sinu parandused töötavad, ilma selleta.
Läbitöötatud näide: lonkava RAG-i parandamine
Oletame, et oled ehitanud isikliku RAG-i oma firma sisedokumentatsiooni jaoks. Kvaliteet on keskpärane — umbes 60% küsimustest saab kasuliku vastuse. Parandused, mida sa rakendaksid, järjekorras:
Auditi kõigepealt otsingut. Kümne halva kvaliteediga vastuse jaoks vaata, millised tükid said välja otsitud. Kas õige tükk sai välja otsitud? Kui jah, on probleem mudelis või promptis. Kui ei, on probleem otsingus.
Kui otsing on probleem:
- Kontrolli tükeldamist. Kas tükid on sidusad? Kas su tükeldaja jagab keset olulist mõtet? Lülitu üle semantilisele või struktuuriteadlikule tükeldamisele.
- Lisa reranker. Kui kasutad põhilist vektorisotsingut ja top-5 tulemusi, lisa Cohere Rerank või bge-reranker-v2-m3 otsingu ja LLM-i vahele. Sageli 20-30% kvaliteedikasv.
- Lisa hübriidotsing. Eriti kui sinu päringud sisaldavad konkreetseid termineid (tootenimed, veakoodid, kõnepruuk).
- Vaata oma indekseerimist. Kas tükid on metaandmetega märgistatud (dokumenditüüp, sektsioon, kuupäev)? Kasuta otsingus metaandmete filtreid.
Kui mudel on probleem (õiged tükid välja otsitud, vale vastus):
- Pingulda prompti. Ütle mudelile selgesõnaliselt: "vasta ainult antud konteksti põhjal. Kui kontekst küsimust ei kata, ütle nii."
- Lisa viited. Nõua, et mudel viitaks kasutatud konkreetsele tükile. See nii aitab silumisel kui ka vähendab hallutsineerimist.
- Kasuta tugevamat mudelit. Kui kasutad väikest kiiret mudelit, proovi Claude Sonnet 4.5 või GPT-5.
Pärast kahte-kolme sellist uurimise-ja-paranduse ringi jõuab enamik RAG-i rakendusi 85-90% kasuliku vastuse määrani, mis on lävi, kus kasutajad tegelikult süsteemi omaks võtavad ja usaldama hakkavad.
Levinud vead
Paar konkreetset asja, mille otsa inimesed järjekindlalt satuvad:
Vale sisu indekseerimine. Turunduslehed, aegunud dokumendid, madala kvaliteediga blogisisu. Mudel ei oska eristada; kõike indeksis koheldakse kui kaanonit. Kureeri halastamatult.
Indeksi uuendamise unustamine, kui dokumendid muutuvad. Aegunud sisuga RAG annab enesekindlalt valesid vastuseid. Kas indekseeri regulaarselt uuesti või kasuta süsteemi, mis automaatselt sünkroonib.
Hindamise ignoreerimine. Enamik RAG-e juurutatakse ilma mõõtmiseta ja siis ei parandata kunagi. "Tundub okei" faas kestab igavesti. Ehita hindamine sisse esimesest päevast peale.
Otsingu kui musta kasti kohtlemine. "See lihtsalt ei tööta" pole diagnoos. Ava otsing ja vaata, mis tagasi tuleb. Peaaegu alati saab probleem ilmseks, kui sa seda näed.
Üle-disainimine varakult. Sa ei pea alustama tipptaseme pipeline'iga. Alusta NotebookLM-i või põhilise vektorisotsinguga. Lisa keerukust ainult siis, kui oled tuvastanud konkreetse kitsaskoha.
Millal see loeb
Kolm parandust — parem tükeldamine, rerankimine, hübriidotsing — loevad kõige rohkem, kui:
- Korpus on tehniline, konkreetse terminoloogiaga.
- Päringud sisaldavad täpset vastet nõudvaid elemente (koodid, nimed, ID-d).
- Kasutajad hoolivad täpsusest (juriidiline, vastavus, klienditugi).
- Süsteemi kasutatakse skaalal (väike kvaliteedikasv loeb palju, kui seda tabatakse 10 000 korda päevas).
Need loevad vähem, kui:
- Korpus on väike (alla 100 dokumendi) ja hästi organiseeritud.
- Päringud on avatud küsimused ("mis on meie seisukoht X kohta").
- Kasutajad on andestavad ja itereerivad, et vastust leida.
- Kasutusjuhtum on uurimuslik, mitte täpne.
Enamiku isikliku ja väikese meeskonna RAG-i jaoks on lihtsalt põhilisest vektorisarnasusest vektor + rerankerile liikumine kõige suurema mõjuga uuendus. Hübriidotsing on järgmine lisandus. Tükeldamine loeb igal skaalal.
Kokkuvõte
Halb RAG on peaaegu alati halb otsing ja halb otsing taandub peaaegu alati kolmele asjale: tükeldamine, rerankimine ja otsingumeetod. Paranda need kolm ja enamik sinu RAG-i kvaliteedikaebustest kaob.
Sa ei pea olema otsinguinsener, et neid rakendada. Tööriistad — Weaviate, Pinecone, Qdrant, n8n mallid, LangChaini integratsioonid — on tehnikad kättesaadavaks teinud. Kitsaskoht on nüüd peamiselt teadmine, et need eksisteerivad, ja nende rakendamisega kaalutletult tegelemine.
Kui sinu RAG ei tööta, ära süüdista mudelit. Vaata, millised tükid tagasi tulevad, paranda otsing ja siis hinda uuesti. Enamik "RAG ei tööta" kaebustest muutub nädalaga "RAG töötab nüüd hästi" kaebusteks, kui sa seda tööd tõsiselt teed.