Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V tomto kurzu se dozvíte, jak používat obrázky s agentem, což agentu umožňuje analyzovat a reagovat na obsah obrázku.
Požadavky
Informace o požadavcích a instalaci balíčků NuGet naleznete v kroku Vytvoření a spuštění jednoduchého agenta v tomto kurzu.
Přenos obrázků agentovi
Obrázky můžete poslat agentu tak, že vytvoříte ChatMessage, který zahrnuje jak textový, tak obrazový obsah. Agent pak může obrázek analyzovat a odpovídajícím způsobem reagovat.
Nejprve vytvořte AIAgent, který dokáže analyzovat obrázky.
AIAgent agent = new AzureOpenAIClient(
new Uri("https://<myresource>.openai.azure.com"),
new AzureCliCredential())
.GetChatClient("gpt-4o")
.CreateAIAgent(
name: "VisionAgent",
instructions: "You are a helpful agent that can analyze images");
Dále vytvořte ChatMessage, který obsahuje jak textovou výzvu, tak adresu URL obrázku. Použijte TextContent pro text a UriContent pro obrázek.
ChatMessage message = new(ChatRole.User, [
new TextContent("What do you see in this image?"),
new UriContent("https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg", "image/jpeg")
]);
Spusťte agenta s následující zprávou. Můžete použít streamování k přijímání odpovědi, jakmile je generována.
Console.WriteLine(await agent.RunAsync(message));
Tím se do konzoly vytiskne analýza obrazu agenta.
Přenos obrázků agentovi
Obrázky můžete poslat agentu tak, že vytvoříte ChatMessage, který zahrnuje jak textový, tak obrazový obsah. Agent pak může obrázek analyzovat a odpovídajícím způsobem reagovat.
Nejprve vytvořte agenta, který dokáže analyzovat obrázky.
import asyncio
from agent_framework.azure import AzureOpenAIChatClient
from azure.identity import AzureCliCredential
agent = AzureOpenAIChatClient(credential=AzureCliCredential()).create_agent(
name="VisionAgent",
instructions="You are a helpful agent that can analyze images"
)
Dále vytvořte ChatMessage, který obsahuje jak textovou výzvu, tak adresu URL obrázku. Použijte TextContent pro text a UriContent pro obrázek.
from agent_framework import ChatMessage, TextContent, UriContent, Role
message = ChatMessage(
role=Role.USER,
contents=[
TextContent(text="What do you see in this image?"),
UriContent(
uri="https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg",
media_type="image/jpeg"
)
]
)
Image můžete také načíst z místního systému souborů pomocí DataContent:
from agent_framework import ChatMessage, TextContent, DataContent, Role
# Load image from local file
with open("path/to/your/image.jpg", "rb") as f:
image_bytes = f.read()
message = ChatMessage(
role=Role.USER,
contents=[
TextContent(text="What do you see in this image?"),
DataContent(
data=image_bytes,
media_type="image/jpeg"
)
]
)
Spusťte agenta s následující zprávou. Můžete použít streamování k přijímání odpovědi, jakmile je generována.
async def main():
result = await agent.run(message)
print(result.text)
asyncio.run(main())
Tím se do konzoly vytiskne analýza obrazu agenta.