Prohledání indexu

Dokončeno

Po vytvoření a naplnění indexu se na něj můžete dotazovat a vyhledat informace v indexovaného obsahu dokumentu. I když byste mohli načíst položky indexu na základě jednoduché shody hodnot polí, většina vyhledávacích řešení používá k dotazování indexu sémantiku fulltextového vyhledávání .

Fulltextové vyhledávání popisuje řešení hledání, která analyzují obsah dokumentu založený na textu a hledají termíny dotazu. Fulltextové vyhledávací dotazy ve službě Azure AI Search jsou založené na syntaxi dotazů Lucene , která poskytuje bohatou sadu operací dotazů pro vyhledávání, filtrování a řazení dat v indexech. Azure AI Search podporuje dvě varianty syntaxe Lucene:

  • Jednoduché – intuitivní syntaxe, která usnadňuje provádění základních hledání, která odpovídají termínům literálového dotazu odeslaným uživatelem.
  • Úplná – rozšířená syntaxe, která podporuje komplexní filtrování, regulární výrazy a další sofistikovanější dotazy.

Klientské aplikace odesílají dotazy do služby Azure AI Search zadáním vyhledávacího výrazu spolu s dalšími parametry, které určují, jak se výraz vyhodnotí a vrátí výsledky. Mezi běžné parametry odeslané s dotazem patří:

  • search – hledaný výraz, který obsahuje nalezené termíny.
  • queryType – Syntaxe Lucene, která se má vyhodnotit (jednoduchá nebo úplná).
  • searchFields – pole indexu, která se mají prohledávat.
  • select – pole, která mají být zahrnuta do výsledků.
  • searchMode – kritéria pro zahrnutí výsledků na základě více hledaných termínů. Předpokládejme například, že hledáte pohodlný hotel. Hodnota searchMode libovolného vrátí dokumenty, které obsahují "pohodlné", "hotel" nebo obojí; zatímco hodnota searchMode všech omezuje výsledky na dokumenty, které obsahují "pohodlné" i "hotel".

Zpracování dotazů se skládá ze čtyř fází:

  1. Analýza dotazů Hledaný výraz se vyhodnotí a rekonstruuje jako strom odpovídajících poddotazů. Poddotazy můžou zahrnovat dotazy na termíny (hledání konkrétních jednotlivých slov ve vyhledávacím výrazu – například hotel), dotazy na frázi (hledání frází s více termíny zadanými v uvozovkách ve vyhledávacím výrazu – například "parkování zdarma") a dotazy předpony (hledání termínů s zadanou předponou – například air*, které by odpovídaly dýchacím cestě, klimatizaci a letišti).
  2. Lexikální analýza – termíny dotazů se analyzují a upřesňuje na základě lingvistických pravidel. Text se například převede na malá písmena a odeberou se žádné zásadní stopwords (například "the", "a", "is" atd.). Slova se pak převedou na jejich kořenový tvar (například "pohodlné" na "pohodlí") a složená slova se rozdělí do základních termínů.
  3. Načtení dokumentu – Termíny dotazu se shodují s indexovanými termíny a identifikuje se sada odpovídajících dokumentů.
  4. Bodování – Každému výsledku se přiřadí skóre relevance na základě výpočtu četnosti/inverzní frekvence dokumentů (TF/IDF).

Poznámka:

Další informace o dotazování indexu a podrobnostech o jednoduché a úplné syntaxi najdete v tématu Typy a složení dotazů ve službě Azure AI Search v dokumentaci ke službě Azure AI Search.