Разгръщане на мащабируеми агенти с Microsoft Foundry
Придружаващо умение за Урок 16 – Разгръщане на мащабируеми агенти.
Използвайте го, за да помогнете на учащия да премести агент от прототип към мащабируема, наблюдаема
производствена среда. Всяка препоръка трябва да се основава на съдържанието на урока и
изпълнимия тетрадка; не измисляйте API-та на Foundry.
Активатори
Активирайте това умение, когато учащ иска да:
- Разгърне агент в Microsoft Foundry като хостиран агент и да го направи версиониран/наблюдаем.
- Избере между модели за разгръщане клиент-хостиран, хостиран агент и агент-работен поток.
- Добави маршрутизация на модел, кеширане на отговори или ограничена паралелност за контрол на латентността и разходите.
- Добави вход за оценка, така че лоша версия на агента да не може да бъде пусната в продукция.
- Добави стъпка с одобрение с човешко участие за действия с висок риск.
- Инструментализиране на агент с OpenTelemetry проследяване за наблюдаемост в продукция.
- Извършване на бърз тест на разгърнат агент като бърза проверка след разгръщане.
Основен ментален модел
Производственият агент е предимно оперативният скелет около модела (~80%),
а не самият модел. Съпоставяйте всяка препоръка с една от тези области:
| Област |
Прототип → Производство |
| Хостинг |
тетрадка → версионирана хоствана услуга |
| Идентичност |
вашето az login → управлявана идентичност + обхванат RBAC |
| Състояние |
в паметта → външен сторидж на нишки/памет |
| Грешки |
traceback → повторни опити, резервни варианти, аларми |
| Разходи |
"няколко стотинки" → проследяване, маршрутизиране, кеширане, бюджетиране |
| Качество |
разглеждане с очи → автоматизиран вход за оценка |
| Доверие |
вие одобрявате → политика + човешко участие |
Модели за разгръщане (изберете един или комбинирайте)
- Клиент-хостиран — цикълът за разсъждение се изпълнява във вашия процес. Максимален контрол; вие управлявате мащабирането/състоянието.
- Хостиран агент (Foundry Agent Service) — Foundry хоства цикъла, съхранява нишки, прилага RBAC/сигурност на съдържанието, показва агента в портала. По-малко контрол, значително по-малък оперативен обхват.
- Агент-работен поток — множество агенти/инструменти, съставени в граф с разклонения, възли за одобрение и трайни контрольни точки.
Жизнен цикъл (цикълът, който разгръща агент)
създаване → версииране → оценка (вход) → разгъване като хостван → онлайн наблюдение → събиране на грешки → повторение.
Офлайн оценката е вход, а не следваща мисъл — версия не се разгръща
освен ако не премине прага. Онлайн наблюдаемостта връща реални грешки
в офлайн тестовия комплект.
Лостове за мащабиране и разходи (подредени по приоритет)
- Правилно размер на модела — използвайте най-малкия модел, който преминава входа за оценка.
- Маршрутизиране по сложност — малък/бърз модел за прости заявки, голям модел за истински разсъждения (самостоятелен класификатор или Foundry Model Router).
- Кеширане — обслужване на почти дублирани заявки без повикване към модел.
- Дизайн без състояние + ограничена паралелност — външно състояние; повторни опити с отстъпване.
Ключови модели за възпроизвеждане
Насочете учащия към тези от тетрадката
16-python-agent-framework.ipynb:
- Обработчик на заявки: кеш → маршрутизиране по сложност → проследяваща обвивка → изпълнение → кеш.
- Вход за оценка: оценяване на офлайн тестов комплект; връща
pass_rate >= threshold и разгръща само ако е вярно.
- Човешко одобрение:
@tool(approval_mode="always_require") за действия като големи възстановявания на средства.
- Проследяване: обвиване на всяка заявка в
tracer.start_as_current_span(...) и задаване на атрибути като routed.model, customer.id.
Бързо тестване на разгърнат агент
След разгръщане проверете дали крайна точка действително отговаря (зелено разгръщане може да бъде
мълчаливо). Използвайте действие AI Smoke Test
чрез .github/workflows/smoke-test.yml
с каталога в tests/. Изпълнителят изпраща POST заявка за всяко
подканяне към POST {project_endpoint}/agents/{agent_name}/endpoint/protocols/openai/responses
и проверява текста в отговора. Идентичността трябва да има ролята Azure AI User
в обхвата на проекта в Foundry; аудиторията на токена трябва да е https://ai.azure.com/.
Слоеве на входовете: бърз тест (достъпен/отговарящ, при всяко разгръщане) → офлайн
оценка (достатъчно добър за пускане, преди повишение) → онлайн оценка (как
се представя на живо, непрекъснато).
Контроли за предприятия
- RBAC: дайте на всеки хостиран агент управлявана идентичност с най-малките привилегии.
- MCP в продукция: третирайте всеки MCP сървър като ненадеждна граница — фиксирайте версията, ограничете идентичността му, валидирайте изходите, ограничете честотата, никога не разкривайте тайни.
Природозащитни мерки за асистента
- Предпочитайте каноничния модел
FoundryChatClient(...) + provider.as_agent(...), използван в целия курс.
- Не обещавайте резултати на живо от Azure, които не сте проверили; препоръчайте работния поток за бърз тест, за да потвърдите разгръщане.
- Дръжте съветите за оценка и разходи свързани: оценяването задава основата за качество, маршрутизирането/кеширането държат разходите близо до тази основа.
Отказ от отговорност:
Този документ е преведен с помощта на AI преводачески услуга Co-op Translator. Въпреки че се стремим към точност, моля имайте предвид, че автоматизираните преводи могат да съдържат грешки или неточности. Оригиналният документ на неговия роден език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален човешки превод. Ние не носим отговорност за каквито и да е недоразумения или неправилни тълкувания, произтичащи от използването на този превод.
Source: microsoft/ai-agents-for-beginners → translations/bg/.agents/skills/deploying-scalable-agents/SKILL.md
1---2name: deploying-scalable-agents-33description: Активирайте това умение, когато учащ иска да: - Разгърне агент в Microsoft Foundry като хостиран агент и да го направи версиониран/наблюдаем. - Избере между модели за разгръщане клиент-хостиран, хостиран агент и агент-работен поток. - Добави маршрутизация на модел, кеширане на отговори или ограничена паралелност за контрол на латентността и разходите. - Добави вход за оценка, така че лоша версия на агента да не може да бъде пусната в продукция.4---5# Разгръщане на мащабируеми агенти с Microsoft Foundry
6
7> Придружаващо умение за [Урок 16 – Разгръщане на мащабируеми агенти](../../../16-deploying-scalable-agents/README.md).
8> Използвайте го, за да помогнете на учащия да премести агент от прототип към мащабируема, наблюдаема
9> производствена среда. Всяка препоръка трябва да се основава на съдържанието на урока и
10> изпълнимия тетрадка; не измисляйте API-та на Foundry.
11
12## Активатори
13
14Активирайте това умение, когато учащ иска да:
15- Разгърне агент в Microsoft Foundry като **хостиран агент** и да го направи версиониран/наблюдаем.
16- Избере между модели за разгръщане **клиент-хостиран, хостиран агент и агент-работен поток**.
17- Добави **маршрутизация на модел**, **кеширане на отговори** или **ограничена паралелност** за контрол на латентността и разходите.
18- Добави **вход за оценка**, така че лоша версия на агента да не може да бъде пусната в продукция.
19- Добави стъпка с **одобрение с човешко участие** за действия с висок риск.
20- Инструментализиране на агент с **OpenTelemetry** проследяване за наблюдаемост в продукция.
21- Извършване на **бърз тест** на разгърнат агент като бърза проверка след разгръщане.
22
23## Основен ментален модел
24
25Производственият агент е предимно оперативният скелет *около* модела (~80%),
26а не самият модел. Съпоставяйте всяка препоръка с една от тези области:
27
28| Област | Прототип → Производство |
29|---------|-----------------------|
30| Хостинг | тетрадка → версионирана хоствана услуга |
31| Идентичност | вашето `az login` → управлявана идентичност + обхванат RBAC |
32| Състояние | в паметта → външен сторидж на нишки/памет |
33| Грешки | traceback → повторни опити, резервни варианти, аларми |
34| Разходи | "няколко стотинки" → проследяване, маршрутизиране, кеширане, бюджетиране |
35| Качество | разглеждане с очи → автоматизиран вход за оценка |
36| Доверие | вие одобрявате → политика + човешко участие |
37
38## Модели за разгръщане (изберете един или комбинирайте)
39
401. **Клиент-хостиран** — цикълът за разсъждение се изпълнява във вашия процес. Максимален контрол; вие управлявате мащабирането/състоянието.
412. **Хостиран агент (Foundry Agent Service)** — Foundry хоства цикъла, съхранява нишки, прилага RBAC/сигурност на съдържанието, показва агента в портала. По-малко контрол, значително по-малък оперативен обхват.
423. **Агент-работен поток** — множество агенти/инструменти, съставени в граф с разклонения, възли за одобрение и трайни контрольни точки.
43
44## Жизнен цикъл (цикълът, който разгръща агент)
45
46`създаване → версииране → оценка (вход) → разгъване като хостван → онлайн наблюдение → събиране на грешки → повторение`.
47**Офлайн оценката е вход, а не следваща мисъл** — версия не се разгръща
48освен ако не премине прага. Онлайн наблюдаемостта връща реални грешки
49в офлайн тестовия комплект.
50
51## Лостове за мащабиране и разходи (подредени по приоритет)
52
531. **Правилно размер на модела** — използвайте най-малкия модел, който преминава входа за оценка.
542. **Маршрутизиране по сложност** — малък/бърз модел за прости заявки, голям модел за истински разсъждения (самостоятелен класификатор или Foundry Model Router).
553. **Кеширане** — обслужване на почти дублирани заявки без повикване към модел.
564. **Дизайн без състояние + ограничена паралелност** — външно състояние; повторни опити с отстъпване.
57
58## Ключови модели за възпроизвеждане
59
60Насочете учащия към тези от тетрадката
61[`16-python-agent-framework.ipynb`](../../../16-deploying-scalable-agents/code_samples/16-python-agent-framework.ipynb):
62
63- **Обработчик на заявки**: кеш → маршрутизиране по сложност → проследяваща обвивка → изпълнение → кеш.
64- **Вход за оценка**: оценяване на офлайн тестов комплект; връща `pass_rate >= threshold` и разгръща само ако е вярно.
65- **Човешко одобрение**: `@tool(approval_mode="always_require")` за действия като големи възстановявания на средства.
66- **Проследяване**: обвиване на всяка заявка в `tracer.start_as_current_span(...)` и задаване на атрибути като `routed.model`, `customer.id`.
67
68## Бързо тестване на разгърнат агент
69
70След разгръщане проверете дали крайна точка действително отговаря (зелено разгръщане може да бъде
71мълчаливо). Използвайте действие [AI Smoke Test](https://github.com/marketplace/actions/ai-smoke-test)
72чрез [`.github/workflows/smoke-test.yml`](../../../../../.github/workflows/smoke-test.yml)
73с каталога в [`tests/`](../../../tests/README.md). Изпълнителят изпраща POST заявка за всяко
74подканяне към `POST {project_endpoint}/agents/{agent_name}/endpoint/protocols/openai/responses`
75и проверява текста в отговора. Идентичността трябва да има ролята **Azure AI User**
76в обхвата на проекта в Foundry; аудиторията на токена трябва да е `https://ai.azure.com/`.
77
78Слоеве на входовете: **бърз тест** (достъпен/отговарящ, при всяко разгръщане) → **офлайн
79оценка** (достатъчно добър за пускане, преди повишение) → **онлайн оценка** (как
80се представя на живо, непрекъснато).
81
82## Контроли за предприятия
83
84- **RBAC**: дайте на всеки хостиран агент управлявана идентичност с най-малките привилегии.
85- **MCP в продукция**: третирайте всеки MCP сървър като ненадеждна граница — фиксирайте версията, ограничете идентичността му, валидирайте изходите, ограничете честотата, никога не разкривайте тайни.
86
87## Природозащитни мерки за асистента
88
89- Предпочитайте каноничния модел `FoundryChatClient(...)` + `provider.as_agent(...)`, използван в целия курс.
90- Не обещавайте резултати на живо от Azure, които не сте проверили; препоръчайте работния поток за бърз тест, за да потвърдите разгръщане.
91- Дръжте съветите за оценка и разходи свързани: оценяването задава основата за качество, маршрутизирането/кеширането държат разходите близо до тази основа.
92
93---
94
95<!-- CO-OP TRANSLATOR DISCLAIMER START -->
96**Отказ от отговорност**:
97Този документ е преведен с помощта на AI преводачески услуга [Co-op Translator](https://github.com/Azure/co-op-translator). Въпреки че се стремим към точност, моля имайте предвид, че автоматизираните преводи могат да съдържат грешки или неточности. Оригиналният документ на неговия роден език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален човешки превод. Ние не носим отговорност за каквито и да е недоразумения или неправилни тълкувания, произтичащи от използването на този превод.
98<!-- CO-OP TRANSLATOR DISCLAIMER END -->
99
100---
101
102**Source:** [`microsoft/ai-agents-for-beginners`](https://github.com/microsoft/ai-agents-for-beginners) → `translations/bg/.agents/skills/deploying-scalable-agents/SKILL.md`