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.
En este artículo se muestra cómo usar la API de OpenAI v1 Azure. La API v1 simplifica la autenticación, elimina la necesidad de parámetros con fecha api-version y admite llamadas de modelo entre proveedores.
Nota
Es posible que se agreguen nuevos objetos de respuesta de API a la respuesta de api en cualquier momento. Se recomienda analizar solo los objetos de respuesta que necesite.
Requisitos previos
- Una suscripción Azure: Crear una gratuita
- Un recurso Foundry o recurso de Azure OpenAI implementado en una región compatible
- Al menos una implementación de modelos
- Para la autenticación de Microsoft Entra ID: el rol
Cognitive Services OpenAI Userasignado a su identidad. Para obtener más información, consulte el control de acceso basado en roles para Azure OpenAI
Evolución de la API
Anteriormente, Azure OpenAI recibió actualizaciones mensuales de nuevas versiones de API. Aprovechar las nuevas características necesarias para actualizar constantemente el código y las variables de entorno con cada nueva versión de API. Azure OpenAI también requería el paso adicional de usar Azure clientes específicos que crearon sobrecarga al migrar código entre OpenAI y Azure OpenAI.
A partir de agosto de 2025, puede optar por la próxima generación de las APIs Azure OpenAI v1 que agrega compatibilidad con:
- Acceso continuo a las funciones más recientes sin necesidad de especificar nuevos
api-versioncada mes. - Ciclo de lanzamiento de API más rápido con nuevas características que se inician con más frecuencia.
- Compatibilidad para clientes de OpenAI con cambios mínimos en el código para alternar entre OpenAI y Azure OpenAI al usar la autenticación basada en claves.
- Compatibilidad con el cliente de OpenAI para la autenticación basada en tokens y la actualización automática de tokens sin necesidad de depender de un cliente de OpenAI independiente Azure.
- Realice llamadas de finalización de chat con modelos de otros proveedores, como DeepSeek y Grok, que admiten la sintaxis de finalizaciones de chat v1.
El acceso a las nuevas llamadas de API que aún están en versión preliminar se controlará pasando los encabezados de vista previa específicos de la característica, permitiéndole optar por las características que desee, sin tener que cambiar de versiones de API. Como alternativa, algunas características indicarán el estado de vista previa a través de su ruta de acceso de API y no requieren un encabezado adicional.
Ejemplos:
- Cuando
/openai/v1/evalsse encontraba anteriormente en versión preliminar, requería pasar un"aoai-evals":"preview"encabezado. /evals ya no está en versión preliminar. -
/openai/v1/fine_tuning/alpha/graders/está en versión preliminar y no requiere ningún encabezado personalizado debido a la presencia dealphaen la ruta de acceso de la API.
Para el inicio inicial de la API disponible con carácter general (GA), solo se admite un subconjunto de las funcionalidades de la API de inferencia y creación. Todas las características GA se admiten para su uso en producción. Se está añadiendo rápidamente soporte para más capacidades.
Cambios de código
API v1
ejemplos de Python v1
Clave de API:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
base_url="https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/"
)
response = client.responses.create(
model="gpt-4.1-nano", # Replace with your model deployment name
input="This is a test.",
)
print(response.model_dump_json(indent=2))
Diferencias clave de la API anterior:
-
OpenAI()el cliente se usa en lugar deAzureOpenAI(). -
base_urlpasa al punto de conexión de Azure OpenAI y/openai/v1se anexa a la dirección del punto de conexión. -
api-versionya no es un parámetro necesario con la API de disponibilidad general v1.
Clave de API con variables de entorno:
Establezca las siguientes variables de entorno antes de ejecutar el código:
| Variable | Valor |
|---|---|
OPENAI_BASE_URL |
https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/ |
OPENAI_API_KEY |
La clave de API de OpenAI de Azure |
A continuación, cree el cliente sin parámetros:
client = OpenAI()
Microsoft Entra ID:
Importante
El control de la actualización automática de tokens se controló previamente mediante el uso del AzureOpenAI() cliente. La API v1 quita esta dependencia agregando compatibilidad con la actualización automática de tokens al OpenAI() cliente.
from openai import OpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
client = OpenAI(
base_url = "https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/",
api_key = token_provider
)
response = client.responses.create(
model="gpt-4.1-nano",
input= "This is a test"
)
print(response.model_dump_json(indent=2))
-
base_urlpasa al punto de conexión de Azure OpenAI y/openai/v1se anexa a la dirección del punto de conexión. -
api_keyse establece el parámetro entoken_provider, lo que permite la recuperación automática y la actualización de un token de autenticación en lugar de usar una clave de API estática.
Soporte de modelos
Para Azure modelos de OpenAI, se recomienda usar la API de Responses, sin embargo, la API v1 también le permite realizar llamadas de finalización de chat con modelos de otros proveedores, como DeepSeek y Grok, que admiten la sintaxis de finalizaciones de chat de OpenAI v1.
base_url aceptará los https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/ formatos y https://YOUR-RESOURCE-NAME.services.ai.azure.com/openai/v1/ .
Nota
La API de respuestas también funciona con los modelos Foundry vendidos directamente por Azure, como Microsoft AI, DeepSeek y los modelos Grok. Para obtener información sobre cómo usar la API de respuestas con estos modelos, consulte Cómo generar respuestas de texto con modelos de Microsoft Foundry.
from openai import OpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
token_provider = get_bearer_token_provider(
DefaultAzureCredential(), "https://ai.azure.com/.default"
)
client = OpenAI(
base_url = "https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/",
api_key=token_provider,
)
completion = client.chat.completions.create(
model="MAI-DS-R1", # Replace with your model deployment name.
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Tell me about the attention is all you need paper"}
]
)
#print(completion.choices[0].message)
print(completion.model_dump_json(indent=2))
Compatibilidad con la API v1
Registro de cambios de la versión de API
En las secciones siguientes se resumen los cambios entre las versiones de API.
Cambios entre la versión preliminar v1 y 2025-04-01-preview
- API de versión preliminar v1
- Compatibilidad con la generación de vídeos
-
NUEVO Características de la API de respuestas:
- Integración de herramientas de servidores del Protocolo de Contexto de Modelo Remoto (MCP)
- Compatibilidad con tareas en segundo plano asincrónicas
- Elementos de razonamiento cifrados
- Generación de imágenes
Cambios entre 2025-04-01-preview y 2025-03-01-preview
Cambios entre 2025-03-01-preview y 2025-02-01-preview
- API de respuestas
- Uso del equipo
Cambios entre 2025-02-01-preview y 2025-01-01-preview
- Finalizaciones almacenadas (compatibilidad con la API de destilación).
Cambios entre 2025-01-01-preview y 2024-12-01-preview
-
predictionparámetro agregado para la compatibilidad con salidas predichas . -
gpt-4o-audio-previewcompatibilidad con modelos.
Cambios entre 2024-12-01-preview y 2024-10-01-preview
-
storeymetadataparámetros agregados para la compatibilidad con finalizaciones almacenadas. -
reasoning_effortse agregó para los modelos de razonamiento más recientes. -
user_security_contextagregado para la integración de Microsoft Defender para la nube.
Cambios entre 2024-09-01-preview y 2024-08-01-preview
-
max_completion_tokensse ha agregado para compatibilidad con los modeloso1-previewyo1-mini.max_tokensno funciona con los modelos de la serie o1 . -
parallel_tool_callsagregado. -
completion_tokens_details&reasoning_tokensagregado. -
stream_options&include_usageagregado.
Cambios entre la especificación de api 2024-07-01-preview y 2024-08-01-preview
- Compatibilidad con salidas estructuradas.
- Api de carga de archivos de gran tamaño agregada.
- Sobre los cambios en los datos:
- Integración de Mongo DB.
-
role_informationparámetro quitado. -
rerank_scoreagregado a un objeto de referencia. - Se ha quitado el origen de datos de AML.
- Mejoras en la integración de vectorización de AI Search.
Cambios entre la especificación de api 2024-05-01-preview y 2024-07-01-preview
- Se ha agregado compatibilidad con batch API
- Parámetros de estrategia de fragmentación del almacén de vectores
-
max_num_resultsque la herramienta de búsqueda de archivos debe generar.
Cambios entre la especificación de api 2024-04-01-preview y 2024-05-01-preview
- Compatibilidad con asistentes v2: herramienta de búsqueda de archivos y almacenamiento de vectores
- Ajuste checkpoints, seed, events
- Sobre tus actualizaciones de datos
- DALL-E 2 ahora admite la implementación de modelos y se puede usar con la API de versión preliminar más reciente.
- Actualizaciones de filtrado de contenido
Cambios entre la especificación de api 2024-03-01-preview y 2024-04-01-preview
-
Cambio importante: se han quitado los parámetros de mejoras. Esto afecta al modelo
gpt-4Versión:vision-preview. - timestamp_granularities parámetro agregado.
-
audioWordobjeto agregado. - TTS adicional
response_formats: wav & pcm.
Problemas conocidos
- La especificación de
2025-04-01-previewAzure OpenAI usa la OpenAPI 3.1. Es un problema conocido que esta versión no es totalmente compatible con Azure API Management.