Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica solo a:Portale di Foundry (versione classica). Questo articolo non è disponibile per il nuovo portale foundry.
Altre informazioni sul nuovo portale.
Note
I collegamenti in questo articolo potrebbero aprire contenuto nella nuova documentazione di Microsoft Foundry anziché nella documentazione di Foundry (versione classica) visualizzata.
Importante
Azure OpenAI On Your Data è obsoleto e si avvicina al pensionamento. Il servizio verrà ritirato il 14 ottobre 2026
Microsoft ha smesso di integrare nuovi modelli su Azure OpenAI On Your Data. Questa funzione supporta solo i seguenti modelli:
- GPT-4o (versioni 2024-05-13, 2024-08-06 e 20-11-2024)
- GPT-4o-mini (versione 2024-07-18)
Consigliamo di migrare Azure carichi di lavoro OpenAI On Your Data verso Foundry Agent Service con Foundry IQ per recuperare contenuti e generare risposte concrete dai tuoi dati. Per iniziare, consulta la base di conoscenza di Collega un QI di Foundry.
Le opzioni configurabili di Azure Cosmos DB per MongoDB vCore quando si utilizza Azure OpenAI On Your Data. Questa fonte di dati è supportata nella versione 2024-02-01API .
| Name | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
parameters |
Parametri | True | I parametri da usare quando si configura Azure Cosmos DB per MongoDB vCore. |
type |
string | True | Deve essere azure_cosmos_db. |
Parameters
| Name | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
database_name |
string | True | Il nome del database MongoDB vCore da usare con Azure Cosmos DB. |
container_name |
string | True | Il nome del container di risorse Azure Cosmos DB. |
index_name |
string | True | Il nome dell'indice MongoDB vCore da usare con Azure Cosmos DB. |
fields_mapping |
FieldsMappingOptions | True | Comportamento personalizzato della mappatura dei campi da utilizzare durante l'interazione con l'indice di ricerca. |
authentication |
ConnectionStringAuthenticationOptions | True | Il metodo di autenticazione da utilizzare quando si accede alla sorgente dati definita. |
embedding_dependency |
Uno di DeploymentNameVectorizationSource, EndpointVectorizationSource | True | La dipendenza di embedding per la ricerca vettoriale. |
in_scope |
boolean | Falso | Se le query dovrebbero essere limitate all'uso di dati indicizzati. Il valore predefinito è True. |
role_information |
string | Falso | Fornisci al modello istruzioni su come dovrebbe comportarsi e qualsiasi contesto che dovrebbe consultare quando genera una risposta. Puoi descrivere la personalità dell'assistente e spiegargli come formattare le risposte. |
strictness |
integer | Falso | La rigorosità configurata del filtraggio della rilevanza di ricerca. Più alta è la severità, maggiore è la precisione ma minore è la memoria della risposta. Il valore predefinito è 3. |
top_n_documents |
integer | Falso | Il numero superiore configurato di documenti da presentare per la query configurata. Il valore predefinito è 5. |
Opzioni di autenticazione delle stringhe di connessione
Le opzioni di autenticazione per Azure OpenAI sui tuoi dati quando si utilizza una stringa di connessione.
| Name | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
connection_string |
string | True | La stringa di connessione da usare per l'autenticazione. |
type |
string | True | Deve essere connection_string. |
Sorgente di vettorizzazione dei nomi del deployment
I dettagli della sorgente di vettorizzazione, utilizzata da Azure OpenAI On Your Data quando applica la ricerca vettoriale. Questa sorgente di vettorizzazione si basa su un nome interno di implementazione di un modello di embedding nella stessa risorsa Azure OpenAI. Questa sorgente di vettorizzazione ti permette di utilizzare la ricerca vettoriale senza l'api-key OpenAI di Azure e senza l'accesso alla rete pubblica di Azure OpenAI.
| Name | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
deployment_name |
string | True | Il nome di distribuzione del modello di embedding all'interno della stessa risorsa Azure OpenAI. |
type |
string | True | Deve essere deployment_name. |
Sorgente di vettorizzazione dell'endpoint
I dettagli della sorgente di vettorizzazione, utilizzata da Azure OpenAI On Your Data quando applica la ricerca vettoriale. Questa sorgente di vettorizzazione si basa sull'endpoint API di embedding Azure OpenAI.
| Name | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
endpoint |
string | True | Specifica l'URL dell'endpoint della risorsa da cui devono essere recuperati gli embedding. Dovrebbe essere nel formato di https://{YOUR_RESOURCE_NAME}.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings. Il parametro di query della versione API non è permesso. |
authentication |
ApiKeyAuthenticationOptions | True | Specifica le opzioni di autenticazione da utilizzare durante il recupero degli embedding dall'endpoint specificato. |
type |
string | True | Deve essere endpoint. |
Opzioni di autenticazione con chiave API
Le opzioni di autenticazione per Azure OpenAI sui tuoi dati quando si utilizza una chiave API.
| Name | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
key |
string | True | La chiave API da usare per l'autenticazione. |
type |
string | True | Deve essere api_key. |
Opzioni di mappatura dei campi
Le impostazioni per controllare come vengono elaborati i campi.
| Name | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
content_fields |
string[] | True | I nomi dei campi indice che dovrebbero essere trattati come contenuti. |
vector_fields |
string[] | True | I nomi dei campi che rappresentano dati vettoriali. |
content_fields_separator |
string | Falso | Il pattern separatore che i campi di contenuto dovrebbero usare. Il valore predefinito è \n. |
filepath_field |
string | Falso | Il nome del campo indice da usare come percorso file. |
title_field |
string | Falso | Il nome del campo indice da usare come titolo. |
url_field |
string | Falso | Il nome del campo indice da usare come URL. |
Examples
Prerequisiti:
- Configura le assegnazioni dei ruoli dall'utente alla risorsa Azure OpenAI. Ruolo richiesto:
Cognitive Services OpenAI User. - Installa la CLI di Arizona e esegui
az login. - Definisci le seguenti variabili ambientali:
AzureOpenAIEndpoint,ChatCompletionsDeploymentName,ConnectionString,Database,Container,Index, , .EmbeddingDeploymentName
Note
Quanto segue è solo un esempio. Se usi un stringa di connessione, conservalo in modo sicuro altrove, ad esempio in Azure Key Vault. Non includere la chiave API direttamente nel codice e non pubblicarla mai pubblicamente.
export AzureOpenAIEndpoint=https://example.openai.azure.com/
export ChatCompletionsDeploymentName=turbo
export ConnectionString='<db-connection-string>'
export Database=testdb
export Container=testcontainer
export Index=testindex
export EmbeddingDeploymentName=ada
Installa gli ultimi pacchetti openaipip , azure-identity.
import os
from openai import AzureOpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
endpoint = os.environ.get("AzureOpenAIEndpoint")
deployment = os.environ.get("ChatCompletionsDeploymentName")
connection_string = os.environ.get("ConnectionString")
database = os.environ.get("Database")
container = os.environ.get("Container")
index = os.environ.get("Index")
embedding_deployment_name = os.environ.get("EmbeddingDeploymentName")
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default")
client = AzureOpenAI(
azure_endpoint=endpoint,
azure_ad_token_provider=token_provider,
api_version="2024-02-01",
)
completion = client.chat.completions.create(
model=deployment,
messages=[
{
"role": "user",
"content": "Who is DRI?",
},
],
extra_body={
"data_sources": [
{
"type": "azure_cosmos_db",
"parameters": {
"authentication": {
"type": "connection_string",
"connection_string": connection_string
},
"database_name": database,
"container_name": container,
"index_name": index,
"fields_mapping": {
"content_fields": [
"content"
],
"vector_fields": [
"contentvector"
]
},
"embedding_dependency": {
"type": "deployment_name",
"deployment_name": embedding_deployment_name
}
}
}
],
}
)
print(completion.model_dump_json(indent=2))