Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Agent Framework поддерживает множество различных типов средств, расширяющих возможности агента. Средства позволяют агентам взаимодействовать с внешними системами, выполнять код, искать данные и многое другое.
Типы инструментов
| Тип инструмента | Description |
|---|---|
| Средства функций | Пользовательский код, который агенты могут вызывать во время бесед |
| Утверждение средства | Утверждение в цикле для вызовов инструментов |
| Интерпретатор кода | Выполнение кода в изолированной среде |
| Поиск файлов | Поиск по отправленным файлам |
| Веб-поиск | Поиск сведений в Интернете |
| Размещенные средства MCP | Средства MCP, размещенные в Azure AI Foundry |
| Локальные средства MCP | Средства MCP, работающие локально или на пользовательских серверах |
Матрица поддержки поставщиков
Поставщики OpenAI и Azure OpenAI предлагают несколько типов клиентов с разными возможностями инструментов. Клиенты Azure OpenAI отражают эквиваленты OpenAI.
| Тип инструмента | Завершение чата | Ответы | Помощников | Azure AI Foundry | Anthropic | Ollama | GitHub Copilot | Copilot Studio |
|---|---|---|---|---|---|---|---|---|
| Средства функций | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Утверждение средства | ❌ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Интерпретатор кода | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Поиск файлов | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Веб-поиск | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Размещенные средства MCP | ❌ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Локальные средства MCP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
Замечание
Столбцы "Завершение чата", "Ответы" и "Помощники" применяются как к OpenAI, так и к Azure OpenAI. Варианты Azure отражают поддержку того же средства, что и их коллеги OpenAI.
Матрица поддержки поставщиков
Поставщики OpenAI и Azure OpenAI предлагают несколько типов клиентов с разными возможностями инструментов. Клиенты Azure OpenAI отражают эквиваленты OpenAI.
| Тип инструмента | Завершение чата | Ответы | Помощников | Azure AI Foundry | Anthropic | Агент Claude | Ollama | GitHub Copilot |
|---|---|---|---|---|---|---|---|---|
| Средства функций | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Утверждение средства | ❌ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Интерпретатор кода | ❌ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Поиск файлов | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Веб-поиск | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Генерация изображений | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Размещенные средства MCP | ❌ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Локальные средства MCP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Замечание
Столбцы "Завершение чата", "Ответы" и "Помощники" применяются как к OpenAI, так и к Azure OpenAI. Варианты Azure отражают поддержку того же средства, что и их коллеги OpenAI. Локальные инструменты MCP работают с любым поставщиком, поддерживающим средства функций.
Использование агента в качестве средства функции
Агент можно использовать в качестве средства функции для другого агента, включив состав агента и более сложные рабочие процессы. Внутренний агент преобразуется в средство функции и предоставляется внешнему агенту, который затем может вызывать его по мере необходимости.
AIAgent Вызовите .AsAIFunction() для преобразования его в средство функции, которое может быть предоставлено другому агенту:
// 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?"));
Вызов .as_tool() агента, чтобы преобразовать его в средство функции, которое может быть предоставлено другому агенту:
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)
Кроме того, можно настроить имя, описание и имя аргумента средства:
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"
)