Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Agent Framework ondersteunt veel verschillende typen hulpprogramma's waarmee de mogelijkheden van agents worden uitgebreid. Met hulpprogramma's kunnen agents communiceren met externe systemen, code uitvoeren, gegevens zoeken en meer.
Typen hulpprogramma's
| Type hulpprogramma | Description |
|---|---|
| Functiehulpmiddelen | Aangepaste code die agents kunnen aanroepen tijdens gesprekken |
| Code-interpreter | Code uitvoeren in een sandbox-omgeving |
| Bestand Zoeken | Zoeken naar geüploade bestanden |
| Zoeken op internet | Zoeken op internet naar informatie |
| Gehoste MCP-hulpprogramma's | MCP-servers die worden aangeroepen door de runtime van de provider |
| Lokale MCP-hulpprogramma's | MCP-servers die lokaal of op aangepaste hosts worden uitgevoerd |
| Foundry Toolboxes | Benoemde, geversiede bundels van gehoste hulpprogrammaconfiguraties die worden beheerd in een Foundry-project |
| Type hulpprogramma | Description |
|---|---|
| Functiehulpmiddelen | Aangepaste code die agents kunnen aanroepen tijdens gesprekken |
| Code-interpreter | Code uitvoeren in een sandbox-omgeving |
| Bestand Zoeken | Zoeken naar geüploade bestanden |
| Zoeken op internet | Zoeken op internet naar informatie |
| Gehoste MCP-hulpprogramma's | MCP-servers die worden aangeroepen door de runtime van de provider |
| Lokale MCP-hulpprogramma's | MCP-servers die lokaal of op aangepaste hosts worden uitgevoerd |
| Foundry Toolboxes | Benoemde, geversiede bundels van gehoste hulpprogrammaconfiguraties die worden beheerd in een Foundry-project |
| Beeldgeneratie | Hosted image generation on the Foundry /OpenAI Responses Runtime |
| Shell | Gehoste shell-uitvoering op de Runtime voor OpenAI-antwoorden, verschilt van de ingebouwde shell-/file-/URL-runtimehulpprogramma's van de GitHub Copilot CLI |
| Bing Aarding | Webaarding via uw eigen Grounding met Bing Search-resource - experimenteel |
| Bing Aangepaste Zoekopdracht | Bing grounding beperkt tot een gecureerde domeinlijst - preview |
| Azure AI Zoeken | Een query uitvoeren op een Azure AI Zoeken-index via een Foundry-verbinding , experimenteel |
| SharePoint | Basisantwoorden in SharePoint inhoud - preview |
| Microsoft Fabric | Een query uitvoeren op een Fabric-gegevensagent - preview |
| Geheugen zoeken | Zoeken in een door Foundry beheerd geheugenarchief - preview |
| Computergebruik | Een bureaublad- of browseromgeving stimuleren - preview |
| Browserautomatisering | Een browser sturen via Azure Playwright - preview |
| Agent-to-Agent (A2A)-tool | Een externe A2A-agent aanroepen als een hulpprogramma van een Foundry-agent — preview |
Opmerking
Hulpprogramma's die zijn gemarkeerd als experimenteel of voorbeeld , worden beschreven op de relevante providerpagina en verzenden een ExperimentalWarning eerste keer dat ze in een proces worden gebruikt.
Goedkeuring van hulpprogramma
Goedkeuring van hulpprogramma's is een frameworkfunctie waarmee u elke aanroep van hulpprogramma's ( functiehulpprogramma's, gehoste hulpprogramma's, MCP-hulpprogramma's ) kunt gateen via een beslissing voor menselijke in-the-loop voordat het model het resultaat ontvangt. Het wordt verwerkt door de functie-aanroepende chatclient van het framework in zowel .NET als Python, dus werkt het met elke provider waarvan de client hulpprogramma's lokaal aanroept; het is geen mogelijkheid per provider. Zie de pagina Goedkeuring van hulpprogramma's voor het volledige patroon, inclusief hoe goedkeuringen communiceren met sessies, streaming en middleware.
Ondersteuningsmatrix voor providers
De OpenAI- en Azure OpenAI-providers bieden elk twee clienttypen, antwoorden en chatvoltooiing, met verschillende hulpprogrammamogelijkheden. Azure OpenAI-clients spiegelen hun OpenAI-equivalenten. Copilot Studio en A2A agents worden uitgevoerd op een externe service, zodat hun mogelijkheden zijn geconfigureerd op de externe agent in plaats van via de Agent Framework-client. Ze worden niet vermeld in de matrix.
| Type hulpprogramma | Reacties | Chatvoltooiing | Gieterij | Antropisch | Ollama | GitHub-copiloot |
|---|---|---|---|---|---|---|
| Functiehulpmiddelen | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Code-interpreter | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
| Bestand Zoeken | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
| Zoeken op internet | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Gehoste MCP-hulpprogramma's | ✅ | ❌ | ✅ | ✅ | ❌ | ✅ |
| Lokale MCP-hulpprogramma's | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Opmerking
De kolommen Responses en Chatvoltooiing zijn van toepassing op zowel OpenAI als Azure OpenAI: de Azure varianten spiegelen dezelfde toolondersteuning als hun OpenAI-tegenhangers. De afgeschafte OpenAI Assistants-API wordt niet meer gedocumenteerd; Zie de migratiehandleiding voor Semantic Kernel voor migratierichtlijnen.
Ondersteuningsmatrix voor providers
De OpenAI- en Azure OpenAI-providers bieden elk meerdere clienttypen met verschillende hulpprogrammamogelijkheden. Azure OpenAI-clients spiegelen hun OpenAI-equivalenten. De kolom Foundry is van toepassing op FoundryChatClient : voor FoundryAgent, de hulpprogramma's zijn geconfigureerd op de definitie van de Foundry-agent (zie Wat werkt en wat niet met FoundryAgent).
Copilot Studio en A2A agents worden uitgevoerd op een externe service, zodat hun mogelijkheden zijn geconfigureerd op de externe agent in plaats van via de Agent Framework-client. Ze worden niet vermeld in de matrix.
| Type hulpprogramma | Reacties | Chatvoltooiing | Gieterij | Antropisch | Ollama | Foundry Local | GitHub-copiloot |
|---|---|---|---|---|---|---|---|
| Functiehulpmiddelen | ✅ | ✅ | ✅ | ✅ | ⚠️¹ | ⚠️¹ | ✅ |
| Code-interpreter | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Bestand Zoeken | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Zoeken op internet | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Beeldgeneratie | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
Gehoste Shell (get_shell_tool) |
✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Ingebouwde shell/ bestandssysteem/URL ophalen | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅² |
| Gehoste MCP-hulpprogramma's | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ |
| Lokale MCP-hulpprogramma's | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Foundry Toolboxes | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Bing Grounding (experimenteel) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Bing Custom Search (preview) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Azure AI Zoeken (experimenteel) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| SharePoint (preview) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Microsoft Fabric (preview) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Geheugen zoeken (preview) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Computergebruik (preview) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Browserautomatisering (preview) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Hulpprogramma agent-naar-agent (A2A) ( preview) | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
¹ Is afhankelijk van het gekozen lokale model dat functie aanroept.
² Ingebouwd in de GitHub Copilot CLI-runtime, die wordt beveiligd door een machtigingshandler. Verschillend oppervlak van OpenAI's get_shell_tool.
Opmerking
De kolommen Responses en Chatvoltooiing zijn van toepassing op zowel OpenAI als Azure OpenAI: de Azure varianten spiegelen dezelfde toolondersteuning als hun OpenAI-tegenhangers. Lokale MCP-hulpprogramma's werken met elke provider die functiehulpprogramma's ondersteunt.
Een agent gebruiken als functiehulpmiddel
U kunt een agent gebruiken als functiehulpmiddel voor een andere agent, waardoor agentsamenstelling en geavanceerdere werkstromen mogelijk zijn. De binnenste agent wordt geconverteerd naar een functiehulpmiddel en geleverd aan de buitenste agent, die deze vervolgens indien nodig kan aanroepen.
Roep .AsAIFunction() een AIAgent aan om deze te converteren naar een functiehulpprogramma dat kan worden geleverd aan een andere agent:
// Create the inner agent with its own tools
AIAgent weatherAgent = new AIProjectClient(
new Uri("<your-foundry-project-endpoint>"),
new DefaultAzureCredential())
.AsAIAgent(
model: "gpt-4o-mini",
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 AIProjectClient(
new Uri("<your-foundry-project-endpoint>"),
new DefaultAzureCredential())
.AsAIAgent(
model: "gpt-4o-mini",
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?"));
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.
Roep .as_tool() een agent aan om deze te converteren naar een functiehulpprogramma dat kan worden geleverd aan een andere agent:
import os
from agent_framework.openai import OpenAIChatCompletionClient
from azure.identity import AzureCliCredential
# Create the inner agent with its own tools
weather_agent = OpenAIChatCompletionClient(
model=os.environ["AZURE_OPENAI_CHAT_COMPLETION_MODEL"],
azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
api_version=os.getenv("AZURE_OPENAI_API_VERSION"),
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 = OpenAIChatCompletionClient(
model=os.environ["AZURE_OPENAI_CHAT_COMPLETION_MODEL"],
azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
api_version=os.getenv("AZURE_OPENAI_API_VERSION"),
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)
U kunt ook de naam, beschrijving en argumentnaam van het hulpprogramma aanpassen:
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"
)