Rozšiřování AI v Azure Cognitive Search
V Azure Cognitive Search rozšíření AI se rozumí integrované kognitivní dovednosti a vlastní dovednosti, které přidávají analýzu, transformace a generování obsahu během indexování. Rozšíření vytvářejí nové informace tam, kde dříve neexistovaly: extrahování informací z obrázků, zjišťování mínění, klíčových frází a entit z textu , a to pro některé z nich. Rozšíření také přidávají strukturu do nediferentovaného textu. Všechny tyto procesy mají za následek zpřístupnění dříve neprohledatelného obsahu scénářům fulltextového vyhledávání. V mnoha případech jsou obohacené dokumenty užitečné pro jiné scénáře než vyhledávání, například pro dolování znalostí.
Rozšiřování je definováno pomocí sady dovedností připojené k indexeru. Indexer bude extrahovat a nastavovat obsah, zatímco sada dovedností identifikuje, analyzuje a vytváří nové informace a struktury z obrázků, objektů blob a dalších nestrukturovaných zdrojů dat. Výstupem kanálu pro rozšiřování je buď vyhledávací index, nebo úložiště znalostí.

Sada dovedností může obsahovat integrované dovednosti z Cognitive Search nebo vložit externí zpracování, které poskytnete ve vlastní dovednosti. Příkladem vlastní dovednosti může být modul vlastních entit nebo klasifikátor dokumentů, který cílí na konkrétní doménu, jako jsou finance, vědecké publikace nebo léčiva.
Integrované dovednosti spadají do těchto kategorií:
Mezi dovednosti zpracování přirozeného jazykapatří rozpoznávání entit,rozpoznávání jazyka, extrakce klíčových frází, manipulace s textem, rozpoznávání mínění (včetně dolování názorů)a detekce PII. Díky těmto dovednostem se nestrukturovaný text mapuje jako prohledávatelná a filtrovatelná pole v indexu.
Dovednosti zpracování obrázků zahrnují optické rozpoznávání znaků (OCR) a identifikaci vizuálních prvků,jako je rozpoznávání obličeje, interpretace obrázků, rozpoznávání obrázků (známé osoby a památky) nebo atributy, jako je orientace obrázku. Tyto dovednosti vytvářejí textové reprezentace obsahu obrázků, takže je možné ho prohledávat pomocí možností dotazování Azure Cognitive Search.
Integrované dovednosti v Azure Cognitive Search jsou založené na předem natrénovaných modelech strojového učení v rozhraní API služeb Cognitive Services: Počítačové zpracování obrazu a Analýza textu. Pokud chcete tyto Cognitive Services během zpracování obsahu, můžete připojit prostředek clusteru.
Zpracování přirozeného jazyka a obrázků se používá ve fázi příjmu dat, kdy se výsledky stávají součástí složení dokumentu v prohledáovatelném indexu v Azure Cognitive Search. Data jsou zdrojem jako sada dat Azure a pak se předá prostřednictvím kanálu indexování s využitím všech předdefinovaných dovedností, které potřebujete.
Dostupnost funkcí
Rozšiřování AI je k dispozici v oblastech, Azure Cognitive Services jsou také k dispozici. Aktuální dostupnost rozšíření AI můžete zkontrolovat na stránce Dostupné produkty Azure podle oblastí. Rozšiřování AI je k dispozici ve všech podporovaných oblastech s výjimkou těchto:
- Austrálie – jihovýchod
- Čína – sever 2
- Norska – východ
- Německo – středozápad
Pokud se vaše vyhledávací služba nachází v jedné z těchto oblastí, nebudete moct vytvářet a používat sady dovedností, ale všechny ostatní funkce vyhledávací služby jsou dostupné a plně podporované.
Kdy použít rozšíření AI
Rozšíření byste měli zvážit, pokud je nezpracovaný obsah nestrukturovaný text, obsah obrázků nebo obsah, který vyžaduje rozpoznávání a překlad jazyka. Použití AI prostřednictvím integrovaných kognitivních dovedností může tento obsah odemknout a zvýšit jeho hodnotu a nástroj v aplikacích pro vyhledávání a datové vědy.
Kromě toho můžete zvážit přidání vlastní dovednosti, pokud máte open source kód třetí strany nebo kód třetí strany, který chcete integrovat do kanálu. Do této kategorie spadají klasifikační modely, které identifikují základní charakteristiky různých typů dokumentů, ale je možné použít libovolný balíček, který přidá hodnotu do vašeho obsahu.
Případy použití pro integrované dovednosti
Sada dovedností sestavená pomocí předdefinovaných dovedností je vhodné pro následující scénáře aplikací:
Nejčastěji použíovanou dovedností je optické rozpoznávání znaků (OCR), které rozpoznává písmo a rukou psaný text v naskenovaných dokumentech (JPEG). Připojením dovednosti OCR identifikujete, extrahujte a ingestujte text ze souborů JPEG.
Dalším běžně používaným dovedností je překlad textu vícejazyčného obsahu. Rozpoznávání jazyka je integrované do překladu textu, ale pokud chcete jenom kódy jazyků obsahu ve vašem korpusu, můžete ho spustit Rozpoznávání jazyka nezávisle na sobě.
Soubory PDF s kombinovaným obrázkem a textem. Text v souborech PDF lze extrahovat během indexování bez použití kroků rozšiřování, ale přidání zpracování obrázků a přirozeného jazyka může často vytvořit lepší výsledek, než poskytuje standardní indexování.
Nestrukturované nebo částečně strukturované dokumenty obsahující obsah, který má inherentní význam nebo kontext skrytý ve větším dokumentu.
Zejména objekty blob často obsahují velký obsah, který je zabalený do jednoho "pole". Když k indexeru připojíte dovednosti zpracování obrázků a přirozeného jazyka, můžete vytvořit nové informace, které v nezpracovaných obsahech vyniknou, ale jinak se nezminí jako odlišná pole. Několik integrovaných kognitivních dovedností připravených k použití, které vám můžou pomoct: Extrakce klíčových frází a Rozpoznávání entit (lidé, organizace a umístění, abychom si jich mohli vybrat.
Integrované dovednosti je také možné použít k restrukturalizovat obsah prostřednictvím operací dělení, slučování a tvarování textu.
Případy použití pro vlastní dovednosti
Vlastní dovednosti mohou podporovat složitější scénáře, jako je rozpoznávání formulářů nebo detekce vlastních entit pomocí modelu, který poskytnete a zabalíte do webového rozhraní vlastních dovedností. Mezi příklady vlastních dovedností patří Rozpoznávání formulářů,integrace rozhraní API Bing Vyhledávání entit arozpoznávání vlastních entit.
Postup rozšiřování
Kanál pro rozšiřování se skládá z indexerů, které mají sady dovedností. Sada dovedností definuje kroky rozšiřování a indexer je řídí. Při konfiguraci indexeru můžete zahrnout vlastnosti, jako jsou mapování výstupních polí, která odesílající obohacený obsah do indexu vyhledávání nebo projekcí, které definují datové struktury v obchodě znalostí.
Po indexování můžete k obsahu přistupovat prostřednictvím žádostí o vyhledávání prostřednictvím všech typů dotazů podporovaných Azure Cognitive Search.
Krok 1: Fáze prolomení připojení a dokumentů
Indexery se připojují k externím zdrojům pomocí informací poskytovaných ve zdroji dat indexeru. Když se indexer připojí k prostředku, "prolomí dokumenty" a extrahuje text a obrázky. Obsah obrázku se může směrovat na dovednosti, které provádějí zpracování obrázků, zatímco textový obsah je zařazený do fronty pro zpracování textu.

Tento krok sestaví veškerý počáteční nebo nezpracovaný obsah, který projde rozšiřováním AI. Pro každý dokument se vytvoří strom pro rozšiřování. Na začátku je strom jenom reprezentace kořenového uzlu, ale během provádění sady dovedností se zvětšuje a získá strukturu.
Krok 2: Fáze rozšiřování sady dovedností
Sada dovedností definuje atomické operace prováděné s každým dokumentem. Například u textu a obrázků extrahovaných z PDF může sada dovedností použít rozpoznávání entit, rozpoznávání jazyka nebo extrakci klíčových frází a vytvořit nová pole v indexu, která nejsou ve zdroji nativně dostupná.

Sada dovedností může být minimální nebo velmi složitá a určuje nejen typ zpracování, ale také pořadí operací. Většina dovedností obsahuje přibližně tři až pět dovedností.
Sada dovedností a mapování výstupních polí definovaná jako součást indexeru plně určuje kanál pro rozšiřování. Další informace o tom, jak všechny tyto části spojit dohromady, najdete v tématu Definování sady dovedností.
Kanál interně generuje kolekci obohacených dokumentů. Můžete se rozhodnout, které části obohacených dokumentů se mají mapovat na indexovatelná pole ve vašem indexu vyhledávání. Pokud jste například použili extrakci klíčových frází a dovednosti rozpoznávání entit, tato nová pole by se stala součástí obohaceného dokumentu a bylo by možné je namapovat na pole ve vašem indexu. Další informace o vytváření vstupů a výstupů najdete v tématu Poznámky.
Krok 3: Indexování
Indexování je proces, při kterém se nezpracovaný a obohacený obsah ingestuje jako pole ve vyhledávacím indexu a jako projekce, pokud vytváříte také úložiště znalostí. Stejný obohacený obsah se může objevit v obou, a to pomocí implicitního nebo explicitního mapování polí k odeslání obsahu do správných polí.
Obohacený obsah se generuje během provádění sady dovedností a je dočasný, pokud ho neu uložíte. Aby se obohacený obsah mohl zobrazit ve vyhledávacím indexu, musí mít indexer informace o mapování, aby mohl odesílat obohacený obsah do pole v indexu vyhledávání. Mapování výstupních polí tato přidružení nastavuje.
Ukládání obohaceného výstupu
V Azure Cognitive Search indexer uloží výstup, který vytvoří.
Prohledávatelný index je jedním z výstupů, které vždy vytvoří indexer. Specifikace indexu je požadavek indexeru, a když připojíte dovednosti, výstup sady dovedností a všechna pole, která jsou namapovaná přímo ze zdroje, se použije k naplnění indexu. Výstupy konkrétních dovedností, jako jsou klíčové fráze nebo skóre mínění, se obvykle ingestují do indexu v polích vytvořených pro tento účel.
Úložiště znalostí je volitelný výstup, který se používá pro podřízené aplikace, jako je dolování znalostí. Úložiště znalostí je definováno v rámci sady dovedností. Jeho definice určuje, jestli se vaše obohacené dokumenty projektují jako tabulky nebo objekty (soubory nebo objekty blob). Tabulkové projekce jsou vhodné pro interaktivní analýzu v nástrojích, jako je Power BI, zatímco soubory a objekty blob se obvykle používají v datových vědách nebo podobných procesech.
Indexer může také do mezipaměti ukládat obohacené dokumenty v Azure Blob Storage možné opakované použití při dalších spuštěních sady dovedností. Mezipaměť je slouží k internímu použití. Rozšíření uložená v mezipaměti jsou k dispozici pro stejnou sada dovedností, kterou později znovu spusťte. Ukládání do mezipaměti užitečná, pokud vaše sada dovedností zahrnuje analýzu obrázků nebo OCR a chcete se vyhnout času a nákladům na opětovné zpracování souborů obrázků.
Indexy a úložiště znalostí jsou na sobě navzájem plně nezávislé. I když musíte připojit index, aby splňoval požadavky indexeru, pokud je vaším jediným cílem úložiště znalostí, můžete index po naplnění ignorovat. Vyhněte se ale jeho odstranění. Pokud chcete znovu spustit indexer a dovednosti, budete potřebovat index, aby se indexer spustil.
Použití obohaceného obsahu
Po dokončení zpracování máte Index vyhledávání sestávající z obohacených dokumentů, což je plně náročné na hledání textu v Azure kognitivní hledání. Dotazování indexu je způsob, jakým vývojáři a uživatelé přistupují k obohacenému obsahu vygenerovanému kanálem. Index je stejně jiný jako u Azure Kognitivní hledání: analýzu textu můžete doplnit vlastními analyzátory, vyvolat přibližné vyhledávací dotazy, přidat filtry nebo experimentovat se profily vyhodnocování, abyste mohli vyladit relevanci hledání.
Můžete mít také znalostní bázi Knowledge Store. Znalostní báze obsahuje data, která je možné využít ve scénářích dolování znalostní báze, jako je Analytics nebo strojové učení. můžete použít Storage prohlížeč, Power BInebo libovolnou aplikaci, která se připojuje k Azure Storage.
Kontrolní seznam: Typický pracovní postup
Při zahájení projektu je užitečné pracovat s podmnožinou dat. Indexer a návrh dovednosti je iterativní proces. Pokud pracujete s malým zástupcem datové sady, budete s tím rychlejší iterací.
Vytvořte zdroj dat , který určuje připojení k datům.
Vytvořte dovednosti pro přidání rozšíření.
Vytvořte schéma indexu definující index vyhledávání.
Vytvořte indexer a přeneste všechny výše uvedené součásti dohromady. Vytvoření nebo spuštění indexeru načte data, spustí dovednosti a načte index.
Spusťte dotazy pro vyhodnocení výsledků a upravte kód pro aktualizaci dovednosti, schématu nebo konfigurace indexeru.
Chcete-li iterovat výše uvedené kroky, resetujte indexer před opětovným sestavením kanálu, nebo odstraňte a znovu vytvořte objekty při každém spuštění (doporučeno, pokud používáte bezplatnou úroveň). Pokud je to možné, měli byste taky Povolit ukládání do mezipaměti rozšíření pro opětovné použití stávajících rozšíření.