Галоўная / Артыкулы

Калі RAG знаходзіць не той дакумент пры падабенстве 0,89: блізкасць супраць рэлевантнасці

Чаму RAG можа знайсці не той дакумент пры падабенстве 0,89: блізкасць не роўная рэлевантнасці, геаметрыя эмбедынгаў скажаецца, а гібрыдны пошук і пераранжаванне дапамагаюць.

Выдавец: REACTAPP.TOP10 хв чытання2204 слоў

Крыніцы: *What if Your RAG Retrieves the Wrong Document — Even When the Similarity Score Looks Perfect?*

Звычная карціна ў тэхналогіі генеравання з падтрымкай выкарыстоўвання інфармацыі з баз дадзэнняў: фрагменты інтэгруюцца і індэксуюцца, корыстувач ставіць запіт, запіт таксаваны, косяйная схожасць выбірае найболей прыдатныя фрагменты, якія потым включаюцца ў запрошэнне для обработкі, і большая мовная машына дае адпаведны адказ. Найкрашчы фрагмент павёў 0,89 балоў, што выглядае як высока якосць, але адказ заўсёды бывае некорэктным.

Кожны, хто стварыў болей ад однай сістэмы на аснове RAG, сталкнуўся з гэтым. Гэта явішча павтараецца настолькі часта, што жадныя змяны у спосабе фрагментавання чы інтэграцыі дадзэнняў не можу яго усунуць. Таму важлівым пытаннем ёсць тое, чы гэтая сістэма ацэнюе рэлевантнасць, чы толькі геаметрычную блізкасць.

У апрэльскім 2026 года аналізе тэхналогіі RAG у журнале Symmetry гэтае працоўкі называюцца аднай з чатырох структурных суперсечнасцей у гэтай галіні і абазаваюцца на іх як на геаметрычна-сэмантычным несувязе. Важна буць точным ў тым, што означае гэты тэрмін. У яго не сказана, што вектарны пошук не працюе, і гэта не ўзгадка пра тое, што можа зробіць геаметрыя. Гэта спосаб назваць абмежэнне, якое эмпірычна спостэрагаецца у вельмі разных сцэнарыях адзысквання інформацыі.

Короткая інструкцыя пра працэс

Як толькі апусціць додатковыя інструменты, RAG складаецца з двух стадзій, якія з’едынаюцца.

  • Пад час індэксавання дакументы дзельняцца на часткі, кожная з яых праходзіць праз кодэр і ператвараецца на ўпакоўаны вектар, а гэтыя вектары зберагаюцца ў індэксе, такім як FAISS або HNSW.
  • Пад час запіту запыт таксама праходзіць праз той жа кодэр, вычысляецца сэродзеленасць з кожным вектарам частакі, выбіраюцца топ-k вектараў, якія пасылаюцца да LLM як кантэкст.

Адзін ключоўы прынцып падтрымлівае весь гэты механізм: адстань у вектарнам прасторэ відпавае семантычнай рэлевантнасці ў мове. Тэксты з аднаковым значэннем должны знаходзіцца падалей адзін ад другога, а тэксты з розным значэннем — далей.

У большасці случаў гэты прынцып працюе дастатнь якісна, што і робіць можлівай эфектыўную пашуковую функцыю. Проблемы з’яўляюцца на «краях», і ў практычных умовах такія края выступаюць чашча, чым чакалося. Калі сістэма пашуку ставі які-небудзь тэкст у высокі ранг, яна фактычна адпавядае на пытанне, чы розмовка знаходзіцца падалей у вектарнам прасторэ, а не чы яна рашае задачу. Зазвычай адпаведзі на гэтыя пытанні збігаюцца, а цікавыя кейсы — гэтыя, дзе яны не збігаюцца.

Падобнасць не значыць рэлевантнасць

Косінусная схожасць вярніва, насколькі два вектары паказваюць у тым жа напрамку. Яна не вярніва безпаспечна, чы рассказ адпавае да запытання. Яны настаць настаткі, каб ўжоцэнка на адпаведнасць была практычна корыстная, пры тым яны ўсё ж разныя рычыны, і значны частака няудач у ўжоцэнцы выклікаецца самэй гэтай разніцай.

Гэтыя спазыркі вядомы ўжо давно. У студзіі 2020 года, дзе быў прэдставлены DPR, наводзяцца паўтарыцьлівыя цыфры. Ужоцэнка на адпаведнасць з адпаведным двойным кодэрам дала 78,4 процента точнасці сярод 20 найлепшых раследаванняў у задачах Natural Questions, а потым знізілася да 63,2 процента у задачах SQuAD, дзе просты метод BM25 дасягнуў 68,8 процента. Автары прычыну паклалі у пакаштунку трэнавання: запытанні SQuAD маюць нечыста больш заўсёды словаў з адпаведнымі рассказамі, і такі патэрн лексычны мэтчэр можа выкарыстоўваць лепшая, чым ўжоцэнка, трэнаваная на шырэйшых даных.

Адзін пункт дадзейнаў не можа стварыць універсальнага закона. Он жа конкрэтна паказвае, што сэмантычная садоўжнасць і лексычная тачнасць можу суперсечацца на аднай і той жа праметрызацыі з аднаковым алгорытамам аднаходжэння. Аналіз Symmetry узагальнюе гэты патэрн: механізм, настроены для аднаковага значэння, не ўсё час настроены для таго аднаго слова, якое мае значэнне, і навпакі таксама правільна. Чы гэта стосуецца ўсіх сцэнарыяў аднаходжэння, лепш спрыймаць як рабочую гіпатэзу. Гэта адпавядае большай часткі практычнага дазвічэння.

Дзе змінюецца геаметрыя

На глыбэйшым роўні лежы сама геаметрычная проблема. Алгорытмы інтэнсіўнага аднаходжэння ператвараюць тэкст у неперывны вектарны прастор, які практычна завжды ёсць евклідавым, адтолькі што для вычыслення скалярнага добутку і косай садоўжнасці гэта неабходна. Евклідавы прастор добра падходзіць для адначаснага аналізу двух элементаў за дапамогою калькуляцый у паводзе роўнаў, але гэта менш эфектыва для прынеймна трох патэрнаў, якія сталоўна з’яўляюцца ў рэальным тэксце.

  • Хіярархія. Служака — грызун, які ў свою чаргу ўражай. У плоскам вектарным прасторы не існуе прыроднай ідэі прыналежнасці адна да другой, а апрыксімаванне дрэва за дапамою відстаней па прамай спрачынае ўсё большыя спотварэння ў меру падыходжання да глыбокай хіярархіі.
  • Сінонімія проты касміноніміі. «Дэшавы» і «недорогі» должны знаходзіцца поблізу адзін ад другога. «Дэшавы» і «некачэнага якосці» па правілу не должны, пры тым як яны так часта з’являюцца ў тэкстах для навчання, што ўсё ж можна прабавіцца прайсунуць ўсі ўсіх вектараў якіх, хоця сама значэння гэтага не падтрымляе.
  • Час. Галоўны дырэктар компаніі — гэта разны чалавек залежна ад таго, калі была напісана фраза. У статычным укладанні няма вектара для факту, які выгоршваецца, як толькі што ўсё гэта не будзе закодаваная ў вышэйшых роўнах.

Адзін з спосабаў, пропаных у літаратурэ, — гэта вікорыстанне гіперболічнага прастору заместо евклідавага. У гіперболічным прасторэ адстані зростаюць экспансіўна, таму іерархіі, сэродзелыя дрэву, адображаюцца з меньшым спотварэнням, пры чым натуральна ствараецца адображэнне на багато роўней, якія знаходзяцца на вялікай адстані. Методы густага пошуку ў гіперболічным прасторэ паказваюць лепшую здатнасць до генералізацыі у задачах, якія стосуюцца канцэптуальных іерархій. Аднак гэта ўсьмо толькі компроміс, а не рашэнне проблемы. Вартасці обчыслаў вырастаюць, інструменты ўсё ўсё менш розвітыя, а іерархія ёсць толькі аднам з трох патэранаў, таму корпус, дзе домінуюць сінонімія чы ўзміны ў часе, можа не пакрыцца жаднымі выгодамі ад змены геаметрыі.

Гэта самае тое, на шта насправды указвае такая несувязанасць: разныя геаметрычныя прыязды вяліся між тым, якія семантычныя зв’язкі будуць адрабоўвацца належна. Якшчы выбраць евклідаву мадэль, іерархія зазвычай страждае. Якшчы выбраць гіперболічную мадэль, цена — гэта высокіі расчытны навантажэння і незрэлыя інструменты, тады як сінонімія і час застаюцца без увагі. Незалежна ад таго, які простор выбраны, гэты выбор неявнаа пацелюе, якія зв’язкі сістэма здатна адрабоўваць належна, а якія, верагодна, будзе неправаа адрабоўваць.

Прыклад з дакументацыяй

Уявіце сабе набор дакументацыі да продукту і пытанне: як мне скасаваць свой API-клуч?

Рэтрывер вяртае фрагмент пад назвам «Як скасаваць пароль аднароўкі» з косай схожасцю 0,87. Гэта вялікі показнік, адтолькі функцыя скасавання, ключ API і пароль знаходзяцца ў блізкай аблязі сектара аўтэнтыфікацыі і калектывавання аднароўкаў. Фрагмент пра зміну ключа API знаходзіцца ў іншым раздэле, ў яму вжываецца менш узнаваны слоўнік, і яго косая схожасць становіць 0,81.

Спачатку быў вярнут неправільны дакумент, якога показнік перавышае будзь-які просты порог рэлевантнасці. Простор укладання правільна зафіксаваў, што оба пытаюцца пра безпеку аднароўкаў. У яго не было можлівасці розразліць конкрэтную процедуру для аднаго пункта ад конкрэтной процедуры для іншага, калі гэтыя два ўжо ўтвараюць часткі аднаго семантычнага кластэра.

Той самыя законамасці прыменяюцца да кляузаў кантракту, якія разлічаюцца насчыткам аднае толькі запародзе, інструкцый пра дозаванне, якія залежнаць ад падгрупы паціўэнтав, і фінансавых умов, якія змінююцца залежнаць ад фінансавага года. У кожным разе блізасць вектараў адбіваецца ў спакойным адносе да спяльнага тэмы і нічога не сказвае пра тое, чы рашэнне падходзіць.

Сістэмы адналёгчэння выкарыстоўваюць кандыдатаў і не выдаюць вердыкту

Багатыя практыкі RAG тыхо прыямляюць, што рэзультаты з першага або канкрэтнага колькасці кандыдатаў ёсць адпаведным адказам на пытанне пра месца знаходжэння інформацыі. Лепшая спачатку адносіцца да іх як да кандыдатаў, якія яшчэ должны заслужыць месца ў запытанні.

Рэтрывер, які вяртае стороніцу з паролем для запіта пра ключ API, не павінен неабяжна не выконаць сваю задачу. Адносна правда, яго заведама — гэта недорогі першы крок: скараты вялічэзны набор да колькіх правдападобных кандыдатаў. Слабы момент — гэта праектаванне, якое спрыяе першаму рэзультату як абсалютнай правдзе і больш не аналізуе яго. Ланцоўка не павінна складацца з запыту, рэтрывера, выбору топ-1, LLM. Яна можа таксама складацца з запыту, потым дышэвага рэтрывера з высокім рывнем відтворэння, потым набора кандыдатаў, потым медленнейшага, але болей тачнага рэранкера, потым найкрашчага кандыдата, а потым LLM.

Адміністрацыя дакументаў і стварэнне рэзультатаў з’яўляюцца ў зв’язку, але ўтвараюць два адналежныя працэсы, і плутанне іх прыводзіць да таго, што непасоўманасці здаюцца глыбэйшымі, чым яны ёсць. Працэс на адну спробу з методам top-1 не можа выправіць сітуацыю, калі рангіраванне ўжо некорэктна. Працэс, у яком адміністрацыя дакументаў спрацьвоўваецца як стварэнне кандыдатаў, а рэальная ацэнка значамасці перадаецца на другы этап, мае шансы з’явіць непасоўманасці, калі дакумент у вектарнам прасторы ўстаўляецца дыктэйна блізка да паводлівага, але ў своёй сутнасі настолькі некарэктны, што гэта мае значэнне.

Чаму важна зважаць на значамасць

Гэта не проста акадэмічны падход. Разлік межа блізкасці і значамасці прыводзіць да конкрэтных і дорогіх працоўных непаспэхоў.

  • Безшумна ампліфікацыя галюцынацый. Масовыя мовныя модулі не можуць з’ясавіць, чы рэчак напрацоўваецца на адной тэме, але робіць глыткі некарэктныя. Яны пішу цёплы, абавесцованы адпаведзь з некорэктнага крыніцы, а абавесцованыя, але некарэктныя адпаведзі горшыя, чым проста заява пра незнаёмка для практычнае выкарыстанне.
  • Спад тачнасці у іерархічных корпусах. Як анекдоты, так і літаратура паказваюць, чым глыбэй і структурованей база знанняў, з вкладзенымі правіламі, версіяванымі спецыфікаціямі чы схемамі організацыі, тым больш трыцкаецца пошук на вектарах. У аналізе пропонуецца формальны дыягнастык, які вымервае, як спадае тачнасць з адбыццём глыбі іерархіі. Ён прызначаны як корыстны показнік, а не як фіксаваная крывая, і яго лепей вымерваць на конкрэтным корпусе, чым прыпускаць.
  • Невідма ў наборэ для ацэнкі, пакуль гэта не купівае грошы. Стандартныя крэйтэрыі, такія як recall@k для звычайных пар запытак, не акцэнтуюць на іерархічных чы родных сінонімах так, як гэта робіць рэальны корпус дадзеных. Спачатку працюе внутрэшні набор тэстаў, а потым у трэцій тыдзень эксплуатацыі з’яўляецца версія задачы з парою пароля і API-клуча.
  • Мераў падтрымкі

    Усё гэта не значыць, што методы інтэнсіўнага пошуку не працуюць. Гэта значыць, што спосаб пошуку за дапамою аднаго механізма недастаткова працэсаваны для рэальных корпусаў. Што стосуецца мераў падтрымкі, яны пераказаны прыблізна за ступенем неабходнасці кожнай з архітэктураў.

    Гібрыдны пошук: лексыкальны плюс інтэнсіўны. Адрабатайце BM25 і інтэнсіўны пошук паралельна і з’едыніце ўзрэнні, напрыклад, за дапамою методу взаімнага рангу — частага і простага спосабу. Гэта безпасебна усуне слабыя месцы, вызваныя лексыкальным перакрыццем, не зачыпаючы мадэль абмесцавання.

    # Minimal hybrid retrieval sketch: dense + BM25 fused via RRF
    from rank_bm25 import BM25Okapi
    import numpy as np
    
    def reciprocal_rank_fusion(dense_ranked_ids, bm25_ranked_ids, k=60):
        scores = {}
        for rank, doc_id in enumerate(dense_ranked_ids):
            scores[doc_id] = scores.get(doc_id, 0) + 1 / (k + rank + 1)
        for rank, doc_id in enumerate(bm25_ranked_ids):
            scores[doc_id] = scores.get(doc_id, 0) + 1 / (k + rank + 1)
        return sorted(scores.items(), key=lambda x: -x[1])# dense_ranked_ids  = [doc_id, ...] from your vector store's top-k search
    # bm25_ranked_ids   = [doc_id, ...] from bm25.get_top_n(query_tokens, doc_ids, n=k)
    fused = reciprocal_rank_fusion(dense_ranked_ids, bm25_ranked_ids)
    

    Пераранжаванне за дапамою крос-энкодэра. Ўзайце ўплотненую працэўную методыку для дагэнэравання танных кандыдатаў з высокім рэкалем — ад 50 да 100 элементаў, а пасля пераранжавайце іх за дапамою крос-энкодэра, які адначасова берае ў ўвагу запіт і дакумент. Гэта коштае больш за пару элементаў, але ў разы лепша працуе ў случаях, калі тэматыка супадае, але факты некалькі іншыя, адтолькі што гэта не залежыць ад аднаго фіксаванага вектара для кожнага тэксту.

    Перапісваўчык або разбіўчык запытаў. RQ-RAG — адны з прыкладаў: сістэма трэнуецца перазмовляць нечыярые або багатыя на часткі запытыя прычымо да пачатку пошуку. Яны дапамагаюць, калі несупаданне вынікае з недастаткова апісанага запыта, а не з незручнай структуры інфармацыі ў корпусе.

    Адаптаванне процэсу пошуку даўедзенняў з урахоўваннем структуры у стыле GraphRAG. Для справжняя іерархічная або асоцыяцыйная матэрыялы, такія як схемы організацый, залежнасці між клазамі або таксанаміі продуктав, неабходна явна прэдставіць гэтую структуру як граф, а не прымусіць яе паспаўляць у плоскы прастор. Геаметрыю больш не прабуюць прымусіць паспаўляць, яе проста ухіляюцца.

    Эмбеддынгі, налаштаваныя па домэне. Налаштаваюць кодэр на складныя негатыўныя прыклады, взятыя з сэрцаўкі самай організацыі, тыя самыя парады касвенных сінонімаў, якія маюць блізкія значэння, але не ўсунуцца як правільныя адпаведзі. Рэзультаты паказваюць значны зменшэння розніцы, хоць і не ўсуненне яе цалкам.

    Кожны з гэтых падходаў лікуе конкрэтны сімптам, і ніхто з іх не рашае асасны прынцыповы прынцып, што варта чыста прызнаць.

    Большая науковая задача

    Калі разныя геаметры добра прадставляюць разныя рэчы, то наступны логічны крок — гэта чы можа форма прастора прадставлення прыстосавацца да запіту чы корпусу даных, а не быць зафіксаванай загадзя.

    У аналізе Symmetry паказана такая можлівасць і яна адкрываецца як нарушэнне сімэтры: выбір евклідовай, гіперболічной чы сумешанай метры означае выбір той семантычнай сімэтры, якую трэба адмовіцца. Практычны падход, пропаны ў гэтым аналізе, — гібрыдны метод навчання геаметрычнага прастора, пры яком сістэма налаштовуе свою метрычную структуру вярха ў вярха з адносамі, якія кодуюцца ў кожной точцы корпусу даных, і не прымечаецца адной глобальнай геаметры для усяго індэкса. Цэў падход, запропаны ў научным артыкуле, а не готовая тэхніка з адпаведнымі крытэрыямі ацэнкі. Цэў гіпотэза, якую трэба сочыць, а не фундамент, на які можна будаваць сёння.

    Тое, што практычна змінюецца, — гэта запітанне, якое ставіма. Уместо таго, калькі мадэль інкапсулявання ёсць найкрашчай, запітанне ператвараецца на тое, які формы насправды набіраюць семантычныя зв’язкі ў дадзенах, і чыяй у архітэктуры пошуку ёсць механізм для адражэння гэтай формы.

    Што трэба запам’ятаць

    У практычным выкарыстоўванні высокая косайная схожасць і правільны пошук зазвычай настолькі блізкі, што разлік застаецца непазначальным. Зусілля па праектаванні трэба спрамаваць на тыя случаі, калі гэтыя два показнікі непазначальна адступаюць адзін ад другога, калі вектары знаходзяцца поблізу адзін ад другога завялік блізкага тэматыку, а не спільнай адпаведзі.

    Лепшыя модэлі эмбедынгу не вырашыць гэтай проблемы, як і жадная адна архітэктура. Плоскы геаметрычны прастор, незалежна ад таго, які будзе выбран, неявна прымыкае да думкі пра тое, якія заўзаёмнасці ёсць найважлівейшымі ў корпусе дадзеных, і самэ гэтая прычына існавання гібрыдных методаў пошуку, пераранжавання і індэксавання, якіе врачоўваюць структуру: ніхто не можа зробіць такую прымыку без рызыку. Модэлі эмбедынгу не ўсё такія паслабыя. Ад геаметрычнага прастора было запатрэбавана ведачыя аналіза, для чаго ён ніколі не быў цалкам створаны, і ён выканае вражаючую працу аж да моменту, калі гэта стае немагчымым.