Vlastní vektorizátor webového rozhraní API
Vektorizátor vlastního webového rozhraní API umožňuje nakonfigurovat vyhledávací dotazy tak, aby vyvolali koncový bod webového rozhraní API, který vygeneruje vkládání v době dotazu. Struktura datové části JSON vyžadované k implementaci v poskytnutém koncovém bodu je podrobněji popsána v tomto dokumentu. Vaše data se zpracovávají v geografické oblasti, ve které je váš model nasazený.
Vektorizátory se používají v době dotazu, ale specifikují se v definicích indexu a odkazují na vektorová pole prostřednictvím vektorového profilu. Vlastní vektorizátor webového rozhraní API se volá WebApiVectorizer
v rozhraní API.
K poskytnutí této funkce použijte rozhraní REST API z 2024-07-01 nebo balíček sady Azure SDK, který je aktualizovaný.
Konfigurace vektorizátoru v indexuvyhledávání obsahuje pokyny k použití.
Parametry vektorizátoru
Parametry rozlišují malá a velká písmena.
Název parametru | Popis |
---|---|
uri |
Identifikátor URI webového rozhraní API, do kterého se odesílá datová část JSON. Je povoleno pouze schéma identifikátoru URI https . |
httpMethod |
Metoda, která se má použít při odesílání datové části. Povolené metody jsou PUT nebo POST |
httpHeaders |
Kolekce párů klíč-hodnota, kde klíče představují názvy hlaviček a hodnoty představují hodnoty hlaviček odesílané do webového rozhraní API spolu s datovou částí. V této kolekci nesmí být následující hlavičky: Accept , Accept-Charset , Accept-Encoding , Content-Length , Content-Type , Cookie , , Host , TE , Upgrade . Via |
authResourceId |
(Volitelné) Řetězec, který je nastaven, označuje, že tento vektorizátor by měl použít spravovanou identitu v připojení k funkci nebo aplikaci, která je hostitelem kódu. Tato vlastnost přebírá ID aplikace (klienta) nebo registraci aplikace v Microsoft Entra ID v některém z těchto formátů: api://<appId> , <appId>/.default , api://<appId>/.default . Tato hodnota slouží k určení rozsahu ověřovacího tokenu načteného indexerem a odesílá se spolu s vlastním požadavkem webového rozhraní API do funkce nebo aplikace. Nastavení této vlastnosti vyžaduje, aby vaše vyhledávací služba byla nakonfigurovaná pro spravovanou identitu a aplikace funkcí Azure je nakonfigurovaná pro přihlášení k Microsoft Entra. |
authIdentity |
(Volitelné) Identita spravovaná uživatelem používaná vyhledávací službou pro připojení k funkci nebo aplikaci, která je hostitelem kódu. Můžete použít identitu spravovanou systémem nebo uživatelem. Pokud chcete použít systémovou mangovanou identitu, nechejte authIdentity prázdnou. |
timeout |
(Volitelné) Po zadání označuje časový limit pro klienta HTTP, který volá rozhraní API. Musí být formátovaná jako hodnota XSD dayTimeDuration (omezená podmnožina hodnoty doby trvání ISO 8601). Například PT60S 60 sekund. Pokud není nastavená, vybere se výchozí hodnota 30 sekund. Časový limit je možné nastavit na maximálně 230 sekund a minimálně 1 sekundu. |
Podporované typy vektorových dotazů
Vektorizátor vlastního webového rozhraní API podporuje text
imageUrl
imageBinary
a vektorové dotazy.
Ukázková definice
"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
},
}
]
Struktura datové části JSON
Požadovaná struktura datové části JSON, která se očekává pro koncový bod při použití s vlastní vektorizátorem webového rozhraní API, je stejná jako u vlastní dovednosti webového rozhraní API, která je podrobněji popsána v dokumentaci pro danou dovednost.
Při implementaci koncového bodu webového rozhraní API pro použití s vlastní vektorizátorem webového rozhraní API je potřeba vzít v úvahu následující aspekty.
Vektorizátor odesílá v poli při požadavku na koncový bod pouze jeden záznam najednou
values
.Vektorizátor předává data, která se mají vektorizovat v určitém klíči objektu
data
JSON v datové části požadavku. Tento klíč jetext
,imageUrl
neboimageBinary
, v závislosti na typu vektorového dotazu byl požadován.Vektorizátor očekává, že výsledné vkládání bude pod
vector
klíčem v objektudata
JSON v datové části odpovědi.Všechny chyby nebo upozornění vrácené koncovým bodem jsou vektorizátorem ignorovány a nelze je získat pro účely ladění v době dotazu.
Pokud byl požadován vektorový
imageBinary
dotaz, datová část požadavku odeslaná do koncového bodu je následující:{ "values": [ { "recordId": "0", "data": { "imageBinary": { "data": "<base 64 encoded image binary data>" } } } ] }