ai-agents-for-beginners

Агентски Smoke тестови

Ова фасцикла садржи каталоге smoke-тестова за агенте које правите на курсу. Smoke тест је јефтена, брза провера да ли је дејставни Microsoft Foundry хостовани агент доступан, одговара и следи своје најосновније очекивања у упиту. То је први филтер — а не замена за пуну оцену процедуру коју учите у Лекцији 10 и Лекцији 16.

Каталози се користе у оквиру AI Smoke Test GitHub акције преко .github/workflows/smoke-test.yml флоуа.

Како покренути

  1. Деплојујте агента из лекције на Microsoft Foundry као хостованог агента (погледајте Лекцију 16 за флоу процеса деплоја). Запамтите име агента и ваш Foundry крајњи тачку пројекта.
  2. Додајте ове тајне податке репозиторијуму (Settings → Secrets and variables → Actions): AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_SUBSCRIPTION_ID. Федеративни идентитет треба да има улогу Azure AI User на 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 низом. Свака ставка шаље један упит и проверава одговор:

Поље Значење
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 одговора.

Тврђења су проверe поднизова без обзира на величину слова. Погледајте документацију акције за потпуну шему, укључујући ресурсе конверзације којима управља Foundry.


Изјава о одрицању одговорности: Овај документ је преведен коришћењем услуге за аутоматски превод Co-op Translator. Иако тежимо тачности, имајте у виду да аутоматски преводи могу садржати грешке или нетачности. Оригинални документ на његовом изворном језику треба сматрати ауторитативним извором. За критичне информације препоручује се професионални људски превод. Нисмо одговорни за било каква неспоразума или погрешна тумачења која произилазе из коришћења овог превода.