Partager via


Vue d’ensemble des outils

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

Prochaines étapes