Обзор триггеров-событий

Note

Функции, описанные в этой статье, питаются стандартным жгутом, который использует опции выставления счетов, описанные в разделе «Лицензирование для агентов, работающих на стандартном жгуте». Узнайте, как получить доступ к стандартным функциям в стандартных агентах и потоках агентов доступа.

Пользовательские агенты можно настроить для выполнения действий или вызова тем в ответ на что-либо происходящее с помощью триггеров событий. В отличие от триггеров тем, которые требуют ввода данных от пользователя, триггеры событий позволяют агенту действовать автономно в ответ на определенное событие.

Important

Включение триггеров событий может повлиять на расчет счетов. Дополнительные сведения см. в таблице Тарифы на кредиты Copilot.

Note

Эта функция доступна только для агентов с включенной генеративной оркестрацией.

Как работают триггеры событий

Для работы триггера-события необходимо выбранное событие, которое генерирует полезные данные триггера и отправляет их агенту через соединитель. Полезные данные содержат сведения о событии, включая переменные для определенных типов данных. Когда агент получает полезные данные, он выполняет указания, предоставленные автором агента в инструкциях агента и инструкциях, отправленных через полезные данные триггера.

Агенты действуют только в соответствии с авторским замыслом и инструкциями. Например, можно добавить триггер при добавлении нового члена команды и назначить в качестве ответа действие отправить новому сотруднику приветственное сообщение с ресурсами для адаптации.

Триггеры событий активируются на основе событий, внешних по отношению к агенту. Они отличаются от триггеров тем, которые используются для активации тем или действий на основе фраз-триггеров, введенных пользователями.

В этой статье объясняется, как работают триггеры событий, их ограничения и стратегии устранения неполадок. Дополнительные сведения о добавлении триггера события см. в разделе Добавление триггера события.

Другие примеры триггеров событий:

  • При создании элемента в SharePoint
  • При создании файла в OneDrive
  • При завершении задачи в Планировщике
  • Заданное прошедшее время (триггер повторения)

Important

Доступные триггеры зависят от политик данных вашей организации, настроенных в Power Automate администратором.

Выставление счетов и использование для триггеров событий

Активность триггера-события учитывается в единицах потребления для использования и выставления счетов. Сообщение определяется как любой запрос или сообщение, отправленное агенту, которое запускает действие или ответ от агента. Это относится и к полезным данным, отправляемым агентам из триггеров событий. Например, триггер повторения, настроенный на активацию каждые 10 минут, отправляет полезные данные триггера в виде сообщения агенту каждые 10 минут.

Для получения дополнительной информации см. раздел Тарифы и управление.

Рабочий процесс триггера

Триггер — это часть рабочего процесса, состоящая из нескольких частей:

  1. Триггер события регистрирует, что произошло определенное событие.
  2. Триггер отправляет полезные данные, содержащие сведения о событии и инструкции.
  3. В агенте есть инструкции по выбору одного или нескольких действий или тем в зависимости от полезной нагрузки.

Поиск триггера, соответствующего вашему событию

В Copilot Studio имеется библиотека триггеров для различных событий, которые могут происходить в службах Microsoft и партнерских службах. Конфигурация триггера определяет параметры события, которое инициирует триггер. Она также определяет содержимое полезных данных триггера.

Снимок экрана библиотеки триггеров событий.

Большинство триггеров позволяют указать параметры о событии, которое активирует триггер. Например, в триггере При добавлении, изменении или удалении строки для Dataverse можно выбрать, изменения в какой таблице активируют триггер.

Определение полезной нагрузки триггера

Полезные данные триггера — это JSON или обычное текстовое сообщение, которое содержит сведения о событии и отправляется агенту в виде сообщения. При добавлении триггера можно сохранить содержимое полезной нагрузки по умолчанию для этого триггера или добавить собственные инструкции. Позже вы сможете изменить содержимое полезных данных, включая добавление переменных и строковых операторов, в Power Automate.

Например, сообщение по умолчанию в триггере При добавлении, изменении или удалении строкиИспользовать содержимое из Body. Когда агент получает полезные данные, он получает содержимое из строки и инструкции по использованию этого содержимого.

Снимок экрана полей для определения триггера.

Вы можете добавить инструкции для отправки агенту внутри полезных данных, которые определяют, как агент должен действовать при активации триггером. Если у вас несколько триггеров, у каждого триггера могут быть конкретные и подробные инструкции. В результате вы можете избежать написания длинных и сложных инструкций в общих инструкциях агента или путаницы у агента о том, какие инструкции применимы к какому триггеру.

Например, в полезных данных триггера При добавлении, изменении или удалении строки можно добавить Отправить сводку об изменениях в чат. Когда агент получает полезные данные, он суммирует изменения для пользователя в чате агента.

Однако избегайте написания инструкций полезной нагрузки, которые противоречат общим инструкциям агента. Конфликты в инструкциях могут привести к ошибке или неожиданным результатам. Обязательно протестируйте все изменения, связанные с триггерами событий.

После создания триггера вы можете добавлять или изменять переменные или строковые операторы в полезных данных триггера, а также изменять существующие инструкции полезных данных с помощью Power Automate.

Инструкции агента и инструкции полезной нагрузки

Инструкции по полезным данным определяют, как реагировать на одно событие. Вы также можете использовать инструкции агента, чтобы направлять свой агент в том, как обрабатывать информацию от триггера и как действовать, когда он получает полезную нагрузку триггера, а также для определения общего поведения агента. Например, для агента, который проверяет наличие повторяющихся имен учетных записей в новых строках таблицы Dataverse, инструкции могут быть следующими: Когда добавляется новая строка, проверьте, является ли она дубликатом учетной записи. Если обнаружен дубликат, создайте задачу To Do для изучения и включите сведения об изменениях и найденных дубликатах.

Снимок экрана поля инструкций для агента.

Однако инструкции для агента могут не во всех ситуациях работать оптимально. Если у вашего агента есть несколько триггеров или несколько сложных целей, вы должны вместо них использовать инструкции в полезной нагрузке триггера.

Продолжая прошлый пример, вы можете добавить инструкцию в полезные данные триггера для поиска повторяющихся имен учетных записей в той же таблице Dataverse. Когда агент получает полезные данные, ему предлагается выполнить поиск повторяющихся имен учетных записей. В общих инструкциях агента говорится: Если есть дубликат, создайте задачу для изучения и включите в нее подробную информацию об изменениях и дубликатах.

Снимок экрана поля для добавления инструкций полезных данных триггера при создании триггера.

Создание инструкций для агентов требует практики. Перейдите в руководство по написанию текстов для получения дополнительных советов и всегда проверяйте все изменения, которые вы вносите в свой агент.

Вызов действия или темы

Когда агент получает полезные данные триггера, инструкции, которые вы ему предоставляете, определяют действие или тему, которую он вызывает в ответ, на основе имеющейся у него информации.

Ваш агент не создает новое действие или тему на месте. Как автор агента, вам необходимо определить действия или темы, из которых он может выбирать. Чтобы узнать, как агент определяет, какое действие или тему вызывать, перейдите в раздел Как работает генеративная оркестрация?

Если ваш агент реагирует не так, как ожидалось, вы можете использовать карту действий, чтобы проверить, не пропущена ли в нем какая-либо ключевая входная информация.

Снимок экрана карты действий, показывающей действие с отсутствующими входными данными.

Ниже перечислены некоторые улучшения, которые можно внести в инструкции:

  • Добавление более подробных инструкций в полезную нагрузку триггера или инструкции агента. Ваш агент может нуждаться в дополнительных указаниях, например, какую информацию использовать в определенном поле ввода для действия.
  • Включение инструкций в полезную нагрузку триггера.
  • Давать агенту инструкцию вызвать определенное действие или тему.
  • Проверка на наличие противоречащих друг другу инструкций между полезными данными триггера и инструкциями агента.
  • Добавление к описаниям действий, чтобы агент имел больше информации для определения того, когда его вызывать.
  • Добавление описаний в поля ввода действий, чтобы помочь вашему агенту правильно заполнить параметры. Если входные данные действия каждый раз одинаковые, вы можете задать значение самостоятельно.
  • Вызывайте менее 15 действий или тем подряд. Сложные агенты, выполняющие множество действий или тем в виде одной последовательности, могут испытывать трудности с их надежным выполнением.

Если ваш агент по-прежнему испытывает трудности с вызовом ожидаемого действия, рассмотрите возможность добавления потока Power Automate, который реализует вашу цель, в качестве действия для агента.

Публикация агентов с триггерами событий

До того, как вы опубликуете агент с новым триггером события, агент не реагирует автоматически на этот триггер. Убедитесь, что вы тщательно протестировали агент перед публикацией, потому что после того, как вы опубликуете агент с новым триггером, ваш агент реагирует автоматически каждый раз, когда его триггеры активируются. Вы можете увидеть пошаговую запись триггеров и реакций вашего агента на странице Действия.

Сведения об активации триггеров во время тестирования см. в разделе Тестирование триггера.

Триггеры-события могут использовать для проверки подлинности только учетные данные создателя агента (то есть учетные данные, которые вы использовали для авторизации подключений) для ваших триггеров. Это может позволить пользователям агента использовать агент для доступа к данным и системам с помощью той же авторизации. Для получения дополнительной информации перейдите к разделу Устранение неполадок и ограничения.

Проверка подлинности действий после публикации

Если в агенте отсутствует аутентификация для выполнения действия или настроен запрос проверки подлинности пользователя, он отправляет пользователю сообщение с запросом учетных данных. Если поток агента прерван из-за того, что он не может получить информацию или действие не удалось, он не сможет продолжить сеанс. Если вы хотите, чтобы агент выполнялся автономно, каждое действие должно быть настроено с рабочей проверкой подлинности создателя, не требующей ввода данных пользователем. Вы также можете указать агенту не запрашивать учетные данные у пользователей.

Поскольку триггеры используют аутентификацию создателя, учитывайте, к каким данным потенциальные пользователи могут получить доступ через опубликованного агента с триггерами. Дополнительные сведения см. в разделе Защита данных с помощью триггеров.

Использование действий и источников знаний

Агенты, созданные в Copilot Studio, могут подключаться к Teams через каналы. При использовании этого подключения в Teams могут возникать ситуации, когда в зависимости от используемого триггера и инструментов агента некоторые переменные, такие как Activity.Text, могут быть пустыми. Пустые значения возникают потому, что некоторые инструменты по своей природе являются активностями. Activity.Text — это переменная, которую можно использовать для журналирования действий вашего агента. Однако Activity.Text может не содержать предыдущих сообщений. В этом случае следует использовать переменную LastMessage.Text.

Когда агент обращается к источнику знаний из-за недостатка контекстных подсказок, результирующая переменная Activity.Text для этого шага остается пустой. Это пустое значение возникает потому, что агент не формирует ответ на естественном языке, когда решение делегируется источнику знаний. Если вы ожидаете, что переменная Activity.Text будет содержать предыдущее сообщение пользователя, как это обычно происходит, используйте вместо нее переменную LastMessage.Text. Переменная Activity.Text захватывает любую активность, переданную агенту.

Взаимодействие с триггером OnPlanComplete

Триггер OnPlanComplete предназначен для выполнения только после того, как инструмент завершит свою работу. Когда используется источник знаний, выход источника знаний записывается непосредственно в активность. Поскольку переменная Activity.Text изначально была пустой, активность в итоге заполняется деталями использования инструмента, а не разговорным сообщением.

Это поведение отличается от сценариев, когда другие триггеры, например, основанные на намерениях или на естественном языке, срабатывают раньше. В таких случаях активность обычно уже содержит сконструированное сообщение, поэтому вывод инструмента не заменяет и не определяет переменную Activity.Text.

Различие в поведении Teams и Copilot Studio

Teams не абстрагирует и не нормализует объекты активности так, как Copilot Studio. В результате:

  • В Copilot Studio системные активности могут трансформироваться или обрабатываться таким образом, чтобы скрыть эту внутреннюю деталь.
  • В Teams объекты активности выводятся более явно, что делает это различие более заметным.

Это различие приводит к различиям в наблюдаемом поведении, даже если логика агента идентична.

Устранение неполадок и ограничения

Ограничения квот

Если триггеры активируются слишком часто, агент может в конечном итоге использовать больше ресурсов, чем ожидалось. В этом случае агент может превысить ограничения квот нагрузки службы, и служба может быть ограничена.

Администраторы могут отслеживать использование ресурсов через Power Platform. Они также могут блокировать использование триггеров событий в среде.

Чтобы избежать превышения квот, выполните следующие действия:

  • Будьте осторожны при добавлении очень частых триггеров или триггеров, которые повторяются бесконечно. Например, триггер повторения активируется по прошествии заданного времени. Чем меньше времени между активациями, тем больше ресурсов использует триггер.
  • Отслеживайте количество триггеров, активных в среде.

Защита данных для агентов с триггерами

В настоящее время триггеры событий могут использовать для аутентификации только учетные данные автора агента. Кроме того, чтобы агент работал автономно, все триггеры и действия, требующие аутентификации, должны использовать учетные данные создателя.

Если вы публикуете агента с аутентифицированными триггерами-событиями, пользователи могут получить доступ к информации или инициировать выполнение действий агентом с использованием учетных данных автора. Если создатели настраивают агент с триггером-событием с аутентификацией, им напоминают об этом ограничении перед публикацией агента.

Снимок экрана с предупреждением об учетных данных автора перед публикацией агента с триггерами.

Полезная нагрузка триггера может потенциально содержать конфиденциальную информацию, которую агент может передавать в другие места с помощью действий. Например, если вы создали агента, который использует информацию из входящих писем для заполнения новых строк в таблицах Dataverse.

Администраторы могут запретить пользователям Copilot Studio использовать триггеры-события в своих агентах. Для получения дополнительной информации см. раздел Настройка политик данных для агентов.

Рекомендации по защите данных

Чтобы предотвратить доступ пользователей к конфиденциальным данным:

  • Оцените, используются ли и каким образом данные и системы, требующие аутентификации, агентами с триггерами-событиями.
  • Определите, какую информацию триггеры могут включать в свои полезные данные, и какую информацию действия выводят на основе этих входных полезных данных, путем тестирования.
  • Сузьте область того, что активирует триггер, с помощью параметров триггера, и предоставьте агенту инструкции по обработке полезных данных.

Должно быть включено совместное использование облачных потоков с учетом решений

Разработчики могут добавлять триггеры событий к агентам только в средах, где включена совместная публикация облачных потоков с учетом решений.

Если вы не можете добавить триггеры, а политики данных вашей организации допускают триггеры, возможно, этот параметр в вашей среде отключен. Обратитесь к администратору среды, чтобы включить облачное совместное использование с учетом решений.

Устранение проблем с соединителем

Агенты могут не иметь возможности успешно запускать все соединители. Если агент неоднократно не может вызвать соединитель, рекомендуется создать действие потока Power Automate, которое использует проблемный соединитель, для выполнения необходимого действия.