Kommentar
Å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.
Note
Azure AI-sökning är tillgängligt via Azure-portalen, REST-API:er och Azure-SDK:er. Den ligger också till grund för Foundry IQ, det hanterade kunskapsskiktet som omvandlar företagsinnehåll till återanvändbara, behörighetsmedvetna kunskapsbaser för agenter i Microsoft Foundry-portalen.
Färdigheten Azure OpenAI Embedding kopplas till en embeddingmodell som distribueras till din Azure OpenAI in Foundry Models resurs eller Microsoft Foundry för att generera embeddings under indexering. Dina data bearbetas i geo-området där din modell distribueras.
Wizarden Import data wizard i Azure-portalen använder Azure OpenAI Embedding-färdigheten för att vektorisera innehåll. Du kan köra trollkarlen och granska den genererade färdighetsuppsättningen för att se hur trollkarlen bygger färdigheten för att bädda in modeller.
Note
Denna färdighet är bunden att Azure OpenAI och debiteras till priset Azure OpenAI Standard.
Förutsättningar
En Azure OpenAI i Foundry Models-resursen eller Foundry-projektet.
Din Azure OpenAI-resurs måste ha en anpassad underdomän, till exempel
https://<resource-name>.openai.azure.com. Du hittar den här slutpunkten på sidan Keys och Endpoint i Azure-portalen och använder den för egenskapenresourceUrii den här kunskapen.Den överordnade resursen i foundry-projektet ger åtkomst till flera slutpunkter, inklusive
https://<resource-name>.openai.azure.com,https://<resource-name>.services.ai.azure.comochhttps://<resource-name>.cognitiveservices.azure.com. Du hittar dessa slutpunkter på sidan Keys och Endpoint i Azure-portalen och använda någon av dem för egenskapenresourceUrii den här färdigheten.
En Azure OpenAI-inbäddningsmodell som distribuerats till din resurs eller ditt projekt. För stödda modeller, se avsnittet om färdighetsparametrar .
@odata.type
Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill
Databegränsningar
Den maximala storleken på en textinmatning bör vara 8 000 tokens. Om inmatningen överskrider det maximala tillåtna släppet kastar modellen ett ogiltigt begäran-fel. För mer information, se nyckelbegreppet tokens i Azure OpenAI-dokumentationen. Överväg att använda Text Split-färdigheten om du behöver datachunking.
Kompetensparametrar
Parametrar är skiftlägeskänsliga.
| Indata | Beskrivning |
|---|---|
resourceUri |
(Krävs) URI:n för modellprovidern. Domäner som stöds är:
Detta fält krävs om din resurs är distribuerad bakom en privat endpoint eller använder virtuellt nätverksintegration (VNet). Azure API Management slutpunkter stöds också, förutom anpassade API Management-domäner. Konfiguration, inklusive autentisering, RBAC och valfri privat anslutning finns i Använd Azure API Management med Azure OpenAI-kunskaper och vektoriserare. |
apiKey |
Den hemliga nyckel som används för att komma åt modellen. Om du anger en nyckel lämnar du authIdentity tom. Om du anger både apiKey och authIdentityapiKey används den på anslutningen. |
deploymentId |
(Krävs) ID:t för den distribuerade Azure OpenAI-inbäddningsmodellen. Det här är det distributionsnamn som du angav när du distribuerade modellen. |
authIdentity |
En användarhanterad identitet som används av söktjänsten för anslutningen. Du kan använda antingen en system- eller användarhanterad identitet. Lämna och apiKey tom om du vill använda en systemhanterad identitetauthIdentity. Den systemhanterade identiteten används automatiskt. En hanterad identitet måste ha Cognitive Services OpenAI-användare behörighet att skicka text till Azure OpenAI. |
modelName |
(Krävs) Namnet på den Azure OpenAI-modell som distribuerats på den angivna deploymentId. Värden som stöds är:
|
dimensions |
(Valfritt) De dimensioner av inbäddningar du vill generera, förutsatt att modellen stöder ett intervall av dimensioner. Standard är de maximala dimensionerna för varje modell. För färdigheter skapade med REST API-versioner före förhandsvisningen 2023-10-01 är dimensionerna fasta till 1536. Om du sätter egenskapen dimensions i denna färdighet, sätt egenskapen dimensions på vektorfältdefinitionen till samma värde. |
Stödda dimensioner av modelName
De stödda dimensionerna för en Azure OpenAI Embedding-färdighet beror på den modelName som är konfigurerad.
modelName |
Minsta mått | Maximala dimensioner |
|---|---|---|
| text-embedding-ada-002 | 1536 | 1536 |
| text-inbäddning-3-stor | 1 | 3072 |
| text-inbäddning-3-liten | 1 | 1536 |
Kunskapsindata
| Input | Beskrivning |
|---|---|
text |
Inmatningstexten ska vektoriseras. Om du använder datachunking kan källan vara /document/pages/*. |
Färdighetsresultat
| Resultat | Beskrivning |
|---|---|
embedding |
Vektoriserad inbäddning för inmatningstexten. |
Exempeldefinition
Betrakta en post som har följande fält:
{
"content": "Microsoft released Windows 10."
}
Då kan din färdighetsdefinition se ut så här:
{
"@odata.type": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill",
"description": "Connects a deployed embedding model.",
"resourceUri": "https://my-demo-openai-eastus.openai.azure.com/",
"deploymentId": "my-text-embedding-ada-002-model",
"modelName": "text-embedding-ada-002",
"dimensions": 1536,
"inputs": [
{
"name": "text",
"source": "/document/content"
}
],
"outputs": [
{
"name": "embedding"
}
]
}
Exempel på utdata
För den givna inmatningstexten produceras en vektoriserad inbäddningsutdata.
{
"embedding": [
0.018990106880664825,
-0.0073809814639389515,
....
0.021276434883475304,
]
}
Utgången finns i minnet. För att skicka denna utdata till ett fält i sökindexet måste du definiera en outputFieldMapping som mappar den vektoriserade inbäddningsutdata (som är en array) till ett vektorfält. Om man antar att färdighetsutdata finns i dokumentets inbäddningsnod , och content_vector är fältet i sökindexet, bör outputFieldMapping i indexeraren se ut så här:
"outputFieldMappings": [
{
"sourceFieldName": "/document/embedding/*",
"targetFieldName": "content_vector"
}
]
Metodtips
Följande är några bästa praxis du bör tänka på när du använder denna färdighet:
Om du når gränsen för Azure OpenAI TPM (token per minut) bör du överväga quota limits advisory så att du kan åtgärda detta. Mer information om Azure OpenAI-instansprestanda finns i dokumentationen Azure OpenAI-övervakning.
Den Azure OpenAI-embeddingsmodellutplacering du använder för denna färdighet bör helst vara separat från den som används för andra användningsfall, inklusive query vectorizer. Detta hjälper varje distribution att skräddarsys efter sitt specifika användningsfall, vilket gör det enkelt att optimera prestanda och identifiera trafik från indexeraren och indexets inbäddningsanrop.
Din Azure OpenAI-instans bör finnas i samma region eller åtminstone geografiskt nära den region där AI Search-tjänsten finns. Detta minskar svarstiden och förbättrar dataöverföringshastigheten mellan tjänsterna.
Undvik ofta 429 felkoder genom att implementera belastningsutjämning via API Management genom att implementera en gateway framför flera Azure distributioner av OpenAI-inbäddningsmodell.
Om du har en gräns som är större än standardgränsen för Azure OpenAI TPM (token per minut) som publicerats i quotas och gränser dokumentation, öppnar du ett supportfall med Azure AI-sökning-teamet, så att detta kan justeras i enlighet med detta. Detta hjälper din indexeringsprocess att inte i onödan saktas ned av den dokumenterade TPM-standardgränsen om du har högre gränser.
För exempel och arbetskodexempel som använder denna färdighet, se följande länkar:
Fel och varningar
| Tillstånd | Result |
|---|---|
| Null eller ogiltig URI | Error |
| Null eller ogiltigt deploymentID | Error |
| Texten är tom | Varning |
| Texten är större än 8 000 tokens | Error |
Säkerhetsöverväganden för hanterad identitetsautentisering
När den Azure OpenAI-inbäddningsfärdigheten använder hanterad identitetsautentisering hämtar Azure AI-sökning en Microsoft Entra åtkomsttoken för Foundry Tools-målgruppen (https://cognitiveservices.azure.com) och inkluderar den i begäranden som skickas till slutpunkten som anges av resourceUri. Hanterad identitetsautentisering gäller när authIdentity anges, eller när båda apiKey och authIdentity är tomma och tjänsten använder den systemtilldelade identiteten.
Slutpunkten som refereras av resourceUri förväntas vara din egen Azure OpenAI- eller Foundry Tools-resurs. Domäner som stöds är:
openai.azure.comcognitiveservices.azure.comservices.ai.azure.com
Azure API Management(APIM) slutpunkter (*.azure-api.net) stöds också. Eftersom ett APIM-värdnamn inte kan verifieras enbart från namnet verifierar Azure AI-sökning slutpunkterna med en liveanslutningskontroll vid konfigurationstillfället i stället för genom domänmatchning. Du ansvarar för att konfigurera och underhålla relationen mellan APIM-slutpunkten och resursen Azure OpenAI eller Foundry Tools bakom den.
En hanterad identitetstoken som utfärdats för Foundry Tools-målgruppen är giltig mot alla Foundry Tools eller Azure OpenAI-resurs som identiteten är auktoriserad på. Om du skickar den till en ej betrodd slutpunkt kan token exponeras.
Rekommenderade säkerhetsmetoder
Följ dessa metoder för att upprätthålla en säker distribution:
- Ange
resourceUriendast till slutpunkter som du äger och litar på. Föredrar de Foundry Tools-domäner som angavs tidigare. Om du använder en APIM-slutpunkt bekräftar du att den frontar din egen resurs innan du aktiverar hanterad identitet. Ett betrott värdnamn är inte ett bevis på ägarskap. - Tillämpa principen om lägsta behörighet på den hanterade identitet som används av söktjänsten. Den Azure OpenAI-inbäddningsfärdigheten kräver endast Cognitive Services OpenAI-användarrollen på målresursen. Undvik att bevilja bredare roller.
- Använd nätverkssäkerhetsperimeter (NSP) och privata slutpunkter eller VNet-integrering för att begränsa vilka slutpunkter söktjänsten kan nå och vilka källor målresursen accepterar begäranden från.
- Om du använder en APIM-slutpunkt kontrollerar du att gatewayen validerar inkommande begäranden och vidarebefordrar dem endast till den avsedda serverdelen. Du bör också granska dess åtkomstprinciper med jämna mellanrum.
- Föredrar hanterad identitet framför
apiKey. Om du använderapiKeylagrar och roterar du det på ett säkert sätt och bäddar inte in det i källkontrollen. Tjänsten avvisar konfigurationer som anger bådeapiKeyochauthIdentity. - Granska regelbundet definitioner för kompetensuppsättningar, tilldelningar av hanterade identitetsroller och APIM-konfigurationer för att bekräfta att
resourceUrivärden, åtkomstkontroller och identitetsbehörigheter förblir aktuella och lämpliga. Granska konfigurationsändringar via dina etablerade processer för ändringshantering och säkerhetsgranskning. - Övervaka inloggningsloggar, autentiseringshändelser och åtkomstloggar för Azure OpenAI- och Foundry Tools för oväntad eller obehörig aktivitet.
- Ta bort oanvända kunskaper, slutpunkter, rolltilldelningar och API-nycklar som inte längre krävs.
Begränsa åtkomsten till konfiguration av kompetensuppsättningar
Användare som kan skapa, ändra eller köra kompetensuppsättningar styr både målslutpunkten (resourceUri) och autentiseringskonfigurationen som används av kunskapen. Eftersom färdigheten skickar en hanterad identitetstoken för Foundry Tools-målgruppen till slutpunkten begränsar du dessa behörigheter till betrodda administratörer och följer dina standardprocesser för ändringshantering och säkerhetsgranskning när du konfigurerar hanterade identitetsaktiverade kunskaper.