Рекомендации по проверке для агентов
Важно!
- Агенты для Microsoft 365 Copilot находятся в предварительной версии и работают только в Microsoft 365 Copilot.
- Агенты расширений сообщений в Microsoft 365 Copilot доступны в общедоступной предварительной версии для Microsoft Word и Microsoft PowerPoint.
- Поддержка клиентских приложений Excel и OneNote станет доступна в ближайшее время.
- Убедитесь, что Microsoft 365 Copilot доступны для вашей организации. Вы можете получить среду разработчика для Microsoft 365 Copilot двумя способами:
- Клиент песочницы Microsoft 365 с Microsoft 365 Copilot (доступна в ограниченной предварительной версии через членство в TAP).
- Корпоративная клиентская рабочая среда с Microsoft 365 Copilot лицензиями.
- Если вы хотите настроить пользовательский соединитель Graph для Microsoft 365 Copilot, обязательно соблюдайте рекомендации по созданию или обновлению соединителей Graph.
Этот раздел соответствует политике коммерческой платформы Майкрософт no 1140.9.
Приложения должны соответствовать ответственным проверкам ИИ.
Описание
Хорошее описание содержит четкую и краткую сводку функций агента. Это повышает осведомленность пользователей и позволяет Microsoft 365 Copilot эффективно обнаруживать и выполнять операции поиска.
Необходимо соблюдать следующие рекомендации для агентов:
Применимы рекомендации по проверке в Магазине Teams, связанные с описанием приложений Microsoft 365. Дополнительные сведения см. в разделе описания приложений.
Краткое описание агента, параметра, описания команды, семантического описания и идентификатора операции не должно включать:
- Инструктивные фразы, например "если пользователь говорит X", "игнорировать", "удалить", "сброс", "новые инструкции", "Ответ полужирным шрифтом" или "Ничего не печатать". [Необходимо исправить]
- URL-адреса, эмодзи или скрытые символы, такие как шестнадцатеричные, двоичные или нетрадиционные символы. [Необходимо исправить]
- Грамматические ошибки и ошибки препинания. [Необходимо исправить]
- Слишком подробный, цветочный или маркетинговый язык. [Хорошо для исправления]
- Превосходные утверждения, такие как "#1", "удивительный" или "лучший". [Хорошо для исправления]
Примечание.
- В случае декларативных агентов к полям и
conversation_starters
также применяются рекомендации по краткому описаниюinstructions
. - Для подключаемых модулей на основе API эти рекомендации применяются к
description_for_human
,description_for_model
,capabilities
,conversation_starters
(как заголовок, так и текст)states\reasoning\description
вfunctions
полях, если они указаны. [Необходимо исправить] - При использовании форматов файлов Swagger или OpenAPI соблюдайте эти рекомендации для содержимого, связанного
path
с ключами, иdescription
поля для API GET, POST, PUT или DELETE. [Необходимо исправить]
Подробное описание приложения должно четко указывать, что агент работает в Microsoft 365 Copilot. Например, используйте Contoso в Microsoft 365 Copilot для поиска и подведения итогов по задачам. [Необходимо исправить]
Свойство
semanticDescription
не является обязательным полем. Однако при добавленииsemanticDescription
в манифест приложения существующие проверки для кратких, параметров и описаний команд также применимы для семантических описаний.
Снимки экрана
Необходимо соблюдать следующие рекомендации для агентов:
- Применимы рекомендации по проверке в Магазине Teams, связанные со снимками экрана для приложений Microsoft 365. Дополнительные сведения см. в разделе Снимки экрана.
- Приложения с функциями агента должны иметь один снимок экрана, связанный с функциональностью Microsoft 365 Copilot. [Необходимо исправить]
Имя агента
Необходимо соблюдать следующие рекомендации для агентов:
- Применимы рекомендации по проверке магазина Teams, связанные с именем приложений Microsoft 365. Дополнительные сведения см. в разделе Имя приложения.
- Для декларативного агента убедитесь, что следующие параметры идентичны: [Должно быть исправлено]
-
name
в манифесте приложения -
name
в declarativeAgent1.json -
name_for_human
в файлах plugin.json
-
Составные речевые фрагменты
Агенты должны поддерживать три уникальных составных речевых фрагмента путем обработки трех или более параметров.
Запросы
Для примеров запросов и начальных строк необходимо соблюдать следующие рекомендации.
Примеры запросов
Свойство samplePrompts
предоставляет пользователям рекомендации по использованию различных агентов в Microsoft 365 Copilot.
Примеры запросов задаются с помощью samplePrompts
свойства в манифесте приложения. Эти запросы должны соответствовать следующим требованиям:
- Агент должен иметь не менее трех запросов и не более пяти запросов для каждой команды. [Необходимо исправить]
- Каждый запрос не должен превышать 128 символов. [Необходимо исправить]
- Две команды в одном агенте не должны иметь одинаковые запросы. [Необходимо исправить]
- Все примеры запросов должны быть функциональными и возвращать ответы. [Необходимо исправить]
- Запрос должен быть связан с командами. [Необходимо исправить]
Начальные запросы
Начальные запросы помогут пользователям начать использовать декларативные агенты. Для запуска запросов необходимо соблюдать следующие рекомендации:
- Декларативный агент должен иметь не менее трех запросов и не более шести запросов. [Необходимо исправить]
- Все начальные запросы должны быть функциональными и возвращать ответы. [Необходимо исправить]
Ответ адаптивной карточки
Ответы агента, предоставленные в виде адаптивной карточки, должны соответствовать следующим требованиям:
Ответ адаптивной карточки должен включать содержимое адаптивной карточки и предварительный просмотр карта сведения в рамках одного шаблона. [Необходимо исправить]
Помимо логотипа агента, заголовка, эскиза и заголовка информации, данные в адаптивной карточке должны представлять не менее двух фрагментов информации. Поля можно определить по наиболее часто используемым атрибутам, таким как измененные данные, автор, состояние и флаги. [Необходимо исправить]
Адаптивная карточка должна быть хорошо отформатирована для настольных, веб-клиентов и мобильных клиентов (iOS и Android). [Необходимо исправить]
Адаптивные карточки должны содержать URL-адрес в составе метаданных, что позволяет легко копировать карточки из одного концентратора в другой. [Необходимо исправить]
Совместимость
Агенты должны полностью реагировать и работать в последних версиях этих клиентов: [Должно быть исправлено]
- Microsoft Teams на рабочем столе и в Интернете
- copilot.microsoft.com в Интернете
- Microsoft 365 Copilot в Word
Убедитесь, что подключаемые модули Copilot работают в собраниях Teams
Необходимо реализовать следующее:
Адаптивные карточки не должны отображать горизонтальную прокрутку. Чтобы избежать горизонтальной прокрутки, не указывайте фиксированную ширину: [Должно быть исправлено]
Наборы столбцов
- Не определяйте
ColumnSets
с более чем тремя столбцами. - Не используйте явную ширину пикселей для нескольких столбцов в наборе.
- Убедитесь, что столбец не превышает одну четверть от ширины самого узкого карта, например в чате собрания или Microsoft 365 Copilot.
- Как правило, явная ширина не должна превышать 48 пикселей, хотя в некоторых сценариях могут быть исключения.
- Не определяйте
Изменение размера изображений
- При использовании изображения внутри
ColumnSet
с несколькими столбцами укажите размер столбца, содержащего изображение, а не само изображение. - Если изображение не в
ColumnSet
, рекомендуется задать для его размераauto
значение илиstretch
. - Если вы хотите определить явную ширину в пикселях, убедитесь, что она не превышает три четверти самой узкой карта ширины.
- Если вы хотите определить явный размер в пикселях, определите его для ширины или высоты. Если задать явный размер для любого параметра, пропорции изображения сохраняются.
- Рекомендуется задать ширину образа, хотя в некоторых сценариях могут быть разрешены исключения.
- При использовании изображения внутри
Дополнительные сведения о создании подключаемых модулей для собраний команд см. в разделе Включение расширения сообщений в качестве подключаемого модуля для Copilot для собраний.
Убедитесь, что агенты работают с Microsoft 365 — Word, Excel, PowerPoint, OneNote, Office и Outlook Copilots
Необходимо соблюдать следующие рекомендации для агентов:
При использовании приложения с поддержкой единого входа обновите Microsoft Entra регистрации приложения: [Необходимо исправить]
Microsoft Entra единого входа для расширения message работает так же, как в Teams или Outlook. Если вы включили единый вход для приложения, добавьте идентификатор клиентского приложения Office Copilot в Microsoft Entra регистрации приложения бота на портале Регистрация приложений клиента.
Войдите на портал Azure с помощью учетной записи клиента песочницы.
Откройте Регистрации приложений.
Выберите имя приложения, чтобы открыть его регистрацию.
В разделе Управление выберите Предоставить API.
В разделе Авторизованные клиентские приложения убедитесь, что указаны следующие значения идентификаторов клиента:
Клиентское приложение Microsoft 365 Идентификатор клиента Word, PowerPoint, Excel (интернет, настольный компьютер) 3068386c-7a16-4f6a-a64-043b6b232816 Классическое, мобильное приложение Teams 1fec8e78-bce4-4aaf-ab1b-5451cc387264 Веб-приложение Teams 5e3ce6c0-2b1f-4285-8d4b-75ee78787346 Microsoft 365 web 4765445b-32c6-49b0-83e6-1d93765276ca Microsoft 365 desktop 0ec893e0-5785-4de6-99da-4ed124e5296c Microsoft 365 mobile d3590ed6-52b3-4102-aeff-aad2292ab01c Классическое приложение Outlook d3590ed6-52b3-4102-aeff-aad2292ab01c Outlook Web bc59ab01-8403-45c6-8796-ac3ef710b3e3 Outlook Mobile 27922004-5251-4030-b22d-91ecd9a37ea4 Bing 9ea1ad79-fdb6-4f9a-8bc3-2b70f96e34c7 Примечание.
Дополнительные сведения о том, как работает единый вход для расширений сообщений, см. в статье Включение единого входа для приложения.
Убедитесь, что зарегистрированный бот подключен к Microsoft 365 и каналу Microsoft Teams: [Необходимо исправить]
- Войдите на портал Azure с помощью учетной записи клиента песочницы.
- Откройте Bot Services.
- Выберите имя бота, чтобы обновить его каналы.
- В разделе Параметры выберите Каналы.
- В разделе Доступные каналы выберите Microsoft 365 & Microsoft Teams, а затем нажмите кнопку Применить.
Настройка заголовков политики безопасности содержимого [необходимо исправить]
Если агент использует заголовки политики безопасности содержимого (CSP), убедитесь, что все следующие предки кадров включены в заголовки CSP:
Приложение Microsoft 365 frame-ancestors
разрешениеВсе узлы (новые) *.cloud.microsoft
Word fa000000125.resources.office.net PowerPoint fa000000129.resources.office.net Excel fa000000124.resources.office.net OneNote fa000000128.resources.office.net Microsoft 365 Copilot и Bing edgeservices.bing.com
,www.bing.com
,copilot.microsoft.com
Приложение Microsoft 365 *.microsoft365.com
,*.office.com
Outlook outlook.office.com
,outlook.office365.com
,outlook-sdf.office.com
,outlook-sdf.office365.com
Office.com Office.com/copilot
Office.com/chat
Microsoft365.com Microsoft365.com/copilot
Microsoft365.com/chat
M365.cloud.microsoft M365.cloud.microsoft/chat
M365.cloud.microsoft/copilot
Copilot.cloud.microsoft Copilot.cloud.microsoft
Обновление версии Teams JS до сборки 2.22.0 [должно быть исправлено]
Если вы используете Teams JS версии 2.22 или более ранней, обновите ее до версии 2.22 или более поздней.
Дополнительные сведения см. в разделе Репозиторий JS Teams @microsoft/teams-js — npm (npmjs.com)).
Технические требования
Чтобы агент проверялся, вызывался и работал без проблем, убедитесь, что он соответствует следующим критериям: [Должно быть исправлено]
Критерии | Выполнение |
---|---|
Версия манифеста |
Манифест приложения должен быть версии 1.13 или более поздней. [Необходимо исправить] Если вы используете декларативный агент, необходимо использовать схему манифеста общедоступной предварительной версии приложения для разработчиков. [Необходимо исправить] |
Время отклика | Время отклика не должно превышать девять секунд для 99 процентов, пять секунд для 75 процентов и две секунды для 50 процентов. [Необходимо исправить] |
Надежность | Приложения должны поддерживать доступность 99,9 %. Например, если Microsoft 365 Copilot вызывает агент 1000 раз, он должен предоставить значимый ответ 999 раз. [Необходимо исправить] |
Ноль регрессий | Если необходимо повторно отправить агент для проверки, существующие функции расширения сообщений, которые работали ранее, не должны прерываться. Это требование применимо только к приложениям независимых поставщиков программного обеспечения (ISV), а не к приложениям, созданным для вашей организации. [Необходимо исправить] |
Канал Microsoft 365 | Чтобы пользователи взаимодействовали с расширением сообщений из Outlook, необходимо добавить в бот канал Microsoft 365. Дополнительные сведения см. в статье Добавление канала Microsoft 365 для приложения. [Необходимо исправить] |
Единый вход (SSO) | Если применимо, обновите регистрацию приложения Microsoft Entra для единого входа. [Необходимо исправить] |
Политика безопасности содержимого (CSP) | Если применимо, измените заголовки CSP и X-Frame-Options в соответствии с настройкой заголовков политики безопасности содержимого. [Необходимо исправить] |
Раскрытие пользователем и подтверждение сценариев действий
Для сценариев действий агенты должны предоставить общий доступ к раскрытию информации о пользователях и получить подтверждение пользователя:
Данные, отображаемые в сторонней службе (через диалог), должны отражать подтверждение, предоставленное пользователем. [Необходимо исправить]
Подтверждение завершения действия должно быть предоставлено агенту в виде карта. [Необходимо исправить]
Действия, выполняемые пользователем, должны правильно отражаться в сторонней службе. [Необходимо исправить]
Запросы на изменение от пользователя до подтверждения действия должны быть учтены. [Необходимо исправить]
Строго последовательные задачи, такие как массовое удаление, не должны поддерживаться. [Хорошо для исправления]
Декларативный агент должен предоставлять запросы на подтверждение в соответствии с действиями, инициированными пользователем, используя четкий язык, который явно запрашивает разрешение пользователя. [Необходимо исправить]
Запрос на подтверждение можно задать с помощью
body
свойства объектаConfirmation
Function capabilities функции в манифесте. Дополнительные сведения см. в разделе Настройка текста подтверждения.Пример передачи Пример сбоя Для функции, которая выполняет поиск по билетам: "Вы хотите разрешить поиск в Contoso?" "Вы хотите разрешить поиск билетов?" Продолжить?" —> не указывает, что делает функция. Для функции, которая создает новый заказ "Продолжить создание нового заказа?" Поиск билетов" -> не ищет разрешения Для функции, которая создает новый билет: "Продолжить создание нового билета?" "Создает билеты" -> не запрашивает разрешение Для декларативных агентов любое действие с последствиями для внешней системы не должно иметь
isConsequential
флаг False. [Необходимо исправить]Дополнительные сведения см. в разделе Переопределение поведения запросов.
Тип операции Действия Ожидаемое значение для флага isConsequential
Создание Логический Верно Чтение Невостязаемые False или True Обновление Логический Верно Удалить Логический Верно Описание команды Последовательная функция? Ожидаемое значение для флага isConsequential
Возвращает список рекомендаций квеста на основе интересов пользователя. Если нет рекомендаций по кавычкам, создайте новую. Да Верно Возвращает список рекомендаций по медитации на основе предпочтений пользователя. Нет False или True Возвращает список рекомендаций квеста на основе интересов пользователя. Если нет рекомендаций по кавычкам, создайте новую. Да Верно
Требования бота к настраиваемым агентам обработчика
Агент пользовательского обработчика — это бот Teams для общения, который должен соответствовать следующим требованиям:
Агент пользовательского обработчика всегда должен содержать бот беседы на основе больших языковых моделей (LLM) для эффективного взаимодействия с пользователем. [Необходимо исправить]
Объявление идентификатора бота в качестве узла пользовательского агента обработчика должно совпадать с идентификатором бота, определенным в узле бота в манифесте приложения. [Необходимо исправить]
Пользователь должен иметь возможность ссылаться на настраиваемый агент обработчика в Microsoft 365 Copilot и взаимодействие с чатом передачи в Teams. [Хорошо для исправления]
Бот должен включать следующие компоненты проектирования пользовательского интерфейса:
Метка ИИ, которая позволяет пользователю определить, что сообщение было создано с помощью ИИ. [Необходимо исправить]
Кнопка обратной связи, которая позволяет пользователю предоставлять положительные или отрицательные отзывы в сообщениях агента. [Необходимо исправить]
Ссылка, позволяющая пользователю ссылаться на источник сообщения бота с помощью текстовых ссылок и ссылок. [Необходимо исправить]
Метка конфиденциальности, которая позволяет пользователю понять конфиденциальность сообщения бота. [Хорошо для исправления]
Агент должен выполнять потоковую передачу ответов пользователю. [Необходимо исправить]
Агент должен содержать по крайней мере три начальных запроса или приветственное сообщение. [Необходимо исправить]
Дополнительные сведения см. в разделе Приветственные сообщения бота.
Бот должен предлагать пользователю по крайней мере два контекстных предложения или запроса, а не универсальные или фиксированные. [Необходимо исправить]
Агент должен иметь действие или источник знаний
Узлы агента должны быть определены как действия в манифесте приложения. У всех агентов должен быть основной вариант использования, обслуживающийся с помощью действий API. [Необходимо исправить]
Для таких возможностей, как Веб-поиск, графическое искусство или интерпретатор кода, поле
Instruction
должно содержать сведения об использовании возможностей в контексте агента. [Необходимо исправить]
Правильная обработка ошибок
Все агенты должны корректно обрабатывать следующие сценарии, то есть агент должен отклонить запрос пользователя и предоставить путь вперед: [Должно быть исправлено]
Для неправильных параметров поиска
За неправильное использование или неподобающее язык
Для разделов, в которых агент не специализируется
Например, корректное сообщение об ошибке с путем пересылки для декларативного агента:
Требования к безопасности для URL-адреса спецификации OpenAPI
Агенты, использующие спецификации OpenAPI, должны обеспечивать следующие стандарты безопасности:
- Все вызовы API должны использовать ПРОТОКОЛ HTTPS с TLS 1.2 или более поздней версии. [Необходимо исправить]
- Вызовы API не должны приводить к перенаправлению URL-адресов. Фактические вызовы API должны обслуживаться из того же домена или поддомена, что и корневой домен, проверенный разработчиком. [Необходимо исправить]
См. также
Platform Docs