Sdílet prostřednictvím


Dovednosti s vícemodálními vkládáními ve službě Azure AI Vision

Důležité

Tato dovednost je ve veřejné verzi Preview v rámci dodatečných podmínek použití. Rozhraní REST API verze 2024-05-05-01-Preview tuto funkci podporuje.

Dovednosti s vícemodálními vkládáními ve službě Azure AI Vision využívá multimodální rozhraní API služby Azure AI Vision ke generování vkládání obrázků nebo textu.

Dovednost se podporuje pouze ve vyhledávacích službách umístěných v oblasti, která podporuje rozhraní API pro vkládání ve službě Azure AI Vision Multimodal. Zkontrolujte dostupnost oblastí pro vícemodální vkládání. Vaše data se zpracovávají v geografické oblasti, ve které je váš model nasazený.

Poznámka:

Tato dovednost je vázána na služby Azure AI a vyžaduje fakturovatelný prostředek pro transakce, které překračují 20 dokumentů na indexer za den. Provádění integrovaných dovedností se účtuje za stávající cenu průběžných plateb za služby Azure AI.

Kromě toho je extrakce obrázků fakturovatelná službou Azure AI Search.

@odata.type

Microsoft.Skills.Vision.VectorizeSkill

Omezení dat

Vstupní limity dovednosti najdete v dokumentaci ke službě Azure AI Vision pro obrázky a text. Pokud potřebujete blok dat pro textové vstupy, zvažte použití dovednosti Rozdělení textu.

Parametry dovedností

Parametry rozlišují malá a velká písmena.

Vstupy Popis
modelVersion (Povinné) Verze modelu, která se má předat do rozhraní API pro vkládání ve službě Azure AI Vision pro generování vložených objektů. Je důležité, aby se všechna vkládání uložená v daném poli indexu vygenerovala pomocí stejného modelVersion. Informace o podpoře verzí pro tento model najdete v tématu vícemodální vkládání.

Vstupy dovedností

Vstup Popis
text Vstupní text, který má být vektorizován. Pokud používáte blok dat, zdroj může být /document/pages/*.
image Komplexní typ. V současné době pracuje pouze s polem /document/normalized_images, které indexer objektů blob Azure vytvoří, když imageAction je nastavená na jinou hodnotu než none.
url Adresa URL pro stažení obrázku, který se má vektorizovat.
queryString Řetězec dotazu adresy URL pro stažení obrázku, který se má vektorizovat. Užitečné, pokud adresu URL a token SAS uložíte do samostatných cest.

Pouze jeden z text, image nebo url/queryString může být nakonfigurován pro jednu instanci dovednosti. Pokud chcete vektorizovat obrázky i text ve stejné sadě dovedností, zahrňte do definice sady dovedností dvě instance této dovednosti, jednu pro každý typ vstupu, který chcete použít.

Výstupy dovedností

Výstup Popis
vector Výstupní pole s plovoucími matici pro vstupní text nebo obrázek

Ukázková definice

U textového zadání zvažte záznam, který obsahuje následující pole:

{
    "content": "Microsoft released Windows 10."
}

Definice dovedností pak může vypadat takto:

{ 
    "@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill", 
    "context": "/document", 
    "modelVersion": "2023-04-15", 
    "inputs": [ 
        { 
            "name": "text", 
            "source": "/document/content" 
        } 
    ], 
    "outputs": [ 
        { 
            "name": "vector"
        } 
    ] 
} 

Pro vstup obrázku může definice dovednosti vypadat takto:

{
    "@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill",
    "context": "/document/normalized_images/*",
    "modelVersion": "2023-04-15", 
    "inputs": [
        {
            "name": "image",
            "source": "/document/normalized_images/*"
        }
    ],
    "outputs": [
        {
            "name": "vector"
        }
    ]
}

Pokud chcete vektorizovat obrázky přímo ze zdroje dat úložiště objektů blob, může definice dovednosti vypadat takto:

{
    "@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill",
    "context": "/document",
    "modelVersion": "2023-04-15", 
    "inputs": [
        {
            "name": "url",
            "source": "/document/metadata_storage_path"
        },
        {
            "name": "queryString",
            "source": "/document/metadata_storage_sas_token"
        }
    ],
    "outputs": [
        {
            "name": "vector"
        }
    ]
}

Ukázkový výstup

Pro daný vstupní text se vytvoří vektorizovaný vložený výstup.

{
  "vector": [
        0.018990106880664825,
        -0.0073809814639389515,
        .... 
        0.021276434883475304,
      ]
}

Výstup se nachází v paměti. Pokud chcete tento výstup odeslat do pole v indexu vyhledávání, musíte definovat outputFieldMapping , který mapuje vektorizovaný vložený výstup (což je pole) na vektorové pole. Za předpokladu, že se výstup dovednosti nachází v uzlu vektoru dokumentu a content_vector je pole v indexu vyhledávání, měl by výstupFieldMapping v indexeru vypadat takto:

  "outputFieldMappings": [
    {
      "sourceFieldName": "/document/vector/*",
      "targetFieldName": "content_vector"
    }
  ]

Pro mapování vkládání obrázků na index budete muset použít funkci Projekce indexu . Datová část může indexProjections vypadat nějak takto:

"indexProjections": {
    "selectors": [
        {
            "targetIndexName": "myTargetIndex",
            "parentKeyFieldName": "ParentKey",
            "sourceContext": "/document/normalized_images/*",
            "mappings": [
                {
                    "name": "content_vector",
                    "source": "/document/normalized_images/*/vector"
                }
            ]
        }
    ]
}

Viz také