Sdílet prostřednictvím


Generování vkládání pro vyhledávací dotazy a dokumenty

Azure AI Search nehostuje modely vektorizace, takže jedním z vašich problémů je vytváření vkládání pro vstupy a výstupy dotazů. Můžete použít libovolný model vkládání, ale tento článek předpokládá modely vkládání Azure OpenAI. Ukázky v ukázkovém úložišti klepněte na modely vkládání podobnosti Azure OpenAI.

Atributy dimenze mají minimálně 2 a maximálně 4096 dimenzí na vektorové pole.

Poznámka:

Tento článek se týká obecně dostupné verze vektorového vyhledávání, která předpokládá, že kód aplikace volá externí prostředek, jako je Azure OpenAI pro vektorizaci. Nová funkce označovaná jako integrovaná vektorizace, která je aktuálně ve verzi Preview, nabízí vloženou vektorizaci. Integrovaná vektorizace využívá závislost na indexerech, sadách dovedností a dovednostech AzureOpenAIEmbedding nebo vlastní dovednost, která odkazuje na model, který provádí externě z Azure AI Search.

Jak se používají modely

  • Vstupy dotazů vyžadují, abyste odeslali vstup zadaný uživatelem do modelu vkládání, který rychle převede čitelný text člověka na vektor.

    • Můžete například použít text-embedding-ada-002 k vygenerování vkládání textu a rozhraní REST API pro načítání obrázků pro vkládání obrázků.

    • Abyste se vyhnuli omezování rychlosti, můžete ve své úloze implementovat logiku opakování. Pro ukázku Pythonu jsme použili výdrž.

  • Výstupy dotazu jsou všechny odpovídající dokumenty nalezené v indexu vyhledávání. Index vyhledávání musel být dříve načten s dokumenty, které obsahují jedno nebo více vektorových polí se vkládáním. Jakýkoli model, který jste použili k indexování, použijte stejný model pro dotazy.

Vytvoření prostředků ve stejné oblasti

Pokud chcete prostředky ve stejné oblasti, začněte s:

  1. Oblast pro model vkládání podobnosti, aktuálně v Evropě a USA.

  2. Oblast služby Azure AI Search

  3. Pokud chcete podporovat hybridní dotazy, které zahrnují sémantické hodnocení, nebo pokud chcete vyzkoušet integraci modelu strojového učení pomocí vlastní dovednosti v kanálu rozšiřování AI, poznamenejte si oblasti, které tyto funkce poskytují.

Vygenerování vkládání pro improvizovaný dotaz

Následující kód Pythonu vygeneruje vložení, které můžete vložit do vlastnosti "values" vektorového dotazu.

!pip install openai==0.28.1

import openai

openai.api_type = "azure"
openai.api_key = "YOUR-API-KEY"
openai.api_base = "https://YOUR-OPENAI-RESOURCE.openai.azure.com"
openai.api_version = "2024-02-01"

response = openai.Embedding.create(
    input="How do I use Python in VSCode?",
    engine="text-embedding-ada-002"
)
embeddings = response['data'][0]['embedding']
print(embeddings)

Tipy a doporučení pro integraci modelu vložení

  • Identifikovat případy použití: Vyhodnoťte konkrétní případy použití, kdy integrace modelu vkládání funkcí vektorového vyhledávání může do vašeho řešení vyhledávání přidat hodnotu. To může zahrnovat odpovídající obsah obrázku s textovým obsahem, křížové hledání nebo hledání podobných dokumentů.
  • Optimalizace nákladů a výkonu: Vektorové vyhledávání může být náročné na prostředky a podléhá maximálním limitům, proto zvažte pouze vektorizaci polí, která obsahují sémantický význam.
  • Zvolte správný model vkládání: Vyberte vhodný model pro konkrétní případ použití, například vkládání slov pro vyhledávání na základě textu nebo vkládání obrázků pro vizuální vyhledávání. Zvažte použití předem natrénovaných modelů, jako je vkládání textu ada-002 z rozhraní OpenAI nebo rozhraní REST API pro načítání obrázků z Azure AI Počítačové zpracování obrazu.
  • Normalizovat délky vektorů: Před uložením vektoru do indexu vyhledávání zajistěte, aby se zlepšila přesnost a výkon vyhledávání podobnosti. Většina předem natrénovaných modelů je už normalizována, ale ne všechny.
  • Vyladění modelu: V případě potřeby vylaďte vybraný model na datech specifických pro vaši doménu, abyste zlepšili jeho výkon a relevanci pro vaši vyhledávací aplikaci.
  • Testování a iterace: Průběžně testujte a upřesněte integraci modelu vkládání, abyste dosáhli požadovaného výkonu vyhledávání a spokojenosti uživatelů.

Další kroky