Endpoint per i modelli di fabbrica di Microsoft

Microsoft i modelli Foundry consentono di accedere a un'ampia gamma di modelli da molti provider tramite un singolo endpoint e un set di credenziali. Questa funzionalità consente di passare da un modello all'altro e usarli nell'applicazione senza apportare modifiche al codice.

Questo articolo illustra come i servizi Foundry organizzano i modelli e come usare l'endpoint di inferenza per accedervi.

Prerequisiti

Distribuzioni

Foundry utilizza le distribuzioni come alias per l'accesso al modello. Una distribuzione assegna un nome a un modello e a un set di configurazioni. È possibile accedere a un modello usando il relativo nome di distribuzione nelle richieste.

Una distribuzione definisce:

  • Nome di un modello
  • Una versione del modello
  • Approvvigionamento o tipo di capacità1
  • Configurazione del filtro del contenuto1
  • Configurazione di limitazione della frequenza1

1 Queste configurazioni possono cambiare a seconda del modello selezionato.

Una risorsa Foundry può avere molte implementazioni di modelli. Si paga solo per l'inferenza eseguita nelle implementazioni dei modelli. Le distribuzioni sono risorse di Azure, quindi sono soggette alle politiche di Azure.

Per altre informazioni sulla creazione di distribuzioni, vedere Aggiungere e configurare distribuzioni di modelli.

Azure endpoint di inferenza OpenAI

LAzure API OpenAI espone le funzionalità complete dei modelli OpenAI e supporta altre funzionalità come assistenti, thread, file e inferenza batch. È anche possibile usarlo per accedere ai modelli non OpenAI.

Gli endpoint Azure OpenAI sono formattati come https://<resource-name>.openai.azure.com. Gli endpoint corrispondono alle distribuzioni e ogni distribuzione ha il proprio URL associato. Tuttavia, è possibile usare lo stesso meccanismo di autenticazione per utilizzare più distribuzioni. Per altre informazioni, vedere la pagina di riferimento per Azure API OpenAI.

 Figura che mostra come Azure distribuzioni OpenAI contengano un singolo URL per ogni distribuzione.

Gli URL di distribuzione sono formati concatenando l'URL di base OpenAI Azure e la route /deployments/<model-deployment-name>. Quando utilizzi l'API OpenAI v1, chiama la route /openai/v1/ sull'URL di base, https://<resource-name>.openai.azure.com/openai/v1/, e passa il nome del deployment nel campo model della richiesta. La route /openai/v1/ usa il controllo di versione implicito, quindi non devi passare un api-version.

Gli esempi seguenti usano l'API Risposte, che supporta le funzionalità di inferenza più recenti.

Note

L'API Risposte funziona con Azure modelli OpenAI e con i modelli Foundry venduti da Azure che lo supportano, ad esempio i modelli DeepSeek, Llama e Grok. Se una distribuzione non supporta l'API Risposte, la richiesta restituisce 400 Model not supported. In tal caso, usa invece l'API Chat Completions chiamando client.chat.completions.create.

Usare l'autenticazione con chiave API

È possibile autenticare le richieste di inferenza con una chiave API dalla risorsa Foundry. Le chiavi API sono rapide da configurare, ma concedono l'accesso completo alla risorsa, sono difficili da definire per specifici utenti o azioni e richiedono una rotazione manuale per rimanere sicuri. Per i carichi di lavoro di produzione, usare invece l'autenticazione senza chiave con Microsoft Entra ID.

Nell'esempio seguente è deepseek-v3-0324 il nome di una distribuzione del modello nella risorsa Microsoft Foundry. Sostituirlo con il proprio nome di distribuzione e archiviare la AZURE_INFERENCE_CREDENTIAL chiave API nella variabile di ambiente.

Installare il openai pacchetto usando pip:

pip install openai --upgrade

Creare un client che punti all'endpoint Azure OpenAI v1 e quindi generare una risposta. La route /openai/v1/ usa il controllo di versione implicito, quindi non devi passare un api-version. Inserisci il nome della distribuzione nel campo model:

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://<resource>.openai.azure.com/openai/v1/",
    api_key=os.environ["AZURE_INFERENCE_CREDENTIAL"],
)

response = client.responses.create(
    model="deepseek-v3-0324",  # Replace with your model deployment name.
    input="Explain the Riemann hypothesis in one paragraph.",
)

print(response.output_text)

Per ulteriori informazioni su come utilizzare l'endpoint di Azure OpenAI, vedi supporto linguistico dell'SDK di Azure OpenAI.

Usare l'autenticazione senza chiave

I modelli Foundry distribuiti supportano l'autorizzazione senza chiave con Microsoft Entra ID. L'autorizzazione senza chiave migliora la sicurezza, semplifica l'esperienza utente, riduce la complessità operativa e offre un supporto affidabile per la conformità. Usare l'autorizzazione senza chiave se l'organizzazione usa soluzioni di gestione delle identità sicure e scalabili.

Per usare l'autenticazione senza chiave, configurare la risorsa e concedere l'accesso agli utenti per eseguire l'inferenza. Dopo aver configurato la risorsa e concesso l'accesso, eseguire l'autenticazione come indicato di seguito:

Installare OpenAI SDK usando una gestione pacchetti come pip:

pip install openai

Per l'autenticazione Microsoft Entra ID, installare anche:

pip install azure-identity

Usare il pacchetto per utilizzare il modello. L'esempio seguente illustra come creare un client e effettuare una chiamata di test all'API Responses usando Microsoft Entra ID e la distribuzione del modello.

Sostituire <resource> con il nome della risorsa Foundry. Trovarlo nel portale di Azure o eseguendo az cognitiveservices account list. Sostituire deepseek-v3-0324 con il nome effettivo della distribuzione.

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://<resource>.openai.azure.com/openai/v1/",
    api_key=token_provider,
)

response = client.responses.create(
    model="deepseek-v3-0324",  # Replace with your model deployment name.
    input="What is Azure AI?",
)

print(response.output_text)

Output previsto

Azure AI is a comprehensive suite of artificial intelligence services and tools from Microsoft that enables developers to build intelligent applications. It includes services for natural language processing, computer vision, speech recognition, and machine learning capabilities.

Riferimento: OpenAI Python SDK e DefaultAzureCredential classe.