Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Microsoft Agent Framework prend en charge plusieurs types de clients OpenAI. En C#, cela inclut la complétion de chat, les réponses et les assistants. Dans Python, les principales fonctionnalités d'OpenAI proposées par le fournisseur sont la complétion de chat et les réponses :
| Type de Client | API | Idéal pour |
|---|---|---|
| Complétion des conversations | API de complétion de chat | Agents simples, prise en charge d’un modèle large |
| Réponses | API de réponses | Agents complets avec des outils hébergés (interpréteur de code, recherche de fichiers, recherche web, MCP hébergé) |
| Assistants | Assistants API | Agents gérés par le serveur avec interpréteur de code et recherche de fichiers |
La disponibilité de la langue varie. Python utilise les clients pour la complétion de chat et les réponses sur cette page, la section sur les assistants ci-dessous est C# uniquement.
Getting Started
Ajoutez les packages NuGet requis à votre projet.
dotnet add package Microsoft.Agents.AI.OpenAI --prerelease
Client d’achèvement de conversation
Le client Chat Completion offre un moyen simple de créer des agents à l’aide de l’API ChatCompletion.
using Microsoft.Agents.AI;
using OpenAI;
OpenAIClient client = new OpenAIClient("<your_api_key>");
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."));
Outils pris en charge : Outils de fonction, recherche web, outils MCP locaux.
Réponses client
Le client Réponses fournit la prise en charge des outils les plus riches, notamment l’interpréteur de code, la recherche de fichiers, la recherche web et le MCP hébergé.
using Microsoft.Agents.AI;
using OpenAI;
OpenAIClient client = new OpenAIClient("<your_api_key>");
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."));
Outils pris en charge : Outils de fonction, approbation des outils, interpréteur de code, recherche de fichiers, recherche web, mcP hébergé, outils MCP locaux.
Assistants du Client
Le client Assistants crée des agents gérés par le serveur avec l’interpréteur de code intégré et la recherche de fichiers.
using Microsoft.Agents.AI;
using OpenAI;
OpenAIClient client = new OpenAIClient("<your_api_key>");
var assistantsClient = client.GetAssistantClient();
// Assistants are managed server-side
AIAgent agent = assistantsClient.AsAIAgent(
instructions: "You are a data analysis assistant.",
name: "DataHelper");
Console.WriteLine(await agent.RunAsync("Analyze trends in the uploaded data."));
Outils pris en charge : Outils de fonction, interpréteur de code, recherche de fichiers, outils MCP locaux.
Conseil / Astuce
Consultez les exemples .NET pour obtenir des exemples exécutables complets.
Utilisation de l’agent
Les trois types de clients produisent une norme AIAgent qui prend en charge les mêmes opérations d’agent (streaming, threads, middleware).
Pour plus d’informations, consultez les didacticiels De prise en main.
Conseil / Astuce
Dans Python, Azure OpenAI utilise désormais les mêmes agent_framework.openai clients présentés ici. Transmettez des entrées de routage Azure explicites telles que credential ou azure_endpoint lorsque vous souhaitez un routage Azure, puis définissez api_version la surface d’API Azure que vous souhaitez utiliser. S’il OPENAI_API_KEY est configuré, les clients génériques restent sur OpenAI même lorsque les variables AZURE_OPENAI_* sont également présentes. Si vous disposez déjà d'une URL complète .../openai/v1, utilisez base_url plutôt que azure_endpoint. Pour les points de terminaison de projet Microsoft Foundry et le service Foundry Agent, consultez la page du fournisseur Microsoft Foundry. Pour les runtimes locaux, consultez Foundry Local.
Installation
pip install agent-framework-openai
agent-framework-openai est le package de fournisseur Python facultatif pour l’utilisation directe d’OpenAI et d’Azure OpenAI.
Paramétrage
Les clients de conversation Python OpenAI utilisent ces modèles de variables d’environnement :
OPENAI_API_KEY="your-openai-api-key"
OPENAI_CHAT_COMPLETION_MODEL="gpt-4o-mini"
# Optional shared fallback:
# OPENAI_MODEL="gpt-4o-mini"
Fonctionnalités courantes
Ces types de clients prennent en charge ces fonctionnalités d’agent standard :
Outils de fonction
from agent_framework import tool
@tool
def get_weather(location: str) -> str:
"""Get the weather for a given location."""
return f"The weather in {location} is sunny, 25°C."
async def example():
agent = OpenAIChatClient().as_agent(
instructions="You are a weather assistant.",
tools=get_weather,
)
result = await agent.run("What's the weather in Tokyo?")
print(result)
Conversations à plusieurs tours
async def thread_example():
agent = OpenAIChatClient().as_agent(
instructions="You are a helpful assistant.",
)
session = await agent.create_session()
result1 = await agent.run("My name is Alice", session=session)
print(result1)
result2 = await agent.run("What's my name?", session=session)
print(result2) # Remembers "Alice"
Diffusion en continu
async def streaming_example():
agent = OpenAIChatClient().as_agent(
instructions="You are a creative storyteller.",
)
print("Agent: ", end="", flush=True)
async for chunk in agent.run("Tell me a short story about AI.", stream=True):
if chunk.text:
print(chunk.text, end="", flush=True)
print()
Utilisation de l’agent
Tous les types de clients produisent une norme Agent qui prend en charge les mêmes opérations.
Pour plus d’informations, consultez les didacticiels De prise en main.