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

Гібрыдны пошук для RAG: BM25, вектары і Reciprocal Rank Fusion на практыцы

Гібрыдны пошук для RAG: чаму чыста вектарны пошук губляе дакладныя ідэнтыфікатары, як Reciprocal Rank Fusion злівае BM25 з эмбедынгамі і дзе гібрыду ўсё яшчэ не хапае.

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

Крыніцы: Hybrid Search in RAG — BM25, Vectors, and Reciprocal Rank Fusion in Practice

Дадзенне можлівасці знаходжэння па ключоўых словах у сістэме, якая выкарыстоўвае толькі вектары, ўскладнівае працэс пошуку і ў той жытак ёсць аднам з найдэшавейшых спосабоў падвышэння точнасці ў RAG. Компанія Anthropic пераканалася гэтым на саслужбовых корпусах: вікорыстоўванне BM25 у кантэксце разам з кантэкстуальнымі вектарамі зменіла колькасць неправільна знайдзеных дакументаў у топ-20 на 49 процэнтав, пры чым сама мадэль вектараў засталася незменнай.

Разглянем прычыны такога рэзультата. Пользоватэль вводзіць ідэнтыфікатор автамобіля, напрыклад GX-V5-5N. Сістэма, якая выкарыстоўвае толькі вектары, вяртае загальныя інструкцыі па рэўістрацыі і історыю обслужвання, а правільны дакумент нява ў жадным з першых дзесяці рэзультатаў. Кантэкстуальныі вектар ідэальна фіксуе автамобільны кантэкст, і самэ гэта прычына таго, што сістэма ігнаруе буквальны тэкст. Гэта не стосуецца слабых вектараў — гэта структурны прынцып, які вплывае на будзь-яю сістэму RAG, пабудаваную толькі на вектарах, што і ёсць сутнісцю большасці стандартных інструкцый.

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

Ідэя за две хвіліны

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

BM25, лексычная функцыя ранжыравання з 1990-х гадоў, запэўняе тое, чаго не хапяць вектарам. Ён практычна без зусілля выявляе рэдкія, спецыфічныя токены, але ў замяну працягвае не бачыць парафразаў і сінанімав. Ція два методы неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам неяксамовым чынам не

Складна частка ў тым, што ўзяткі з іх алгорытмав не можна сумаваць. Рэйтынгі BM25 не маюць меж і залежаць ад корпуса даных, тады як косайна схожасць лежыць межаючы -1 і 1. Сума 15,3 і 0,82 не мае жадного значэння. Таму сучасныя алгорытмы не з’еднаюць рэйтынгі. Яны з’еднаюць пазычкі за дапамою методу Reciprocal Rank Fusion.

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

Два взаімадопамагаючыя слепыя пункты

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

Першы ў выпадку працюе так сама літэральна, як Ctrl+F. Калі запытаюцца пра старонку з кодам адказу ERR_CONNECTION_RESET, ён адразу яе знаходзіць. Калі запытаюцца пра проблемы заўязку, ён ігноруе документ пра втрату сесіі, таму што жадных з слоў запытку там няма.

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

Ні адны з іх сама по сабе недастатні. Гэта весь аргумент у двух параграфах.

Што лічыць BM25

BM25 ніяк не ёсць магія і ніяк не застарэў. Ён працуе на звёрнутым індэксе — табеле, якая ведае кожнае слова і документы, якія яго маюць, таму сістэма ніколі не скануе весь калекцыя. Ранжыраванне базуецца на трох вузловых прынцыпах:

  • Рэдкія тэрміны маюць большую значымасць. Ідэнтыфікатор GX-V5-5N гаворыць набагато больш, чым слова «автамабіль».
  • Павтарэнне прыводзіць да насыцэння. Дзесяты раз павтарэння слова дае значна меньшы эфект, чым другі раз, таму што крывая становіцца плоскай пасля калькі павтарэнняў.
  • Дзейсць штраф за дужыня. Доўгі дакументы не павінны выграваць толькі таму, што ў іх больш месца для вялікіх колькасцей прыдатных падсветак.

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

Памылка катэгарыі, якую трэба утрымацца ад

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

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

Чаму нельга проста сумаваць балы

Прыродны інстынкт інжынера — нормалізаваць, дадаць вагу і сумаваць. Але гэта сталкаецца з фактам, які немагчыма усунуць падчыненнем параметраў.

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

Дадзенне 15,3 да 0,82 падобнае да дадзення кілаграмаў да фунтамоў без пераканварэння: арытмэтычна можлівае, але інфармацыйна беззначнае. Можна выкарыстоўваць нормалізацыю тыпу min-max або z-score, але тады оба сістэмы ацэнкі трэба перэкалібраваць ўсё час, калі змініцца корпус, модэль укладання або сумешчанне запытак. Калібраванне, якое трэба перарабатваць пасля кожнага перэіндэксавання, ўжо ёсць «відкладзеным боргам».

Галасаванне па пазіцыі

Метод саюзнага рангу пазірае гэтую проблему, ігнаруючы балы. Ён бачыць толькі ранг, які кожны механізм даў дакументу. Формула простая: саюзны бал дакумента — гэта сума, за кожны механізм, адна дзелае на (k плюс яго ранг у спісе таго механізма). Дакумент, які не ў спісе, не дапамагае.

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

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

Пры адзорткіх дзеянаў дызайну выяўляецца аднаго заўважэння: стандартнае значэнне k=60 было вылучана на адной пілотной працэзе і не пераглядвалася праз адной з пасляэйных перацэнкаў. Самі автары апісалі гэта як неактыўны выбар. Пры k=60 першая пазіцыя даходзіць да рэйтынгу прыблізна на 1,6 процента вышэй за другую пазіцыю, тады калі шасцідзiesятая пазіцыя даходзіць да рэйтынгу прыблізна напаловыя значэнні першай пазіцыі.

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

Як гібрыдны метод стаў стандартам

Найболее чыткія даныя прайшлі з эксперыментаў Anthropic з 2024 года па кантэкстнаму выкарыстоўванню дадзеных на ўласных наборах дадзеных, у якіх аналізавалася частота, калі правы фрагмент не быў у топ-20. Самыя кантэкстныя эмбедынгі зменілі колькасць такіх прыгэў на 35 процэнтам. Даўжэйшае застосоўванне кантэкстнага BM25 дало змену на 49 процэнтам, што значыць, што лексычны падход стварыў значную частку таго, што даў апградацыя эмбедынга.

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

Канвергенція між постачальнікамі сэрвісаў гаворыць больш, чым будзь-які адзін крытэрый. Elasticsearch, OpenSearch, Weaviate, Qdrant і Azure AI Search усе включаюць RRF як стандартную функцыю. Гібрыдны пошук перайшаў з катэгорыі прыгэткай опцыі на стандартнае налаштаванне.

Кошт другогіндэксу

Існуе певная цена, яку трэба врахавляць ўсё раней, пры прымэнні рашэння, а не пасля першага інцыдэту:

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

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

Дзе гібрыдны падход прасцягваецца

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

У порэвананні Azure AI Search Microsoft за 2023 год гібрыдны спосаб абрання інфармацыі перамагаў спосаб, які выкарыстоўваў толькі вектары. Аднак, якшча разглядаць рэзультаты па катэгорыях, картына стае менш ясной: для запытанняў, якія ўсё ў тым жа стылі ключоўых слоў, адны лексычны двайнік можа даць вышы бал, чым сумаваны рэзультат. Сярэдняя вялічына маскіруе тое, што паказвае аналіз кожнага сегмента окрэма.

Другі двайнік не завжды дапамагае

Дзе бы ні быў правы лексычны двайнік, другі варыянт слабяе яго рэзультаты. Прыпустым, BM25 ставі правы дакумент на першае месца, а вектары — на дзесятае. Сумаванне прымусвае яго опусціцца ніжэй за дакумент, які оба методы ставяць на трэцяе месца. Едзінства перамагае тачнасць, што ўзято за прымет, але гэта коштуе ў дзеярых тыпах запытанняў.

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

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

Ні адны з рэзультатаў не спроцватае прыменне гібрыднага пошуку. Оба спроцватаюць проты яго ўваходжэння без пераканальвання сопственнага распаду запытанняў. Багатыя команды выбіраюць гібрыдны падход як стандарт і ніколі не аналізуюць гэты распад.

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

Проблема кансэнсусу

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

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

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

Фільтрацыя прытаму з’еднанню

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

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

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

Ішчо адзін плюс для морфалогічная багатае мов. Сільная інфлексія спакошвае падобнае падбіранне лексыкі. Без якіснай лемматызацыі BM25 тырае вялікую частку сваіх пераваг, таму што варыянты слова па відменам, як у польскай мове umowy і umowie або у нямецкай Vertrags і Verträgen, выглядаюць як абсалютна разныя токены. Гэта рэдкі случай, калі вектарны падход выручае лексычны, а не наадворс.

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

Што можна выняць з гэтага

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

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

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

Спадневаная літэратура

  • Практычныя прытамулы: RAG на базе вектараў у Oracle: эмбеддынгі, HNSW/IVF і гібрыдныя падходы — Паследовы апісанне практычных прытамулов: RAG на базе вектараў у Oracle: эмбеддынгі, HNSW/IVF і гібрыдныя падходы; кантракты, перакананні і шаблоны коду для команд, якія впрыменяюць гэты падход.
  • Пяць спосабаў індэксавання вектараў для RAG, перапытаных на мільйоне эмбеддынгаў з Вікіпедыі — Порэванае Flat search, IVFFlat, HNSW, гібрыдны BM25 і DiskANN па паўтарэнні, адзысквам і адтульненні індэксаў, з канкрэтнымі цыфрамі і прыбліжнымі крэтэрамі для выбору.
  • Spring AI: Лепшыя рэзультаты RAG за дапамою гібрыднага пошуку з Lucene і RRF — Адзінаванне вектарнага пошуку з Lucene BM25 у рэтрыверы Spring AI і злучэнне рангаванняў за дапамою Reciprocal Rank Fusion, ў рэзультаце чаго RAG падбірае як значэнні, так і точныя тэрміны.
  • Стварэнне RAG для калькуляцыі кількох аб’ектаў на Amazon S3 Vectors: практычны падход — Дызайн індэкса для кожнага аб’екта на S3 Vectors: крантаваныя кантэнцыі STS, вычысцэнне дадзеных на адной клучоўцы, аўдыт за дапамою CloudTrail і меры ізоляцыі, якія яшчэ існуюць у кодзе прыемліка.
  • Ізоляцыя тэнэнтаў для RAG на Amazon S3 Vectors: чаму важліва ARN — чаму індэкс для кожнага тэнэнта з яго сабойственной ARN лепшы за фільтры метадаў для ізоляцыі, рэзідэнціі, выдалення, аўдыту і вярнавання паходжання дадзэнняў у фармаце RAG на Amazon S3 Vectors па стандартам GDPR.
  • Локальны RAG без вектараў: SQLite FTS5 і BM25 для пошуку коду — чаму ўжоўтучныя вектарныя індэксы напрацоўваюць машыны распрацоўшчыкаў, і як SQLite FTS5 з BM25 даўае быстрэйшы пошук коду з точным адпаведненнем за частку памяці.
  • Beyond Naive RAG: HNSW Memory Costs, Hybrid Search and Long Context — Прычыны, чырвоныя для вектарных індэксаў у памяці на вялікіх масштабах, калі не выконваецца пошук з точным адпаведненнем, і як гібрыды BM25, RRF і PostgreSQL падходзяць для працы у сэрэўе з дзейнарамі дліжынных кантэкстаў.
  • Hybrid Search for a Homelab: Qdrant RRF, BM25 and Custom Chunking — Дапаможнік для самастаўленага домашньага лабараторнага прыстрою, які дзеляе нотаткі, табліцы, дыяграмы з Draw.io і логі з Loki на часткі, а пасля выкарыстоўвае ўплотненыя і розрозненыя вектары, метод RRF і пераранжаванне за дапамогою крос-кодэра для ўзнавання інфармацыі.