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.
Agent Framework prend en charge de nombreux types d’outils différents qui étendent les fonctionnalités de l’agent. Les outils permettent aux agents d’interagir avec des systèmes externes, d’exécuter du code, de rechercher des données, etc.
Types d’outils
| Type d’outil | Descriptif |
|---|---|
| Outils de fonction | Code personnalisé que les agents peuvent appeler pendant les conversations |
| Approbation de l’outil | Approbation de la boucle humaine pour les appels d’outils |
| Interpréteur de code | Exécuter du code dans un environnement bac à sable (sandbox) |
| Recherche de fichiers | Rechercher dans des fichiers chargés |
| Recherche web | Rechercher des informations sur le web |
| Outils MCP hébergés | Outils MCP hébergés par Azure AI Foundry |
| Outils MCP locaux | Outils MCP s’exécutant localement ou sur des serveurs personnalisés |
Matrice de prise en charge du fournisseur
Les fournisseurs OpenAI et Azure OpenAI offrent chacun plusieurs types de clients avec différentes fonctionnalités d’outil. Les clients Azure OpenAI reflètent leurs équivalents OpenAI.
| Type d’outil | Saisie semi-automatique des conversations | Réponses | Assistants | Azure AI Foundry | Anthropic | Ollama | GitHub Copilot | Copilot Studio |
|---|---|---|---|---|---|---|---|---|
| Outils de fonction | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Approbation de l’outil | ❌ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Interpréteur de code | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Recherche de fichiers | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Recherche web | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Outils MCP hébergés | ❌ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Outils MCP locaux | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
Note
Les colonnes Saisie semi-automatique, réponses et assistants s’appliquent aux colonnes OpenAI et Azure OpenAI : les variantes Azure reflètent la même prise en charge de l’outil que leurs équivalents OpenAI.
Matrice de prise en charge du fournisseur
Les fournisseurs OpenAI et Azure OpenAI offrent chacun plusieurs types de clients avec différentes fonctionnalités d’outil. Les clients Azure OpenAI reflètent leurs équivalents OpenAI.
| Type d’outil | Saisie semi-automatique des conversations | Réponses | Assistants | Azure AI Foundry | Anthropic | Claude Agent | Ollama | GitHub Copilot |
|---|---|---|---|---|---|---|---|---|
| Outils de fonction | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Approbation de l’outil | ❌ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Interpréteur de code | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Recherche de fichiers | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Recherche web | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Génération d’images | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Outils MCP hébergés | ❌ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Outils MCP locaux | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Note
Les colonnes Saisie semi-automatique, réponses et assistants s’appliquent aux colonnes OpenAI et Azure OpenAI : les variantes Azure reflètent la même prise en charge de l’outil que leurs équivalents OpenAI. Les outils MCP locaux fonctionnent avec n’importe quel fournisseur qui prend en charge les outils de fonction.
Utilisation d’un agent en tant qu’outil de fonction
Vous pouvez utiliser un agent comme outil de fonction pour un autre agent, en activant la composition de l’agent et les flux de travail plus avancés. L’agent interne est converti en outil de fonction et fourni à l’agent externe, qui peut ensuite l’appeler en fonction des besoins.
Appelez-le .AsAIFunction()AIAgent pour le convertir en outil de fonction qui peut être fourni en un autre agent :
// Create the inner agent with its own tools
AIAgent weatherAgent = new AzureOpenAIClient(
new Uri("https://<myresource>.openai.azure.com"),
new AzureCliCredential())
.GetChatClient("gpt-4o-mini")
.AsAIAgent(
instructions: "You answer questions about the weather.",
name: "WeatherAgent",
description: "An agent that answers questions about the weather.",
tools: [AIFunctionFactory.Create(GetWeather)]);
// Create the main agent and provide the inner agent as a function tool
AIAgent agent = new AzureOpenAIClient(
new Uri("https://<myresource>.openai.azure.com"),
new AzureCliCredential())
.GetChatClient("gpt-4o-mini")
.AsAIAgent(instructions: "You are a helpful assistant.", tools: [weatherAgent.AsAIFunction()]);
// The main agent can now call the weather agent as a tool
Console.WriteLine(await agent.RunAsync("What is the weather like in Amsterdam?"));
Appelez .as_tool() un agent pour le convertir en outil de fonction qui peut être fourni vers un autre agent :
from agent_framework.azure import AzureOpenAIChatClient
from azure.identity import AzureCliCredential
# Create the inner agent with its own tools
weather_agent = AzureOpenAIChatClient(credential=AzureCliCredential()).as_agent(
name="WeatherAgent",
description="An agent that answers questions about the weather.",
instructions="You answer questions about the weather.",
tools=get_weather
)
# Create the main agent and provide the inner agent as a function tool
main_agent = AzureOpenAIChatClient(credential=AzureCliCredential()).as_agent(
instructions="You are a helpful assistant.",
tools=weather_agent.as_tool()
)
# The main agent can now call the weather agent as a tool
result = await main_agent.run("What is the weather like in Amsterdam?")
print(result.text)
Vous pouvez également personnaliser le nom, la description et le nom de l’argument de l’outil :
weather_tool = weather_agent.as_tool(
name="WeatherLookup",
description="Look up weather information for any location",
arg_name="query",
arg_description="The weather query or location"
)