Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Tutorial ini menunjukkan kepada Anda cara menggunakan gambar dengan agen, memungkinkan agen menganalisis dan menanggapi konten gambar.
Prasyarat
Untuk prasyarat dan menginstal paket NuGet, lihat langkah Membuat dan menjalankan agen sederhana dalam tutorial ini.
Meneruskan gambar ke agen
Anda dapat mengirim gambar ke agen dengan membuat ChatMessage yang menyertakan konten teks dan gambar. Agen kemudian dapat menganalisis gambar dan merespons dengan sesuai.
Pertama, buat AIAgent yang mampu menganalisis gambar.
AIAgent agent = new AzureOpenAIClient(
new Uri("https://<myresource>.openai.azure.com"),
new AzureCliCredential())
.GetChatClient("gpt-4o")
.AsAIAgent(
name: "VisionAgent",
instructions: "You are a helpful agent that can analyze images");
Selanjutnya, buat yang ChatMessage berisi perintah teks dan URL gambar. Gunakan TextContent untuk teks dan UriContent untuk gambar.
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")
]);
Jalankan agen dengan pesan. Anda dapat menggunakan streaming untuk menerima respons ketika dihasilkan.
Console.WriteLine(await agent.RunAsync(message));
Ini akan mencetak analisis dari agen tentang gambar ke konsol.
Meneruskan gambar ke agen
Anda dapat mengirim gambar ke agen dengan membuat ChatMessage yang menyertakan konten teks dan gambar. Agen kemudian dapat menganalisis gambar dan merespons dengan sesuai.
Pertama, buat agen yang dapat menganalisis gambar.
import asyncio
from agent_framework.azure import AzureOpenAIChatClient
from azure.identity import AzureCliCredential
agent = AzureOpenAIChatClient(credential=AzureCliCredential()).as_agent(
name="VisionAgent",
instructions="You are a helpful agent that can analyze images"
)
Selanjutnya, buat yang ChatMessage berisi perintah teks dan URL gambar. Gunakan TextContent untuk teks dan UriContent untuk gambar.
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"
)
]
)
Anda juga dapat memuat gambar dari sistem file lokal Anda menggunakan 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"
)
]
)
Jalankan agen dengan pesan. Anda dapat menggunakan streaming untuk menerima respons ketika dihasilkan.
async def main():
result = await agent.run(message)
print(result.text)
asyncio.run(main())
Ini akan mencetak analisis dari agen tentang gambar ke konsol.