Поделиться через


Тестирование с помощью AG-UI Dojo

Приложение DojoAG-UI предоставляет интерактивную среду для тестирования и изучения агентов Microsoft Agent Framework, реализующих протокол AG-UI. Dojo предлагает визуальный интерфейс для подключения к агентам и взаимодействия со всеми 7 AG-UI функциями.

Предпосылки

Прежде чем начать, убедитесь, что у вас есть следующее:

  • Python 3.10 или более поздней версии
  • uv для управления зависимостями
  • Ключ API OpenAI или конечная точка Azure OpenAI
  • Node.js и pnpm (для запуска интерфейса Dojo)

Installation

1. Клонирование репозитория AG-UI

Сначала клонируйте репозиторий AG-UI, содержащий примеры интеграции с приложением Dojo и Microsoft Agent Framework:

git clone https://github.com/ag-oss/ag-ui.git
cd ag-ui

2. Перейдите к каталогу Examples

cd integrations/microsoft-agent-framework/python/examples

3. Установка зависимостей Python

Используется uv для установки необходимых зависимостей:

uv sync

4. Настройка переменных среды

.env Создайте файл из предоставленного шаблона:

cp .env.example .env

Измените .env файл и добавьте учетные данные API:

# For OpenAI
OPENAI_API_KEY=your_api_key_here
OPENAI_CHAT_MODEL_ID="gpt-4.1"

# Or for Azure OpenAI
AZURE_OPENAI_ENDPOINT=your_endpoint_here
AZURE_OPENAI_API_KEY=your_api_key_here
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME=your_deployment_here

Замечание

При использовании DefaultAzureCredential вместо api_key для проверки подлинности убедитесь, что вы аутентифицированы в Azure (например, через az login). Дополнительную информацию см. в документации по идентификации Azure.

Запуск приложения Dojo

1. Запуск серверного сервера

В каталоге примеров запустите бекенд сервер с примерными агентами:

cd integrations/microsoft-agent-framework/python/examples
uv run dev

Сервер запустится http://localhost:8888 по умолчанию.

2. Запустите интерфейс Dojo

Откройте новое окно терминала, перейдите к корню репозитория AG-UI, а затем в каталог приложения Dojo:

cd apps/dojo
pnpm install
pnpm dev

Внешний интерфейс Dojo будет доступен по адресу http://localhost:3000.

3. Подключение к агенту

  1. Откройте http://localhost:3000 в браузере

  2. Настройка URL-адреса сервера для http://localhost:8888

  3. Выберите "Microsoft Agent Framework (Python)" в раскрывающемся списке

  4. Начало изучения примеров агентов

Доступные примеры агентов

В примерах интеграции показаны все 7 AG-UI функций с помощью разных конечных точек агента:

Endpoint Функция Description
/agentic_chat Функция 1. Агентический чат Базовый чат-бот с вызовом инструментов
/backend_tool_rendering Функция 2. Отрисовка инструментария серверной части Агент с настройкой пользовательского интерфейса инструмента
/human_in_the_loop Функция 3. Человек в контуре Агент с рабочими процессами утверждения
/agentic_generative_ui Функция 4. Агентический генерированный пользовательский интерфейс Агент, который разбивает задачи на шаги с помощью потоковых обновлений
/tool_based_generative_ui Функция 5. Создание пользовательского интерфейса на основе инструментов Агент, создающий настраиваемые компоненты интерфейса
/shared_state Функция 6. Разделяемое состояние Агент с двунаправленной синхронизацией состояния
/predictive_state_updates Функция 7. Обновления прогнозного состояния Агент с прогнозными обновлениями состояния во время исполнения инструмента

Тестирование собственных агентов

Чтобы протестировать своих агентов с помощью Dojo:

1. Создание агента

Создайте нового агента, следуя руководству Начало работы.

from agent_framework import Agent
from agent_framework_azure_ai import AzureOpenAIChatClient

# Create your agent
chat_client = AzureOpenAIChatClient(
    endpoint=os.getenv("AZURE_OPENAI_ENDPOINT"),
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),
    deployment_name=os.getenv("AZURE_OPENAI_CHAT_DEPLOYMENT_NAME"),
)

agent = Agent(
    name="my_test_agent",
    chat_client=chat_client,
    system_message="You are a helpful assistant.",
)

2. Добавление агента на сервер

В приложении FastAPI зарегистрируйте конечную точку агента:

from fastapi import FastAPI
from agent_framework_ag_ui import add_agent_framework_fastapi_endpoint
import uvicorn

app = FastAPI()

# Register your agent
add_agent_framework_fastapi_endpoint(
    app=app,
    path="/my_agent",
    agent=agent,
)

if __name__ == "__main__":
    uvicorn.run(app, host="127.0.0.1", port=8888)

3. Тестирование в Доджо

  1. Запуск сервера
  2. Открыть Dojo в http://localhost:3000
  3. Установите URL-адрес сервера на http://localhost:8888
  4. Ваш агент появится в списке выпадающих меню конечной точки как "my_agent"
  5. Выберите его и начните тестирование

Структура проекта

Примеры интеграции AG-UI репозитория следуют этой структуре:

integrations/microsoft-agent-framework/python/examples/
├── agents/
│   ├── agentic_chat/                  # Feature 1: Basic chat agent
│   ├── backend_tool_rendering/        # Feature 2: Backend tool rendering
│   ├── human_in_the_loop/             # Feature 3: Human-in-the-loop
│   ├── agentic_generative_ui/         # Feature 4: Streaming state updates
│   ├── tool_based_generative_ui/      # Feature 5: Custom UI components
│   ├── shared_state/                  # Feature 6: Bidirectional state sync
│   ├── predictive_state_updates/      # Feature 7: Predictive state updates
│   └── dojo.py                        # FastAPI application setup
├── pyproject.toml                     # Dependencies and scripts
├── .env.example                       # Environment variable template
└── README.md                          # Integration examples documentation

Устранение неполадок

Проблемы с подключением к серверу

Если Dojo не удается подключиться к серверу:

  • Убедитесь, что сервер работает на правильном порту (по умолчанию: 8888)
  • Убедитесь, что URL-адрес сервера в среде Dojo соответствует адресу вашего сервера
  • Убедитесь, что брандмауэр не блокирует подключение
  • Поиск ошибок CORS в консоли браузера

Агент не отображается

Если агент не отображается в раскрывающемся списке Dojo:

  • Проверка правильной регистрации конечной точки агента
  • Проверка журналов сервера для любых ошибок запуска
  • Убедитесь, add_agent_framework_fastapi_endpoint что вызов выполнен успешно

Проблемы с переменными среды

Если вы видите ошибки проверки подлинности:

  • .env Убедитесь, что файл находится в правильном каталоге
  • Убедитесь, что заданы все обязательные переменные среды
  • Убедитесь, что ключи и конечные точки API допустимы
  • Перезапустите сервер после изменения переменных среды

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

Дополнительные ресурсы

Скоро.