Obohacení AI v Azure Kognitivní hledáníAI enrichment in Azure Cognitive Search

Obohacení AI je rozšíření indexerů , která se dají použít k extrakci textu z obrázků, objektů BLOB a dalších nestrukturovaných zdrojů dat.AI enrichment is an extension of indexers that can be used to extract text from images, blobs, and other unstructured data sources. Obohacení a extrakce usnadňují hledání obsahu ve výstupních objektech indexeru, a to buď pomocí indexu hledání , nebo z úložiště znalostí.Enrichment and extraction make your content more searchable in indexer output objects, either a search index or a knowledge store.

Extrakce a obohacení jsou implementovány pomocí dovedností rozpoznávání připojených k kanálu řízenému indexerem.Extraction and enrichment are implemented using cognitive skills attached to the indexer-driven pipeline. Pomocí integrovaných dovedností z Microsoftu nebo můžete vložit externí zpracování do vlastní dovednosti , kterou vytvoříte.You can use built-in skills from Microsoft or embed external processing into a custom skill that you create. Příkladem vlastní dovednosti může být modul vlastních entit nebo třídění dokumentů cílící na konkrétní doménu, jako je finance, vědecké publikace nebo lékařství.Examples of a custom skill might be a custom entity module or document classifier targeting a specific domain such as finance, scientific publications, or medicine.

Mezi integrované dovednosti patří tyto kategorie:Built-in skills fall into these categories:

Diagram kanálu obohaceníEnrichment pipeline diagram

Integrované dovednosti v Azure Kognitivní hledání jsou založené na předem vyškolených modelech strojového učení v rozhraní API služeb Cognitive Services: počítačové zpracování obrazu a Analýza textu.Built-in skills in Azure Cognitive Search are based on pre-trained machine learning models in Cognitive Services APIs: Computer Vision and Text Analytics. Prostředek Cognitive Services můžete připojit, pokud chcete během zpracování obsahu tyto prostředky využít.You can attach a Cognitive Services resource if you want to leverage these resources during content processing.

Během fáze příjmu dat se použije přirozený jazyk a zpracování obrazu s výsledky, které se stanou součástí kompozice dokumentu v prohledávatelných indexech v Azure Kognitivní hledání.Natural language and image processing is applied during the data ingestion phase, with results becoming part of a document's composition in a searchable index in Azure Cognitive Search. Data se nastavují jako datová sada Azure a pak se provedou prostřednictvím kanálu indexování s použitím libovolných integrovaných dovedností , které potřebujete.Data is sourced as an Azure data set and then pushed through an indexing pipeline using whichever built-in skills you need.

Kdy použít obohacení AIWhen to use AI enrichment

Měli byste zvážit použití vestavěných schopností rozpoznávání, pokud je nezpracovaný obsah nestrukturovaný text, obsah obrázku nebo obsah, který potřebuje rozpoznání a překlad jazyka.You should consider using built-in cognitive skills if your raw content is unstructured text, image content, or content that needs language detection and translation. Použití AI prostřednictvím integrovaných přístupných znalostí může tento obsah odemknout, což zvyšuje jeho hodnotu a nástroj ve vašich aplikacích pro vyhledávání a datovou vědu.Applying AI through the built-in cognitive skills can unlock this content, increasing its value and utility in your search and data science apps.

Kromě toho můžete zvážit přidání vlastní dovednosti, pokud máte otevřený zdrojový kód, třetí stranu nebo kód první strany, který byste chtěli do kanálu integrovat.Additionally, you might consider adding a custom skill if you have open-source, third-party, or first-party code that you'd like to integrate into the pipeline. Modely klasifikace, které identifikují charakteristiky nejdůležitějšími různých typů dokumentů, spadají do této kategorie, ale mohly by se použít všechny balíčky, které přidají k obsahu hodnotu.Classification models that identify salient characteristics of various document types fall into this category, but any package that adds value to your content could be used.

Další informace o integrovaných dovednostechMore about built-in skills

Dovednosti , která je sestavená pomocí integrovaných dovedností, je vhodná pro následující scénáře aplikací:A skillset that's assembled using built-in skills is well suited for the following application scenarios:

  • Naskenované dokumenty (JPEG), u kterých chcete provádět fulltextové vyhledávání.Scanned documents (JPEG) that you want to make full-text searchable. Můžete připojit dovednost optického rozpoznávání znaků (OCR) k identifikaci, extrakci a přijímání textu ze souborů JPEG.You can attach an optical character recognition (OCR) skill to identify, extract, and ingest text from JPEG files.

  • Soubory PDF s kombinovaným obrázkem a textemPDFs with combined image and text. Text v souborech PDF lze extrahovat během indexování bez použití kroků obohacení, ale přidání image a zpracování přirozeného jazyka může často způsobit lepší výsledek, než poskytuje standardní indexování.Text in PDFs can be extracted during indexing without the use of enrichment steps, but the addition of image and natural language processing can often produce a better outcome than a standard indexing provides.

  • Vícejazyčný obsah, pro který chcete použít detekci jazyka a případně převod textu.Multi-lingual content against which you want to apply language detection and possibly text translation.

  • Nestrukturované nebo částečně strukturované dokumenty obsahující obsah, který má podstatný význam nebo kontext, který je ve větším dokumentu skrytý.Unstructured or semi-structured documents containing content that has inherent meaning or context that is hidden in the larger document.

    Objekty blob často obsahují velký obsah, který se balí do jediného "pole".Blobs in particular often contain a large body of content that is packed into a single "field". Připojením obrazu a dovedností pro zpracování přirozeného jazyka k indexeru můžete vytvořit nové informace, které se Extant v nezpracovaném obsahu, ale ne jinak naplochit jako různá pole.By attaching image and natural language processing skills to an indexer, you can create new information that is extant in the raw content, but not otherwise surfaced as distinct fields. Některé předem připravené schopnosti pro rozpoznávání řeči, které vám můžou pomáhat: extrakce klíčových frází, analýza mínění a rozpoznávání entit (lidé, organizace a umístění).Some ready-to-use built-in cognitive skills that can help: key phrase extraction, sentiment analysis, and entity recognition (people, organizations, and locations).

    Kromě toho je možné pomocí integrovaných dovedností také změnit strukturu obsahu prostřednictvím operací rozdělení textu, sloučení a tvaru.Additionally, built-in skills can also be used restructure content through text split, merge, and shape operations.

Další informace o vlastních dovednostechMore about custom skills

Vlastní dovednosti můžou podporovat složitější scénáře, jako je rozpoznávání formulářů nebo detekce vlastních entit pomocí modelu, který zadáte a zabalíte do vlastního webového rozhraní s dovednostmi.Custom skills can support more complex scenarios, such as recognizing forms, or custom entity detection using a model that you provide and wrap in the custom skill web interface. Mezi vlastní dovednosti patří i Nástroj pro rozpoznávání formulářů, integraci rozhraní API Bingu pro vyhledávání entita rozpoznávání vlastních entit.Several examples of custom skills include Forms Recognizer, integration of the Bing Entity Search API, and custom entity recognition.

Kroky v kanálu rozšíření Steps in an enrichment pipeline

Kanál pro rozšíření je založený na indexerech.An enrichment pipeline is based on indexers. Indexery naplní index založený na mapování polí mezi indexem a zdrojem dat pro trhliny dokumentů.Indexers populate an index based on field-to-field mappings between the index and your data source for document cracking. Dovednosti, teď připojené k indexerům, zachytit a rozšířit dokumenty podle definovaných dovednostiů.Skills, now attached to indexers, intercept and enrich documents according to the skillset(s) you define. Po indexování můžete k obsahu přistupovat pomocí požadavků na hledání prostřednictvím všech typů dotazů podporovaných službou Azure kognitivní hledání.Once indexed, you can access content via search requests through all query types supported by Azure Cognitive Search. Pokud s indexery začínáte, Tato část vás provede jednotlivými kroky.If you are new to indexers, this section walks you through the steps.

Krok 1: fáze připojení a odhalující dokumentuStep 1: Connection and document cracking phase

Na začátku kanálu máte nestrukturovaný text nebo netextový obsah (například obrázky, naskenované dokumenty nebo soubory JPEG).At the start of the pipeline, you have unstructured text or non-text content (such as images, scanned documents, or JPEG files). Data musí existovat ve službě úložiště dat Azure, ke které je možné přistupovat indexerem.Data must exist in an Azure data storage service that can be accessed by an indexer. Indexery mohou "prolomené" zdrojové dokumenty pro extrakci textu ze zdrojových dat.Indexers can "crack" source documents to extract text from source data. Odhalení dokumentů je proces extrakce nebo vytvoření textového obsahu z netextových zdrojů během indexování.Document cracking is the process of extracting or creating text content from non-text sources during indexing.

Fáze pro trhliny dokumentůDocument cracking phase

Mezi podporované zdroje patří Azure Blob Storage, Azure Table Storage, Azure SQL Database a Azure Cosmos DB.Supported sources include Azure blob storage, Azure table storage, Azure SQL Database, and Azure Cosmos DB. Textový obsah se dá extrahovat z následujících typů souborů: PDF, Word, PowerPoint, soubory CSV.Text-based content can be extracted from the following file types: PDFs, Word, PowerPoint, CSV files. Úplný seznam najdete v tématu podporované formáty.For the full list, see Supported formats. Indexování trvá čas, takže začne používat malou reprezentativní datovou sadu a pak ji vytvoří přírůstkově jako vaše řešení.Indexing takes time so start with a small, representative data set and then build it up incrementally as your solution matures.

Krok 2: vnímání dovedností a fáze obohaceníStep 2: Cognitive skills and enrichment phase

Obohacení se provede rozpoznáváním dovedností , které provádějí atomické operace.Enrichment is performed with cognitive skills performing atomic operations. Když například rozložili PDF, můžete použít rozpoznávání entit, rozpoznávání jazyka nebo extrakci klíčových frází a vytvořit tak nová pole v indexu, která nejsou nativně dostupná ve zdroji.For example, once you have cracked a PDF, you can apply entity recognition, language detection, or key phrase extraction to produce new fields in your index that are not available natively in the source. Kolekce dovedností použité ve vašem kanálu se zcela nazývá dovednosti.Altogether, the collection of skills used in your pipeline is called a skillset.

Fáze obohaceníEnrichment phase

Dovednosti je založen na integrovaných dovednostech rozpoznávání nebo na vlastních dovednostech , které poskytnete a připojujete se k dovednosti.A skillset is based on built-in cognitive skills or custom skills you provide and connect to the skillset. Dovednosti může být minimální nebo velmi složitá a určuje nejen typ zpracování, ale také pořadí operací.A skillset can be minimal or highly complex, and determines not only the type of processing, but also the order of operations. Dovednosti plus mapování polí definovaná jako součást indexeru plně určuje kanál rozšíření.A skillset plus the field mappings defined as part of an indexer fully specifies the enrichment pipeline. Další informace o tom, jak všechny tyto části pohromadě získat, najdete v tématu definice dovednosti.For more information about pulling all of these pieces together, see Define a skillset.

Kanál interně vytvoří kolekci obohacených dokumentů.Internally, the pipeline generates a collection of enriched documents. Můžete určit, které části obohacených dokumentů by měly být namapovány na indexovaná pole v indexu vyhledávání.You can decide which parts of the enriched documents should be mapped to indexable fields in your search index. Pokud jste například použili extrakci klíčových frází a dovednosti pro rozpoznávání entit, tato nová pole se stanou součástí obohaceného dokumentu a mohou být mapována na pole v indexu.For example, if you applied the key phrase extraction and the entity recognition skills, those new fields would become part of the enriched document, and can be mapped to fields on your index. Další informace o vstupních/výstupních formách najdete v tématu poznámky .See Annotations to learn more about input/output formations.

Přidat element knowledgeStore pro uložení obohaceníAdd a knowledgeStore element to save enrichments

Search REST API-Version = 2020-06-30 rozšiřuje dovednosti s knowledgeStore definicí, která poskytuje připojení a projekce úložiště Azure, které popisují, jak jsou rozšíření uložená.Search REST api-version=2020-06-30 extends skillsets with a knowledgeStore definition that provides an Azure storage connection and projections that describe how the enrichments are stored. To je navíc k vašemu indexu.This is in addition to your index. V standardním kanálu AI jsou obohacené dokumenty přechodné, používané jenom při indexování a pak se zahodí.In a standard AI pipeline, enriched documents are transitory, used only during indexing and then discarded. Díky znalostnímu obchodu jsou rozšířené dokumenty zachované.With knowledge store, enriched documents are preserved. Další informace najdete v článku znalostní báze Knowledge Store.For more information, see Knowledge store.

Krok 3: hledání indexu a přístupu na základě dotazůStep 3: Search index and query-based access

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í.When processing is finished, you have a search index consisting of enriched documents, fully text-searchable in Azure Cognitive Search. Dotazování indexu je způsob, jakým vývojáři a uživatelé přistupují k obohacenému obsahu vygenerovanému kanálem.Querying the index is how developers and users access the enriched content generated by the pipeline.

Index s ikonou hledáníIndex with search icon

Index je stejný jako jiný, který můžete pro Azure Kognitivní hledání vytvořit: můžete doplnit vlastní analyzátory, vyvolat přibližné vyhledávací dotazy, přidat filtrované hledání nebo experimentovat s profily vyhodnocování, abyste mohli změnit tvar výsledků hledání.The index is like any other you might create for Azure Cognitive Search: you can supplement with custom analyzers, invoke fuzzy search queries, add filtered search, or experiment with scoring profiles to reshape the search results.

Indexy jsou generovány z schématu indexu definující pole, atributy a další konstrukce připojené ke konkrétnímu indexu, například profily vyhodnocování a mapy synonym.Indexes are generated from an index schema that defines the fields, attributes, and other constructs attached to a specific index, such as scoring profiles and synonym maps. Po definování a naplnění indexu můžete postupně indexovat a vybírat nové a aktualizované zdrojové dokumenty.Once an index is defined and populated, you can index incrementally to pick up new and updated source documents. Některé změny vyžadují úplné opětovné sestavení.Certain modifications require a full rebuild. Měli byste použít malou datovou sadu, dokud nebude návrh schématu stabilní.You should use a small data set until the schema design is stable. Další informace najdete v článku o tom, jak znovu sestavit index.For more information, see How to rebuild an index.

Kontrolní seznam: Typický pracovní postupChecklist: A typical workflow

  1. Oddělit vaše zdrojová data Azure do reprezentativního vzorku.Subset your Azure source data into a representative sample. Indexování trvá čas, takže začne používat malou reprezentativní datovou sadu a pak ji vytvoří přírůstkově jako vaše řešení.Indexing takes time so start with a small, representative data set and then build it up incrementally as your solution matures.

  2. Vytvoření objektu zdroje dat v Azure kognitivní hledání k zadání připojovacího řetězce pro načtení dat.Create a data source object in Azure Cognitive Search to provide a connection string for data retrieval.

  3. Vytvořte dovednosti s kroky obohacení.Create a skillset with enrichment steps.

  4. Definujte schéma indexu.Define the index schema. Kolekce polí obsahuje pole ze zdrojových dat.The Fields collection includes fields from source data. Měli byste také odhlásit další pole, která budou obsahovat vygenerované hodnoty pro obsah vytvořený během obohacení.You should also stub out additional fields to hold generated values for content created during enrichment.

  5. Definujte indexer , který odkazuje na zdroj dat, dovednosti a index.Define the indexer referencing the data source, skillset, and index.

  6. V indexeru přidejte outputFieldMappings.Within the indexer, add outputFieldMappings. Tento oddíl mapuje výstup z dovednosti (v kroku 3) na pole vstupy ve schématu indexu (v kroku 4).This section maps output from the skillset (in step 3) to the inputs fields in the index schema (in step 4).

  7. Odešlete žádost o Vytvoření indexeru , kterou jste právě vytvořili (požadavek post s definicí indexeru v textu požadavku), který zařadí indexer do Azure kognitivní hledání.Send Create Indexer request you just created (a POST request with an indexer definition in the request body) to express the indexer in Azure Cognitive Search. Tímto krokem spustíte indexer, vyvoláte kanál.This step is how you run the indexer, invoking the pipeline.

  8. Spusťte dotazy pro vyhodnocení výsledků a upravte kód pro aktualizaci dovednosti, schématu nebo konfigurace indexeru.Run queries to evaluate results and modify code to update skillsets, schema, or indexer configuration.

  9. Před opětovným sestavením kanálu resetujte indexer .Reset the indexer before rebuilding the pipeline.

Další krokyNext steps