Integrované vektorové vkládání ve službě Azure AI Vyhledávač

Integrovaná vektorizace je rozšířením kanálů indexování a dotazů ve službě Azure AI Vyhledávač. Přidá následující možnosti:

  • Kódování vektorů během indexerem řízeného indexování
  • Kódování vektorů během dotazů

Vytváření bloků dat není pevným požadavkem, ale pokud nejsou nezpracované dokumenty malé, je vytváření bloků dat nezbytné pro splnění požadavků na vstup tokenů vložených modelů.

Převody vektorů jsou jednosměrné: od nevektorových k vektorovým. Například neexistuje žádný převod vektoru na text pro dotazy nebo výsledky, například převod výsledku vektoru na řetězec čitelný člověkem, což je důvod, proč indexy obsahují vektorová i nevectorová pole.

Integrovaná vektorizace zrychluje vývoj a minimalizuje úlohy údržby během příjmu dat a doby dotazování, protože existuje méně operací, které je potřeba implementovat ručně.

Použití integrované vektorizace během indexování

U integrovaných převodů bloků dat a vektorů přebíráte závislost na následujících komponentách:

Použití integrované vektorizace v dotazech

Při převodu textu na vektor během dotazů získáte závislost na těchto komponentách:

Diagram součásti

Následující diagram znázorňuje komponenty integrované vektorizace.

Diagram komponent v pracovním postupu integrované vektorizace

Pracovní postup je indexovací potrubí. Indexery načítají data z podporovaných zdrojů dat a zahajují rozšiřování dat (nebo používají AI) voláním Azure OpenAI nebo Foundry Tools nebo vlastního kódu pro převod textu na vektor nebo jiné zpracování.

Diagram se zaměřuje na integrovanou vektorizaci, ale vaše řešení není omezené na tento seznam. Můžete přidat další dovednosti pro rozšiřování AI, vytvořit úložiště znalostí, přidat sémantické hodnocení, přidat ladění relevance a další funkce dotazů.

Dostupnost a ceny

Integrovaná vektorizace je dostupná ve všech oblastech a úrovních. Pokud ale pro rozšiřování umělé inteligence používáte dovednosti a vektorizátory, můžou se použít regionální požadavky. Další informace najdete v tématu Připojení prostředku Foundry k sadě dovedností.

Pokud používáte vlastní dovednosti a mechanismus hostování Azure (například aplikaci funkcí Azure, webovou aplikaci Azure a Azure Kubernetes), zkontrolujte dostupnost funkcí na stránce produktu Azure podle oblastí.

Data chunking (text split skill) je zdarma a k dispozici ve všech nástrojích Foundry ve všech oblastech.

Poznámka:

Některé starší vyhledávací služby vytvořené před 1. lednem 2019 jsou nasazené v infrastruktuře, která nepodporuje vektorové úlohy. Pokud se pokusíte přidat vektorové pole do schématu a zobrazí se chyba, pravděpodobně je výsledkem zastaralých služeb. V této situaci musíte vytvořit novou vyhledávací službu, která bude vyzkoušet funkci vektoru.

Jaké scénáře můžou integrované vektorizace podporovat?

  • Velké dokumenty rozdělte na bloky, což je užitečné pro vektorové a nevektorové scénáře. U vektorů vám bloky dat pomůžou splnit vstupní omezení vložených modelů. V případě nevectorových scénářů můžete mít aplikaci pro vyhledávání ve stylu chatu, kde GPT sestavuje odpovědi z indexovaných bloků dat. Pro hledání ve stylu chatu můžete použít vektorizované nebo nevectorizované bloky dat.

  • Vytvořte vektorové úložiště, kde všechna pole jsou vektorová pole a ID dokumentu (povinné pro index vyhledávání) je jediné řetězcové pole. Zadejte dotaz na úložiště vektorů, abyste načetli ID dokumentu, a pak odešlete vektorová pole dokumentu do jiného modelu.

  • Kombinování vektorových a textových polí pro hybridní vyhledávání s sémantickým řazením nebo bez Integrovaná vektorizace zjednodušuje všechny scénáře podporované vyhledáváním vektorů.

Jak používat integrovanou vektorizaci

Pro vektorizaci jen pro dotazy:

  1. Přidání vektorizátoru do indexu Měl by to být stejný model vkládání, který se používá k vygenerování vektorů v indexu.
  2. Přiřaďte vektorizátor k profilu vektoru a pak k poli vektoru přiřaďte vektorový profil.
  3. Formulujte vektorový dotaz , který určuje textový řetězec, který se má vektorizovat.

Běžnější scénář – vytváření bloků dat a vektorizace během indexování:

  1. Vytvořte připojení zdroje dat k podporovanému zdroji dat pro indexerové indexování.
  2. Vytvořte skillset, který volá dovednost rozdělení textu pro dělení a Azure OpenAI Embedding nebo jinou embeddingovou dovednost pro vektorizaci těchto částí.
  3. Vytvořte index , který určuje vektorizátor času dotazu a přiřaďte ho k vektorovým polím.
  4. Vytvořte indexer , který bude řídit všechno od načítání dat až po spuštění sady dovedností prostřednictvím indexování. Doporučujeme spustit indexer podle plánu pro zachytávání změněných dokumentů nebo těch dokumentů, které byly zmeškány v důsledku omezení výkonu.

Volitelně můžete vytvořit sekundární indexy pro pokročilé scénáře, ve kterých je chunkovaný obsah v jednom indexu a nechunkovaný v jiném indexu. Částkové indexy (nebo sekundární indexy) jsou užitečné pro RAG aplikace.

Návod

Zkuste průvodce importem dat na webu Azure Portal prozkoumat integrované vektorizace před napsáním libovolného kódu.

Zabezpečení připojení k vektorizátorům a modelům

Pokud vaše architektura vyžaduje soukromá připojení, která obcházejí internet, můžete vytvořit sdílené soukromé propojení k embedding modelům využívaným dovednostmi během indexace a vektorizace v čase dotazů.

Sdílené privátní propojení fungují jenom pro připojení Azure-to-Azure. Pokud se připojujete k OpenAI nebo jinému externímu modelu, musí být připojení přes veřejný internet.

Pro scénáře vektorizace byste použili:

  • openai_account pro vkládání modelů hostovaných v prostředku Azure OpenAI.

  • sites pro vkládání modelů, ke které se přistupuje jako vlastní dovednost nebo vlastní vektorizátor. sites ID skupiny je určené pro služby App Services a funkce Azure, které můžete použít k hostování vloženého modelu, který není jedním z modelů vkládání Azure OpenAI.

Výhody

Tady jsou některé z klíčových výhod integrované vektorizace:

  • Žádný samostatný kanál vytváření bloků a vektorizace dat. Psaní a údržba kódu je jednodušší.

  • Automatizace komplexního indexování Když se změní data ve zdroji (například ve službě Azure Storage, Azure SQL nebo Cosmos DB), může indexer tyto aktualizace přesouvat po celý kanál, od načtení až po prolomení dokumentů, prostřednictvím volitelného rozšiřování AI, vytváření bloků dat, vektorizace a indexování.

  • Logika dávkování a opakování je integrovaná (nekonfigurovatelná). Azure AI Vyhledávač má interní zásady opakování pro chyby omezování, které se zobrazí kvůli maximálnímu limitu koncových bodů Azure OpenAI pro model vkládání. Doporučujeme umístit indexer na plán (například každých 5 minut), aby indexer mohl zpracovávat všechna volání, která jsou omezena koncovým bodem Azure OpenAI i přes zásady opakování.

  • Promítání členěného obsahu do sekundárních indexů Sekundární indexy se vytvářejí stejně jako jakýkoli index vyhledávání (schéma s poli a dalšími konstrukty), ale zaplní se společně s primárním indexerem. Obsah z každého zdrojového dokumentu proudí do polí v primárním a sekundárním indexu během stejného spuštění indexování.

    Sekundární indexy jsou určené pro aplikace pro otázky a odpovědi nebo styl chatu. Sekundární index obsahuje podrobné informace pro konkrétnější shody, ale nadřazený index obsahuje více informací a často může vytvořit ucelenější odpověď. Když se v sekundárním indexu najde shoda, vrátí dotaz nadřazený dokument z primárního indexu. Předpokládejme například, že velký SOUBOR PDF jako zdrojový dokument může primární index obsahovat základní informace (název, datum, autor, popis), zatímco sekundární index obsahuje bloky prohledávatelného obsahu.

Omezení

Ujistěte se, že znáte Azure OpenAI kvóty a limity pro vkládací modely. Azure AI Vyhledávač má zásady opakování, ale pokud je kvóta vyčerpána, opakování selže.

Limity tokenů Azure OpenAI za minutu jsou pro každý model a předplatné. Mějte na paměti, že pokud používáte model vkládání pro úlohy dotazování i indexování. Pokud je to možné, postupujte podle osvědčených postupů. Pro každou pracovní zátěž použijte vkládací model a pokuste se je nasadit v různých předplatných.

Ve službě Azure AI Vyhledávač mějte na paměti, že existují omezení služeb podle vrstev a úloh.

Další kroky