Как создать нейробота с нуля

Для того, чтобы создать пустого нейробота с нуля, без предустановленных ассистентов и сценариев перейдите не страницу Боты и нажмите кнопку Создать. В окне создания бота вместо шаблонов выберите "Пустой":

Окно создания нейробота
Окно создания нейробота

Мы создали пустой проект нашего будущего нейробота.

Для того, чтобы создать работающего бота с нуля, важно понимать схему:

Основные составные элементы нейробота
Основные составные элементы нейробота

Процесс создания нейробота с нуля можно разделить на 3 основных этапа:

  1. Создание хранилища
  2. Создание ассистента
  3. Создание сценария

Первое, что нам нужно сделать - это создать Хранилище. Для этого перейдите на вкладку Хранилища и нажмите кнопку Создать:

Вкладка с хранилищами бота
Вкладка с хранилищами бота

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

Окно с выбором типа хранилища
Окно с выбором типа хранилища

Введите название будущего хранилища:

Название ни на что не влияет и видно только вам в списке хранилищ
Название ни на что не влияет и видно только вам в списке хранилищ

Теперь нам нужно добавить в хранилище информацию, которую должен знать наш будущий нейробот. Для этого перейдем в созданное хранилище и нажмем кнопку Добавить:

В хранилище можно добавить следующие типы данных:

  1. Файлы
  2. Ссылки
  3. Сайты
  4. Сообщества ВК
Окно с выбором типа данных для добавления в хранилище
Окно с выбором типа данных для добавления в хранилище
⚠ Примечание: в хранилище можно загрузить любое количество элементов: файлов, сайтов, ссылок и сообществ ВК.  

Для примера загрузим обычный файл в формате документа word (.docx):

После загрузки файла, видим как он успешно загружен в хранилище:

Страница хранилища с загруженным элементом типа
Страница хранилища с загруженным элементом типа "Файл"

Теперь нам нужно создать ассистента и подключить его к созданному хранилищу. Для этого перейдём на вкладку Ассистенты и нажмём кнопку Создать:

Страница с ассистентами нашего бота
Страница с ассистентами нашего бота

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

Окно выбора типа ассистента
Окно выбора типа ассистента

Вводим название для нашего ассистента и нажимаем кнопку Создать:

Окно создания ассистента
Окно создания ассистента

После того как ассистент создан, нам нужно его открыть и выбрать наше хранилище:

При необходимости можно изменить инструкцию ответов (промт) и другие настройки:

Окно настроек ассистента
Окно настроек ассистента

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

Для этого перейдём на вкладку Сценарии и нажмём на кнопку "Создать":

Страница сценариев нашего бота
Страница сценариев нашего бота

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

Теперь нам нужно добавить действия в наш сценарий. Первое действие, которое нам необходимо - это действие Ассистент, которое будет обращаться к ассистенту, которого мы создали ранее. Для создания действия, переходим в сценарий и нажимаем кнопку "Добавить действие":

Страница сценария
Страница сценария

Выбираем категорию "Текст":

Окно добавления действия
Окно добавления действия

И далее Ассистент:

Окно выбора действия
Окно выбора действия

Теперь открываем созданное действие:

Страница сценария с его действиями
Страница сценария с его действиями

И выбираем ранее созданного ассистента:

Окно настроек действия
Окно настроек действия

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

Не будем углубляться в это в рамках данного примера и выберем в качестве промта Сообщение пользователя, нажав на кнопку подключения переменных:

Поскольку в нашем сценарии нет других переменных, то переменная "Сообщение пользователя" подставится сразу

Есть еще один способ подставить сообщение пользователя в наш промт, если нужно добавить какой-то дополнительный текст к сообщению пользователя используя системную переменную {{USER_TEXT}}:

Но в данном случае нам это не нужно и мы остановимся на первом варианте с выбором переменной.

И финальная настройка в данном действии это "Текст статуса". Это текст, который будет отображаться пока наш бот "думает", по аналогии со статусом "печатает..." в мессенджерах, когда наш собеседник вводит сообщение.

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

Для этого добавим действия типа Отправить сообщение. Для этого опять нажимаем "Добавить действие", только теперь открываем категорию "Система"

И выбираем "Отправить сообщение":

Открываем созданное действие, и по аналогии с предыдущим действием выбираем переменную ответа нашего ассистента:

Нажимаем кнопку Сохранить.

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

Чтобы протестировать работу нашего бота мы можем перейти на страницу с его публичным профилем, ссылка на которую доступна в меню бота сверху:

Аватар, имя бота и адрес профиля - кликабельны
Аватар, имя бота и адрес профиля - кликабельны

Видим, что пока бот обращается к нейросети, нам отображается статус, который мы указали в настройках выше:

И итоговый ответ на основе загруженного нами единственного файла:

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

Аналогично создаются нейроботы вне зависимости от количества файлов, сложности логики и т.д.