Интеграция с CHATGPT

Демонстрация настройки. Важно! Некоторые модели а-ля Davinci устарели, поэтому ориентируйтесь на конспект


Хотите, чтобы ваши боты умели генерировать крутой экспертный контент? Для маркетологов, кулинаров, рукодельниц, эзотериков, психологов. ИИ справится на отлично с любой темой.

Хотите, чтобы боты в ваших чатах были не скучными, отличались умом и сообразительностью, развлекали участников? Ваши клубы станут интересными и небанальными.

Хотите, чтобы бот заменил человека в поддержке или сопровождении клиентов? Это что-то из будущего? Нет, это настоящее)

В данной инструкции мы покажем как интегрировать ChatGPT с Автопилотом

Интересно? Тогда идем скорее в Автопилот.

Важно! У вас должен быть аккаунт ChatGPT и привязана платежная карта.

План инструкции:

Создание ключа ChatGPT

  1. Создать аккаунт на сайте https://chat.openai.com/ (не РФ)
  2. Cоздать ключ API (платно, нужно привязывать карту не РФ)
  3. Перейти по ссылке
  4. Нажать «Secret Key» и следуя указаниям получить ключ.
  5. Скопировать ключ в ресурс
Листайте карусель для того, чтобы понять, как создать ключ Chat GPT
Интеграция с CHATGPT, image #2
1 of 2
Листайте карусель для того, чтобы понять, как создать ключ Chat GPT

Создание ресурса

Переходим в базу данных вашего сообщества — раздел Ресурсы/База данных и создаем там новый ресурс с названием: Ключ ChatGPT(важно использовать именно такое название для удобства дальнейшей настройки).

Чтобы при запуске команды достать поле «содержимое» этого ресурса, есть два способа (рекомендую первый):

  • Точно скопировать название ресурса (Ключ ChatGPT).
    В команде написать: {get}Ключ ChatGPT|name|body{/get}
  • Точно скопировать номер ресурса (XXXXX).
    В команде написать: {get}XXXXX{/get}
Важно! Если Вы хотите хранить ресурс в одном сообществе, а использовать в другом, то необязательно использовать копирование ресурса, достаточно указать 4 параметром ID сообщества в котором хранится ресурс.

Например:

  • В команде написать: {get}Ключ ChatGPT|name|body|183601501{/get}
    либо
{get}Ключ ChatGPT|name|body|%event_club_id%{/get}

Ключи будем записывать в строчку.

Пример:

AASSWSSdsgdsfFHFGHGFHFGAASSWSSdsgdsfFHFGHGFHFGAASSWSSdsgdsfFHFGHGFHFGAASSWSSdsgdsfFHFGHGFHFGAASSWSSdsgdsfFHFGHGFHFG

Создаем ресурс, нажав на Еще и выбираем Ресурсы/База данныхПример ресурса на скриншоте:

Пример ресурса с ключом
Пример ресурса с ключом

Итак, создается пустой ресурс с любым названием, например,Ключ ChatGPT,
главное записать номер ресурса, в данном примере 373821

Термины и модели

Токены - так сервис OpenAI назвали валюту, которая расходуется при запросах. Она имеет бинарный размерный порядок, где разные типы символов означают разное количество токенов.

Примерно 1000 токенов равняется 1500 кириллическим символам.

Температура — другими словами —похожесть.

Чем ниже температура - тем ответы будут более похожими друг на друга. Чем выше температура - тем больше они будут отличаться

Температура редко используется и нужна.

Как минимум, для использования температуры необходимо иметь возможность запоминания предыдущих ответов. Но это примерно от 2 до 10 раз увеличивает расход токенов.

Типы моделей:

  1. davinci: Это основной движок, который обычно используется для текстовых задач.
  2. curie: Это предыдущая версия движка, предшественник Davinci. Он все еще может использоваться, но рекомендуется использовать Davinci для большинства случаев.
  3. davinci-codex: Это более узко специализированный движок, специально настроенный для кодирования и программирования.
  4. text-davinci-003: Этот движок является обновлением оригинального "davinci" и предлагает улучшенную производительность и результаты.

Таким образом, text-davinci-003 - это улучшенная версия стандартного davinci, предназначенная для более эффективной обработки текстовых запросов. Больше всего актуальных моделей указано тут.

Команда «Получить ответ от бота»

Важно! Пример универсальной команды с реакцией и на комментарии и в личные сообщения.

События:

1) Написал сообщение с текстом, подходящим под регулярное выражение ^Создай запрос:

Пример события
Пример события
ВАЖНО! Для переключения переключатель с содержащим на подходящим под регулярку и вводим нужный текст. Если какие -то условия, например «Сотрудник Аккаунта» у вас были в других командах, то выбирайте их из каталога, нажатием на «Найти в каталоге»

По желанию добавляем условия:

1) «Сотрудник аккаунта, чтобы команду мог запустить только Администратор сообщества, либо тот, у кого есть разрешение.» Тогда команду сможет добавлять только Администратор.

Интеграция с CHATGPT, image #5

2) Переменная %is_conv%равна 0— чтобы команда срабатывала, если подписчик написал в сообщения сообщества.

Пример условия, что совет может добавить только админ.
Пример условия, что совет может добавить только админ.

Опционально через «Добавить секцию» (для комментариев)

События:

1) Событие «Написал комментарий» под постом с ID вставить пост и текстом, подходящим под регулярное выражение ^Создай запрос:

Пример события
Пример события

По желанию добавляем условия:

1) «Выполнена команда» № 0 ровно 0 раз, чтобы команду могли запустить только один раз

Пример условия
Пример условия

Опционально через «Добавить секцию» (для ответа от администратора)

События:

Важно! Событие: «Получил сообщение» от админа не работает по умолчанию. Как настроить посмотрите в инструкции.

1) Событие «Получил сообщение от администратора» с текстом, подходящим под регулярное выражение ^Создай запрос:

Пример события
Пример события

Действия:

1) Добавляем временную переменную %prompt%

со значением:

{reg}%content%~~Создай запрос:~~0~~{/reg}

которая найдет из регулярного выражения введенный совет. Рассмотрим ее подробнее:

  • %content% — означает, что поиск будет идти по тексту введенному пользователем.
  • Создай запрос— означает, что поиск будет проходить по шаблону, фраза начинается со слов Создай запроспосле чего из фразы мы удалим данную фразу оставив только запрос. Подробности в инструкции.
Пример действия
Пример действия

2) Действием «Задать временную переменную» с названием %api_key%со значением:

{get}373069{/get}
Это пример. У вас будет ДРУГОЙ номер ресурса
Это пример. У вас будет ДРУГОЙ номер ресурса

3) Для отправки запроса используем действие «Отправить GET/POST запрос» с переключателем JSON POSTна адрес:

https://api.openai.com/v1/chat/completions
Пример запроса
Пример запроса

параметрами:

  • messages.0.roleсо значением user
  • messages.0.contentсо значением %prompt%
  • max_tokens со значением (int)1024
  • modelсо значением gpt-3.5-turbo

и заголовком:

  • Authorization со значением Bearer %api_key%

Рассмотрим подробнее:

  • prompt — запрос боту
  • max_tokens — максимальное количество токенов для запроса/ответа бота. 1000 токенов примерно 1500 кириллическим символам.
  • modelвыбор модели

В заголовке указываете ключ Авторизации.

4) Во временной переменной %error% формируем текст при ошибке от бота. Например, через функцию {rand}

{rand}Я устал|Нет настроения отвечать{/rand}
Пример ошибки
Пример ошибки

5) Для того, чтобы проверить получить текст ответа от бота во временной переменной %text%через JSON.PATH достаем текст от бота:

%response.choices.0.message.content%
Ответ от бота
Ответ от бота

6) Во временной переменной %ok% формируем текст при ответе от бота. Например, просто передаем текст.

%text%
Пример текста
Пример текста

7) Условная переменная %text% cо значением:

  • %ok%
    если %text% подходит под регулярку точка
  • ИЛИ: %error%

То есть, есть адекватный ответ от бота мы выдаем его, а нет, выдаем ошибку.

Пример условий
Пример условий

8) Отправляем сообщение с текстом:

%text%
Пример действия
Пример действия

9) Опционально: действием: «Отправить сообщение» отправляем сообщение сотруднику с текстом:

Промт:%prompt%
Ответ бота:%text%
Пример действия
Пример действия

10) Действие: «Прервать/продолжить выполнение команды» с переключателем продолжено, если Событие 1914801 есть среди текущих (то есть запускается в комментариях)

Запускаем только в случае коммента
Запускаем только в случае коммента

11) Опционально пишем комментарий действием «Написать комментарий в VK» с текстом:

%text%
Важно! Для ответного комментария не забудьте нажать Еще→ «Ответить» на комментарий с ID: сюда вставить переменную %object_id% или кликнуть по сноске справа рядом
Пример действия
Пример действия

На этом все. Тестируем.

Все отлично! Сегодня мы научились интегрировать ChatGPT с автопилотом. Творческих успехов.

Оценить / обсудить статью можно в комментариях к этому посту.

875 views·16 shares