Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Microsoft Agent Framework ondersteunt twee Azure OpenAI-clienttypen, die elk gericht zijn op een ander API-oppervlak met verschillende hulpprogrammamogelijkheden. Antwoorden is de aanbevolen primaire client: deze ondersteunt de volledige set gehoste hulpprogramma's. Gebruik Chat Completion wanneer u brede compatibiliteit met modellen nodig hebt of een bestaande Chat Completions-integratie wilt behouden.
| Client type | API | Geschikt voor |
|---|---|---|
| Antwoorden (aanbevolen) | Antwoord-API | Volledig uitgeruste agenten met gehoste tools (code interpreter, file search, web search, hosted MCP) |
| Chatcompletering | API voor voltooiing van chat | Eenvoudige agents, brede modelondersteuning |
Aanbeveling
Zie de OpenAIChatClient voor directe OpenAI-equivalenten (OpenAIChatCompletionClient, ). De ondersteuning van het hulpprogramma is identiek.
Note
De AZURE OpenAI Assistants-API is afgeschaft. Nieuwe code moet gebruikmaken van de responses-client. Als u migreert vanuit een bestaande app op basis van assistenten, raadpleegt u de Semantic Kernel migratiehandleiding.
Aan de slag komen
Voeg de vereiste NuGet-pakketten toe aan uw project.
dotnet add package Azure.AI.OpenAI --prerelease
dotnet add package Azure.Identity
dotnet add package Microsoft.Agents.AI.OpenAI --prerelease
Alle Azure OpenAI-clienttypen beginnen met het maken van een AzureOpenAIClient:
using System;
using Azure.AI.OpenAI;
using Azure.Identity;
using Microsoft.Agents.AI;
AzureOpenAIClient client = new AzureOpenAIClient(
new Uri("https://<myresource>.openai.azure.com"),
new DefaultAzureCredential());
Waarschuwing
DefaultAzureCredential is handig voor ontwikkeling, maar vereist zorgvuldige overwegingen in de productieomgeving. Overweeg in productie een specifieke referentie te gebruiken (bijvoorbeeld ManagedIdentityCredential) om latentieproblemen, onbedoelde referentieprobing en potentiële beveiligingsrisico's van terugvalmechanismen te voorkomen.
Antwoordclient
De response-client is de aanbevolen primaire client en biedt de meest uitgebreide hulpprogramma-ondersteuning, waaronder code-interpreter, bestandszoekopdrachten, webzoekopdrachten en gehoste MCP.
var responsesClient = client.GetResponseClient("gpt-4o-mini");
AIAgent agent = responsesClient.AsAIAgent(
instructions: "You are a helpful coding assistant.",
name: "CodeHelper");
Console.WriteLine(await agent.RunAsync("Write a Python function to sort a list."));
Ondersteunde hulpprogramma's: Functiehulpprogramma's, goedkeuring van hulpprogramma's, code-interpreter, bestandszoekopdrachten, webzoekopdrachten, gehoste MCP, lokale MCP-hulpprogramma's.
Client voor chatvoltooiing
De Chat Completion-client biedt een eenvoudige manier om agenten te maken met de Chat Completions-API. Gebruik dit wanneer u brede modelcompatibiliteit nodig hebt of een bestaande integratie van chatvoltooiingen hebt.
var chatClient = client.GetChatClient("gpt-4o-mini");
AIAgent agent = chatClient.AsAIAgent(
instructions: "You are good at telling jokes.",
name: "Joker");
Console.WriteLine(await agent.RunAsync("Tell me a joke about a pirate."));
Ondersteunde hulpprogramma's: Functiehulpprogramma's, webzoekopdrachten, lokale MCP-hulpprogramma's.
Assistentenclient
Note
De AZURE OpenAI Assistants-API is afgeschaft. Het Agent Framework documenteert geen assistentclient meer. Gebruik de bovenstaande antwoordenclient voor nieuwe code. Zie de Semantic Kernel migratiehandleiding voor het migreren van een bestaande app.
Functiehulpmiddelen
U kunt aangepaste functiehulpprogramma's opgeven voor elke Azure OpenAI-agent:
using System.ComponentModel;
using Microsoft.Extensions.AI;
[Description("Get the weather for a given location.")]
static string GetWeather([Description("The location to get the weather for.")] string location)
=> $"The weather in {location} is cloudy with a high of 15°C.";
AIAgent agent = new AzureOpenAIClient(
new Uri(endpoint),
new DefaultAzureCredential())
.GetChatClient(deploymentName)
.AsAIAgent(instructions: "You are a helpful assistant", tools: [AIFunctionFactory.Create(GetWeather)]);
Console.WriteLine(await agent.RunAsync("What is the weather like in Amsterdam?"));
Streamingreacties
await foreach (var update in agent.RunStreamingAsync("Tell me a joke about a pirate."))
{
Console.Write(update);
}
Aanbeveling
Zie de .NET-voorbeelden voor volledige runnable voorbeelden.
De agent gebruiken
Beide clienttypen produceren een standaard AIAgent die ondersteuning biedt voor dezelfde agentbewerkingen (streaming, threads, middleware).
Zie de Aan de slag-zelfstudies voor meer informatie.
Tools
De Azure OpenAI-.NET-clients delen hun tooloppervlak met de overeenkomende OpenAI-clients. Zie de OpenAI-providerpagina voor de volledige matrix per clienttoepassing — de Responses- en Chat Completion-Azure-varianten komen overeen met hun rechtstreekse OpenAI-equivalenten.
| Tool | Responses | Chatafsluiting |
|---|---|---|
| Functiehulpmiddelen | ✅ | ✅ |
| Goedkeuring van hulpprogramma | ✅ | ✅ |
| Code-interpreter | ✅ | ❌ |
| Zoeken naar bestanden | ✅ | ❌ |
| Zoeken op internet | ✅ | ✅ |
| Gehoste MCP-tools | ✅ | ❌ |
| Lokale MCP-hulpprogramma's | ✅ | ✅ |
Note
Goedkeuring van hulpprogramma's wordt geleverd door de functie-aanroepende chatclient van het framework, zodat deze werkt met elke functie-tool-aanroep, ongeacht de onderliggende API.
Python-richtlijnen
Belangrijk
Python Azure OpenAI-richtlijnen bevinden zich nu op de openAI-providerpagina. Gebruik die pagina voor OpenAIChatCompletionClient, OpenAIChatClient, en OpenAIEmbeddingClient-implementatienaam-naar-model-koppeling, expliciete Azure-routeringsinvoer zoals credential of azure_endpoint, api_version configuratie nadat Azure is geselecteerd, plus base_url-richtlijnen voor de volledige .../openai/v1-URL's. Als OPENAI_API_KEY ook aanwezig is, blijven de generieke clients op OpenAI, tenzij je expliciete Azure-routeringsinvoer doorgeeft. Als er alleen AZURE_OPENAI_* instellingen aanwezig zijn, werkt de terugval van de Azure-omgeving nog steeds. De oude Python-compatibiliteitsklassen AzureOpenAI* zijn verwijderd uit de huidige agent_framework.azure naamruimte, dus migreer oudere code naar agent_framework.openai. Voor nieuwe Python-oplossingen raden we u aan modellen te implementeren met Microsoft Foundry en er verbinding mee FoundryChatClient te maken in plaats van op het azure OpenAI-specifieke pad te blijven. Als u Foundry-projecteindpunten of de Foundry Agent Service nodig hebt, raadpleegt u de pagina Foundry-provider. Zie de handleiding voor belangrijke wijzigingen in Python voor een bredere controlelijst voor migratie.
Tools
Python Azure OpenAI gebruikt dezelfde agent_framework.openai-clients als direct OpenAI, zodat het gereedschapsoppervlak identiek is. Zie de sectie Tools op de OpenAI-providerpagina voor de volledige matrix per client.