Интеграция с CHATGPT
Хотите, чтобы ваши боты умели генерировать крутой экспертный контент? Для маркетологов, кулинаров, рукодельниц, эзотериков, психологов. ИИ справится на отлично с любой темой.
Хотите, чтобы боты в ваших чатах были не скучными, отличались умом и сообразительностью, развлекали участников? Ваши клубы станут интересными и небанальными.
Хотите, чтобы бот заменил человека в поддержке или сопровождении клиентов? Это что-то из будущего? Нет, это настоящее)
В данной инструкции мы покажем как интегрировать ChatGPT с Автопилотом
Интересно? Тогда идем скорее в Автопилот.
Важно! У вас должен быть аккаунт ChatGPT и привязана платежная карта.
План инструкции:
Создание ключа ChatGPT
- Создать аккаунт на сайте https://chat.openai.com/ (не РФ)
- Cоздать ключ API (платно, нужно привязывать карту не РФ)
- Перейти по ссылке
- Нажать «Secret Key» и следуя указаниям получить ключ.
- Скопировать ключ в ресурс


Создание ресурса
Переходим в базу данных вашего сообщества — раздел Ресурсы/База данных и создаем там новый ресурс с названием: Ключ 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 раз увеличивает расход токенов.
Типы моделей:
- davinci: Это основной движок, который обычно используется для текстовых задач.
- curie: Это предыдущая версия движка, предшественник Davinci. Он все еще может использоваться, но рекомендуется использовать Davinci для большинства случаев.
- davinci-codex: Это более узко специализированный движок, специально настроенный для кодирования и программирования.
- text-davinci-003: Этот движок является обновлением оригинального "davinci" и предлагает улучшенную производительность и результаты.
Таким образом, text-davinci-003 - это улучшенная версия стандартного davinci, предназначенная для более эффективной обработки текстовых запросов. Больше всего актуальных моделей указано тут.
Команда «Получить ответ от бота»
Важно! Пример универсальной команды с реакцией и на комментарии и в личные сообщения.
События:
1) Написал сообщение с текстом, подходящим под регулярное выражение ^Создай запрос:
ВАЖНО! Для переключения переключатель с содержащим на подходящим под регулярку и вводим нужный текст. Если какие -то условия, например «Сотрудник Аккаунта» у вас были в других командах, то выбирайте их из каталога, нажатием на «Найти в каталоге»
По желанию добавляем условия:
1) «Сотрудник аккаунта, чтобы команду мог запустить только Администратор сообщества, либо тот, у кого есть разрешение.» Тогда команду сможет добавлять только Администратор.
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со значениемusermessages.0.contentсо значением%prompt%
max_tokensсо значением(int)1024modelсо значением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 с автопилотом. Творческих успехов.
Оценить / обсудить статью можно в комментариях к этому посту.
