Not
Å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.
Gäller för: ✅Microsoft Fabric✅Azure Data Explorer
Plugin-programmet ai_embeddings tillåter inbäddning av text med hjälp av språkmodeller, vilket möjliggör olika AI-relaterade scenarier som RAG-program (Retrieval Augmented Generation) och semantisk sökning. Plugin-programmet använder inbäddningsmodellerna för Azure OpenAI-tjänsten och kan nås med antingen en hanterad identitet eller användarens identitet (personifiering).
Plugin-programmet ai_embeddings tillåter inbäddning av text med hjälp av språkmodeller, vilket möjliggör olika AI-relaterade scenarier som RAG-program (Retrieval Augmented Generation) och semantisk sökning. Plugin-programmet använder inbäddningsmodellerna för Azure OpenAI-tjänsten och kan nås med antingen användarens identitet (personifiering).
Förutsättningar
- En Azure OpenAI-tjänst som konfigurerats med minst rollen (Cognitive Services OpenAI-användare) som tilldelats den identitet som används.
- En pratbubblans princip har konfigurerats för att tillåta anrop till AI-tjänster.
- När du använder hanterad identitet för att få åtkomst till Azure OpenAI-tjänsten konfigurerar du principen för hanterad identitet för att tillåta kommunikation med tjänsten.
Syntax
evaluate
ai_embeddings
(
text, connectionString [,alternativ [,IncludeErrorMessages]])
Läs mer om syntaxkonventioner.
Parameterar
| Namn | Typ | Krävs | Beskrivning |
|---|---|---|---|
| SMS | string |
✔️ | Texten som ska bäddas in. Värdet kan vara en kolumnreferens eller en konstant skalär. |
| connectionString | string |
✔️ | Anslutningssträngen för språkmodellen i formatet <ModelDeploymentUri>;<AuthenticationMethod>; ersätt <ModelDeploymentUri> och <AuthenticationMethod> med AI-modellens distributions-URI respektive autentiseringsmetoden. |
| alternativ | dynamic |
De alternativ som styr anrop till inbäddningsmodellens slutpunkt. Se Alternativ. | |
| IncludeErrorMessages (Inkludera felmeddelanden) | bool |
Anger om du vill mata ut fel i en ny kolumn i utdatatabellen. Standardvärde: false. |
Alternativ
I följande tabell beskrivs de alternativ som styr hur begäranden görs till inbäddningsmodellens slutpunkt.
| Namn | Typ | Beskrivning |
|---|---|---|
RecordsPerRequest |
int |
Anger antalet poster som ska bearbetas per begäran. Standardvärde: 1. |
CharsPerRequest |
int |
Anger det maximala antalet tecken som ska bearbetas per begäran. Standardvärde: 0 (obegränsat). Azure OpenAI räknar token, där varje token ungefär översätter till fyra tecken. |
RetriesOnThrottling |
int |
Anger antalet återförsök vid begränsning. Standardvärde: 0. |
GlobalTimeout |
timespan |
Anger den maximala tiden att vänta på ett svar från inbäddningsmodellen. Standardvärde: null |
ModelParameters |
dynamic |
Parametrar som är specifika för inbäddningsmodellen, till exempel inbäddningsdimensioner eller användaridentifierare i övervakningssyfte. Standardvärde: null. |
ReturnSuccessfulOnly |
bool |
Anger om endast de bearbetade objekten ska returneras. Standardvärde: false. Om parametern IncludeErrorMessages är inställd på trueär det här alternativet alltid inställt på false. |
Konfigurera pratbubblans princip
azure_openai
aktiverar externa anrop till Azure AI-tjänster.
Så här konfigurerar du pratbubblans princip för att auktorisera AI-modellens slutpunktsdomän:
.alter-merge cluster policy callout
```
[
{
"CalloutType": "azure_openai",
"CalloutUriRegex": "https://[A-Za-z0-9-]{3,63}\\.(?:openai\\.azure\\.com|cognitiveservices\\.azure\\.com|cognitive\\.microsoft\\.com|services\\.ai\\.azure\\.com)(?:/.*)?",
"CanCall": true
}
]
```
Konfigurera hanterad identitet
När du använder hanterad identitet för att få åtkomst till Azure OpenAI-tjänsten måste du konfigurera principen för hanterad identitet så att den systemtilldelade hanterade identiteten kan autentiseras till Azure OpenAI-tjänsten.
Så här konfigurerar du den hanterade identiteten:
.alter-merge cluster policy managed_identity
```
[
{
"ObjectId": "system",
"AllowedUsages": "AzureAI"
}
]
```
Retur
Returnerar följande nya inbäddningskolumner:
- En kolumn med suffixet _embeddings som innehåller inbäddningsvärdena
- Om den är konfigurerad för att returnera fel lämnas en kolumn med suffixet _embedding_error , som innehåller felsträngar eller lämnas tom om åtgärden lyckas.
Beroende på indatatyp returnerar plugin-programmet olika resultat:
- Kolumnreferens: Returnerar en eller flera poster med ytterligare kolumner föregås av referenskolumnnamnet. Om indatakolumnen till exempel heter TextData namnges utdatakolumnerna TextData_embedding och, om de är konfigurerade för att returnera fel, TextData_embedding_error.
- Konstant skalär: Returnerar en enskild post med ytterligare kolumner som inte är prefix. Kolumnnamnen är _embedding och om de är konfigurerade för att returnera fel _embedding_error.
Exempel
I följande exempel bäddas texten Embed this text using AI in med hjälp av Inbäddningsmodellen för Azure OpenAI.
let expression = 'Embed this text using AI';
let connectionString = 'https://myaccount.openai.azure.com/openai/deployments/text-embedding-3-small/embeddings?api-version=2024-06-01;managed_identity=system';
evaluate ai_embeddings(expression, connectionString)
let connectionString = 'https://myaccount.openai.azure.com/openai/deployments/text-embedding-3-small/embeddings?api-version=2024-06-01;impersonate';
evaluate ai_embeddings(expression, connectionString)
I följande exempel bäddas flera texter in med hjälp av Inbäddningsmodellen för Azure OpenAI.
let connectionString = 'https://myaccount.openai.azure.com/openai/deployments/text-embedding-3-small/embeddings?api-version=2024-06-01;managed_identity=system';
let options = dynamic({
"RecordsPerRequest": 10,
"CharsPerRequest": 10000,
"RetriesOnThrottling": 1,
"GlobalTimeout": 2m
});
datatable(TextData: string)
[
"First text to embed",
"Second text to embed",
"Third text to embed"
]
| evaluate ai_embeddings(TextData, connectionString, options , true)
let connectionString = 'https://myaccount.openai.azure.com/openai/deployments/text-embedding-3-small/embeddings?api-version=2024-06-01;impersonate';
let options = dynamic({
"RecordsPerRequest": 10,
"CharsPerRequest": 10000,
"RetriesOnThrottling": 1,
"GlobalTimeout": 2m
});
datatable(TextData: string)
[
"First text to embed",
"Second text to embed",
"Third text to embed"
]
| evaluate ai_embeddings(TextData, connectionString, options , true)
Metodtips
Inbäddningsmodeller för Azure OpenAI är föremål för stora begränsningar, och frekventa anrop till det här plugin-programmet kan snabbt nå begränsningsgränser.
Följ dessa metodtips för att effektivt använda ai_embeddings plugin-programmet samtidigt som du minimerar begränsningar och kostnader:
-
Kontrollbegärans storlek: Justera antalet poster (
RecordsPerRequest) och tecken per begäran (CharsPerRequest). -
Timeout för kontrollfråga: Ange
GlobalTimeoutett värde som är lägre än tidsgränsen för frågan för att säkerställa att förloppet inte går förlorat vid lyckade anrop fram till den tidpunkten. -
Hantera hastighetsbegränsningar på ett mer smidigt sätt: Ange återförsök vid begränsning (
RetriesOnThrottling).