Создание бота с ChatGPT

Инструкция, как подружить CleverApp и ChatGPT

Создаем бота на платформе CleverApp и делаем логическую цепочку в боте, например такую, пример ниже.

Шаблон этого бота есть на платформе CleverApp, называется "ChatGPT на CleverApp" - https://app.cleverapp.pro/catalog

Далее делаем все по инструкции:

1. Регистрируемся на сайте https://platform.openai.com/docs/guides/chat

Как это сделать в РФ можно легко найти в интернете. Вам обязательно понадобится для этой цели номер телефона другой страны, чтобы воспользоваться СМС-подтверждением.

2. Перейти на страницу https://platform.openai.com/docs/quickstart/build-your-application и сгенерировать ключ.

  1. Перейти в списки в своем боте на платформе CleverApp и создать глобальную переменную, в которую сохранить ключ.

  1. Настроить в боте первый блок после Старта, он даст выбор направления – что пользователю нужно сгенерировать: текст или картинку. Все кнопки в боте лучше сделать ИНЛАЙН.

Работа с текстом

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

  1. Переходим к блоку HTTP-запрос и настраиваем таким образом

а) URL: https://api.openai.com/v1/completions

б) Method: POST

Заголовки:

Content-Type = application/json

Authorization = Bearer {{ OPENAIKEY }}

{{ OPENAIKEY }} – Это наша глобальная переменная, куда сохраняли ключ с сайта OpenAI. Указывайте свою переменную, которую создали в списках своего бота.

в) Настройка Body:

- формат обмена данными выбрать json и вставить код, например, такой:

{
    "model": "text-davinci-003",
    "prompt": "{{ $prompt }}",
"max_tokens": 1000,
    "temperature": 0
  }

С более подробной информацией об этом Вы можете познакомиться на странице - https://platform.openai.com/docs/api-reference/completions

г) Настроить время ожидания отклика от ИИ и записать ответ в переменные. При этом текст сохранять обязательно, а количество использованных токенов по желанию.

  1. Настроить блок «Цепочка сообщений», стоящий после блока HTTP-запрос от кнопки «Продолжить». Для вывода ответа от ChatGPT (ответ json) использовать переменные.

Для повторения запроса создаем соответствующую кнопку и соединяем ее с первым блоком или блоком «Сценарий» с выбором сценария, в котором работаем.

Работа с картинкой

Вторая логическая цепочка работает аналогично. Итак, следующий шаг:

  1. Сделать запрос на промо (описание будущей картинки) пользователя для генерации картинки и записать его в переменную.

  1. Внимательно оформить блок HTTP-запрос по тому же принципу, что и для текста, но с другими данными (эти данные можно посмотреть по адресу https://platform.openai.com/docs/api-reference/images/create ):

а) URL: https://api.openai.com/v1/images/generations

б) Method POST

Заголовки:

Content-Type = application/json

Authorization=Bearer {{ OPENAIKEY }}

в) Body json

код:

{
    "prompt": "{{ $prompt2 }}",
    "n": 2,
    "size": "1024x1024"
  }

г) Так как число картинок указано 2 ("n": 2), то переменных необходимо создать тоже 2.

Соотношение переменных:

data.0.url→ image

data.1.url→ image1

  1. Для вывода каждой картинки настроить отдельный блок «Цепочка сообщений».

а) В первом блоке прописать нужную переменную и перейти через кнопку «Продолжить» к следующему.

б) Во втором блоке ставим вторую переменную:

  1. От кнопок «Нет ответа от сервера» блоков HTTPобязательно поставить текстовый блок с пояснением и отправить в первый блок, чтобы пользователь мог задать вопрос еще раз.

Обратите внимание, если время отклика в блоках HTTP указать слишком маленькое, бот работать не будет, т.к. не успеет получить ответ от сервера.

Last updated