Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Lernprogramm erfahren Sie, wie Sie Bilder mit einem Agent verwenden, sodass der Agent Bildinhalte analysieren und darauf reagieren kann.
Voraussetzungen
Die erforderlichen Komponenten und die Installation von NuGet-Paketen finden Sie im Schritt Erstellen und Ausführen eines einfachen Agents in diesem Lernprogramm.
Übergeben von Bildern an den Agent
Sie können Bilder an einen Agenten senden, indem Sie einen ChatMessage erstellen, der sowohl Text- als auch Bildinhalte enthält. Der Agent kann das Bild dann analysieren und entsprechend reagieren.
Erstellen Sie zunächst eine AIAgent , die Bilder analysieren kann.
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");
Erstellen Sie als Nächstes ein ChatMessage, das sowohl eine Texteingabeaufforderung als auch eine Bild-URL enthält. Verwenden Sie TextContent für den Text und UriContent für das Bild.
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")
]);
Führen Sie den Agent mit der Nachricht aus. Sie können Streaming verwenden, um die Antwort zu empfangen, während sie generiert wird.
Console.WriteLine(await agent.RunAsync(message));
Dadurch wird die Analyse des Agenten für das Bild in die Konsole ausgegeben.
Übergeben von Bildern an den Agent
Sie können Bilder an einen Agenten senden, indem Sie einen ChatMessage erstellen, der sowohl Text- als auch Bildinhalte enthält. Der Agent kann das Bild dann analysieren und entsprechend reagieren.
Erstellen Sie zunächst einen Agent, der Bilder analysieren kann.
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"
)
Erstellen Sie als Nächstes ein ChatMessage, das sowohl eine Texteingabeaufforderung als auch eine Bild-URL enthält. Verwenden Sie TextContent für den Text und UriContent für das Bild.
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"
)
]
)
Sie können auch ein Bild aus Ihrem lokalen Dateisystem laden, indem Sie DataContent verwenden:
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"
)
]
)
Führen Sie den Agent mit der Nachricht aus. Sie können Streaming verwenden, um die Antwort zu empfangen, während sie generiert wird.
async def main():
result = await agent.run(message)
print(result.text)
asyncio.run(main())
Dadurch wird die Analyse des Agenten für das Bild in die Konsole ausgegeben.