Azure OpenAI in microsoft Foundry Models v1 API

In diesem Artikel erfahren Sie, wie Sie die v1-Azure OpenAI-API verwenden. Die v1-API vereinfacht die Authentifizierung, entfernt die Notwendigkeit von veralteten api-version Parametern und unterstützt anbieterübergreifende Modellaufrufe.

Hinweis

Neue API-Antwortobjekte können der API-Antwort jederzeit hinzugefügt werden. Es wird empfohlen, nur die benötigten Antwortobjekte zu analysieren.

Voraussetzungen

API-Entwicklung

Zuvor erhielt Azure OpenAI monatliche Updates neuer API-Versionen. Durch die Nutzung neuer Features müssen Code- und Umgebungsvariablen ständig mit jeder neuen API-Version aktualisiert werden. Azure OpenAI erforderte auch einen zusätzlichen Schritt bei der Verwendung von Azure-spezifischen Clients, der beim Migrieren von Code zwischen OpenAI und Azure OpenAI einen Mehraufwand erzeugte.

Ab August 2025 kannst du dich für die nächste Generation der v1 Azure OpenAI APIs entscheiden, die Unterstützung für Folgendes bieten

  • Fortlaufender Zugriff auf die neuesten Features, ohne jeden Monat neue api-version's angeben zu müssen.
  • Schnellerer API-Releasezyklus mit häufigeren Starts neuer Features.
  • OpenAI-Clientunterstützung mit minimalen Codeänderungen zum Austauschen zwischen OpenAI und Azure OpenAI bei Verwendung der schlüsselbasierten Authentifizierung.
  • OpenAI-Clientunterstützung für die tokenbasierte Authentifizierung und automatische Tokenaktualisierung, ohne dass eine Abhängigkeit von einem separaten Azure OpenAI-Client erforderlich ist.
  • Führen Sie Chatabschlussanrufe mit Modellen anderer Anbieter wie DeepSeek und Grok durch, die die v1-Chatabschlusssyntax unterstützen.

Der Zugriff auf neue API-Aufrufe, die sich noch in der Vorschau befinden, wird gesteuert, indem featurespezifische Vorschauheader übergeben werden, sodass Sie sich für die gewünschten Features anmelden können, ohne API-Versionen austauschen zu müssen. Alternativ geben einige Features den Vorschaustatus über ihren API-Pfad an und erfordern keinen zusätzlichen Header.

Beispiele:

  • Als /openai/v1/evals zuvor in der Vorschau war, musste ein "aoai-evals":"preview"-Header übergeben werden. /evals befindet sich nicht mehr in der Vorschau.
  • /openai/v1/fine_tuning/alpha/graders/ befindet sich in der Vorschau und erfordert keinen benutzerdefinierten Header aufgrund des Vorhandenseins alpha im API-Pfad.

Für den anfänglichen v1 allgemein verfügbaren (GA)-API-Start wird nur eine Teilmenge der Inferenzen- und Erstellungs-API-Funktionen unterstützt. Alle GA-Features werden für die Verwendung in der Produktion unterstützt. Die Unterstützung für weitere Funktionen wird schnell hinzugefügt.

Codeänderungen

v1-API

Python v1 Beispiele

API-Schlüssel:

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

Wichtige Unterschiede von der vorherigen API:

  • OpenAI() client wird anstelle von AzureOpenAI() eingesetzt.
  • base_url übergibt den Azure OpenAI-Endpunkt, und /openai/v1 wird an die Endpunktadresse angefügt.
  • api-version ist kein erforderlicher Parameter mehr mit der v1 GA-API.

API-Schlüssel mit Umgebungsvariablen:

Legen Sie die folgenden Umgebungsvariablen fest, bevor Sie den Code ausführen:

Variable Wert
OPENAI_BASE_URL https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/
OPENAI_API_KEY Ihr Azure OpenAI-API-Schlüssel

Erstellen Sie dann den Client ohne Parameter:

client = OpenAI()

Microsoft Entra ID:

Wichtig

Die automatische Tokenaktualisierung wurde früher mithilfe des AzureOpenAI() Clients durchgeführt. Die v1-API entfernt diese Abhängigkeit, indem dem OpenAI() Client die unterstützung für die automatische Tokenaktualisierung hinzugefügt wird.

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 übergibt den Azure OpenAI-Endpunkt, und /openai/v1 wird an die Endpunktadresse angefügt.
  • api_key Der Parameter ist auf token_provider gesetzt, wodurch das automatische Abrufen und Aktualisieren eines Authentifizierungstokens anstelle eines statischen API-Schlüssels aktiviert wird.

Modellunterstützung

Für Azure OpenAI-Modelle empfehlen wir die Verwendung der Responses-API die v1-API ermöglicht ihnen jedoch auch, Chatabschlussanrufe mit Modellen anderer Anbieter wie DeepSeek und Grok zu tätigen, die die Syntax der OpenAI v1-Chatabschlusse unterstützen.

base_url akzeptiert beide https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/ Formate und https://YOUR-RESOURCE-NAME.services.ai.azure.com/openai/v1/ Formate.

Hinweis

Die Antwort-API funktioniert auch mit Foundry Models, die direkt von Azure verkauft werden, z. B. Microsoft AI-, DeepSeek- und Grok-Modelle. Informationen zum Verwenden der Antwort-API mit diesen Modellen finden Sie unter Wie sie Textantworten mit Microsoft Foundry Models generieren.

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

v1-API-Unterstützung

API-Versionsänderungsprotokoll

In den folgenden Abschnitten werden Änderungen zwischen API-Versionen zusammengefasst.

Änderungen zwischen version 1 Preview und 2025-04-01-preview

Änderungen zwischen 2025-04-01-Vorschau und 2025-03-01-Preview

Änderungen zwischen 2025-03-01-Vorschau und 2025-02-01-Preview

Änderungen zwischen 2025-02-01-Vorschau und 2025-01-01-Preview

  • Gespeicherte Fertigstellungen (Destillations-API-Unterstützung).

Änderungen zwischen 2025-01-01-Vorschau und 2024-12-01-Preview

  • prediction Parameter hinzugefügt zur Unterstützung vorhergesagter Ausgaben.
  • gpt-4o-audio-preview Modellunterstützung.

Änderungen zwischen 2024-12-01-Vorschau und 2024-10-01-Preview

Änderungen zwischen 2024-09-01-Vorschau und 2024-08-01-Preview

  • max_completion_tokens hinzugefügt, um o1-preview- und o1-mini-Modelle zu unterstützen. max_tokens funktioniert nicht mit den o1-Serienmodellen .
  • parallel_tool_calls Hinzugefügt.
  • completion_tokens_details & reasoning_tokens hinzugefügt.
  • stream_options & include_usage hinzugefügt.

Änderungen zwischen 2024-07-01-preview und 2024-08-01-preview API-Spezifikation

  • Unterstützung für strukturierte Ausgaben.
  • Api zum Hochladen großer Dateien hinzugefügt.
  • Auf Ihre Datenänderungen:
    • Mongo DB-Integration.
    • role_information Parameter entfernt.
    • rerank_score zum Zitatobjekt hinzugefügt.
    • AML-Datenquelle wurde entfernt.
    • Verbesserungen der KI-Suchvektorisierungsintegration.

Änderungen zwischen 2024-05-01-preview und 2024-07-01-preview API-Spezifikation

Änderungen zwischen 2024-04-01-preview und 2024-05-01-preview API-Spezifikation

  • Assistenten v2-Unterstützung – Dateisuchetool und Vektorspeicher
  • Optimierung Prüfpunkte, Seed, Ereignisse
  • Bezüglich Ihrer Datenaktualisierungen
  • DALL-E 2 unterstützt jetzt die Modellbereitstellung und kann mit der neuesten Vorschau-API verwendet werden.
  • Aktualisierungen der Inhaltsfilterung

Änderungen zwischen 2024-03-01-preview und 2024-04-01-preview API-Spezifikation

Bekannte Probleme

  • Die 2025-04-01-preview Azure OpenAI-Spezifikation verwendet OpenAPI 3.1. Es ist ein bekanntes Problem, dass diese Version von Azure API Management nicht vollständig unterstützt wird.

Nächste Schritte