Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här guiden visar hur du använder bilder med en agent, för att agenten kan analysera och svara på bildinnehåll.
Förutsättningar
Förutsättningar och installation av NuGet-paket finns i steget Skapa och kör en enkel agent i den här självstudien.
Skicka avbildningar till agenten
Du kan skicka bilder till en agent genom att skapa en ChatMessage som innehåller både text- och bildinnehåll. Agenten kan sedan analysera bilden och svara därefter.
Skapa först en AIAgent som kan analysera bilder.
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");
Skapa sedan en ChatMessage som innehåller både en textprompt och en bild-URL. Använd TextContent för texten och UriContent för bilden.
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")
]);
Kör agenten med meddelandet. Du kan använda direktuppspelning för att ta emot svaret när det genereras.
Console.WriteLine(await agent.RunAsync(message));
Detta skriver ut agentens analys av avbildningen till konsolen.
Skicka avbildningar till agenten
Du kan skicka bilder till en agent genom att skapa en ChatMessage som innehåller både text- och bildinnehåll. Agenten kan sedan analysera bilden och svara därefter.
Skapa först en agent som kan analysera bilder.
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"
)
Skapa sedan en ChatMessage som innehåller både en textprompt och en bild-URL. Använd TextContent för texten och UriContent för bilden.
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"
)
]
)
Du kan också läsa in en avbildning från ditt lokala filsystem med hjälp av 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"
)
]
)
Kör agenten med meddelandet. Du kan använda direktuppspelning för att ta emot svaret när det genereras.
async def main():
result = await agent.run(message)
print(result.text)
asyncio.run(main())
Detta skriver ut agentens analys av avbildningen till konsolen.