ai-agents-for-beginners

Smoke-тесты агентов

Эта папка содержит каталоги smoke-тестов для агентов, которых вы создаёте в курсе. Smoke-тест — это недорогая, быстрая проверка того, что развернутый хостингом Microsoft Foundry агент доступен, отвечает и следует своим базовым ожиданиям подсказок. Это первый барьер — не замена полноценного конвейера оценки, который вы изучаете в Уроке 10 и Уроке 16.

Каталоги используются GitHub Action AI Smoke Test через workflow .github/workflows/smoke-test.yml.

Как запустить

  1. Разверните агента урока в Microsoft Foundry как хостинг-агента (см. Урок 16 для процесса развертывания). Запомните имя агента и конечную точку вашего Foundry проекта.
  2. Добавьте эти секреты репозитория (Настройки → Секреты и переменные → Actions): AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_SUBSCRIPTION_ID. Федерированная учётная запись должна иметь роль Пользователь Azure AI с областью действия Foundry проекта.
  3. На вкладке Actions запустите Smoke-test hosted agents, выберите tests_file для урока, затем укажите соответствующие agent_name и project_endpoint.

Каталог → урок → имя агента

Каталог Урок Развёртывание агента как
lesson-01-smoke-tests.json 01 – Введение в AI-агентов TravelAgent
lesson-04-smoke-tests.json 04 – Использование инструментов TravelToolAgent
lesson-05-smoke-tests.json 05 – Агентский RAG TravelRAGAgent
lesson-16-smoke-tests.json 16 – Разворачивание масштабируемых агентов ContosoSupportAgent

В каких уроках есть smoke-тесты?

Smoke-тесты применимы к урокам, где вы развёртываете агента, чьи текстовые ответы можно проверить на соответствие известному содержимому. Уроки, которые концептуальны, работают только локально или генерируют недетерминированный творческий контент, преднамеренно исключены:

Схема каталога (быстрая справка)

Каждый каталог — это JSON-документ с верхнеуровневым массивом tests. Каждая запись POST-ит один запрос и проверяет ответ:

Поле Значение
id Уникальный идентификатор шага, выводимый в журнал.
description Читаемое человеку описание цели.
prompt Сообщение, отправленное агенту.
assertions.status Ожидаемый HTTP статус (по умолчанию 200).
assertions.contains_any Тест пройден, если ответ содержит любой из этих подстрок.
assertions.contains_all Тест пройден, если ответ содержит каждую подстроку.
assertions.contains_none Тест пройден, если ответ не содержит ни одной из этих подстрок.
save_response_id_as Сохраняет ID ответа для последующего шага с несколькими ходами.
use_previous_response_id Отправляет этот ход связным с сохранённым ID ответа.

Проверки — это нечувствительные к регистру поиски подстрок. Смотрите документацию действия для полной схемы, включая ресурсы разговоров, управляемые Foundry.


Отказ от ответственности: Этот документ был переведен с использованием сервиса машинного перевода Co-op Translator. Несмотря на наши усилия по обеспечению точности, имейте в виду, что автоматический перевод может содержать ошибки или неточности. Оригинальный документ на его исходном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется обратиться к профессиональному человеческому переводу. Мы не несем ответственности за любые недоразумения или неправильные толкования, возникшие в результате использования этого перевода.