Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Solo se aplica a:Portal de foundry (clásico). Este artículo no está disponible para el nuevo portal de Foundry.
Obtenga más información sobre el nuevo portal.
Note
Los vínculos de este artículo pueden abrir contenido en la nueva documentación de Microsoft Foundry en lugar de la documentación de Foundry (clásico) que está viendo ahora.
Important
Azure OpenAI en sus datos está en desuso y se acerca a la retirada.
Microsoft ha dejado de incorporar nuevos modelos a Azure OpenAI en los datos. Esta característica solo admite los siguientes modelos:
- GPT-4o (versiones 2024-05-13, 2024-08-06 y 2024-11-20)
- GPT-4o-mini (versión 2024-07-18)
- GPT-4.1, GPT-4.1-mini y GPT-4.1-nano (versión 2025-04-14)
Una vez que se retiren los modelos GPT-4.1, todos los puntos de conexión de Azure OpenAI en la API de datos y los conectores de origen de datos admitidos dejan de funcionar.
Se recomienda migrar Azure OpenAI en las cargas de trabajo de datos al servicio Foundry Agent con Foundry IQ para recuperar contenido y generar respuestas basadas en los datos. Para empezar, consulte Conexión de una base de conocimiento de Foundry IQ.
Las opciones configurables de Azure Cosmos DB para núcleo virtual de MongoDB al usar Azure OpenAI en los datos. Este origen de datos se admite en la versión 2024-02-01de API .
| Name | Type | Required | Description |
|---|---|---|---|
parameters |
Parameters | True | Los parámetros que se usarán al configurar Azure Cosmos DB para núcleos virtuales de MongoDB. |
type |
string | True | Debe ser azure_cosmos_db. |
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
database_name |
string | True | Nombre de base de datos de núcleo virtual de MongoDB que se va a usar con Azure Cosmos DB. |
container_name |
string | True | Nombre del contenedor de recursos de Azure Cosmos DB. |
index_name |
string | True | Nombre del índice de núcleo virtual de MongoDB que se va a usar con Azure Cosmos DB. |
fields_mapping |
FieldsMappingOptions | True | Comportamiento personalizado de asignación de campos que se usará al interactuar con el índice de búsqueda. |
authentication |
ConnectionStringAuthenticationOptions | True | Método de autenticación que se va a usar al acceder al origen de datos definido. |
embedding_dependency |
Uno de DeploymentNameVectorizationSource, EndpointVectorizationSource | True | Dependencia de inserción para la búsqueda de vectores. |
in_scope |
boolean | False | Si las consultas deben restringirse al uso de datos indexados. El valor predeterminado es True. |
role_information |
string | False | Proporcione las instrucciones del modelo sobre cómo debe comportarse y cualquier contexto al que debe hacer referencia al generar una respuesta. Puede describir la personalidad del asistente y indicarle cómo dar formato a las respuestas. |
strictness |
integer | False | La estricta configuración del filtrado de relevancia de búsqueda. Cuanto mayor sea la estricta, mayor será la precisión, pero una menor recuperación de la respuesta. El valor predeterminado es 3. |
top_n_documents |
integer | False | El número superior configurado de documentos que se van a presentar para la consulta configurada. El valor predeterminado es 5. |
Opciones de autenticación de cadena de conexión
Las opciones de autenticación de Azure OpenAI en los datos al usar una cadena de conexión.
| Name | Type | Required | Description |
|---|---|---|---|
connection_string |
string | True | Cadena de conexión que se va a usar para la autenticación. |
type |
string | True | Debe ser connection_string. |
Origen de vectorización de nombre de implementación
Los detalles del origen de vectorización, que usa Azure OpenAI en los datos al aplicar la búsqueda de vectores. Este origen de vectorización se basa en un nombre de implementación de modelos de inserción interno en el mismo recurso de Azure OpenAI. Este origen de vectorización le permite usar la búsqueda vectorial sin clave de API de Azure OpenAI y sin acceso a la red pública de Azure OpenAI.
| Name | Type | Required | Description |
|---|---|---|---|
deployment_name |
string | True | El nombre de implementación del modelo de inserción dentro del mismo recurso de Azure OpenAI. |
type |
string | True | Debe ser deployment_name. |
Origen de vectorización de punto de conexión
Los detalles del origen de vectorización, que usa Azure OpenAI en los datos al aplicar la búsqueda de vectores. Este origen de vectorización se basa en el punto de conexión de la API de inserción de Azure OpenAI.
| Name | Type | Required | Description |
|---|---|---|---|
endpoint |
string | True | Especifica la dirección URL del punto de conexión de recurso desde la que se deben recuperar las incrustaciones. Debe estar en el formato de https://{YOUR_RESOURCE_NAME}.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings. No se permite el parámetro de consulta api-version. |
authentication |
ApiKeyAuthenticationOptions | True | Especifica las opciones de autenticación que se usarán al recuperar incrustaciones desde el punto de conexión especificado. |
type |
string | True | Debe ser endpoint. |
Opciones de autenticación de clave de API
Las opciones de autenticación de Azure OpenAI en los datos al usar una clave de API.
| Name | Type | Required | Description |
|---|---|---|---|
key |
string | True | Clave de API que se va a usar para la autenticación. |
type |
string | True | Debe ser api_key. |
Opciones de asignación de campos
La configuración para controlar cómo se procesan los campos.
| Name | Type | Required | Description |
|---|---|---|---|
content_fields |
string[] | True | Nombres de campos de índice que se deben tratar como contenido. |
vector_fields |
string[] | True | Nombres de campos que representan datos vectoriales. |
content_fields_separator |
string | False | Patrón separador que deben usar los campos de contenido. El valor predeterminado es \n. |
filepath_field |
string | False | Nombre del campo de índice que se va a usar como ruta de acceso de archivo. |
title_field |
string | False | Nombre del campo de índice que se va a usar como título. |
url_field |
string | False | Nombre del campo de índice que se va a usar como dirección URL. |
Examples
Prerequisites:
- Configure las asignaciones de roles del usuario al recurso de Azure OpenAI. Rol necesario:
Cognitive Services OpenAI User. - Instale la CLI de Az y ejecute
az login. - Defina las siguientes variables de entorno:
AzureOpenAIEndpoint, ,ChatCompletionsDeploymentNameConnectionStringDatabase,Container, , .IndexEmbeddingDeploymentName
Note
Por ejemplo, solo se muestra lo siguiente. Si usa una cadena de conexión, almacénela de forma segura en otro lugar, como en Azure Key Vault. No incluya la clave de API directamente en el código y nunca la publique públicamente.
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
Instale los paquetes openaipip más recientes , 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))