Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом руководстве показано, как использовать изображения с агентом, позволяя агенту анализировать и реагировать на содержимое изображения.
Предпосылки
Предварительные требования и установка пакетов NuGet см. в разделе "Создание и запуск простого агента " в этом руководстве.
Передача изображений агенту
Вы можете отправить изображения агенту, создав ChatMessage, который включает как текст, так и изображение. Затем агент может проанализировать изображение и ответить соответствующим образом.
Сначала создайте объект AIAgent , который может анализировать изображения.
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");
Затем создайте ChatMessage, который содержит обо текстовую подсказку и URL-адрес изображения. Используется TextContent для текста и UriContent изображения.
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")
]);
Запустите агент с сообщением. Потоковую передачу можно использовать для получения ответа по мере его создания.
Console.WriteLine(await agent.RunAsync(message));
Это выведет анализ изображения агентом в консоль.
Передача изображений агенту
Вы можете отправить изображения агенту, создав ChatMessage, который включает как текст, так и изображение. Затем агент может проанализировать изображение и ответить соответствующим образом.
Сначала создайте агент, который может анализировать изображения.
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"
)
Затем создайте ChatMessage, который содержит обо текстовую подсказку и URL-адрес изображения. Используется TextContent для текста и UriContent изображения.
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"
)
]
)
Вы также можете загрузить образ из локальной файловой системы с помощью 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"
)
]
)
Запустите агент с сообщением. Потоковую передачу можно использовать для получения ответа по мере его создания.
async def main():
result = await agent.run(message)
print(result.text)
asyncio.run(main())
Это выведет анализ изображения агентом в консоль.