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.
Met hulpprogramma's kan uw agent aangepaste functies aanroepen, zoals het ophalen van weergegevens, het uitvoeren van query's op een database of het aanroepen van een API.
Definieer een hulpprogramma als elke methode met een [Description] kenmerk:
using System.ComponentModel;
[Description("Get the weather for a given location.")]
static string GetWeather([Description("The location to get the weather for.")] string location)
=> $"The weather in {location} is cloudy with a high of 15°C.";
Maak een agent met het hulpprogramma:
using System;
using Azure.AI.OpenAI;
using Azure.Identity;
using Microsoft.Agents.AI;
using Microsoft.Extensions.AI;
var endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT")
?? throw new InvalidOperationException("Set AZURE_OPENAI_ENDPOINT");
var deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_DEPLOYMENT_NAME") ?? "gpt-4o-mini";
AIAgent agent = new AzureOpenAIClient(new Uri(endpoint), new AzureCliCredential())
.GetChatClient(deploymentName)
.AsAIAgent(instructions: "You are a helpful assistant.", tools: [AIFunctionFactory.Create(GetWeather)]);
De agent roept uw hulpprogramma automatisch aan wanneer dit relevant is:
Console.WriteLine(await agent.RunAsync("What is the weather like in Amsterdam?"));
Aanbeveling
Bekijk het volledige voorbeeld voor het volledige runnable bestand.
Definieer een hulpmiddel met de @tool decorator:
# NOTE: approval_mode="never_require" is for sample brevity.
# Use "always_require" in production for user confirmation before tool execution.
@tool(approval_mode="never_require")
def get_weather(
location: Annotated[str, Field(description="The location to get the weather for.")],
) -> str:
"""Get the weather for a given location."""
conditions = ["sunny", "cloudy", "rainy", "stormy"]
return f"The weather in {location} is {conditions[randint(0, 3)]} with a high of {randint(10, 30)}°C."
Maak een agent met het hulpprogramma:
agent = client.as_agent(
name="WeatherAgent",
instructions="You are a helpful weather agent. Use the get_weather tool to answer questions.",
tools=get_weather,
)
Aanbeveling
Bekijk het volledige voorbeeld voor het volledige runnable bestand.
Volgende stappen
Ga dieper in:
- Overzicht van hulpprogramma's - meer informatie over alle beschikbare hulpprogrammatypen
- Functiehulpprogramma's — patronen voor geavanceerde functiehulpprogramma's
- Goedkeuring van tools — human-in-the-loop voor tool-oproepen