Библиотека ИИ Teams
Библиотека ИИ Teams — это интерфейс, ориентированный на Teams для интеграции языковых моделей на основе GPT и обработчиков намерений пользователей. Это упрощает процесс разработки, уменьшая потребность в написании и обслуживании сложной логики бота для общения.
Вы можете использовать предварительно созданные и многократно используемые фрагменты кода, которые позволяют быстро создавать интеллектуальные приложения. Этот подход на основе возможностей позволяет сосредоточиться на бизнес-логике, а не изучать тонкости диалоговых платформ Microsoft Teams.
Зачем использовать библиотеку ИИ Teams?
Библиотека ИИ Teams позволяет приложениям вовлекать пользователей в естественные и диалоговые взаимодействия. Эти взаимодействия могут быть направлены на конкретные функции или задачи приложения, что позволяет приложению лучше понять и обработать намерения пользователей.
Вы можете использовать встроенные возможности бота для общения в Teams (например, Power Virtual Agents или Bot Framework) для обработки сложностей обработки естественного языка.
Библиотеку ИИ Teams можно использовать для:
- Используйте предварительно созданные шаблоны для добавления возможностей приложений Teams.
- Используйте такие методы, как быстрое проектирование, чтобы добавить в бот ChatGPT, например беседы, и встроенные функции безопасности, такие как модерация, помогают обеспечить, чтобы бот всегда реагировал соответствующим образом.
- Используйте подсистему планирования библиотеки, которая позволяет модели определять намерение пользователя, а затем сопоставлять это намерение с действиями, которые вы реализуете.
- Добавьте поддержку любого LLM по своему выбору без изменения логики бота.
Библиотека ИИ Teams поддерживает JavaScript и C#. Она позволяет использовать возможности ИИ для создания интеллектуальных и удобных приложений для Microsoft Teams. Библиотека предоставляет гибкие возможности для создания возможностей на основе ИИ с помощью инструментов и языков, которые наилучшим образом соответствуют потребностям проекта и обеспечивают наилучшие результаты для пользователей Teams.
Как функции библиотеки ИИ Teams полезны для меня?
Библиотека ИИ Teams предлагает ряд функций, которые могут упростить разработку пользовательского агента обработчика.
Как разработчик, я хочу создать интеллектуальный световой бот, который управляет светом в ответ на команду пользователя. Я рассматриваю возможность использования библиотеки ИИ Teams из-за ее функций, которые могут сделать создание пользовательского агента обработчика более легким. Я хочу, чтобы мой лайтбот на основе ИИ, чтобы улучшить взаимодействие с пользователем и обеспечить их более активное участие.
Как использовать библиотеку ИИ Teams, чтобы обеспечить бесперебойную работу пользовательского агента обработчика и предоставить пользователям веселый и интерактивный интерфейс?
Локализация
Библиотека ИИ Teams использует модель GPT OpenAI для локализации. Входные данные пользователя на любом языке переводятся в намерения, сущности и действия. Такой подход устраняет необходимость в ведении записей локализации.
Модульность LLM
LLM создает последовательный и разнообразный текст на естественном языке с помощью скрытых переменных. Библиотека ИИ Teams использует модель GPT OpenAI, но позволяет заменить ее любым LLM, не изменяя логику бота. Это означает, что содержимое приложения можно хранить вне общедоступного домена и ограничиться предпочитаемой моделью LLM.
Ответственное применение ИИ
Библиотека ИИ Teams помогает создавать диалоговые приложения с перехватчиками модерации, очисткой бесед и циклами обратной связи. Он поддерживает как сценарии с низким уровнем кода, так и сложные сценарии. Библиотека расширяет возможности с помощью конструкций ИИ для моделирования естественного языка, намерений пользователей, персонализации и автоматизированных контекстно-зависимого диалога.
Прогнозная подсистема для сопоставления намерений с действиями
Простой интерфейс для действий и прогнозов позволяет боту реагировать при необходимости. Присутствие в окружающей среде позволяет боту изучать намерения, использовать запросы бизнес-логики и создавать ответы. Например, если пользователь находится вне офиса и должен свести итог по потоку, библиотека ИИ Teams:
- Понимает намерение как обобщение.
- Использует запросы для создания сводных данных с течением времени, ориентированных на взаимодействие пользователя.
- Предоставляет действия для суммирования содержимого чата.
Планировщик действий
Планировщик действий — это компонент main, который вызывает llm и включает несколько функций для улучшения и настройки модели. Подключаемые модули модели упрощают настройку выбранного LLM для планировщика и поставляется с OpenAIModel, который поддерживает как OpenAI, так и Azure OpenAI LLM. Добавьте дополнительные подключаемые модули для других моделей, таких как Llama-2, чтобы предоставить вам возможность выбора оптимальной модели для вашего варианта использования. Внутренний цикл обратной связи повышает надежность за счет исправления ответов подпара из LLM.
API помощников
Примечание.
Библиотека ИИ Teams поддерживает api помощников OpenAI и Azure OpenAI в общедоступной предварительной версии для разработчиков , чтобы приступить к созданию интеллектуальных помощников.
API помощников позволяет создавать мощные помощники по искусственному интеллекту, способные выполнять задачи, которые трудно кодировать с помощью традиционных методов. Он предоставляет программный доступ к системе GPT OpenAI для задач, начиная от чата и заканчивая обработкой изображений, обработкой звука и созданием пользовательских помощников. API поддерживает взаимодействие на естественном языке, что позволяет разрабатывать помощников, которые могут понимать и реагировать в разговорной манере.
Следуйте инструкциям в кратком руководстве по API помощников, чтобы создать помощник, специализирующуюся на математике.
Управление запросами
Динамическое управление запросами позволяет боту изменять размер и содержимое запроса, отправляемого в LLM, на основе доступного бюджета маркеров и источников данных или дополнений. Он повышает эффективность и точность запроса, гарантируя, что запрос не содержит неуместную информацию или не превышает контекстное окно.
Увеличение
Улучшайте ответы модели ИИ с помощью расширения. Настройте модель с помощью различных режимов для точности и желаемых результатов:
- Получение дополненного поколения (RAG): используйте динамические внешние источники данных в режиме реального времени для получения актуальных и точных результатов без повторного обучения.
- Монолог. Создание агентов в стиле AutoGPT для многоэтапных действий с полной проверкой схемы и автоматическим восстановлением.
- Последовательность. Включите помощник ИИ для возврата последовательности действий с проверкой схемы для надежности.
- Функции. Создание структурированных ответов с помощью настраиваемых определяемых пользователем функций. Действие Планировщик оценивает и исправляет ответы модели на предмет надежности и согласованности.
Источники векторных данных
Базы данных векторов предназначены для хранения векторов для обеспечения эффективного поиска. Они возвращают наиболее релевантные результаты для запроса пользователя. Они позволяют RAG использовать LLM и пользовательские данные или сведения, относящиеся к домену. Это включает извлечение релевантной информации из пользовательского источника данных и их интеграцию в запрос модели с помощью разработки запросов. Перед отправкой запроса в LLM входные данные пользователя преобразуются в внедрение, а методы поиска векторов используются для поиска наиболее похожего внедрения в базе данных.
Расширенное обоснование
Библиотека ИИ Teams предлагает интегрированную систему проверки фактов для борьбы с галлюцинациями ботов. Когда пользователь взаимодействует с помощник ИИ, он предлагает боту критически оценить свои потенциальные ответы перед отправкой. Бот выявляет неточности и исправляет ответы, что повышает точность, качество и контекстную релевантность. Расширенное обоснование гарантирует, что помощник ИИ станет надежным источником информации и суждений, что повышает доверие к продукту и повышает вовлеченность пользователей.
Цикл обратной связи
Цикл обратной связи позволяет боту проверять и исправлять выходные данные языковой модели. Он проверяет структуру и параметры плана или монолога, возвращаемого моделью, и предоставляет отзывы об ошибках или отсутствующих сведениях. Модель пытается исправить свои ошибки и вернуть допустимые выходные данные. Цикл обратной связи может повысить надежность и точность системы ИИ и снизить вероятность галлюцинаций или недопустимых действий.
Обновления в библиотеку ИИ Teams
В следующей таблице перечислены обновления библиотеки ИИ Teams.
Тип | Описание | .NET | JavaScript | Python |
---|---|---|---|---|
OpenAIModel | Класс OpenAIModel позволяет вызывать Как OpenAI, так и Azure OpenAI с одним компонентом. Новые модели можно определить для других типов моделей, таких как Llama2. | ✔️ | ✔️ | ✔️ |
Внедрение | Класс OpenAIEmbeddings позволяет создавать внедрения с помощью OpenAI или Azure OpenAI. Новые внедрения можно определить для таких вещей, как внедрение OSS. | ❌ | ✔️ | ✔️ |
Запросы | Новая система запросов на основе объектов обеспечивает более эффективное управление маркерами и снижает вероятность переполнения контекстного окна модели. | ✔️ | ✔️ | ✔️ |
Увеличение | Расширения упрощают задачи разработки запросов, позволяя разработчику добавлять именованные дополнения в запрос. Поддерживаются только functions расширения стиля , sequence и monologue . |
✔️ | ✔️ | ✔️ |
Источники данных | Новый подключаемый модуль DataSource упрощает добавление RAG в любой запрос. Вы можете зарегистрировать именованный источник данных в планировщике, а затем указать имена источников данных, которые они хотят дополнить запрос. | ❌ | ✔️ | ✔️ |
Вызовы функций с помощью пакета SDK для искусственного интеллекта
Вызовы функций, реализованные в пакете SDK для ИИ, открывают множество возможностей, позволяя модели ИИ легко генерировать точные ответы. Это позволяет напрямую подключиться к внешним средствам, что делает ИИ еще более мощным. Эти возможности включают выполнение сложных вычислений, получение важных данных, создание более плавных рабочих процессов и динамическое взаимодействие с пользователями.
Примечание.
Структурированные выходные данные не поддерживаются.
Чтобы использовать вызов функции с API завершения чата, выполните следующие действия.
Настройте планировщик, в котором в командной строке по умолчанию используется расширение инструментов. Обновите один из следующих файлов приложения бота:
- Для приложения JavaScript: обновите
index.ts
. - Для приложения бота C#: обновите
Program.cs
. - Для приложения Python: обновите
bot.py
.
В следующем фрагменте кода показано, как настроить
ToolsAugmentation
класс :const planner = new ActionPlanner({ model, prompts, defaultPrompt: 'tools' });
- Для приложения JavaScript: обновите
Укажите расширение инструментов в
config.json
файле.{ "schema": 1.1, "description": "", "type": "", "completion": { + "tool_choice": "auto", + "parallel_tool_calls": true, }, + "augmentation": { + "augmentation_type": "tools" + } }
Укажите все в
function definitions
actions.json
файле, который находится в папкеprompts
. Убедитесь, что вы следуете схеме, чтобы избежать ошибок при вызове действия LLM.[{ "name": "CreateList", "description": "Creates a list" }]
Зарегистрируйте в
handlers
классеapplication
.- Каждый обработчик — это функция обратного вызова, которая выполняется при возникновении определенного события. Обработчик вызова функции выполняет код в ответ на событие.
- Вызов функции должен возвращать строку в качестве выходных данных вызова функции.
- Когда модель запрашивает вызов каких-либо функций, они сопоставляются с
DO
командами в иPlan
вызываются в функции классаrun
ИИ. Затем выходные данные возвращаются в модель с идентификаторами вызова инструментов, чтобы показать, что средства использовались.
В следующем фрагменте кода показано, как зарегистрировать
handlers
:app.ai.action("createList", async (context: TurnContext, state: ApplicationTurnState, parameters: ListAndItems) => { // Ex. create a list with name "Grocery Shopping". ensureListExists(state, parameters.list); return `list created and items added. think about your next action`; });
Включение параметров средства
Можно включить следующие параметры инструментов:
Включить выбор средства. Разрешите модели выбрать функцию, которую она должна вызвать, включив выбор средства. В файле:
config.json
- Задайте значение
tool_choice
,required
чтобы модель всегда вызывала по крайней мере одну функцию. - Задайте
tool_choice
для конкретной функции, используя ее определение для использования этой функции. - Задайте значение
tool_choice
,none
чтобы отключить средство.
Значение
tool_choice
по умолчанию —auto
. Она позволяет модели выбирать функции, которые она должна вызывать.- Задайте значение
Переключение параллельных вызовов инструментов. Параллельное выполнение инструментов выполняется быстрее и сокращает количество обратных вызовов API.
config.json
В файле можно задать значениеparallel_tool_calls
true
илиfalse
. По умолчаниюparallel_tool_calls
параметр имеет значениеtrue
.
В следующем фрагменте кода показано, как включить выбор средства и переключить параллельные вызовы инструментов:
{
"schema": 1.1,
"description": "",
"type": "",
"completion": {
+ "tool_choice": "auto",
+ "parallel_tool_calls": true,
},
+ "augmentation": {
+ "augmentation_type": "tools"
+ }
}
Примечание.
Как разработчик, используюющий пакет SDK для искусственного интеллекта, вы можете поделиться ценными отзывами или обратиться за поддержкой , чтобы улучшить свой опыт.
Примеры кода
Название примера | Описание | .NET | Node.js | Python |
---|---|---|---|---|
Эхо-бот | В этом примере показано, как включить поток общения в приложение Microsoft Teams с помощью Bot Framework и библиотеки ИИ Teams. | Просмотр | Просмотр | Просмотр |
Расширение сообщений команды поиска | В этом примере показано, как включить базовое приложение расширения сообщений в приложение Microsoft Teams с помощью Bot Framework и библиотеки ИИ Teams. | Просмотр | Просмотр | Просмотр |
Бот Typeahead | В этом примере показано, как включить функцию поиска typeahead в адаптивных карточках в приложение Microsoft Teams с помощью Bot Framework и библиотеки ИИ Teams. | Просмотр | Просмотр | Просмотр |
Диалоговый бот с ИИ: Шеф-повар Teams | В этом примере показано, как включить поведение бота для общения в Microsoft Teams. Бот создан, чтобы разрешить GPT упростить беседу от его имени, используя только файл запроса на естественном языке, чтобы направлять его. | Просмотр | Просмотр | |
Расширения сообщений: GPT-ME | Этот пример представляет собой расширение сообщений для Microsoft Teams, которое использует модель text-davinci-003, чтобы помочь пользователям создавать и обновлять записи. | Просмотр | Просмотр | Просмотр |
Легкий бот | Этот пример иллюстрирует более сложное поведение бота беседы в Microsoft Teams. Бот создан, чтобы разрешить GPT упростить беседу от его имени и ответы, определяемые вручную, и сопоставляет намерения пользователей с определенными пользователем действиями. | Просмотр | Просмотр | Просмотр |
Список ботов | В этом примере показано, как включить поведение бота для общения в Microsoft Teams. Бот использует возможности ИИ, чтобы упростить рабочий процесс и навести порядок в повседневных задачах, а также демонстрирует возможности цепочки действий. | Просмотр | Просмотр | Просмотр |
Бот DevOps | В этом примере показано, как включить поведение бота для общения в Microsoft Teams. Бот использует модель gpt-3.5-turbo для общения с пользователями Teams и выполнения действий DevOps, таких как создание, обновление, рассмотрение и обобщение рабочих элементов. | Просмотр | Просмотр | Просмотр |
Двадцать вопросов | В этом примере демонстрируются невероятные возможности языковых моделей и концепция намерения пользователя. Бросьте вызов своим навыкам человека и попытайтесь угадать секрет в течение 20 вопросов, в то время как бот на основе ИИ отвечает на ваши запросы о секрете. | Просмотр | Просмотр | Просмотр |
помощник репетитора математики | В этом примере показано, как создать беседу с помощью API-интерфейсов Помощников OpenAI. Он использует интерпретатор кода OpenAI для создания помощник, который является экспертом по математике. | Просмотр | Просмотр | Просмотр |
Заказ продуктов питания помощник | В этом примере показано, как создать диалоговую помощник, которая использует средства для вызова действий в коде бота. Это еда заказа помощник для вымышленного ресторана под названием Паб и способен к сложному взаимодействию с пользователем, как он принимает их заказ. | Просмотр | Просмотр | Просмотр |
Следующий этап
См. также
Platform Docs