Создавайте, тестируйте и развёртывайте AI-агентов в Microsoft Foundry Agent Service как Hosted Agents — полностью из VS Code с использованием Microsoft Foundry extension и Foundry Toolkit.
Hosted Agents находятся на стадии предварительного просмотра. Поддерживаемые регионы ограничены — смотрите доступность регионов.
Папка
agent/внутри каждой лабораторной работы автоматически создаётся расширением Foundry — затем вы настраиваете код, тестируете локально и развёртываете.
Арабский | Бенгальский | Болгарский | Бирманский (Мьянма) | Китайский (упрощённый) | Китайский (традиционный, Гонконг) | Китайский (традиционный, Макао) | Китайский (традиционный, Тайвань) | Хорватский | Чешский | Датский | Голландский | Эстонский | Финский | Французский | Немецкий | Греческий | Иврит | Хинди | Венгерский | Индонезийский | Итальянский | Японский | Каннада | Кхмерский | Корейский | Литовский | Малайский | Малаялам | Маратхи | Непальский | Нигерийский пиджин | Норвежский | Персидский (фарси) | Польский | Португальский (Бразилия) | Португальский (Португалия) | Пенджабский (гурмукхи) | Румынский | Русский | Сербский (кириллица) | Словацкий | Словенский | Испанский | Свахили | Шведский | Тагальский (филиппинский) | Тамильский | Телугу | Тайский | Турецкий | Украинский | Урду | Вьетнамский
Предпочитаете клонировать локально?
В этом репозитории есть более 50 переводов на разные языки, что значительно увеличивает размер загрузки. Чтобы клонировать без переводов, используйте sparse checkout:
Bash / macOS / Linux:
git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git cd Foundry_Toolkit_for_VSCode_Lab git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'CMD (Windows):
git clone --filter=blob:none --sparse https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git cd Foundry_Toolkit_for_VSCode_Lab git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"Это даст вам всё необходимое для прохождения курса с гораздо более быстрой загрузкой.
flowchart TB
subgraph Local["Локальная разработка (VS Code)"]
direction TB
FE["Расширение Microsoft Foundry"]
FoundryToolkit["Расширение Foundry Toolkit"]
Scaffold["Сгенерированный код агента
(main.py · agent.yaml · Dockerfile)"]
Inspector["Инспектор агента
(Локальное тестирование)"]
FE -- "Создать нового
размещенного агента" --> Scaffold
Scaffold -- "Отладка F5" --> Inspector
FoundryToolkit -.- Inspector
end
subgraph Cloud["Microsoft Foundry"]
direction TB
ACR["Реестр контейнеров
Azure"]
AgentService["Служба агента Foundry
(Время выполнения размещенного агента)"]
Model["Azure OpenAI
(gpt-4.1 / gpt-4.1-mini)"]
Playground["Площадка Foundry
и площадка VS Code"]
ACR --> AgentService
AgentService -- "/responses API" --> Model
AgentService --> Playground
end
Scaffold -- "Развернуть
(сборка Docker + push)" --> ACR
Inspector -- "POST /responses
(localhost:8088)" --> Scaffold
Playground -- "Тестировать подсказки" --> AgentService
style Local fill:#f0f4ff,stroke:#4a6cf7,stroke-width:2px
style Cloud fill:#fff4e6,stroke:#f59e0b,stroke-width:2px
Поток: Расширение Foundry создаёт каркас агента → вы настраиваете код и инструкции → тестируете локально с Agent Inspector → развёртываете в Foundry (Docker-образ отправляется в ACR) → проверяете в Playground.
| Лаборатория | Описание | Статус |
|---|---|---|
| Лаборатория 01 - Один агент | Создайте агента "Объясни, как для руководителя", протестируйте локально и развёртывайте в Foundry | ✅ Доступно |
| Лаборатория 02 - Мультиагентный рабочий процесс | Создайте "Резюме → Оценщик соответствия вакансии" — 4 агента работают вместе для оценки резюме и создания плана обучения | ✅ Доступно |
В этой мастерской вы создадите агента "Объясни, как для руководителя" — AI-агента, который берёт сложные технические термины и переводит их в спокойные, готовые к заседанию совета резюме. Потому что, если быть честным, никому в C-suite не хочется слышать про «исчерпание пула потоков из-за синхронных вызовов, появившихся в версии 3.2».
Я создал этого агента после слишком многих случаев, когда моё идеально составленное пост-мортем получало ответ: «То есть... сайт упал или нет?»
Вы даёте ему техническое обновление. Он выдаёт резюме для руководства — три пункта, никаких технических терминов, никаких стеков вызовов, никакого экзистенциального ужаса. Просто что случилось, деловое влияние и следующий шаг.
Вы говорите:
«Задержка API увеличилась из-за исчерпания пула потоков, вызванного синхронными вызовами, введёнными в версии 3.2.»
Агент отвечает:
Резюме для руководства:
- Что случилось: После последнего обновления система замедлилась.
- Деловое влияние: Некоторые пользователи испытывали задержки при использовании сервиса.
- Следующий шаг: Изменение откатили, готовится исправление перед повторным развёртыванием.
Это очень простой агент с одной функцией — идеально подходит для полного освоения рабочего процесса hosted agents без усложнений с большими цепочками инструментов. И честно? Каждая инженерная команда могла бы иметь такого.
📂 Foundry_Toolkit_for_VSCode_Lab/
├── 📄 README.md ← You are here
├── 📂 ExecutiveAgent/ ← Standalone hosted agent project
│ ├── agent.yaml
│ ├── Dockerfile
│ ├── main.py
│ └── requirements.txt
└── 📂 workshop/
├── 📂 lab01-single-agent/ ← Full lab: docs + agent code
│ ├── README.md ← Hands-on lab instructions
│ ├── 📂 docs/ ← Step-by-step tutorial modules
│ │ ├── 00-prerequisites.md
│ │ ├── 01-install-foundry-toolkit.md
│ │ ├── 02-create-foundry-project.md
│ │ ├── 03-create-hosted-agent.md
│ │ ├── 04-configure-and-code.md
│ │ ├── 05-test-locally.md
│ │ ├── 06-deploy-to-foundry.md
│ │ ├── 07-verify-in-playground.md
│ │ └── 08-troubleshooting.md
│ └── 📂 agent/ ← Reference solution (auto-scaffolded by Foundry extension)
│ ├── agent.yaml
│ ├── Dockerfile
│ ├── main.py
│ └── requirements.txt
└── 📂 lab02-multi-agent/ ← Resume → Job Fit Evaluator
├── README.md ← Hands-on lab instructions (end-to-end)
├── 📂 docs/ ← Step-by-step tutorial modules
│ ├── 00-prerequisites.md
│ ├── 01-understand-multi-agent.md
│ ├── 02-scaffold-multi-agent.md
│ ├── 03-configure-agents.md
│ ├── 04-orchestration-patterns.md
│ ├── 05-test-locally.md
│ ├── 06-deploy-to-foundry.md
│ ├── 07-verify-in-playground.md
│ └── 08-troubleshooting.md
└── 📂 PersonalCareerCopilot/ ← Reference solution (multi-agent workflow)
├── agent.yaml
├── Dockerfile
├── main.py
└── requirements.txt
Примечание: Папка
agent/внутри каждой лабораторной работы создаётся расширением Microsoft Foundry, когда вы вызываете командуMicrosoft Foundry: Create a New Hosted Agentиз палитры команд. Потом эти файлы настраиваются с вашими инструкциями, инструментами и конфигурацией агента. Лаборатория 01 показывает, как сделать это с нуля.
git clone https://github.com/microsoft-foundry/Foundry_Toolkit_for_VSCode_Lab.git
cd Foundry_Toolkit_for_VSCode_Labpython -m venv venvАктивируйте его:
-
Windows (PowerShell):
.\venv\Scripts\Activate.ps1
-
macOS / Linux:
source venv/bin/activate
pip install -r workshop/lab01-single-agent/agent/requirements.txtСкопируйте пример файла .env внутри папки агента и заполните своими значениями:
cp workshop/lab01-single-agent/agent/.env.example workshop/lab01-single-agent/agent/.envОтредактируйте workshop/lab01-single-agent/agent/.env:
AZURE_AI_PROJECT_ENDPOINT=https://<your-account>.services.ai.azure.com/api/projects/<your-project>
MODEL_DEPLOYMENT_NAME=<your-model-deployment-name>Каждая лаборатория автономна и содержит собственные модули. Начинайте с Лаборатории 01, чтобы изучить основы, затем переходите к Лаборатории 02 для изучения мультиагентных рабочих процессов.
Лаборатория 01 - Один агент (полные инструкции)
| # | Модуль | Ссылка |
|---|---|---|
| 1 | Изучите предварительные требования | 00-prerequisites.md |
| 2 | Установите Foundry Toolkit и расширение Foundry | 01-install-foundry-toolkit.md |
| 3 | Создайте проект Foundry | 02-create-foundry-project.md |
| 4 | Создайте hosted агент | 03-create-hosted-agent.md |
| 5 | Настройте инструкции и окружение | 04-configure-and-code.md |
| 6 | Тестируйте локально | 05-test-locally.md |
| 7 | Развёртывание в Foundry | 06-deploy-to-foundry.md |
| 8 | Проверьте в playground | 07-verify-in-playground.md |
| 9 | Поиск и устранение неисправностей | 08-troubleshooting.md |
Лаборатория 02 - Мультиагентный рабочий процесс (полные инструкции)
| # | Модуль | Ссылка |
|---|---|---|
| 1 | Предварительные требования (Лаборатория 02) | 00-prerequisites.md |
| 2 | Понимание архитектуры мультиагентов | 01-understand-multi-agent.md |
| 3 | Создайте каркас мультиагентного проекта | 02-scaffold-multi-agent.md |
| 4 | Настройте агентов и окружение | 03-configure-agents.md |
| 5 | Паттерны оркестрации | 04-orchestration-patterns.md |
| 6 | Тестируйте локально (мультиагенты) | 05-test-locally.md |
| 7 | Развертывание в Foundry | 06-deploy-to-foundry.md |
| 8 | Проверка в песочнице | 07-verify-in-playground.md |
| 9 | Устранение неполадок (многоагентная система) | 08-troubleshooting.md |
![]() Shivam Goyal |
| Сценарий | Требуемые роли |
|---|---|
| Создание нового проекта Foundry | Владелец Azure AI для ресурса Foundry |
| Развертывание в существующем проекте (новые ресурсы) | Владелец Azure AI + Участник подписки |
| Развертывание в полностью настроенном проекте | Читатель аккаунта + Пользователь Azure AI проекта |
Важно: Роли Azure
ВладелециУчастниквключают только управленческие разрешения, а не разрешения разработчика (действия с данными). Для сборки и развертывания агентов требуются Пользователь Azure AI или Владелец Azure AI.
- Быстрый старт: Развертывание вашего первого размещённого агента (VS Code)
- Что такое размещённые агенты?
- Создание рабочих процессов размещённых агентов в VS Code
- Развёртывание размещённого агента
- Контроль доступа на основе ролей для Microsoft Foundry
- Пример агента для обзора архитектуры - Реальный размещённый агент с инструментами MCP, диаграммами Excalidraw и двойным развертыванием
Отказ от ответственности:
Этот документ был переведен с помощью службы автоматического перевода Co-op Translator. Несмотря на наши усилия обеспечить точность, имейте в виду, что автоматические переводы могут содержать ошибки или неточности. Исходный документ на родном языке следует считать авторитетным источником. Для критической информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные толкования, возникшие в результате использования этого перевода.
