Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: ✅Microsoft Fabric✅Azure Data Explorer-
Met de ai_embeddings
invoegtoepassing kunt u tekst insluiten met behulp van taalmodellen, waardoor verschillende AI-gerelateerde scenario's, zoals RAG-toepassingen (Retrieval Augmented Generation) en semantische zoekopdrachten mogelijk zijn. De invoegtoepassing maakt gebruik van de azure OpenAI Service-insluitingsmodellen en kan worden geopend met behulp van een beheerde identiteit of de identiteit van de gebruiker (imitatie).
Met de ai_embeddings
invoegtoepassing kunt u tekst insluiten met behulp van taalmodellen, waardoor verschillende AI-gerelateerde scenario's, zoals RAG-toepassingen (Retrieval Augmented Generation) en semantische zoekopdrachten mogelijk zijn. De invoegtoepassing maakt gebruik van de azure OpenAI Service-insluitingsmodellen en kan worden geopend met behulp van de identiteit van de gebruiker (imitatie).
Vereiste voorwaarden
- Een Azure OpenAI-service die is geconfigureerd met ten minste de rol (Cognitive Services OpenAI-gebruiker) die is toegewezen aan de identiteit die wordt gebruikt.
- Een bijschriftbeleid dat is geconfigureerd om aanroepen naar AI-services toe te staan.
- Wanneer u beheerde identiteit gebruikt om toegang te krijgen tot de Azure OpenAI-service, configureert u het beleid voor beheerde identiteiten om communicatie met de service toe te staan.
Syntaxis
evaluate
ai_embeddings
(
text, connectionString [,
opties [,
IncludeErrorMessages]])
Meer informatie over syntaxisconventies.
Parameterwaarden
Naam | Typologie | Verplicht | Beschrijving |
---|---|---|---|
tekst | string |
✔️ | De tekst die moet worden ingesloten. De waarde kan een kolomreferentie of een constante scalaire waarde zijn. |
verbindingString | string |
✔️ | De verbindingsreeks voor het taalmodel in de indeling <ModelDeploymentUri>;<AuthenticationMethod> ; vervang en vervang <ModelDeploymentUri> door <AuthenticationMethod> respectievelijk de URI voor de implementatie van het AI-model en de verificatiemethode. |
Opties | dynamic |
De opties waarmee aanroepen naar het eindpunt van het insluitmodel worden beheerd. Zie opties. | |
IncludeErrorMessages | bool |
Hiermee wordt aangegeven of er uitvoerfouten in een nieuwe kolom in de uitvoertabel moeten worden uitgevoerd. Standaardwaarde: false . |
Opties
In de volgende tabel worden de opties beschreven die bepalen hoe de aanvragen worden gedaan voor het eindpunt van het insluitmodel.
Naam | Typologie | Beschrijving |
---|---|---|
RecordsPerRequest |
int |
Hiermee geeft u het aantal records dat per aanvraag moet worden verwerkt. Standaardwaarde: 1 . |
CharsPerRequest |
int |
Hiermee geeft u het maximum aantal tekens op dat per aanvraag moet worden verwerkt. Standaardwaarde: 0 (onbeperkt). Azure OpenAI telt tokens, waarbij elk token ongeveer wordt omgezet in vier tekens. |
RetriesOnThrottling |
int |
Hiermee geeft u het aantal nieuwe pogingen op wanneer beperking plaatsvindt. Standaardwaarde: 0 . |
GlobalTimeout |
timespan |
Hiermee geeft u de maximale tijd om te wachten op een antwoord van het insluitmodel. Standaardwaarde: null |
ModelParameters |
dynamic |
Parameters die specifiek zijn voor het insluitingsmodel, zoals het insluiten van dimensies of gebruikers-id's voor bewakingsdoeleinden. Standaardwaarde: null . |
ReturnSuccessfulOnly |
bool |
Hiermee wordt aangegeven of alleen de verwerkte items moeten worden geretourneerd. Standaardwaarde: false . Als de parameter IncludeErrorMessages is ingesteld op true , is deze optie altijd ingesteld op false . |
Bijschriftbeleid configureren
Met azure_openai
het bijschriftbeleid kunnen externe aanroepen naar Azure AI-services worden ingeschakeld.
Het bijschriftbeleid configureren om het eindpuntdomein van het AI-model te autoriseren:
.alter-merge cluster policy callout
```
[
{
"CalloutType": "azure_openai",
"CalloutUriRegex": "https://[A-Za-z0-9\\-]{3,63}\\.openai\\.azure\\.com/.*",
"CanCall": true
}
]
```
Beheerde identiteit configureren
Wanneer u beheerde identiteit gebruikt om toegang te krijgen tot de Azure OpenAI-service, moet u het beleid voor beheerde identiteiten configureren om de door het systeem toegewezen beheerde identiteit te laten verifiëren bij de Azure OpenAI-service.
De beheerde identiteit configureren:
.alter-merge cluster policy managed_identity
```
[
{
"ObjectId": "system",
"AllowedUsages": "AzureAI"
}
]
```
Retouren
Retourneert de volgende nieuwe kolommen voor insluiten:
- Een kolom met het achtervoegsel _embeddings die de inbeddingswaarden bevat
- Als deze is geconfigureerd om fouten te retourneren, wordt een kolom met het achtervoegsel _embedding_error , dat fouttekenreeksen bevat of leeg blijft als de bewerking is geslaagd.
Afhankelijk van het invoertype retourneert de invoegtoepassing verschillende resultaten:
- Kolomverwijzing: retourneert een of meer records met extra kolommen worden voorafgegaan door de naam van de verwijzingskolom. Als de invoerkolom bijvoorbeeld TextData heet, worden de uitvoerkolommen TextData_embedding genoemd en, indien geconfigureerd voor het retourneren van fouten, TextData_embedding_error.
- Constante scalaire waarde: retourneert één record met extra kolommen die niet voorafgaan. De kolomnamen worden _embedding en, indien geconfigureerd voor het retourneren van fouten, _embedding_error.
Voorbeelden
In het volgende voorbeeld wordt de tekst Embed this text using AI
ingesloten met behulp van het Azure OpenAI Embedding-model.
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)
In het volgende voorbeeld worden meerdere teksten ingesloten met behulp van het Azure OpenAI Embedding-model.
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)
Beste praktijken
Azure OpenAI-insluitingsmodellen zijn onderhevig aan zware beperking. Frequente aanroepen naar deze invoegtoepassing kunnen snel beperkingen bereiken.
Als u de ai_embeddings
invoegtoepassing efficiënt wilt gebruiken terwijl beperking en kosten worden geminimaliseerd, volgt u deze aanbevolen procedures:
-
Grootte van beheeraanvraag: pas het aantal records () en tekens per aanvraag (
RecordsPerRequest
CharsPerRequest
) aan. -
Time-out voor query's beheren: stel
GlobalTimeout
deze in op een waarde die lager is dan de time-out van de query om ervoor te zorgen dat de voortgang niet verloren gaat bij geslaagde aanroepen tot dat moment. -
Frequentielimieten correct verwerken: stel nieuwe pogingen in voor beperking (
RetriesOnThrottling
).