ОБЛАСТЬ ПРИМЕНЕНИЯ: ПАКЕТ SDK версии 4
В этой статье описывается, как создать первого бота с помощью пакета SDK Bot Framework для C#, Java, JavaScript или Python и как протестировать бота с помощью эмулятора Bot Framework.
Для создания первого бота не требуется подписка Azure или ресурс службы Azure AI Bot. В этом кратком руководстве основное внимание уделяется созданию первого бота локально. Если вы хотите узнать, как создать бота в Azure, см. статью "Создание ресурса Azure Bot".
Внимание
Пакет SDK Bot Framework и эмулятор Bot Framework были архивированы на GitHub. Проект больше не обновляется или не поддерживается. Запросы на поддержку пакета SDK Bot Framework больше не будут обслуживаться с 31 декабря 2025 г.
Чтобы создавать агенты с помощью выбранной службы ИИ, оркестрации и знаний, рекомендуется использовать пакет SDK для агентов Microsoft 365. Пакет SDK для агентов поддерживает язык C#, JavaScript или Python. Дополнительные сведения о пакете SDK для агентов см. в aka.ms/agents.
Если у вас есть существующий бот, созданный с помощью пакета SDK Bot Framework, вы можете обновить бота до пакета SDK для агентов. Ознакомьтесь с основными изменениями и обновлениями в руководстве по миграции с Bot Framework SDK на Agents SDK.
Если вы создаете агент для совместной работы в Microsoft Teams, рассмотрите возможность использования пакета SDK Teams. Он предоставляет интерфейсы API, поддержку адаптивных карт и встроенную оркестрацию ИИ для агентов, работающих в среде Teams. Дополнительные сведения см. в пакете SDK Teams (библиотека ИИ Teams).
Если вы ищете платформу агента на основе SaaS, рассмотрите microsoft Copilot Studio.
Требования
Шаблоны C#
В текущих примерах ботов используются шаблоны .NET Core 3.1.
Чтобы добавить шаблоны ботов в Visual Studio, скачайте и установите Bot Framework v4 SDK Templates for Visual Studio VSIX файл.
Примечание.
Вы можете установить шаблоны из Visual Studio.
- В меню выберите "Расширения" и "Управление расширениями".
-
В диалоговом окне "Управление расширениями" найдите и установите шаблоны SDK Bot Framework версии 4 для Visual Studio.
Сведения о развертывании ботов .NET в Azure см. в статье о подготовке и публикации бота.
Шаблоны .NET Core помогут вам быстро создавать новые боты искусственного интеллекта для общения с помощью Bot Framework версии 4.
По состоянию на май 2020 г. эти шаблоны и код, которые они создают, требуют .NET Core 3.1 или более поздней версии.
Чтобы установить шаблоны Bot Framework, выполните следующие действия.
Откройте окно консоли.
Скачайте и установите пакет SDK для .NET Core версии 3.1 или более поздней.
Эту команду можно использовать для определения версий интерфейса командной строки .NET Core.
dotnet --version
Установите три шаблона Bot Framework C#: эхо, ядро и пустые шаблоны ботов.
dotnet new -i Microsoft.Bot.Framework.CSharp.EchoBot
dotnet new -i Microsoft.Bot.Framework.CSharp.CoreBot
dotnet new -i Microsoft.Bot.Framework.CSharp.EmptyBot
Убедитесь, что шаблоны установлены правильно.
dotnet new --list
Примечание.
Описанные выше действия устанавливают все три шаблона Bot Framework. Вам не нужно устанавливать все шаблоны и устанавливать только те, которые вы будете использовать. В этой статье используется шаблон эхо-бота.
Шаблоны Java
Используйте генератор Yeoman для быстрого создания беседного бота ИИ с помощью основных возможностей искусственного интеллекта в Bot Framework версии 4. Дополнительные сведения см. в yeoman.io.
Генератор поддерживает три различных варианта шаблона, как показано ниже.
| Шаблон |
Описание |
| Эхо-бот |
Хороший шаблон, если вы хотите немного больше, чем "Hello World!", но не намного больше. Этот шаблон обрабатывает самые основные принципы отправки сообщений боту и обработку сообщений ботом, повторяя их пользователю. Этот шаблон создает бота, который просто "повторяет" пользователю все, что пользователь говорит боту. |
| Пустой бот |
Хороший шаблон, если вы знакомы с Bot Framework версии 4 и просто хотите базовый скелет проекта. Также это хороший вариант, если вы хотите взять пример кода из документации и вставить его в минимальный бот, чтобы научиться. |
| Основной бот |
Хороший шаблон, если вы хотите создавать расширенные боты, так как он использует многоэтапные диалоги и Azure AI LUIS для реализации понимания языка. Этот шаблон создает бот, который может извлекать места и даты для бронирования полета. |
Установите Yeoman
Убедитесь, что вы установили node.js версии 12.10 или более поздней.
Установите последнюю версию npm.
npm install -g npm
Установите Yeoman. Обязательно установите глобально.
npm install -g yo
Установите генератор-botbuilder-java. Обязательно установите глобально.
npm install -g generator-botbuilder-java
Убедитесь, что Yeoman и генератор-botbuilder-java установлены правильно.
yo botbuilder-java --help
Шаблоны JavaScript и TypeScript
Чтобы установить Yeoman и генератор Yeoman для Bot Framework версии 4:
Откройте терминал или командную строку с повышенными привилегиями.
Перейдите в каталог, где вы намерены разместить боты JavaScript. Создайте это сначала, если у вас его еще нет.
mkdir myJsBots
cd myJsBots
Убедитесь, что у вас есть последние версии npm и Yeoman.
npm install -g npm
npm install -g yo
Установите генератор Yeoman.
Yeoman — это средство для создания приложений. Дополнительные сведения см. в yeoman.io.
npm install -g generator-botbuilder
Примечание.
Установка Microsoft Build Tools, указанная ниже, требуется только в том случае, если Windows используется как операционная система для разработки.
Для некоторых установок шаг установки для restify дает ошибку, связанную с node-gyp.
В таком случае попробуйте выполнить следующую команду с дополнительными разрешениями.
Этот вызов также может зависать без выхода, если Python уже установлен в вашей системе:
Выполните эту команду, только если вы находитесь в Windows.
npm install -g windows-build-tools
Создание и включение виртуальной среды
Виртуальная среда — это сочетание определенного интерпретатора Python и библиотек, отличающихся от глобальных параметров. Виртуальная среда зависит от проекта и сохраняется в папке проекта. Преимущество использования виртуальной среды заключается в том, что при разработке проекта с течением времени виртуальная среда всегда отражает точные зависимости проекта. Дополнительные сведения о виртуальных средах см. в статье "Создание виртуальных сред".
Перейдите в каталог, в котором вы хотите создать бота. Затем выполните следующие команды для предпочтительной платформы. После активации виртуальной среды командная строка или терминал должны начинаться с (venv). Это позволяет знать, что виртуальная среда активна. Вы можете отключить виртуальную среду в любое время, введя следующее deactivate:
macOS/Linux
python3 -m venv venv
source venv/bin/activate
Виндоус
python -m venv venv
venv\Scripts\activate.bat
Шаблоны Python
Установите необходимые пакеты, выполнив следующие pip install команды:
pip install botbuilder-core
pip install asyncio
pip install aiohttp
pip install cookiecutter==1.7.0
Внимание
Если вы используете 32-разрядную версию Python, убедитесь, что вы также запускаете pip install cryptography==2.8.
Создание бота
В Visual Studio создайте проект бота и используйте шаблон Echo Bot (Bot Framework версии 4 — .NET Core 3.1). Чтобы просмотреть только шаблоны ботов, выберите тип проекта AI Bots .
Убедитесь, что установлен .NET Core 3.1 или более поздней версии.
В Visual Studio Code откройте новое окно терминала.
Перейдите в каталог, в котором вы хотите создать проект бота.
Создайте новый проект эхо-бота с помощью следующей команды. Замените <your-bot-name> на имя, используемое для вашего проекта бота.
dotnet new echobot -n <your-bot-name>
Откройте новое окно терминала.
Перейдите в каталог, в котором вы хотите создать проект бота.
Создайте новый проект для эхо-бота, используя следующую команду. Замените <your-bot-name> на имя, которое будет использоваться для вашего проекта бота.
dotnet new echobot -n <your-bot-name>
Благодаря шаблону проект содержит весь необходимый код для создания бота в этом кратком руководстве. Вам больше не нужен код для тестирования бота.
Выполните следующую команду, чтобы создать эхо-бот из шаблонов. Команда использует стандартные опции для своих параметров.
yo botbuilder-java -T "echo"
Yeoman запросит некоторые сведения для создания бота. Для этого руководства используйте значения по умолчанию.
? What's the name of your bot? (echo)
? What's the fully qualified package name of your bot? (com.mycompany.echo)
? Which template would you like to start with? (Use arrow keys) Select "Echo Bot"
? Looking good. Shall I go ahead and create your new bot? (Y/n) Enter "y"
Генератор поддерживает множество параметров командной строки, которые можно использовать для изменения значений по умолчанию генератора или предварительного заполнения запроса. Параметры чувствительны к регистру.
| Параметр командной строки |
Описание |
--help, -h |
Вывести справочный текст для всех поддерживаемых параметров командной строки |
--botName, -N |
Имя, заданное проекту бота |
--packageName, -P |
Имя пакета Java, используемое для бота |
--template, -T |
Шаблон, используемый для создания проекта. Доступны следующие параметры: echo, empty и core. Дополнительные сведения о различных шаблонах см. в репозитории GitHub для вашего языка, C#, JavaScript, Python или Java. |
--noprompt |
Генератор не будет запрашивать подтверждение перед созданием нового бота. Все параметры требования, не переданные в командной строке, будут использовать разумное значение по умолчанию. Этот параметр предназначен для включения автоматического создания ботов для тестирования. |
Благодаря шаблону проект содержит весь код, необходимый для создания бота в рамках этого краткого руководства. Вам не нужен другой код для тестирования бота.
Используйте генератор для создания эхо-бота.
yo botbuilder
Yeoman запросит некоторые сведения для создания бота. Для этого руководства используйте значения по умолчанию.
? What's the name of your bot? my-chat-bot
? What will your bot do? Demonstrate the core capabilities of the Microsoft Bot Framework
? What programming language do you want to use? JavaScript
? Which template would you like to start with? Echo Bot - https://aka.ms/bot-template-echo
? Looking good. Shall I go ahead and create your new bot? Yes
Благодаря шаблону проект содержит весь код, необходимый для создания бота в рамках этого краткого руководства. Вам не нужен другой код для тестирования бота.
В рабочем каталоге выполните следующую команду, чтобы скачать шаблон эхо-бота и его зависимости:
cookiecutter https://github.com/microsoft/BotBuilder-Samples/releases/download/Templates/echo.zip
Вам будет предложено предоставить боту имя и описание. Введите следующие значения:
-
bot_name: echo_bot
-
bot_description: бот, который повторяет ответ пользователя.
Установите имя и описание бота Python
Запуск бота
В Visual Studio:
- Откройте проект бота.
- Запустите проект без отладки.
- Visual Studio создает приложение, развертывает его в localhost и запускает веб-браузер для отображения страницы приложения
default.htm .
На этом этапе ваш бот работает локально на порте 3978.
В Visual Studio Code:
Откройте папку проекта бота.
Если вам будет предложено выбрать проект, выберите его для созданного бота.
В меню выберите "Выполнить" и " Запустить без отладки".
- Если появится запрос на выбор среды, выберите .Net Core.
- Если эта команда обновила параметры запуска, сохраните изменения и повторно запустите команду.
Команда выполнения создает приложение, развертывает его в localhost и запускает веб-браузер для отображения страницы приложения default.htm .
На этом этапе бот запущен локально на порту 3978.
Из командной строки или терминала:
Перейдите в каталог проекта вашего бота.
Используется dotnet run для запуска бота.
dotnet run
Эта команда создает приложение и развертывает его в localhost.
Веб-страница по умолчанию приложения не отображается, но на этом этапе бот работает локально на порту 3978.
В терминале перейдите в каталог, в котором вы сохранили бота, а затем выполните приведенные ниже команды.
Создайте проект Maven и упаковайте его в файл .jar (архив).
mvn package
Запустите бот локально. Замените архивное имя фактическим именем предыдущей команды.
java -jar .\target\<archive-name>.jar
Теперь вы готовы запустить эмулятор.
В терминале или командной строке перейдите к каталогу, созданному для бота, и запустите бот с помощью npm start.
cd my-chat-bot
npm start
В данный момент ваш бот запущен локально на порту 3978.
В командной строке или терминале перейдите в каталог echo_bot.
cd echo_bot
Установите зависимости для шаблона эхо-бота.
pip install -r requirements.txt
После установки зависимостей выполните следующую команду, чтобы запустить бота:
python app.py
Вы узнаете, что бот готов к тестированию, когда появится последняя строка, показанная на снимке экрана ниже:
Скопируйте HTTP-адрес в последней строке. Это потребуется при использовании эмулятора для взаимодействия с ботом.
Запуск эмулятора и подключение к боту
Установите Bot Framework Emulator.
Выберите "Открыть бот" на вкладке приветствия эмулятора.
Введите URL-адрес вашего бота, который является локальным хостом и портом, с добавлением /api/messages в путь. Адрес обычно: http://localhost:3978/api/messages
В этом случае выберите Подключиться.
Отправьте боту сообщение, и бот ответит обратно.
Следующие шаги