Azure OpenAI in Microsoft Foundry Models v1 API

Este artigo mostra-lhe como usar a API OpenAI do Azure v1. A API v1 simplifica a autenticação, elimina a necessidade de parâmetros datados api-version e suporta chamadas de modelo entre fornecedores.

Nota

Novos objetos de resposta da API podem ser adicionados à resposta da API a qualquer momento. Recomendamos que analise apenas os objetos de resposta que necessita.

Pré-requisitos

Evolução da API

Anteriormente, o Azure OpenAI recebia atualizações mensais de novas versões da API. Aproveitar as novas funcionalidades exigia a atualização constante do código e das variáveis de ambiente a cada nova versão da API. O Azure OpenAI também exigia o passo extra de usar clientes específicos do Azure, o que criava sobrecarga ao migrar código entre OpenAI e Azure OpenAI.

A partir de agosto de 2025, pode aderir às próximas APIs OpenAI do Azure v1, que adicionam suporte para:

  • Acesso contínuo às funcionalidades mais recentes sem necessidade de especificar novos api-version's todos os meses.
  • Ciclo de lançamento da API mais rápido com novas funcionalidades a serem lançadas com mais frequência.
  • Suporte para clientes OpenAI com alterações mínimas de código para alternar entre OpenAI e Azure OpenAI ao usar autenticação baseada em chaves.
  • Suporte de cliente OpenAI para autenticação baseada em token e atualização automática de tokens sem necessidade de depender de um cliente OpenAI Azure separado.
  • Faça chamadas de conclusão de chat com modelos de outros fornecedores como DeepSeek e Grok, que suportam a sintaxe v1 de conclusão de chat.

O acesso a novas chamadas de API que ainda estão em pré-visualização será controlado passando cabeçalhos de pré-visualização específicos de funcionalidades, permitindo que opte pelas funcionalidades que deseja, sem ter de trocar de versão da API. Alternativamente, algumas funcionalidades indicam o estado de pré-visualização através do caminho da API e não requerem um cabeçalho adicional.

Exemplos:

  • Quando /openai/v1/evals estava anteriormente em versão prévia, era necessário incluir um "aoai-evals":"preview" header. /evals já não está em pré-visualização.
  • /openai/v1/fine_tuning/alpha/graders/ está em pré-visualização e não requer cabeçalho personalizado devido à presença de alpha no caminho da API.

Para o lançamento inicial da API v1 Generally Available (GA), apenas um subconjunto das capacidades da API de inferência e autoria é suportado. Todas as funcionalidades GA são suportadas para uso em produção. O suporte para mais capacidades está a ser rapidamente adicionado.

Alterações ao código

v1 API

Exemplos Python v1

Chave 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)) 

Principais diferenças em relação à API anterior:

  • OpenAI() cliente é usado em vez de AzureOpenAI().
  • base_url passa pelo endpoint Azure OpenAI e /openai/v1 é anexado ao endereço do endpoint.
  • api-version já não é um parâmetro obrigatório com a API GA v1.

Chave API com variáveis de ambiente:

Defina as seguintes variáveis de ambiente antes de executar o código:

Variável Valor
OPENAI_BASE_URL https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/
OPENAI_API_KEY A sua chave de API do Azure OpenAI

Depois cria o cliente sem parâmetros:

client = OpenAI()

Microsoft Entra ID:

Importante

A gestão da atualização automática dos tokens era anteriormente feita através do uso do AzureOpenAI() cliente. A API v1 remove esta dependência, adicionando suporte automático de atualização de tokens ao 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_url passa pelo endpoint Azure OpenAI e /openai/v1 é anexado ao endereço do endpoint.
  • api_key é definido como token_provider, permitindo a recuperação e atualização automática de um token de autenticação em vez de usar uma chave API estática.

Suporte a modelos

Para Azure modelos OpenAI recomendamos usar a API Responses, no entanto, a API v1 também permite fazer chamadas de conclusão de chat com modelos de outros fornecedores como DeepSeek e Grok, que suportam a sintaxe de completação de chat OpenAI v1.

base_url aceitará ambos os formatos https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/ e https://YOUR-RESOURCE-NAME.services.ai.azure.com/openai/v1/.

Nota

A Answers API também funciona com modelos Foundry vendidos diretamente pela Azure, como Microsoft AI, DeepSeek e modelos Grok. Para aprender a usar a API de Respostas com estes modelos, veja Como gerar respostas de texto com Microsoft Foundry Models.

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))

Suporte à API v1

Registo de alterações de versões da API

As secções seguintes resumem as alterações entre versões da API.

Alterações entre a pré-visualização da v1 e a pré-visualização de 2025-04-01

  • v1 preview API
  • Suporte à geração de vídeo
  • NOVO Funcionalidades da API Responses:
    • Integração de ferramentas para servidores do Protocolo de Contexto Remoto do Modelo (MCP)
    • Suporte para tarefas assíncronas em segundo plano
    • Itens de raciocínio encriptado
    • Geração de imagem

Alterações entre 2025-04-01-preview e 2025-03-01-preview

Alterações entre pré-visualização de 2025-03-01 e pré-visualização de 2025-02-01

Alterações entre a versão prévia de 2025-02-01 e a versão prévia de 2025-01-01

  • Completações armazenadas (suporte à API de destilação).

Alterações entre 2025-01-01-preview e 2024-1-12-preview

Alterações entre 2024-12-01-preview e 2024-10-01-preview

  • store, e metadata parâmetros adicionados para suporte a completações armazenadas.
  • reasoning_effort Adicionado para os modelos de raciocínio mais recentes.
  • user_security_context adicionado para integração do Microsoft Defender para a Cloud.

Alterações entre pré-visualização de 2024-09-01-e pré-visualização de 2024-08-01

  • max_completion_tokens adicionado para suportar os modelos o1-preview e o1-mini. max_tokens Não funciona com os modelos da série O1 .
  • parallel_tool_calls acrescentou.
  • completion_tokens_details e reasoning_tokens acrescentados.
  • stream_options e include_usage acrescentados.

Alterações entre a especificação da API de pré-visualização de 2024-07-01 e 2024-08-01

  • Suporte para saídas estruturadas.
  • API de upload de ficheiros grandes adicionada.
  • Sobre as alterações dos seus dados:
    • Integração com a base de dados Mongo.
    • role_information parâmetro removido.
    • rerank_score adicionado ao objeto de citação.
    • Fonte de dados AML removida.
    • Melhorias na integração da vetorização de pesquisa por IA.

Alterações entre a pré-visualização de 2024-05-01-e a especificação da API de pré-visualização de 2024-07-01

Alterações entre a especificação da API de pré-visualização de 2024-04-01 e a de 2024-05-01.

Alterações entre a versão prévia de 2024-03-01 e a especificação da API da versão prévia de 2024-04-01

Questões conhecidas

  • A especificação 2025-04-01-preview Azure OpenAI utiliza OpenAPI 3.1. É um problema conhecido que esta versão não é totalmente suportada por API Management do Azure.

Próximos passos