Rychlý start: Vytvoření Azure Cognitive Search indexu v Azure Portal
Vytvořte svůj první vyhledávací index pomocí Průvodce importem dat a integrovaného ukázkového zdroje dat, který se skládá z fiktivních hotelových dat. Průvodce vás provede vytvořením vyhledávacího indexu (hotels-sample-index), abyste mohli během několika minut napsat zajímavé dotazy.
I když nebudete používat možnosti v tomto rychlém startu, průvodce obsahuje stránku pro rozšiřování AI, abyste mohli extrahovat text a strukturu ze souborů obrázků a nestrukturovaný text. Podobný názorný postup, který zahrnuje rozšíření AI, najdete v rychlých startech k překladu textu a ám dovedností entit nebo ám dovedností obrázků OCR.
Požadavky
Účet Azure s aktivním předplatným. Vytvořte si účet zdarma.
Služba Azure Cognitive Search (libovolná úroveň, libovolná oblast). Vytvořte službu nebo v rámci aktuálního předplatného vyhledejte existující službu. Pro tento rychlý start můžete použít bezplatnou službu.
Kontrola místa
Mnoho zákazníků začíná s bezplatnou službou. Úroveň Free je omezená na tři indexy, tři zdroje dat a tři indexery. Než začnete, ujistěte se, že máte místo pro další položky. V tomto kurzu se vytváří od každého objektu jeden.
Na stránce přehledu služby zjistíte, kolik indexů, indexerů a zdrojů dat už máte.
Vytvoření indexu a načtení dat
Vyhledávací dotazy provádějí iterace indexu, který obsahuje data s možností vyhledávání, metadata a další konstrukce, které optimalizují určité chování vyhledávání.
Pro tento kurz používáme integrovanou ukázkovou datovou sadu, kterou je možné procházet pomocí indexeru prostřednictvím průvodce importem dat. Indexer je prohledávací modul pro určitý zdroj, který dokáže číst metadata a obsah z podporovaných zdrojů dat Azure. Za normálních okolností se indexery používají programově, ale na portálu k nim můžete přistupovat prostřednictvím průvodce importem dat.
Krok 1 – spuštění průvodce importem dat a vytvoření zdroje dat
Přihlaste se k webu Azure Portal pomocí svého účtu Azure.
Vyhledejte vyhledávací službu a na stránce Přehled kliknutím na Importovat data na panelu příkazů vytvořte a naplňte vyhledávací index.
V průvodci klikněte na tlačítko Připojení k datům > Ukázky > hotels-sample. Tento zdroj dat je integrovaný. Pokud vytváříte vlastní zdroj dat, budete muset zadat název, typ a informace o připojení. Po vytvoření se z něj stane „existující zdroj dat“, který je možné využít v dalších operacích importu.
Pokračujte na další stránku.
Krok 2 – Přeskočení stránky o rozšíření obsahu
Průvodce podporuje vytvoření kanálu pro rozšiřování AI pro začlenění algoritmů Cognitive Services AI do indexování.
V tuto dobu tento krok přeskočíme a přesuneme se přímo k části Customize target index (Přizpůsobit cílový index).
Krok 3 – Konfigurace indexu
Pro předdefinovaný ukázkový index hotels je pro vás definováno výchozí schéma indexu. S výjimkou několika pokročilých příkladů filtrů se dotazy v dokumentaci a ukázky, které cílí na index hotelových ukázek, spustí v této definici indexu:
Ve cvičení založeném na kódu se vytváření indexu obvykle dokončí před načtením dat. Průvodce importem dat tyto kroky zkrátí vygenerováním základního indexu pro libovolný zdroj dat, který může procházet. Index vyžaduje minimálně název a kolekci polí s jedním polem označeným jako klíč dokumentu, aby bylo možné dokument jednoznačně identifikovat. Pokud chcete automatické dokončování nebo navrhované dotazy, můžete také určit analyzátory jazyka nebo provrhovače.
Pole mají datové typy a atributy. Zaškrtávací políčka v horní části jsou atributy indexu, které určují způsob použití pole.
- Retrievable (Zobrazitelné) znamená, že se zobrazí v seznamu výsledků vyhledávání. Jednotlivá pole můžete označit jako vypnutá pro výsledky hledání zrušením zaškrtnutí tohoto políčka, například pro pole používaná pouze ve výrazech filtru.
- Klíč je jedinečný identifikátor dokumentu. Vždy se jedná o řetězec, který je povinný.
- Filtrovatelné, Seřaditelné a Facetable určují, jestli se pole používají ve struktuře filtru, řazení nebo faceted.
- Searchable (Prohledávatelné) znamená, že je pole součástí fulltextové vyhledávání. Řetězce je možné prohledávat. Číselná pole a logická pole jsou často označena jako neprohledávatelné.
Storage se v důsledku vašeho výběru ne liší. Pokud například nastavíte atribut Retrievable u více polí, požadavky na úložiště se nezsoudí.
Ve výchozím nastavení průvodce vyhledá ve zdroji dat jedinečné identifikátory jako základ pro klíčové pole. Řetězce mají atribut Retrievable a Searchable. Celá čísla mají atributy Retrievable (Zobrazitelné), Filterable (Filtrovatelné), Sortable (Seřaditelné) a Facetable (Facetable).
Přijměte výchozí hodnoty.
Pokud průvodce znovu spusťte znovu pomocí existujícího zdroje dat hotels, nebude index nakonfigurovaný s výchozími atributy. U budoucích importů budete muset ručně vybrat atributy.
Pokračujte na další stránku.
Krok 4 – Konfigurace indexeru
Stále v Průvodci importem dat klikněte na Indexer > Název a zadejte název indexeru.
Tento objekt definuje spustitelný proces. Můžete ho umístit do plánu opakování, ale pro tuto dobu použijte výchozí možnost pro okamžité spuštění indexeru.
Kliknutím na Odeslat vytvořte a současně spusťte indexer.
Monitorování průběhu
Průvodce by vás měl dostat do seznamu indexerů, kde můžete sledovat průběh. Pokud chcete přejít na vlastní navigaci, přejděte na stránku Přehled a klikněte na kartu Indexery.
Aktualizace stránky na portálu může trvat několik minut, ale v seznamu by se měl zobrazit nově vytvořený indexer se stavem označujícím probíhající nebo úspěšné provádění a také počet indexovaných dokumentů.
Zobrazení indexu
Stránka s přehledem služby obsahuje odkazy na prostředky vytvořené ve vaší Azure Cognitive Search službě. Pokud chcete zobrazit index, který jste právě vytvořili, klikněte v seznamu odkazů na Indexy.
Počkejte, až se stránka portálu aktualizuje. Po několika minutách by se měl zobrazit index s počet dokumentů a velikostí úložiště.
V tomto seznamu můžete kliknout na index hotels-sample, který jste právě vytvořili, a zobrazit schéma indexu. a volitelně můžete přidat nová pole.
Na kartě Pole se zobrazuje schéma indexu. Pokud píšete dotazy a potřebujete zkontrolovat, jestli je pole filtrovatelné nebo seřaditelné, zobrazí se na této kartě atributy.
Posuňte se do dolní části seznamu a zadejte nové pole. I když můžete vždy vytvořit nové pole, ve většině případů nemůžete změnit existující pole. Existující pole mají fyzickou reprezentaci ve vyhledávací službě, a proto jsou neuměnitelná, dokonce ani v kódu. Pokud chcete v podstatě změnit existující pole, vytvořte nový index a zahodte původní.
Kdykoli lze přidat další konstrukce, jako jsou bodovací profily a možnosti CORS.
Vyhraďte si chvilku na prostudování možností definice indexu, abyste dobře chápali, co všechno můžete při návrhu indexu upravovat, a co naopak ne. Možnosti zobrazené šedě naznačují, že se určitá hodnota nedá upravit nebo odstranit.
Dotazování pomocí Průzkumníka služby Search
Teď už byste měli mít vyhledávací index, který je připravený na dotazování pomocí integrované stránky dotazů Průzkumník služby Hledání. Ta obsahuje vyhledávací pole, ve kterém si můžete otestovat libovolné řetězce dotazů.
Průzkumník služby Search je vybavený jenom ke zpracování požadavků REST API , ale přijímá syntaxi jak pro jednoduchou syntaxi dotazů, tak pro kompletní analyzátor dotazů Lucene ataké všechny parametry hledání dostupné v operacích hledání REST API dokumentů.
Klikněte na Průzkumník služby Search na panelu příkazů.
V rozevíracím seznamu Index zvolte hotels-sample-index. Kliknutím na rozevírací seznam Verze rozhraní API zobrazíte, která rozhraní REST API jsou k dispozici. Pro níže uvedené dotazy použijte obecně dostupnou verzi (30. 6. 2020).
Na panelu hledání vložte níže uvedené řetězce dotazu a klikněte na Hledat.
Ukázky dotazů
Můžete zadat termíny a fráze podobné tomu, co můžete dělat v prohlížeči Bing google search nebo plně specifikované výrazy dotazů. Výsledky se vrátí jako podrobné dokumenty JSON.
Jednoduchý dotaz s horními N výsledky
Příklad (řetězcový dotaz): search=spa
Parametr search se používá k zadání klíčového slova pro fulltextové vyhledávání, v tomto případě vrátí hotelová data pro ty, které obsahují spa v libovolném prohledátelném poli v dokumentu.
Průzkumník služby Search vrátí výsledky ve formátu JSON, který je podrobný a těžko čitelný, pokud mají dokumenty kompaktní strukturu. To je záměrné. Viditelnost celého dokumentu je důležitá pro účely vývoje, zejména během testování. Pokud chcete uživatelské prostředí zlepšit, je potřeba napsat kód, který zpracuje výsledky hledání a vybere z nich důležité elementy.
Dokumenty se skládají ze všech polí, která mají v indexu označení Zobrazitelné. Pokud chcete zobrazit atributy indexu na portálu, klikněte v seznamu Indexy na hotels-sample.
Příklad (parametrizovaný dotaz): search=spa&$count=true&$top=10
Symbol & slouží k připojení parametrů hledání, které lze zadat v libovolném pořadí.
Parametr $count=true vrátí celkový počet všech vrácených dokumentů. Tato hodnota se zobrazí v horní části výsledků hledání. Monitorováním změn hlášených parametrem $count=true můžete ověřovat filtrovací dotazy. Menší počet výsledků naznačuje, že filtr funguje.
Hodnota $top=10 vrátí z celkového počtu 10 dokumentů s nejvyšším pořadím. Ve výchozím nastavení Azure Cognitive Search prvních 50 nejlepších shod. Pomocí parametru $top můžete tento počet navýšit nebo snížit.
Filtrování dotazu
Filtry se do požadavků hledání zahrnou po připojení parametru $filter.
Příklad (filtrovaný): search=beach&$filter=Rating gt 4
Parametr $filter vrací výsledky odpovídající kritériím, která jste zadali. V tomto případě hodnocení větší než 4.
Syntaxe parametru Filter je založená na konstruktech jazyka OData. Další informace najdete v tématu věnovaném syntaxi jazyka OData pro filtry.
Omezení vlastností dotazu
Součástí požadavků hledání jsou filtry omezující vlastnost. Pomocí parametru facet můžete vrátit celkový počet dokumentů odpovídajících hodnotě omezující vlastnosti, kterou zadáte.
Příklad (s omezujícími vlastnostmi a zmenšením rozsahu): search=*&facet=Category&$top=2
Parametr search=* znamená prázdné vyhledávání. Prázdné vyhledávání prohledává všechno. Jedním z důvodů odeslání prázdného dotazu je použití filtru nebo omezující vlastnosti na kompletní sadu dokumentů. Chcete například, aby se struktury faceting navigation skládala ze všech hotely v indexu.
Parametr facet vrací navigační strukturu, kterou můžete předat ovládacímu prvku uživatelského rozhraní. Vrací kategorie a počet. V tomto případě jsou kategorie založené na poli, které se pohodlně nazývá Category. Agregace není v Azure Cognitive Search, ale můžete ji odhadovat pomocí funkce , která poskytuje počet dokumentů
facetv každé kategorii.Parametr $top=2 vrací dva dokumenty a ilustruje, že parametr
topmůžete použít ke snížení i navýšení počtu výsledků.
Příklad (omezující vlastnost číselných hodnot): search=spa&facet=Rating
Tento dotaz je facet pro hodnocení, u textového vyhledávání spa. Termín Hodnocení lze zadat jako omezení, protože pole je v indexu označené jako zobrazitelné, filtrovatelné a kategorizovatelné a hodnoty, které obsahuje (číselné, 1 až 5), jsou vhodné pro kategorizaci výpisů do skupin.
Kategorizovat je možné pouze filtrovatelná pole. Ve výsledcích je možné vrátit pouze zobrazitelná pole.
Pole Hodnocení je s plovoucí desetinnou čárkou s dvojitou přesností a seskupení bude přesné hodnoty. Další informace o seskupování podle intervalu (například "3 hvězdičky hodnocení", "4 hvězdičková hodnocení atd.) najdete v tématu "Parametry dotazu" v REST API.
Zvýraznění výsledků hledání
Zvýrazňování shod označuje formátování textu odpovídajícího klíčovému slovu (za předpokladu, že se v konkrétním poli našly shody). Pokud je hledaný termín schovaný v popisu, můžete pomocí zvýrazňování shod usnadnit jeho nalezení.
Příklad (zvýraznění): search=beach&highlight=Description
- V tomto příkladu se formátované slovo beach snadněji nachází v poli popisu.
Příklad (lingvistická analýza): search=beaches&highlight=Description
Fulltextové vyhledávání rozpoznává základní variace ve formulářích slov. V tomto případě výsledky hledání obsahují zvýrazněný text pro "beach" pro hotely, které mají toto slovo ve svých prohledáovatelných polích, v reakci na hledání klíčového slova "zaměněnou". Ve výsledcích se díky lingvistické analýze mohou zobrazit různé tvary téhož slova.
Azure Cognitive Search podporuje 56 analyzátorů od Lucene i od Microsoftu. Ve výchozím nastavení se Azure Cognitive Search standardní analyzátor Lucene.
Zkouška vyhledávání přibližných shod
Ve výchozím nastavení se překlepem v dotazech, jako je seatle pro Seattle, při typickém vyhledávání nevrátí shodu. Následující příklad nevrátí žádné výsledky.
Příklad (chybně zadaný termín bez zpracování): search=seatle
Ke zpracování chybně napsaných slov můžete využít vyhledávání přibližných shod. Vyhledávání přibližných shod se povolí v případě, že použijete úplnou syntaxi dotazů Lucene. K tomu je potřeba provést dvě věci: nastavit v dotazu queryType=full a připojit k řetězci dotazu znak ~.
Příklad (chybně zadaný termín se zpracováním): search=seatle~&queryType=full
Tento příklad teď vrátí dokumenty, které obsahují shody v Seattlu.
Pokud parametr queryType není zadaný, použije se výchozí jednoduchý analyzátor dotazů. Jednoduchý analyzátor dotazů je rychlejší, ale pokud vyžadujete vyhledávání přibližných shod, regulární výrazy, vyhledávání blízkých výrazů nebo jiné pokročilé typy dotazů, budete potřebovat celou syntaxi.
Vyhledávání přibližných shod a vyhledávání pomocí zástupných znaků mají vliv na výstup hledání. U těchto formátů dotazů se neprovádí lingvistická analýza. Než začnete používat vyhledávání přibližných shod a zástupných znaků, podívejte se na článek Jak funguje fulltextové vyhledávání v Azure Cognitive Search a vyhledejte část o výjimce lexikální analýzy.
Další informace o scénářích dotazů povolených kompletním analyzátorem dotazů najdete v tématu Syntaxe dotazů Lucene v Azure Cognitive Search.
Vyzkoušení geoprostorového hledání
Geoprostorové hledání je podporované prostřednictvím datového typu edm.GeographyPoint v polích, které obsahují souřadnice. Geoprostorové hledání je typ filtru určený v syntaxi jazyka OData pro filtry.
Příklad (filtry geografických souřadnic): search=*&$count=true&$filter=geo.distance(Location,geography'POINT(-122.12 47.67)') le 5
Tento vzorový dotaz vyfiltruje všechny výsledky pro poziční data, kde jsou výsledky od daného bodu (zadaného pomocí zeměpisné šířky a délky) vzdálené méně než 5 kilometrů. Přidáním parametru $count můžete zobrazit, kolik výsledků se vrátí, když změníte vzdálenost nebo souřadnice.
Geoprostorové hledání je užitečné, pokud vaše vyhledávací aplikace obsahuje funkci typu „najít poblíž“ nebo používá navigaci podle map. Není to ale fulltextové vyhledávání. Pokud máte požadavky uživatele na hledání města nebo země nebo oblasti podle názvu, přidejte kromě souřadnic také pole obsahující názvy měst nebo zemí/oblastí.
Shrnutí
Tento kurz vám poskytl rychlý úvod Azure Cognitive Search používání Azure Portal.
Zjistili jste, jak vytvořit index vyhledávání pomocí průvodce pro Import dat. Dozvěděli jste se o indexerech a také o základních pracovních postupech návrhu indexu, včetně podporovaných úprav publikovaného indexu.
V průzkumníku služby Search na webu Azure Portal jste se prostřednictvím praktických příkladů klíčových funkcí, jako jsou filtry, zvýrazňování shod, vyhledávání přibližných shod a geografické vyhledávání, seznámili se syntaxí dotazů.
Také jste zjistili, jak na portálu najít indexy, indexery a zdroje dat. Pomocí portálu můžete v budoucnu u nových zdrojů dat s minimálním úsilím rychle zkontrolovat jejich definice nebo kolekce polí.
Vyčištění prostředků
Pokud pracujete s vlastním předplatným, je vhodné vždy na konci projektu zkontrolovat, jestli budete vytvořené prostředky ještě potřebovat. Prostředky, které necháte běžet, vás stojí peníze. Můžete odstraňovat prostředky jednotlivě nebo odstraněním skupiny prostředků odstranit celou sadu prostředků najednou.
Prostředky můžete najít a spravovat na portálu pomocí odkazu všechny prostředky nebo skupiny prostředků v levém navigačním podokně.
Pokud používáte bezplatnou službu, pamatujte na to, že jste omezeni na tři indexy, indexery a zdroje dat. Jednotlivé položky na portálu můžete odstranit, aby zůstaly pod limitem.
Další kroky
Pomocí Průvodce portálem vygenerujte webovou aplikaci připravenou k použití, která běží v prohlížeči. Tento průvodce můžete vyzkoušet na malém indexu, který jste právě vytvořili, nebo můžete použít některou z vestavěných ukázkových datových sad, které vám pomůžou využít rozsáhlejší možnosti vyhledávání.