Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med den anpassade webb-API-vektoriseraren kan du konfigurera dina sökfrågor så att de anropar en webb-API-slutpunkt för att generera inbäddningar vid frågetillfället. Strukturen för den JSON-nyttolast som krävs för att implementeras i den angivna slutpunkten beskrivs längre ned i det här dokumentet. Dina data bearbetas i geo-området där din modell distribueras.
Även om vektoriserare används vid frågetillfället anger du dem i indexdefinitioner och refererar till dem i vektorfält via en vektorprofil. Mer information finns i Konfigurera en vektoriserare i ett sökindex.
Den anpassade webb-API-vektoriseraren anropas WebApiVectorizer i REST-API:et. Använd den senaste stabila versionen av Index – Skapa (REST API) eller ett Azure SDK-paket som tillhandahåller funktionen.
Vectorizer-parametrar
Parametrar är skiftlägeskänsliga.
| Parameternamn | beskrivning |
|---|---|
uri |
URI:n för webb-API:et som JSON-nyttolasten skickas till. Endast https-URI-schemat tillåts. |
httpMethod |
Den metod som ska användas när nyttolasten skickas. Tillåtna metoder är PUT eller POST |
httpHeaders |
En samling nyckel/värde-par där nycklarna representerar rubriknamn och värden representerar huvudvärden som skickas till webb-API:et tillsammans med nyttolasten. Följande rubriker får inte vara i den här samlingen: , , , , , Accept, Accept-Charset, Accept-Encoding, Content-Length, , Content-Type, . CookieHostTEUpgradeVia |
authResourceId |
(Valfritt) En sträng som om den anges anger att den här vektoriseraren ska använda en hanterad identitet på anslutningen till funktionen eller appen som är värd för koden. Den här egenskapen tar ett program-ID (klient)-ID eller appens registrering i Microsoft Entra-ID i något av följande format: api://<appId>, <appId>/.default, api://<appId>/.default. Det här värdet används för att begränsa den autentiseringstoken som hämtas av indexeraren och skickas tillsammans med den anpassade webb-API-begäran till funktionen eller appen. Om du anger den här egenskapen måste din söktjänst konfigureras för hanterad identitet och att azure-funktionsappen har konfigurerats för en Microsoft Entra-inloggning. |
authIdentity |
(Valfritt) En användarhanterad identitet som används av söktjänsten för att ansluta till funktionen eller appen som är värd för koden. Du kan använda antingen en system- eller användarhanterad identitet. Lämna tom om du vill använda en systemhanterad identitet authIdentity . |
timeout |
(Valfritt) När det anges anger du tidsgränsen för http-klienten som gör API-anropet. Det måste formateras som ett XSD-värde "dayTimeDuration" (en begränsad delmängd av ett ISO 8601-varaktighetsvärde ). Till exempel PT60S i 60 sekunder. Om det inte anges väljs ett standardvärde på 30 sekunder. Tidsgränsen kan anges till högst 230 sekunder och minst 1 sekund. |
Frågetyper för vektorer som stöds
Custom Web API-vektoriseraren stöder text, imageUrloch imageBinary vektorfrågor.
Exempeldefinition
"vectorizers": [
{
"name": "my-custom-web-api-vectorizer",
"kind": "customWebApi",
"customWebApiParameters": {
"uri": "https://contoso.embeddings.com",
"httpMethod": "POST",
"httpHeaders": {
"api-key": "0000000000000000000000000000000000000"
},
"timeout": "PT60S",
"authResourceId": null,
"authIdentity": null
},
}
]
JSON-nyttolaststruktur
Den nödvändiga JSON-nyttolaststrukturen som förväntas för en slutpunkt när du använder den med den anpassade webb-API-vektoriseraren är densamma som för den anpassade webb-API-färdigheten, vilket beskrivs mer detaljerat i dokumentationen för färdigheten.
Det finns följande andra saker att tänka på när du implementerar en webb-API-slutpunkt som ska användas med den anpassade webb-API-vektoriseraren.
Vektoriseraren skickar bara en post i taget i matrisen
valuesnär en begäran skickas till slutpunkten.Vektoriseraren skickar data som ska vektoriseras i en specifik nyckel i
dataJSON-objektet i nyttolasten för begäran. Nyckeln ärtext,imageUrl, ellerimageBinary, beroende på vilken typ av vektorfråga som begärdes.Vektoriseraren förväntar sig att den resulterande inbäddningen ska vara under
vectornyckeln idataJSON-objektet i svarsnyttolasten.Eventuella fel eller varningar som returneras av slutpunkten ignoreras av vektoriseraren och kan inte hämtas i felsökningssyfte vid frågetillfället.
Om en
imageBinaryvektorfråga begärdes är nyttolasten för begäran som skickas till slutpunkten följande:{ "values": [ { "recordId": "0", "data": { "imageBinary": { "data": "<base 64 encoded image binary data>" } } } ] }