Samples

Эта страница содержит ссылки на примеры агентов и рабочих процессов, предназначенных для использования с DevUI.

Скоро

Примеры DevUI для C# будут доступны в ближайшее время. Вернитесь позже или ознакомьтесь с примерами Python для получения рекомендаций.

Примеры начала работы

Репозиторий Agent Framework включает примеры агентов и рабочих процессов в каталоге python/samples/02-agents/devui/ :

Sample Description
agent_weather Агент погоды с помощью Microsoft Foundry
agent_foundry Минимальный агент с помощью Microsoft Foundry
workflow_declarative Определяемый YAML рабочий процесс
workflow_fanout Рабочий процесс, демонстрирующий шаблоны вентилятора и вентилятора
workflow_spam Рабочий процесс для обнаружения нежелательной почты
workflow_with_agents Несколько агентов в рабочем процессе

Запуск с помощью DevUI

# Discover all samples
devui .

# Or run a specific sample
devui ./weather_agent_azure

режим In-Memory

Сценарий in_memory_mode.py демонстрирует выполнение агентов без обнаружения каталогов:

python in_memory_mode.py

Откроется браузер с предварительно настроенными агентами и базовым рабочим процессом, показывающим, как использовать serve() программным способом.

Если DevUI начинается без обнаруженных сущностей, в нем отображается пример коллекции с проверенными примерами. Из коллекции можно:

  1. Обзор доступных примеров
  2. Просмотр примеров описаний и требований
  3. Скачивание примеров на локальный компьютер
  4. Запуск примеров напрямую

Создание собственных примеров

Следуйте руководству по обнаружению каталогов , чтобы создать собственные агенты и рабочие процессы, совместимые с DevUI.

Минимальный шаблон агента

# my_agent/__init__.py
from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient

agent = Agent(
    name="my_agent",
    client=OpenAIChatClient(),
    instructions="You are a helpful assistant."
)

Минимальный шаблон рабочего процесса

# my_workflow/__init__.py
from agent_framework import WorkflowBuilder, WorkflowContext, executor
from typing_extensions import Never


@executor(id="my_executor")
async def my_executor(message: str, ctx: WorkflowContext[Never, str]) -> None:
    await ctx.yield_output(message)


workflow = WorkflowBuilder(start_executor=my_executor).build()

Замечание

Поддержка Go для этой функции скоро появится. Сведения о последнем состоянии см. в репозитории Agent Framework Go .

Дальнейшие шаги