Как начать пользоваться Microsoft Agent Framework: разработка AI-агентов на Python и .NET
Microsoft Agent Framework 1.0 объединил AutoGen и Semantic Kernel в единый open-source инструмент для создания автономных AI-агентов. Разбираемся с установкой, первым агентом и мультиагентными сценариями.
Что это и для кого
Microsoft Agent Framework 1.0 - это открытый фреймворк для разработки AI-агентов, выпущенный 3 апреля 2026 года как production-ready решение. Microsoft объединила два своих самых популярных AI-проекта в один: AutoGen, который собрал более 45 000 звёзд на GitHub и стал стандартом де-факто для мультиагентных систем, и Semantic Kernel с более чем 30 000 звёзд - зрелую библиотеку для встраивания AI в корпоративные приложения на .NET. Результат объединения - единый, продуманный инструмент с одним API, который работает одинаково на Python и .NET.
Главная идея фреймворка состоит в том, чтобы разработчики тратили время на логику своих агентов, а не на решение инфраструктурных вопросов: как подключить провайдера модели, как организовать память, как наладить взаимодействие между агентами, как отслеживать работу системы в production. Все эти задачи фреймворк берёт на себя.
Фреймворк ориентирован прежде всего на разработчиков. Это не no-code конструктор и не визуальный редактор - здесь нужно писать код. Но порог входа значительно ниже, чем при написании агентной логики с нуля, а шаблоны и документация позволяют запустить первого агента буквально за несколько минут после установки.
Кому подойдёт этот фреймворк: Python-разработчикам, которые хотят быстро создать прототип AI-агента для автоматизации задач; .NET-разработчикам, встраивающим агентные возможности в корпоративные приложения на C# или F#; командам, которым нужна наблюдаемость и контроль над агентами в production-среде; исследователям, экспериментирующим с мультиагентными системами; всем, кто хочет запускать агентов с открытыми моделями через Ollama без зависимости от облачных провайдеров и без затрат на API.
Фреймворк поддерживает шесть провайдеров языковых моделей из коробки: Azure OpenAI для корпоративных пользователей, OpenAI с доступом к GPT-серии моделей, Anthropic Claude для задач, требующих особой аккуратности и безопасности, Amazon Bedrock как gateway к разным провайдерам в AWS-экосистеме, Google Gemini с его мультимодальными возможностями, и Ollama для полностью локального запуска открытых моделей без отправки данных в интернет. Возможность менять провайдера одной строкой конфигурации - огромное удобство при разработке и миграции.
Как зарегистрироваться / установить
Фреймворк полностью бесплатный и распространяется под лицензией MIT. Никакой регистрации, аккаунтов и подписок не требуется - достаточно установить пакет через стандартный менеджер пакетов. Исходный код открыт на GitHub в репозитории microsoft/agent-framework. Платить нужно только за использование API языковых моделей, если вы не работаете с Ollama локально.
Установка для Python: Требуется Python версии 3.10 или новее. Проверьте текущую версию:
python --versionЕсли Python устарел, скачайте актуальную версию с официального сайта python.org или используйте менеджер версий pyenv. Рекомендуется также создать виртуальное окружение, чтобы не засорять системный Python:
python -m venv agents-env
source agents-env/bin/activate # macOS/Linux
agents-env\Scripts\activate # WindowsУстановите фреймворк одной командой:
pip install microsoft-agents-aiКоманда установит фреймворк вместе со всеми зависимостями. Для дополнительных провайдеров моделей могут понадобиться отдельные пакеты - например, pip install microsoft-agents-ai[ollama] для поддержки Ollama или pip install microsoft-agents-ai[azure] для Azure OpenAI.
Установка для .NET: Требуется .NET 8 SDK или новее. Проверьте установленную версию командой dotnet --version. Добавьте пакет в существующий проект:
dotnet add package Microsoft.Agents.AIДля дополнительных провайдеров добавьте соответствующие пакеты: Microsoft.Agents.AI.AzureOpenAI, Microsoft.Agents.AI.Anthropic и так далее. Все пакеты публикуются синхронно с основным релизом.
Настройка провайдера модели: Самый быстрый способ начать без ключей API - Ollama. Скачайте Ollama с сайта ollama.com (установщик для macOS, Windows и Linux). После установки Ollama запускается как фоновый сервис. Скачайте любую поддерживаемую модель:
ollama pull llama3.2Если вы хотите использовать OpenAI, Anthropic Claude или другие облачные сервисы, получите API-ключ на соответствующем сайте и добавьте его в переменные окружения или файл .env в вашем проекте. Для OpenAI: OPENAI_API_KEY='ваш_ключ'. Для Anthropic: ANTHROPIC_API_KEY='ваш_ключ'. Фреймворк автоматически считывает ключи из стандартных переменных окружения.
Первый запуск - что попробовать
Начнём с самого простого - одиночного агента с базовыми возможностями. Создайте файл agent_hello.py и добавьте следующий код:
from microsoft_agents import Agent, OllamaModel
# Создаём модель через локальный Ollama
model = OllamaModel(model='llama3.2')
# Создаём агента с описанием роли
agent = Agent(
name='assistant',
model=model,
system_message='Ты опытный программист. Объясняй концепции чётко и кратко, приводи рабочие примеры кода.'
)
# Простой запрос
response = agent.run('Что такое AI-агент и чем он отличается от обычного чатбота?')
print(response.content)Запустите скрипт командой python agent_hello.py. Агент обратится к локальной модели через Ollama и вернёт ответ. Первый запрос может занять несколько секунд, пока модель загружается в память.
Следующий шаг - агент с инструментами (tool use). Это ключевая отличительная черта агентного подхода: агент не просто генерирует текст, а может вызывать функции вашего кода и использовать результаты для следующих шагов рассуждения:
from microsoft_agents import Agent, OllamaModel, tool
import datetime
import subprocess
@tool
def get_current_time() -> str:
'''Возвращает текущую дату и время в формате ISO'''
return datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
@tool
def run_python_code(code: str) -> str:
'''Выполняет Python код и возвращает stdout или сообщение об ошибке'''
try:
result = subprocess.run(
['python3', '-c', code],
capture_output=True, text=True, timeout=10
)
return result.stdout or result.stderr
except Exception as e:
return str(e)
model = OllamaModel(model='llama3.2')
agent = Agent(
name='coder',
model=model,
tools=[get_current_time, run_python_code],
system_message='Ты программист с доступом к инструментам. Используй run_python_code для проверки своих решений.'
)
response = agent.run('Напиши и проверь функцию для вычисления чисел Фибоначчи')
print(response.content)Мультиагентный сценарий с режимом Sequential (последовательная обработка) особенно полезен для построения пайплайнов, где каждый агент специализируется на своей части задачи:
from microsoft_agents import Agent, OllamaModel, Sequential
model = OllamaModel(model='llama3.2')
# Агент-архитектор планирует решение
architect = Agent(
name='architect',
model=model,
system_message='Ты архитектор ПО. Получаешь требования и создаёшь детальный план реализации.'
)
# Агент-программист пишет код по плану
developer = Agent(
name='developer',
model=model,
system_message='Ты опытный программист. Получаешь план архитектора и пишешь чистый, рабочий код.'
)
# Агент-ревьюер проверяет и улучшает код
reviewer = Agent(
name='reviewer',
model=model,
system_message='Ты senior-разработчик. Проверяешь код, указываешь на проблемы и предлагаешь улучшения.'
)
pipeline = Sequential([architect, developer, reviewer])
result = pipeline.run('Создай REST API endpoint для регистрации пользователей с валидацией')
print(result.content)Режим Parallel позволяет нескольким агентам работать параллельно над разными аспектами одной задачи - например, одновременный анализ безопасности, производительности и читаемости кода. Режим Group Chat имитирует дискуссию, где агенты обмениваются мнениями, пока не достигают консенсуса - полезно для задач, требующих рассмотрения с разных точек зрения.
Ключевые фишки
Три режима оркестрации агентов: Sequential - агенты выстраиваются в цепочку, каждый получает результат предыдущего и дополняет его. Parallel - несколько агентов работают одновременно над разными частями задачи, затем результаты объединяются. Group Chat - агенты общаются между собой в виде дискуссии, управляемой отдельным агентом-модератором, который решает, кому дать слово. Каждый режим имеет свою область применения, и их можно комбинировать в сложных системах.
A2A протокол (Agent-to-Agent) и экосистема из 150+ партнёров: Microsoft разработала открытый протокол для взаимодействия агентов разных систем. К протоколу присоединились более 150 компаний-партнёров, включая крупных игроков рынка. Это означает, что агент, написанный на Microsoft Agent Framework, может напрямую взаимодействовать с агентами других систем, поддерживающих A2A. Создаётся настоящая экосистема взаимодействующих AI-агентов, не привязанных к одному вендору.
MCP (Model Context Protocol) от Anthropic: Фреймворк поддерживает открытый стандарт MCP, который предоставляет агентам доступ к тысячам готовых инструментов: работа с файловой системой, базами данных, веб-браузером, GitHub, Slack, Notion и многим другим. Подключение MCP-инструментов требует минимума кода, а каталог доступных инструментов постоянно растёт. Это значительно снижает объём работы при создании агентов для реальных задач.
Двухуровневая память: Краткосрочная память (session memory) хранит контекст текущей сессии - агент помнит всё, что происходило в рамках одного диалога или задачи. Долгосрочная память (long-term memory) позволяет агенту запоминать информацию между сессиями: предпочтения пользователя, результаты прошлых исследований, выученные факты. Для хранения поддерживаются векторные базы данных Qdrant, Chroma, Redis и Azure AI Search, каждая с разными характеристиками по производительности и стоимости.
Human-in-the-Loop (человек в контуре): Агент может приостановить выполнение задачи и запросить подтверждение или дополнительные инструкции у человека перед выполнением критически важных или необратимых действий. Например, перед отправкой письма, удалением данных или финансовой транзакцией. Это ключевая функция для безопасного развёртывания агентов в production.
OpenTelemetry и наблюдаемость: Встроенная интеграция с OpenTelemetry позволяет собирать детальные метрики работы агентов: какие инструменты вызывались, сколько токенов было потрачено на каждом шаге, где возникли задержки, какие решения принял агент. Трассировки можно отправлять в Grafana, Jaeger, Datadog или любой другой совместимый сборщик. Без этого отладка мультиагентных систем в production практически невозможна.
Единый API для Python и .NET: Команда Microsoft обеспечила идентичную форму API в обоих языках. Концепции Agent, Sequential, tool, memory, работающие в Python, имеют прямые аналоги в .NET. Это облегчает работу в смешанных командах и позволяет переносить идеи между проектами на разных языках без переосмысления архитектуры.
Цены и ограничения
Сам фреймворк абсолютно бесплатный. Лицензия MIT гарантирует, что это не изменится - можно использовать в коммерческих продуктах, модифицировать, создавать производные работы без каких-либо отчислений. Исходный код открыт на GitHub.
Расходы возникают только при использовании платных языковых моделей. При работе с Ollama и открытыми моделями вроде Llama или Mistral - расходов нет вообще. При использовании OpenAI API стоимость зависит от выбранной модели и объёма запросов - на момент написания провайдеры активно меняют тарифы в сторону снижения, поэтому актуальные цены лучше смотреть на сайтах openai.com, anthropic.com, ai.google.dev. Для Azure OpenAI стоимость определяется тарифами Azure и зависит от региона и объёма.
Технические ограничения: Требуется Python 3.10+ или .NET 8+. Это свежие, но уже устоявшиеся версии. В корпоративных средах с консервативными требованиями к версиям ПО может потребоваться обновление. Для долгосрочной памяти нужно дополнительно развернуть векторное хранилище - Qdrant, Chroma или другое поддерживаемое решение. Это добавляет операционную сложность и возможные расходы на инфраструктуру.
Фреймворк выпущен в апреле 2026 года, и хотя статус production-ready подразумевает стабильность API, экосистема ещё молодая. Сообщество меньше, чем у более зрелых инструментов, документация продолжает расширяться. Некоторые граничные сценарии могут работать не так, как ожидается, и придётся обращаться к issues на GitHub.
Rate limits и квоты полностью зависят от выбранного провайдера модели. Фреймворк передаёт запросы как есть, не добавляя собственных ограничений. Если ваша система генерирует много параллельных запросов в режиме Parallel, убедитесь, что ваш тарифный план провайдера позволяет такую нагрузку.
Нужен ли VPN из России
Сам фреймворк доступен без VPN. Установка через pip (Python Package Index) и NuGet (.NET) работает из России без ограничений. GitHub, где хранится исходный код и документация - также доступен без VPN на момент написания.
Нужен ли VPN зависит исключительно от того, какой провайдер языковых моделей вы используете:
Без VPN (работает из России на момент написания): Ollama с локальными моделями - весь трафик внутри вашего компьютера, никаких внешних запросов при работе. Скачивание моделей с huggingface.co и ollama.com доступно. Amazon Bedrock - доступен через AWS API (требует аккаунт AWS). Azure OpenAI - в целом доступен, поскольку Azure работает в России, но конкретные конечные точки могут отличаться.
VPN рекомендуется или необходим: OpenAI API - сервис openai.com недоступен для российских IP-адресов, API-запросы блокируются. Anthropic Claude API - аналогично, API недоступен без проксирования через другой регион. Google Gemini API - ситуация может меняться, лучше проверить актуальное состояние.
Практический совет для разработки: Начните с Ollama. Это бесплатно, работает без ограничений из России, не требует API-ключей, и позволяет полностью освоить фреймворк. Когда перейдёте к тестированию с облачными моделями для сравнения качества, используйте VPN или перенаправляйте API-запросы через сервер за пределами России. Поскольку фреймворк не делает собственных сетевых запросов (всё идёт через выбранного провайдера), достаточно настроить прокси один раз на уровне переменных окружения.
Этот материал подготовлен командой AI-агентов AravanaAI и проверен главным редактором.
Хотите получать подобные материалы раньше?
Aravana Intelligence — авторская аналитика и закрытый круг для тех, кто думает на шаг вперёд.
Узнать про IntelligenceНе пропускайте важное
Еженедельный дайджест Aravana — ключевые события в AI, робототехнике и longevity.
Как запустить Qwen 3.6 27B на своём компьютере: лучшая открытая модель для кода
Qwen 3.6 27B от Alibaba - лучшая open-source модель для программирования по состоянию на май 2026 года. Показывает 77.2% на SWE-bench, работает на MacBook с 64 ГБ RAM и полностью бесплатна. Объясняем как запустить.
Как начать пользоваться Grok Build: агент для программирования от xAI
Grok Build -- терминальный AI-агент от xAI для разработчиков. Запускает параллельных агентов, пишет код, редактирует файлы и деплоит проекты прямо из командной строки.
Как начать пользоваться Recraft V4: AI-генератор изображений с дизайнерским вкусом
Recraft V4 -- единственный AI-генератор изображений с нативным SVG-выводом и профессиональным дизайнерским подходом. Отлично работает с текстом, брендовыми элементами и векторной графикой.