Получавате оферта за „оптимизация за AI“.
На втора страница пише за хибридно търсене, векторно извличане, реранкинг и RRF. Питате какво означава това и чувате още 10 думи, които също не знаете. Никой не обяснява.
Не сте длъжни да ги знаете.
Добре е обаче да разбирате какво прави AI търсачката, преди да напише отговор, защото точно там се решава дали вашата страница ще бъде прочетена, или не, и никой не ви казва.
Представете си голяма библиотека със служители от 2 вида.
Първият води картотека по думи: коя книга къде споменава „климатик“. Вторият е чел всичко и помни за какво става дума във всяка книга, дори когато думата „климатик“ я няма.
AI търсачката, която отговаря, ползва и единия, и другия, а после някой преглежда купчината, която са донесли, и избира кои книги ще отидат на бюрото на този, който пише отговора.
При SEO имаше само картотеката. Тук има и читател, и човек, който подрежда купчината.
| Клиентът пита | Какво се случва на екрана |
|---|---|
| „Защо ми капе вода от вътрешното тяло на климатика?“ в ChatGPT | Картотеката не намира „капе“ в сайта на сервиз от Варна, но читателят помни страницата „Конденз при климатици“. Тя минава през пренареждането и е под отговора с връзка. |
| същият въпрос, а страницата казва само „качествено обслужване“ | Нито картотеката, нито читателят намират опора. Отговорът е от друг сайт. |
Всичко по-долу е име на една стъпка от този път. Статията ги подрежда в реда, в който се случват. Термините са английски, защото така ще ги чуете, а българското име се ползва навсякъде в сайта.
Намиране на страници
На английски retrieval.
Намирането е стъпката, в която системата търси в базата си и извлича откъсите, които най-добре отговарят на въпроса. Става преди езиковият модел, програмата зад ChatGPT, да напише и дума.
Целият път е 6 стъпки. Машината поема данните, реже ги на части, превръща ги в числа, записва ги в списъка за търсене, намира подходящите и накрая съставя отговора. Намирането е петата стъпка и всичко преди нея я подготвя.
- поемане на данните
- нарязване на части
- числово представяне
- индексиране
- намиране
- съставяне на отговора
Всичко по-долу е вътрешността на RAG, защо AI търсачката първо търси, после пише.
Ненамерената страница не съществува за отговора. Колкото и добра да е.
Споменават го, защото това е моментът, в който AI търсачката решава кои страници изобщо ще види.
На вашия сайт страницата трябва да е достъпна за четене и да казва ясно за какво е. Иначе машината не я намира изобщо.
Нарязване на части
На английски chunking.
Дългите страници не влизат в AI търсачката цели.
Машината ги реже на откъси, представя всеки откъс с числа и търси по всеки поотделно. В хранилището на OpenAI по подразбиране частите са по 800 токена (единицата, в която моделът брои текста: парче, малко по-късо от дума).
Припокриването между съседни части е 400 токена, за да не се губи смисъл на ръба.
Библиотекарят не носи цялата книга, а главата, която е попаднала в търсенето.
При Google това е класирането по пасажи, абзац по абзац. Споменават го, защото начинът на рязане определя какво ще види моделът, а абзац, който разчита на казаното 3 екрана по-горе, губи смисъла си, когато бъде откъснат.
На вашия сайт всеки раздел трябва да се разбира сам, с ясно заглавие и с подлога в първото изречение, а не с „както казахме по-горе“ или „вижте по-надолу“.
Числово представяне на смисъла
На английски embeddings.
Текстът се превръща в дълъг списък от числа, така че 2 текста с близък смисъл да имат близки числа. Определението е списък от дробни числа, при който малкото разстояние между 2 списъка значи голяма близост по смисъл.
Ползва се за търсене, групиране, препоръки и разпределяне по категории, а близостта най-често се мери по ъгъла между единия и другия списък, което се нарича косинусова близост.
Това е паметта на втория библиотекар. Не помни думите, помни за какво става дума.
Споменават го, защото върху тези числа стъпва цялото търсене по смисъл. Без тях AI търсачката би виждала само съвпадения на думи.
На вашия сайт страница, която обяснява темата с различни думи, пак се намира, ако смисълът е ясен и не се губи в общи твърдения за качество и опит.
Отделно кодиране
На английски bi-encoder.
Отделното кодиране е моделът, който превръща въпроса и документа в числа поотделно, така че сравнението после да е бързо. Защо това има значение, се вижда от едно измерване.
За най-близката двойка сред 10 000 изречения старият подход, при който въпросът и документът се подават заедно, иска около 65 часа. Отделното кодиране сваля това до около 5 секунди при същата точност.
65 часа са почти 3 денонощия, 5 секунди са един поглед към часовника.
5 секундивместо 65 часа за най-близката двойка сред 10 000 изречения, откакто въпросът и документът се превръщат в числа поотделно
Скоростта има цена.
Има я винаги. Моделът не вижда въпроса и документа един до друг, затова понякога греши в тънкостите. Споменават го, защото е първото сито, което преглежда огромен брой страници за миг и подава нататък само шепа кандидати.
На вашия сайт заглавието и първите изречения на раздела носят най-много тежест, защото те определят числата, по които ще бъдете сравнявани с всички други страници.
Търсене по числова близост
На английски vector search.
Хранилището пази числовото представяне на всеки откъс.
Само числа. Идва въпрос, той също се превръща в числа, и системата връща откъсите с най-близки числа. Пазят се представянията и се връщат най-близките до въпроса, като това се съчетава с пълнотекстово търсене и филтри.
Това е механизмът. Следващият термин е целта.
Споменават го, защото е техническото име на онова, което продавачите наричат „семантично“.
На вашия сайт няма отделна настройка, която да направите. Печели страницата, чийто текст стои близо до реалните въпроси на клиентите.
Търсене по смисъл
На английски semantic search.
Търсенето по смисъл намира резултати, които отговарят на въпроса, дори когато думите от въпроса липсват в текста на страницата.
Отчита числата зад думите, не буквите.
Това е похват, който извежда близки по смисъл резултати, включително такива с малко или никакви общи думи, които класическото търсене би пропуснало.
Клиентът пита „защо ми капе от вътрешното тяло“.
Страницата ви се казва „конденз при климатици“. Вторият библиотекар прави връзката. Първият не.
Защо ми капе вода от вътрешното тяло на климатика?
Конденз при климатицисервиз за климатици, Варна
Споменават го, защото това е обещанието на новите AI търсачки. Обещават, че разбират въпроса, а не буквите му.
На вашия сайт пишете за проблема на клиента с неговите думи и с вашите. Термините от каталога са малка част от тях.
Плътно намиране
На английски dense retrieval.
Плътното намиране е търсенето по смисъл, наречено по вида на числата, с които работи. Видовете са 2:
- Плътните представяния са списъци с определена дължина, в които всяка позиция има стойност. Правят се от невронни модели и хващат общия смисъл.
- Редките са списъци, в които повечето стойности са 0. Отговарят на конкретни думи и резултатите им са по-лесни за обяснение, защото се вижда коя дума е донесла съвпадението.
Плътно е вторият библиотекар, рядко е картотеката.
Споменават го, защото сериозните системи ползват и плътното, и рядкото, и офертата ще каже кое от тях предлага. Или няма да каже.
На вашия сайт точните думи още тежат, а смисълът тежи вече наравно с тях.
Класиране по думи (BM25)
Класирането по думи е формулата, с която търсачките от години оценяват колко подходяща е страница за дадени думи.
Отчита колко пъти се среща думата в страницата, колко рядка е тя в целия индекс и колко дълга е страницата.
За да не печелят само дългите текстове.
Настройките са 2. По подразбиране k1 е 1,2 и определя доколко повтарянето на думата носи още точки, а b е 0,75 и определя колко силно се наказва дължината.
Това е картотеката. Стара, бърза и още в употреба.
Споменават го, защото е половината от „хибридното“ в офертата.
На вашия сайт думата, по която искате да ви намерят, трябва да присъства в текста естествено, без да се повтаря на всеки ред като заклинание.
Търсене по думи и по смисъл едновременно
На английски hybrid search.
Машината пуска 2-те търсения едновременно, едното по думи, другото по числова близост.
Всяко връща своя списък и списъците се сливат в един. Най-простият случай е 2 прохода на един и същ въпрос, един по думите и един по числата, а сливането на резултатите става със следващия термин от списъка.
Всеки библиотекар носи по купчина. Някой трябва да ги събере.
Споменават го, защото хваща и точните думи, и различните формулировки, а само едното пропуска.
На вашия сайт няма да ви питат кое предпочитате. Страницата трябва да носи и правилните думи, и ясен смисъл.
Сливане на класации (RRF)
Сливането на класации е начинът, по който няколко списъка с резултати стават един.
Всяка страница получава точки по мястото си във всеки списък по формулата 1/(k + място), точките се събират и страниците, които са високо в повече списъци, излизат отгоре. В описанията на самата формула стойността на k по подразбиране е малка.
Формулата не отчита резултата, а мястото.
Първо място в единия списък и десето в другия превъзхожда двадесето и в единия, и в другия. Мястото решава. Споменават го, защото е стандартът за сливане и името му стои във всяка техническа оферта.
- 1-во място в единия списък и 10-о в другия0,0307
- 20-о място и в 2-та списъка0,0250
На вашия сайт страница, която е добра и по думи, и по смисъл, печели 2 пъти. Страница, добра само по едното, печели наполовина.
Пренаписване на въпроса
На английски query rewriting.
Преди търсенето моделът пренаписва въпроса на човека в по-добър въпрос за търсачката.
Подходът „пренапиши, намери, прочети“ тръгва от простото наблюдение, че между това, което човекът пише, и знанието, което трябва да се намери, има пропуск.
В хранилището на OpenAI същото се включва с една настройка, rewrite_query, и пренаписаният въпрос се връща в резултата.
Клиентът казва „онова нещо за влага в мазето“, а библиотекарят търси „изсушител за въздух“.
Споменават го, защото обяснява защо AI търсачката намира страници, чиито думи човекът не е изрекъл. Пренаписването и разширяването от следващия раздел заедно дават разклоняването на въпроса на няколко търсения.
На вашия сайт пишете за това, което клиентът има предвид, отвъд това, което казва на глас.
Разширяване на въпроса
На английски query expansion.
Разширяването добавя към въпроса сродни думи, за да се хванат повече подходящи документи. Измерено е, че езиков модел върши това по-добре от старите методи. Указание, което го подтиква да разбие въпроса стъпка по стъпка, ражда много свързани думи, които после влизат в търсенето.
Разликата от пренаписването е малка, но съществува.
Пренаписването сменя въпроса. Разширяването го допълва.
Споменават го, защото е една от причините един въпрос да предизвика няколко търсения наведнъж.
На вашия сайт сродните думи и близките понятия в текста ви разширяват мрежата, в която можете да бъдете уловени.
Търсене чрез примерен отговор (HyDE)
Вместо да търси по въпроса, системата задава на езиков модел първо да напише примерен отговор, после търси реални документи, които приличат на него.
Стъпките са 2. Моделът пише измислен примерен документ, а модел за числово представяне го превръща в числа и намира в хранилището истинските документи, които стоят най-близо до него.
Измислените подробности в примерния текст отпадат, защото се връщат само страници, които съществуват.
Библиотекарят си представя каква би била идеалната книга и търси най-близката до нея на рафта.
Споменават го, защото е похват, който често дава по-добри резултати от буквалното търсене по въпроса. На вашия сайт страница, която прилича на добър отговор, се намира по-лесно от страница, която прилича на реклама.
Пренареждане
На английски reranking.
Пренареждането е втора стъпка след намирането.
Модел получава въпроса и всеки кандидат един до друг и ги подрежда наново по точки за подходящост. При Cohere това е подреждане на подадените документи от най-подходящ към най-малко подходящ спрямо въпроса, с точки между 0 и около 1.
Този модел вижда въпроса и документа един до друг, затова е по-точен от отделното кодиране, но е по-бавен и затова получава само малка купчина, не целия индекс.
Редът е такъв.
Първото сито подава неголям брой кандидати, пренареждането ги преценява един по един.
Купчината е на масата. Някой я чете.
Споменават го, защото пренареждането решава кои от намерените страници стигат до отговора.
На вашия сайт откъсът трябва да отговаря на въпроса пряко и точно, защото в тази стъпка се четат думите една по една, а не общото впечатление.
Първите k резултата
На английски top-k.
„Първите k“ е броят резултати, които една стъпка подава на следващата.
Не повече. Числото е различно на всяка стъпка. В хранилището на OpenAI отговорът получава по подразбиране до 10 резултата и най-много 50, ако някой го поиска.
Там има и праг за точки, score_threshold между 0,0 и 1,0, който отрязва слабите кандидати, независимо колко са.
Колко книги стигат до бюрото. Не всички намерени, а първите няколко.
Споменават го, защото обяснява защо десетата по ред страница на практика не съществува за отговора.
На вашия сайт целта не е да бъдете намерени, а да сте сред първите няколко след пренареждането, защото останалите не стигат до бюрото на този, който пише.
Подбор с разнообразие (MMR)
Подборът с разнообразие избира резултати, които са едновременно подходящи за въпроса и различни помежду си. Това е похват, който връща набор от резултати, подходящи и разнообразни, без повторения.
Първо взема по-голям набор кандидати, fetch_k, после избира k от тях.
Множител lambda между 0 и 1 накланя избора към подходящост или към разнообразие.
Ако 5 книги казват едно и също, библиотекарят носи една от тях и 4 други. Не 5 еднакви.
Споменават го, защото обяснява защо 2 ваши страници с почти еднакво съдържание не влизат заедно в отговора.
За вашия сайт това значи следното.
2 страници, които казват едно и също, се борят за едно място.
Дайте им различна задача или ги слейте.
Проверете:
- разбира ли се всеки раздел на най-важната ви страница сам, без „както казахме по-горе“;
- има ли в текста и точните думи от каталога, и думите, с които клиентът описва проблема си;
- има ли 2 страници на сайта, които казват едно и също.
Кое от тези 16 понятия спира вашите страници е първата проверка в потока за Google.
Прочетете една своя страница на глас, като библиотекар, който е получил само средния абзац. Разбира ли се за какво е и на кой въпрос отговаря? Ако не, знаете откъде да започнете.