Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Ez az oktatóanyag bemutatja, hogyan használhat egy ügynököt egy másik ügynök funkció-eszközként, hogy az egyik ügynök egy másik ügynököt eszközként használhasson.
Előfeltételek
Az előfeltételekről és a NuGet-csomagok telepítéséről lásd az egyszerű ügynök létrehozása és futtatása lépést ebben az oktatóanyagban.
Ügynök létrehozása és használata függvényeszközként
Egy függvényeszközt úgy használhat AIAgent , hogy meghívja .AsAIFunction() az ügynököt, és eszközt ad egy másik ügynöknek. Ez lehetővé teszi az ügynökök összeállítását és fejlettebb munkafolyamatok létrehozását.
Először hozzon létre egy függvényeszközt C# metódusként, és szükség esetén díszítse leírásokkal. Ezt az eszközt az ügynök fogja használni, amely függvényként van közzétéve.
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.";
Hozzon létre egy AIAgent a függvényeszköz használatával.
using System;
using Azure.AI.OpenAI;
using Azure.Identity;
using Microsoft.Agents.AI;
using Microsoft.Extensions.AI;
using OpenAI;
AIAgent weatherAgent = new AzureOpenAIClient(
new Uri("https://<myresource>.openai.azure.com"),
new AzureCliCredential())
.GetChatClient("gpt-4o-mini")
.CreateAIAgent(
instructions: "You answer questions about the weather.",
name: "WeatherAgent",
description: "An agent that answers questions about the weather.",
tools: [AIFunctionFactory.Create(GetWeather)]);
Hozzon létre egy fő ügynököt, és adja meg a weatherAgent függvényeszközként azáltal, hogy hívja meg a .AsAIFunction()-t a weatherAgent függvényeszközzé alakításához.
AIAgent agent = new AzureOpenAIClient(
new Uri("https://<myresource>.openai.azure.com"),
new AzureCliCredential())
.GetChatClient("gpt-4o-mini")
.CreateAIAgent(instructions: "You are a helpful assistant who responds in French.", tools: [weatherAgent.AsAIFunction()]);
Hívja meg a fő ügynököt a szokásos módon. Mostantól eszközként hívhatja az időjárás-ügynököt, és franciául kell válaszolnia.
Console.WriteLine(await agent.RunAsync("What is the weather like in Amsterdam?"));
Ez az oktatóanyag bemutatja, hogyan használhat egy ügynököt egy másik ügynök funkció-eszközként, hogy az egyik ügynök egy másik ügynököt eszközként használhasson.
Előfeltételek
Az előfeltételekről és a csomagok telepítéséről lásd a Egyszerű ügynök létrehozása és futtatása lépést ebben az oktatóanyagban.
Ügynök létrehozása és használata műveleti eszközként
Egy függvényeszközt úgy használhat ChatAgent , hogy meghívja .as_tool() az ügynököt, és egy másik ügynöknek adja meg eszközként. Ez lehetővé teszi az ügynökök összeállítását és fejlettebb munkafolyamatok létrehozását.
Először hozzon létre egy eszközt, amelyet a szoftverügynök függvényként használ majd.
from typing import Annotated
from pydantic import Field
def get_weather(
location: Annotated[str, Field(description="The location to get the weather for.")],
) -> str:
"""Get the weather for a given location."""
return f"The weather in {location} is cloudy with a high of 15°C."
Hozzon létre egy ChatAgent, amely a függvényeszközt használja.
from agent_framework.azure import AzureOpenAIChatClient
from azure.identity import AzureCliCredential
weather_agent = AzureOpenAIChatClient(credential=AzureCliCredential()).create_agent(
name="WeatherAgent",
description="An agent that answers questions about the weather.",
instructions="You answer questions about the weather.",
tools=get_weather
)
Hozzon létre egy fő ügynököt, és adja meg a weather_agent függvényeszközként azáltal, hogy hívja meg a .as_tool()-t a weather_agent függvényeszközzé alakításához.
main_agent = AzureOpenAIChatClient(credential=AzureCliCredential()).create_agent(
instructions="You are a helpful assistant who responds in French.",
tools=weather_agent.as_tool()
)
Hívja meg a fő ügynököt a szokásos módon. Mostantól eszközként hívhatja az időjárás-ügynököt, és franciául kell válaszolnia.
result = await main_agent.run("What is the weather like in Amsterdam?")
print(result.text)
Az eszköz nevét, leírását és argumentumnevét is testre szabhatja az ügynök eszközzé alakításakor:
# Convert agent to tool with custom parameters
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"
)
main_agent = AzureOpenAIChatClient(credential=AzureCliCredential()).create_agent(
instructions="You are a helpful assistant who responds in French.",
tools=weather_tool
)