Как создать своего первого агента в Copilot Studio
- Sarov+

- Oct 30
- 4 min read
Когда мы начали работу над задачей клиента по созданию собственного агента в Copilot Studio, быстро стало ясно, что официальная документация Microsoft сильно отстала от реальности. Большинство материалов описывают старую систему чат-ботов, а не новую архитектуру Copilot’ов. Даже современные инструменты вроде ChatGPT или Perplexity часто дают советы, которые подходят для чат-ботов, но не для настоящих агентов.
Поэтому лучшим способом разобраться стало — собрать своего агента с нуля. Так шаг за шагом мы разобрали весь процесс: от базовой конфигурации до интеграции с CRM и публикации в Teams.
А узнать больше про Copilot Studio можно в нашем видео:
Задача для клиента
Клиенту нужно было создать простого агента, который понимал бы пользовательский запрос, проверял наличие контакта в системе и, при необходимости, создавал звонок и возможность (opportunity).
Мы решили построить прототип, где агент умеет:
искать контакт в Dataverse,
создавать новый контакт, если он не найден,
регистрировать звонок,
а позднее — формировать opportunity.
Создание агента
Первый шаг — зайти в Copilot Studio и нажать New Agent. Создать агента можно двумя способами:
Вручную.
Через функцию Describe, где достаточно описать, что вы хотите, например:
“You will be assisting me in creating Contact, Phone Call, and Opportunity.”
Copilot Studio автоматически сгенерирует базовую структуру будущего агента. После этого достаточно назвать проект — например, My First Agent — и нажать Create.
Модель
Важно понимать, что каждая модель в Copilot Studio имеет ограничения по токенам. Например:
GPT-4o — около 100 000 токенов,
GPT-4.1 — до миллиона токенов,
GPT-5 Reasoning — самая точная в следовании инструкциям.
Для базовых агентов достаточно 4.0 или 4.1. Если при работе появляются ошибки вроде System Error — возможно, модель достигла лимита токенов.
Секции
Copilot Studio делится на несколько секций, из которых ключевые:
Knowledge — отвечает за поиск информации;
Tools — подключает внешние системы (например, Dataverse, Power Automate и т.д.).
В нашем случае мы начали именно с Tools, чтобы агент мог искать контакты через Dataverse Connector.
Инструмент List Rows позволяет реализовать поиск по имени, фамилии или email.
Environment
Dataverse Connector можно настроить для любого environment. Для начала достаточно выбрать текущий environment и таблицу Contacts. Важно не перепутать с «Contact» — используется именно множественная форма Contacts. После сохранения у нас появляется первый рабочий коннектор для поиска контактов.
Добавление инструкций
Каждый инструмент (tool) должен иметь осмысленное название и инструкцию. Например:
Название: Find Contact in Dataverse
Инструкция: Search for contact using First and Last name. Try search by email.
Корректное именование критически важно — агент ориентируется на текст. Если инструмент будет называться неинтуитивно, он может путаться и запускать неправильную последовательность действий.
Ограничение по полям
При работе с Dataverse важно ограничить количество возвращаемых данных. Мы используем параметр Select Columns, чтобы выбрать только нужные поля, например:
fullname, emailaddress1
Если этого не сделать, агент может вернуть сотни тысяч значений, превысив лимит токенов и вызвав ошибку.
Ошибка с Row Count
Параметр Row Count по умолчанию ограничен 2000 строками. Это значит, что при большом объеме данных агент может не найти нужный контакт, если он не входит в первую тысячу записей. Для оптимизации можно уменьшить количество возвращаемых строк, но тогда увеличивается риск пропустить нужный результат. Для сложных сценариев лучше использовать Filter Rows, где можно задать более точные условия поиска.
Создание ненайденного контакта
Если контакт не найден, логично создать его. Для этого добавляем новый инструмент Add and Configure с действием Create a new contact. В инструкции задаем:
Create a new contact with First Name, Last Name, and Email address.
Агент заполнит поля автоматически, используя AI. Дополнительно можно настроить генерацию email-адреса по домену компании (например, @bbc.com).
Переменные
Copilot Studio поддерживает использование переменных. Например, после выполнения шага “Find Contact” можно сохранить Contact ID и использовать его при создании звонка или opportunity. Для этого переменные можно передавать между шагами или даже между агентами через параметры.
Создание контакта
После успешного вызова Add New Contact агент должен вернуть Contact ID — это уникальный идентификатор записи. Далее можно настроить форматирование ответа, чтобы получить, например, ссылку на созданный контакт в CRM.
MCP
Одной из новинок в экосистеме Microsoft стал MCP (Model Context Protocol) — новый формат взаимодействия между агентом и системой. Это альтернатива REST API: агент формирует текстовый запрос, MCP-сервер отвечает по сути задачи.
Преимущество MCP в том, что не нужно прописывать отдельные инструменты — агент просто «общается» с сервером.
Однако на практике пока MCP работает нестабильно: выполнение задач часто непоследовательно, и надежность оставляет желать лучшего.
Тулы Dataverse по-прежнему остаются более предсказуемым вариантом.
Создание других инструментов
Помимо стандартных Dataverse Tools, можно добавлять:
Custom Connector,
Agent Flow,
Prompt,
а также Subagent (эта функция периодически исчезает и возвращается).
Такие инструменты позволяют создавать более сложную логику, связывая разные агенты или автоматизации в единую цепочку.
Создание топика
Топики (Topics) — это наследие старой системы чат-ботов, но они до сих пор полезны для управления диалогом. Например, можно создать топик:
Create a Topic to Create a New Opportunity.
Он задает пользователю вопрос “Do you want to create a new opportunity?” Если ответ “Yes” — запускается инструмент, создающий новую запись Opportunity.
Все данные из предыдущего общения можно передавать в топик через переменные (например, текст последнего диалога пользователя).
Публикация
Когда агент готов, его можно опубликовать. Доступные каналы публикации:
Copilot App — работает быстрее и удобнее браузера,
Microsoft Teams,
веб-сайт,
внешние мессенджеры (WhatsApp, Telegram).
Важно:
Для создателей агентов требуется лицензия Copilot.
Для пользователей, которые будут обращаться к агенту в Teams, лицензия не обязательна.
Заключение
Создание собственного агента в Copilot Studio — несложный, но многоэтапный процесс. Главное — понимать структуру: модель, инструменты, переменные, логику поиска и ограничения. Даже при небольших ошибках, вроде неправильно настроенного Row Count или некорректного environment, агент может не работать.
Однако, когда все элементы собраны правильно, Copilot Studio открывает огромные возможности — от простых автоматизаций до сложных AI-сценариев с интеграцией в CRM и внешние системы.



Comments