Kunskaper om multimodala inbäddningar i Azure AI Vision
Viktigt!
Den här färdigheten finns i offentlig förhandsversion under kompletterande användningsvillkor. REST API för förhandsversion 2024-05-01 stöder den här funktionen.
Kunskaper om multimodala inbäddningar i Azure AI Vision använder Azure AI Visions API för multimodala inbäddningar för att generera inbäddningar för bild- eller textinmatning.
Kunskapen stöds endast i söktjänster som finns i en region som stöder API:et för Inbäddningar i Azure AI Vision Multimodal. Granska regionens tillgänglighet för multimodala inbäddningar. Dina data bearbetas i geo-området där din modell distribueras.
Kommentar
Den här kompetensen är bunden till Azure AI-tjänster och kräver en fakturerbar resurs för transaktioner som överstiger 20 dokument per indexerare och dag. Körning av inbyggda kunskaper debiteras enligt det befintliga priset för Betala per användning för Azure AI-tjänster.
Dessutom kan bildextrahering faktureras av Azure AI Search.
@odata.type
Microsoft.Skills.Vision.VectorizeSkill
Databegränsningar
Indatagränserna för kunskapen finns i Azure AI Vision-dokumentationen för bilder respektive text. Överväg att använda färdigheten Textdelning om du behöver datasegmentering för textindata.
Kompetensparametrar
Parametrar är skiftlägeskänsliga.
Indata | beskrivning |
---|---|
modelVersion |
(Krävs) Modellversionen som ska skickas till API:et för multimodala inbäddningar i Azure AI Vision för att generera inbäddningar. Det är viktigt att alla inbäddningar som lagras i ett visst indexfält genereras med samma modelVersion . Information om versionsstöd för den här modellen finns i multimodala inbäddningar. |
Kunskapsindata
Indata | beskrivning |
---|---|
text |
Den indatatext som ska vektoriseras. Om du använder datasegmentering kan källan vara /document/pages/* . |
image |
Komplex typ. För närvarande fungerar endast med fältet "/document/normalized_images", som skapas av Azure Blob Indexer när imageAction är inställt på ett annat värde än none . |
url |
URL:en för att ladda ned bilden som ska vektoriseras. |
queryString |
Frågesträngen för URL:en för att ladda ned bilden som ska vektoriseras. Användbart om du lagrar URL:en och SAS-token i separata sökvägar. |
Endast en av text
, image
eller url
/queryString
kan konfigureras för en enda instans av kunskapen. Om du vill vektorisera både bilder och text inom samma kompetensuppsättning ska du inkludera två instanser av den här färdigheten i kompetensuppsättningsdefinitionen, en för varje indatatyp som du vill använda.
Kunskapsutdata
Output | beskrivning |
---|---|
vector |
Utdatainbäddningsmatris med flyttal för indatatexten eller bilden. |
Exempeldefinition
För textinmatning bör du överväga en post som har följande fält:
{
"content": "Microsoft released Windows 10."
}
Då kan din kompetensdefinition se ut så här:
{
"@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill",
"context": "/document",
"modelVersion": "2023-04-15",
"inputs": [
{
"name": "text",
"source": "/document/content"
}
],
"outputs": [
{
"name": "vector"
}
]
}
För bildindata kan din kompetensdefinition se ut så här:
{
"@odata.type": "#Microsoft.Skills.Vision.VectorizeSkill",
"context": "/document/normalized_images/*",
"modelVersion": "2023-04-15",
"inputs": [
{
"name": "image",
"source": "/document/normalized_images/*"
}
],
"outputs": [
{
"name": "vector"
}
]
}
Om du vill vektorisera bilder direkt från bloblagringsdatakällan kan din kompetensdefinition se ut så här:
{
"@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"
}
]
}
Exempelutdata
För den angivna indatatexten skapas en vektoriserad inbäddningsutdata.
{
"vector": [
0.018990106880664825,
-0.0073809814639389515,
....
0.021276434883475304,
]
}
Utdata finns i minnet. Om du vill skicka utdata till ett fält i sökindexet måste du definiera en outputFieldMapping som mappar de vektoriserade inbäddningsutdata (som är en matris) till ett vektorfält. Förutsatt att kunskapsutdata finns i dokumentets vektornod och content_vector är fältet i sökindexet bör outputFieldMapping i indexeraren se ut så här:
"outputFieldMappings": [
{
"sourceFieldName": "/document/vector/*",
"targetFieldName": "content_vector"
}
]
För att mappa inbäddningar av bilder till indexet måste du använda funktionen Indexprojektioner . Nyttolasten för indexProjections
kan se ut ungefär så här:
"indexProjections": {
"selectors": [
{
"targetIndexName": "myTargetIndex",
"parentKeyFieldName": "ParentKey",
"sourceContext": "/document/normalized_images/*",
"mappings": [
{
"name": "content_vector",
"source": "/document/normalized_images/*/vector"
}
]
}
]
}