Relevance ve službě Azure AI Vyhledávač

Note

Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.

Skutečnou mírou relevance je to, jak dobře načtená sada výsledků splňuje potřeby zákazníků a uživatelů. V tomto článku se dozvíte o:

  • Hlavní strategie pro vytváření relevantních výsledků ve službě Azure AI Vyhledávač
  • Princip měření relevance
  • Akce, které můžete provést ke zlepšení relevance

Strategie pro vysoce relevantní výsledky

Ve službě Azure AI Vyhledávač se jako nejlepší přístupy pro vytváření vysoce relevantních výsledků objevily dvě hlavní strategie.

  • Hybridní vyhledávání pomocí sémantického rankeru
  • Agentní vyhledávání s plánováním dotazů na základě LLM (preview) a syntézou odpovědí (preview)

Hybridní vyhledávání (klasické) poskytuje relevanci kombinováním přesnosti dotazů klíčových slov a sémantické podobnosti vektorových dotazů v požadavku vyhledávání, který cílí na jeden index. Hledání klíčových slov funguje přes doslovný dotaz. Vektorové vyhledávání spouští stejný dotaz pomocí vektorizované verze stejného řetězce. Dotazy se provádějí paralelně a hledají přesné a sémanticky podobné shody. Výsledky se sloučí, seřadí a následně přehodnotí pomocí sémantického rankeru, který podporuje nejrelevavantnější shody. Použití klíčového slova a vektorového vyhledávání společně odsadí slabé stránky každého přístupu jako samostatného řešení. Sémantický ranker je další komponenta, která přispívá k lepšímu výsledku.

Agentní vyhledávání zajišťuje relevanci prostřednictvím plánování dotazů založeného na LLM (Preview), syntézy odpovědí (Preview) a znalostní báze, která vymezuje celou oblast vyhledávání. LLM dokáže analyzovat a transformovat dotazy pro efektivnější načítání. Může rozložit složité otázky do cílových poddotazů, upřesnit vágní požadavky nebo zobecnit zužované dotazy pro širší rozsah. V typické úloze agentického načítání odpoví LLM na otázku díky svým rozumovým schopnostem, kontextu z historie chatu a pokynům k načtení, aby identifikovala nejlepší obsah a využila ho co nejefektivněji. Tato kombinace plánování dotazů založených na LLM, vyhledávání ve znalostní bázi s více zdroji a odůvodnění LLM spočívá v tom, jak agentické načítání vrací vysoce relevantní výsledky.

Relevance také závisí na tom, že mají základní údaje o dostatečném množství a kvalitě. V agentním načítání můžete vypsat více zdrojů znalostí, abyste rozšířili rozsah prohledávatelného obsahu a poskytli logiku pro výběr specifických zdrojů.

Měření relevance

Bez ohledu na to, jak se obsah načte, je relevantní jakýkoli daný výsledek určen algoritmem řazení, který vyhodnocuje sílu shody na základě toho, jak přesně dotaz odpovídá obsahu ve vyhledávacím korpusu. Když se najde shoda, algoritmus přiřadí skóre a výsledky se seřadí podle daného skóre a v odpovědi se vrátí nejvyšší výsledky.

K řazení dochází vždy, když je žádost o dotaz určená pro agentní načítání a klasické hledání pro klíčové slovo, vektor a hybridní dotazy. K tomu nedojde, pokud dotaz vyvolá striktní porovnávání vzorů, jako je dotaz jen pro filtr nebo specializovaný formulář dotazu, jako je automatické dokončování, návrhy, geoprostorové vyhledávání, přibližné vyhledávání nebo vyhledávání regulárních výrazů. Jednotné skóre hledání 1,0 označuje nepřítomnost algoritmu řazení.

Úrovně řazení

Dotazovací modul ve službě Azure AI Vyhledávač podporuje víceúrovňový přístup k řazení výsledků hledání, kde existuje integrovaný způsob řazení pro každý typ dotazu a další možnosti řazení pro rozšířené ladění relevance.

Tato část popisuje úrovně hodnoticích operací. Obrázek toho, jak spolupracují, najdete v diagramu v tomto článku. V tomto článku najdete také porovnání všech typů a rozsahů skóre hledání .

Level Description
Úroveň 1 (L1) Počáteční skóre hledání (@search.score).
U textových dotazů odpovídajících tokenizovaným řetězcům jsou výsledky vždy seřazené podle algoritmu řazení BM25.
U vektorových dotazů se výsledky řadí buď pomocí hierarchického navigace Small World (HNSW), nebo vyčerpávajícího K-nejbližšího souseda (KNN). Vyhledávání obrázků nebo vícemodální vyhledávání jsou založené na vektorových dotazech a jsou hodnoceny pomocí algoritmů řazení vektorů L1.
Tavené L1 Bodování z více dotazů pomocí algoritmu RRF (Reciprocal Ranking Fusion). RRF se používá pro hybridní dotazy, které obsahují textové a vektorové komponenty. RRF se používá také při paralelním provádění více vektorových dotazů. Skóre hledání z RRF se odráží v @search.scorejiném rozsahu.
Úroveň 2 (L2) Sémantické skóre řazení (@search.reRankerScore) používá strojové porozumění textu k obsahu získanému řazením L1 a přehodnocuje výsledky L1, aby lépe odpovídaly sémantickému záměru dotazu. L2 přeřazuje výsledky L1, protože tím šetří čas a peníze; bylo by zakázáno používat sémantické řazení jako systém hodnocení L1. Sémantické řazení je prémiová funkce, která účtuje využití sémantických modelů řazení. Pro textové dotazy a vektorové dotazy, které obsahují text, je to volitelné, ale je to však vyžadováno pro agentní vyhledávání. I když agentní načítání odesílá do dotazovacího engine více dotazů, algoritmus řazení pro agentní načítání je sémantický řadič.
Úroveň 3 (L3) Platí pro agentní načítání a medium úroveň úsilí při uvažování pro načítání (Preview verze). Pořadí L3 odkazuje na iterativní vyhledávání a vyvolá se, když agentní vyhledávací stroj a LLM souhlasí s tím, že k vrácení relevantnějšího výsledku je potřeba další zpracování dotazu. Další informace viz Iterativní vyhledávání pro vyhledávání médií.

Naladění relevance

Ladění relevance je technika pro zvýšení skóre hledání na základě dodatečných kritérií, jako jsou vážená pole, aktuálnost nebo blízkost. V Azure AI Vyhledávač se možnosti optimalizace relevance liší v závislosti na typu dotazu:

  • U textového a číselného obsahu v klíčovém slově nebo hybridním vyhledávání můžete ladit relevanci prostřednictvím hodnoticího profilu nebo vyvoláním sémantického rankeru.

  • U vektorového obsahu v hybridním dotazu můžete vážit vektorové pole , abyste zvýšili důležitost vektorové komponenty vzhledem k textové komponentě hybridního dotazu.

  • V čistě vektorových dotazech můžete experimentovat s hierarchickými navigacemi Small World (HNSW) a úplnými K-nejbližšími sousedy (KNN), abyste zjistili, zda jeden algoritmus překonává druhý ve vašem scénáři. Grafování HNSW s úplným nahrazením metody KNN při dotazování je nejflexibilnější přístup pro srovnávací testování. Můžete také experimentovat s různými modely vkládání a zjistit, které modely vytvářejí výsledky vyšší kvality. Nakonec mějte na paměti, že hybridní dotaz nebo vektorový dotaz na dokumenty, které obsahují nevektorová pole, jsou relevantní pro ladění relevance, takže pouze vektorová pole se nemohou účastnit úsilí ladění relevance.

Vlastní logika posílení pomocí hodnoticích profilů

Profily bodování jsou volitelnou funkcí pro zvýšení skóre na základě dalších uživatelsky definovaných kritérií. Kritéria můžou obsahovat vážená pole, u kterých je shoda nalezená v určitém poli přidělena větší váhu než stejná shoda nalezená v jiném poli. Kritéria lze také definovat pomocí funkcí, které zvyšují aktuálnost, blízkost, velikost nebo rozsah. S bodovacími profily nejsou spojené žádné další náklady. Pokud chcete použít bodovací profil, definujete ho v indexu a pak ho zadáte v dotazu.

Logika vyhodnocování se vztahuje na text a číselný nevektorový obsah. Profily bodování můžete použít s:

U samostatných textových dotazů profily bodování identifikují prvních 1 000 shod v hledání seřazeném podle BM25, přičemž 50 nejlepších shod je vráceno v odpovědi.

V případě čistých vektorů je dotaz pouze vektorový, ale pokud dokumenty odpovídající k obsahují nevektorová pole s obsahem čitelným pro člověka, použije se profil hodnocení na nevektorová pole v dokumentech.

Pro textovou komponentu hybridního dotazu profily bodování identifikují prvních 1 000 shod v hledání seřazeném podle BM25. Jakmile se ale identifikuje těchto 1 000 výsledků, obnoví se do původního pořadí BM25, aby bylo možné je přehodnotit společně s vektory v konečném pořadí reciproční funkce hodnocení (RRF), kde se skórovací profil (identifikovaný jako "konečné nastavení zvýraznění dokumentu" na obrázku) použije na sloučené výsledky, spolu s vážením vektorů a sémantickým hodnocením jako poslední krok.

U sémanticky seřazených dotazů (které se nezobrazují v diagramu) za předpokladu, že používáte nejnovější rozhraní REST API verze Preview nebo balíček Sady Azure SDK ve verzi Preview, je možné profily bodování použít přes seřazenou sadu výsledků L2 a vygenerovat nový @search.rerankerBoostedScore , který určuje konečné hodnocení.

Typy skóre hledání

Výsledky hodnocení jsou zobrazené pro každou shodu v odpovědi dotazu. Tato tabulka uvádí seznam všech skóre hledání s příslušným rozsahem. Rozsah se liší podle algoritmu.

Score Range Algorithm
@search.score 0 až neomezeně Algoritmus řazení BM25 pro vyhledávání textu
@search.score 0.333 - 1.00 HNSW nebo vyčerpávající algoritmus KNN pro vyhledávání vektorů
@search.score 0 až horní limit určený počtem dotazů Algoritmus RRF
@search.rerankerScore 0.00 - 4.00 Sémantický algoritmus řazení pro řazení L2
@search.rerankerBoostedScore 0 až neomezeně Sémantické hodnocení se zvýšením skóre profilu (skóre může být výrazně vyšší než 4)

Diagram algoritmů řazení

Následující diagram znázorňuje, jak algoritmy řazení spolupracují.

Diagram znázorňující, která pole mají profil bodování a kdy dojde k řazení

Note

Pokud použijete sémantické řazení, vlastnost rankingOrder určuje, zda jsou výsledky sémanticky hodnocené výsledky (@search.rerankerScore) nebo zesílené skóre ( @search.rerankerBoostedScore) vytvořené po použití profilu bodování.

Příklad dotazu včetně všech algoritmů řazení

Následující hybridní sémantický dotaz ukazuje pracovní postup řazení v předchozím diagramu. Dotaz se vyhodnotí pomocí RRF (na základě skóre L1 pro text a vektory), za nímž následuje sémantické řazení.

POST https://{{search-service-name}}.search.windows.net/indexes/{{index-name}}/docs/search?api-version=2026-08-01-preview

{
  "search": "cloud formation over water",
  "count": true,
  "vectorQueries": [
    {
      "kind": "text",
      "text": "cloud formation over water",
      "fields": "text_vector,image_vector"
    }
  ],
  "queryType": "semantic",
  "semanticConfiguration": "my-semantic-configuration",
  "select": "title,chunk",
  "top": 5
}

Odpověď pro hybridní sémantický dotaz obsahuje původní RRF @search.score a @search.rerankerScore.

  "value": [
    {
      "@search.score": 0.03177805617451668,
      "@search.rerankerScore": 2.6919238567352295,
      "chunk": "A\nT\n\nM\nO\n\nS\nP\n\nH\nE\n\nR\nE\n\nE\nA\n\nR\nT\n\nH\n\n32\n\nFraming an Iceberg\nSouth Atlantic Ocean\n\nIn June 2016, the Suomi NPP satellite captured this image of various cloud formations in the South Atlantic Ocean. Note how low \n\nstratus clouds framed a hole over iceberg A-56 as it drifted across the sea. \n\nThe exact reason for the hole in the clouds is somewhat of a mystery. It could have formed by chance, although imagery from the \n\ndays before and after this date suggest something else was at work. It could be that the relatively unobstructed path of the clouds \n\nover the ocean surface was interrupted by thermal instability created by the iceberg. In other words, if an obstacle is big enough,  \n\nit can divert the low-level atmospheric flow of air around it, a phenomenon often caused by islands.",
      "title": "page-39.pdf",
    },
    {
      "@search.score": 0.030621785670518875,
      "@search.rerankerScore": 2.557225465774536,
      "chunk": "A\nT\n\nM\nO\n\nS\nP\n\nH\nE\n\nR\nE\n\nE\nA\n\nR\nT\n\nH\n\n24\n\nMaking Tracks\nPacific Ocean\n\nShips steaming across the Pacific Ocean left this cluster of bright cloud trails lingering in the atmosphere in February 2012. The \n\nnarrow clouds, known as ship tracks, form when water vapor condenses around tiny particles of pollution from ship exhaust. The \n\ncrisscrossing clouds off the coast of California stretched for many hundreds of kilometers from end to end. The narrow ends of the \n\nclouds are youngest, while the broader, wavier ends are older.\n\nSome of the pollution particles generated by ships (especially sulfates) are soluble in water and can serve as the seeds around which \n\ncloud droplets form. Clouds infused with ship exhaust have more and smaller droplets than unpolluted clouds. As a result, light \n\nhitting the ship tracks scatters in many directions, often making them appear brighter than other types of marine clouds, which are \n\nusually seeded by larger, naturally occurring particles like sea salt.",
      "title": "page-31.pdf",
    },
    {
      "@search.score": 0.013698630034923553,
      "@search.rerankerScore": 2.515575408935547,
      "chunk": "A\nT\n\nM\nO\n\nS\nP\n\nH\nE\n\nR\nE\n\nE\nA\n\nR\nT\n\nH\n\n16\n\nRiding the Waves\nMauritania\n\nYou cannot see it directly, but air masses from Africa and the Atlantic Ocean are colliding in this Landsat 8 image from August 2016. \n\nThe collision off the coast of Mauritania produces a wave structure in the atmosphere. \n\nCalled an undular bore or solitary wave, this cloud formation was created by the interaction between cool, dry air coming off the \n\ncontinent and running into warm, moist air over the ocean. The winds blowing out from the land push a wave of air ahead like a  \n\nbow wave moving ahead of a boat. \n\nParts of these waves are favorable for cloud formation, while other parts are not. The dust blowing out from Africa appears to be \n\nriding these waves. Dust has been known to affect cloud growth, but it probably has little to do with the cloud pattern observed here.",
      "title": "page-23.pdf",
    },
    {
      "@search.score": 0.028949543833732605,
      "@search.rerankerScore": 2.4990925788879395,
      "chunk": "A\nT\n\nM\nO\n\nS\nP\n\nH\nE\n\nR\nE\n\nE\nA\n\nR\nT\n\nH\n\n14\n\nBering Streets\nArctic Ocean\n\nWinds from the northeast pushed sea ice southward and formed cloud streets—parallel rows of clouds—over the Bering Strait in \n\nJanuary 2010. The easternmost reaches of Russia, blanketed in snow and ice, appear in the upper left. To the east, sea ice spans \n\nthe Bering Strait. Along the southern edge of the ice, wavy tendrils of newly formed, thin sea ice predominate.\n\nThe cloud streets run in the direction of the northerly wind that helps form them. When wind blows out from a cold surface like sea \n\nice over the warmer, moister air near the open ocean, cylinders of spinning air may develop. Clouds form along the upward cycle in \n\nthe cylinders, where air is rising, and skies remain clear along the downward cycle, where air is falling. The cloud streets run toward \n\nthe southwest in this image from the Terra satellite.",
      "title": "page-21.pdf",
    },
    {
      "@search.score": 0.027637723833322525,
      "@search.rerankerScore": 2.4686081409454346,
      "chunk": "A\nT\n\nM\nO\n\nS\nP\n\nH\nE\n\nR\nE\n\nE\nA\n\nR\nT\n\nH\n\n38\n\nLofted Over Land\nMadagascar\n\nAlong the muddy Mania River, midday clouds form over the forested land but not the water. In the tropical rainforests of Madagascar, \n\nthere is ample moisture for cloud formation. Sunlight heats the land all day, warming that moist air and causing it to rise high into the \n\natmosphere until it cools and condenses into water droplets. Clouds generally form where air is ascending (over land in this case), \n\nbut not where it is descending (over the river). Landsat 8 acquired this image in January 2015.",
      "title": "page-45.pdf",
    }
  ]