Архітектура Microsoft Foundry: Від базової моделі до повноцінної production-системи ШІ
Сьогодні багато розробників зосереджуються на написанні коду для роботи з ШІ-моделями. API функціонує, відповіді генеруються, проте простий виклик моделі — це ще не застосунок. Під час спроби запустити ШІ-агента в робочому середовищі (production) з реальними даними та вимогами до безпеки стає очевидно, що сама модель — це лише найменша і найпростіша частина завдання.
Для створення надійного enterprise-рішення необхідна можливість обирати відповідну модель, керувати циклом роботи агента, підключати зовнішні інструменти та дані, а також адмініструвати всю цю інфраструктуру як будь-яке інше робоче навантаження. Нижче представлена докладна архітектурна карта Microsoft Foundry, що розбирає систему рівень за рівнем.
1. Вибір моделі та маршрутизація
Основа Microsoft Foundry — це Unified Model Catalog (Єдиний каталог моделей), який працює як своєрідний App Store для ШІ. Каталог підтримується в актуальному стані та містить тисячі моделей: від рішень Azure OpenAI (GPT-4o, GPT-4) і малих мовних моделей сімейства Microsoft Phi (оптимізованих за вартістю), до сторонніх продуктів на кшталт Claude, Llama, Mistral, Grok та Black Forest Labs. Також доступна інтеграція з open-source спільнотою через Hugging Face.
Крім вибору самої моделі, критично важливо визначити, як і де вона працюватиме.
Варіанти хостингу
- Cloud (Хмара): Варіант за замовчуванням, що працює на керованій і масштабованій інфраструктурі Azure.
- Foundry Local (Локально): Дозволяє запускати моделі (наприклад, SLM на зразок Phi) на локальних машинах. Ідеально підходить для ізольованих середовищ, наприклад, заводських робочих станцій без доступу до інтернету.
- Edge (Граничні обчислення): Призначено для мобільних пристроїв та IoT.
Типи розгортання
Тип розгортання безпосередньо впливає на вартість і продуктивність:
- Standard (Pay-as-you-go): Оплата в міру використання. Оптимально для розробки та нерівномірних навантажень.
- Provisioned: Резервування обчислювальних потужностей (PTUs) для отримання гарантованої пропускної здатності та мінімальної затримки (критично для production).
- Batch (Пакетне оброблення): Асинхронний метод для великих завдань зі значним зниженням вартості, але час виконання може досягати 24 годин.
- Priority Processing: Аналог pay-as-you-go, але з гарантованим SLA.
Локалізація даних та Model Router
- Data Residency: Можна вибрати глобальний масштаб, обмежити обробку рамками Європи чи США (Data zone) або жорстко прив’язати дані до одного регіону (Regional) для максимального комплаєнсу.
- Model Router: Маршрутизатор не генерує відповіді сам, він аналізує промпт і перенаправляє його найбільш відповідній моделі (наприклад, математичні завдання — моделям із розвиненою логікою, а код — спеціалізованій моделі для програмування). Це дає змогу балансувати якість і вартість без жорсткого хардкодингу.
2. Розробка та управління ШІ-агентами
Модель працює за принципом «текст на вході — текст на виході». Вона не зберігає стан, не керує багатокроковою бесідою і не може безпечно виконувати цикл: «синхронізація > виклик інструменту > отримання результату > синхронізація». Для цього потрібні агенти.
Типи агентів
Залежно від необхідного рівня контролю, агенти поділяються на три категорії:
- Prompt Agents: Найпростіші. Не вимагають написання коду, налаштовуються конфігурацією (інструкції, модель, інструменти). Відмінно підходять для прототипування.
- Workflow Agents: Оркестрація з кількох кроків, розгалуження логіки, групові чати та можливість залучення людини (human-in-the-loop). Описуються через YAML або візуально на порталі.
- Hosted Agents: Повний контроль. Розробник приносить власний код у контейнері (використовуючи Microsoft Agent Framework, LangGraph або кастомне рішення), а Foundry бере на себе хостинг і масштабування.
Життєвий цикл (CI/CD)
Операційний процес складається з 6 суворих етапів: Створення > Тестування в Playground > Трасування (інспекція кожного виклику) > Оцінка (Evaluation) > Публікація > Моніторинг.
Публікація не обмежується створенням API: агента можна інтегрувати безпосередньо в робочі середовища користувачів, такі як Teams, Microsoft 365 Copilot або Entra Agent Registry.
3. Інструменти та інтеграції (Tools)
Щоб агент міг виконувати реальну роботу, йому потрібні «руки»: можливість шукати інформацію, запускати код, читати документи або працювати з CRM.
- Вбудовані інструменти: Web-пошук у реальному часі (з цитуванням), Code Interpreter (ізольована Python-пісочниця) і векторний пошук по файлах.
- AI Services: Передвизначені можливості Azure (розпізнавання мови, зору, перекладач на 100+ мов, аналіз документів та фільтрація контенту).
- Model Context Protocol (MCP): Стандартний спосіб підключення будь-яких зовнішніх ресурсів. Розробник відкриває інструмент через MCP-ендпоінт, що дозволяє використовувати сервери з каталогу (наприклад, Azure DevOps MCP).
- OpenAI Tools: Використання специфікацій OpenAI 3.0/1, що перетворює будь-який REST API на інструмент, який можна викликати.
- Agent-to-Agent (A2A): Один агент може викликати іншого як інструмент, зв’язуючи pro-code і low-code рішення між собою.
4. Управління знаннями (Foundry IQ)
Модель володіє знаннями тільки на момент її навчання. Традиційний RAG (Retrieval-Augmented Generation) дозволяє впроваджувати контекст, але він крихкий: один запит, один індекс, одна спроба пошуку.
Рішенням виступає Foundry IQ — керований шар знань на базі Azure AI Search. База знань створюється одноразово і може бути підключена до необмеженої кількості агентів.
Агентний пошук (Agentic retrieval)
На відміну від класичного RAG, система працює як дослідник-асистент:
- Складний запит користувача розбивається на кілька підзапитів.
- Підзапити виконуються паралельно за кількома джерелами.
- Результати семантично ранжуються і повертаються з точними посиланнями (цитатами) на вихідні документи.
- Залежно від вимог до затримки та вартості, глибину пошуку можна регулювати (Minimal, Low, Medium).
Джерела можуть бути індексованими (Azure Blob Storage, SharePoint, OneLake) з автоматичним чанкінгом, векторизацією і синхронізацією прав доступу (ACL), або віддаленими (запити on-demand для отримання актуальних даних у реальному часі).
5. Доопрацювання та кастомізація (Fine-tuning)
Коли prompt engineering і RAG недостатньо (модель використовує не той тон, не дотримується форматів або споживає занадто багато токенів), застосовується донавчання. Пайплайн інтегрований у Foundry: підготовка датасету, тренування, оцінка та розгортання відбуваються в одному місці.
Доступні методи:
- SFT (Supervised Fine-Tuning): Навчання на парах «введення-виведення».
- DPO: Навчання на основі бажаних і небажаних відповідей.
- RFT (Reinforcement Fine-Tuning): Навчання на основі сигналів винагороди для складної логіки.
- Distillation: Перенесення можливостей великої моделі на меншу для радикального зниження витрат.
Загальна стратегія: Prompt engineering — найшвидший і найдешевший метод. RAG додає знання. Fine-tuning змінює поведінку. Distillation зменшує розмір і вартість.
6. Безпека та Governance
При підключенні агента до корпоративних даних поверхня атаки змінюється. Виникають ризики ін’єкцій у промпти (prompt injection), витоків даних і небезпечних викликів інструментів.
Ключові механізми захисту:
- Ідентифікація та RBAC: Агент отримує власний обліковий запис Microsoft Entra ID зі своїм життєвим циклом і видачею прав за принципом найменших привілеїв (наприклад, тільки читання Blob-сховища, але не запис).
- Динамічні токени: Секрети більше не зберігаються в коді або промптах. Foundry видає токени доступу з обмеженою областю дії (scoped access tokens) прямо під час виконання.
- Огорожі (Guardrails): Фільтри застосовуються на всіх етапах: введення користувача, виклик інструменту, відповідь інструменту і фінальне виведення агента. Вони перевіряють прихильність до завдання, блокують ін’єкції та фільтрують шкідливий контент.
- AI Red Teaming та Оцінка: Вбудовані інструменти для автоматичного сканування на вразливості (джейлбрейки, компрометація даних). Практикується безперервна оцінка в рамках CI/CD.
- Observability (Спостережуваність): Повне трасування всього ланцюжка (від промпта до відповіді) на базі OpenTelemetry з інтеграцією в Azure Monitor.
Вся інфраструктура нативно інтегрується зі стеком безпеки: Microsoft Defender for Cloud аналізує шляхи потенційних атак, а Microsoft Purview забезпечує аудит і застосування корпоративних політик, синхронізуючи мітки конфіденційності аж до конкретних файлів у SharePoint.
Висновок
Архітектура Microsoft Foundry змінює саму парадигму розробки. Модель тут виступає лише в ролі «мозку». Сервіс агентів — це операційний цикл, інструменти — це «руки», а Foundry IQ — «пам’ять». Обгорнута в надійний шар governance та безпеки, ця екосистема дозволяє перевести ШІ-розробку від експериментальних скриптів до створення стабільних, масштабованих і безпечних корпоративних систем.
1 коментар
Додати коментар Підписатись на коментаріВідписатись від коментарівНу, з безпекою там весело, насправді... Принаймні зі сторони розробників та девопсів, що розгортають. :D
Ну і тонкощів, щодо роботи з інфраструктурою — вистачає, будьте готові, що розгорнути ви кодом зможете, а ось повноцінно керувати, як-то оновлювати, змінювати та видаляти — поки що ні ;(
Проект активно розвивається зі сторони Microsoft — можете подивитись активність в репозиторії з прикладами IaC коду для розгортання:
github.com/...structure-setup-terraform