Создаем Telegram бота ChatGPT

Сейчас я хочу рассказать как создать бот, который будет находиться в Telegram и мог отвечать умными словами, а кроме того генерировать картинки.

Захожу на платформу https://leadteh.ru/

После стартового блока я создаю еще один:



Вставляю картинку и в описании пишу:



Далее создаю кнопки, которые будут отправлять в различные разделы.

1 кнопка:



Затем кликаю Настройка клавиатуры.

Здесь выбираю Telegram и кликаю Сохранить:



После этого, я около кнопки Получить ответ кликаю на Плюсик и Цепочка сообщений:



Кликаю на кнопку Текст, пишу в поле:



Опускаюсь ниже. Здесь выключаю, так как кнопок и ответа не будет.



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



Сейчас я добавлю блок и во вкладке ЕЩЕ:



Далее Специальные и выбираю:



Этот блок будет обрабатывать запрос и давать ответ.



Он немного отличается. Теперь я захожу в Документацию ChatGPT.

Здесь нужно зарегистрироваться https://platform.openai.com/docs/api-reference/introduction

Затем спускаюсь вниз и возьму вот эту ссылочку:



Затем ее вставляю в поле URL. На данную ссылку я буду ссылаться.

Метод, выбираю Пост и выбираем формат:



Я в данный момент выбираю первый.

Здесь же можно ознакомится с параметрами, которые нужно отправлять, а можно скопировать что есть:



В поле его вставляю и проверяю та ли стоит переменная:



У блока http есть команда Продолжить, которая срабатывает мгновенно и могу перейти.

А этот ползунок определяет какое количество секунд пользователь останется в этом блоке прежде чем автоматически перейти по команде Продолжить:



Это для того чтобы получить ответ от той ссылке на которую отправляется запрос.

Теперь добавлю заголовок. Я обязательно должна указать авторизацию которую от меня требуют. К примеру так:



Также очень важно пройти авторизацию. Поэтому я создаю второй заголовок и вставляю значения:



А вот вместо этого, нужно добавить ключ, который можно получить в личном кабинете. Для этого кликаем на Create New secretkey:



Вот он ключ:



Я его копирую и вставляю в поле после значения baerer:



Протестировав, я прошла очень быстро блок не получив ответа. Но для этого мне нужно понять, какой ответ мне нужен.

Для этого я включаю:



А Отправлять в запросе данные, отключаю.

Если ответа нет, то для этого и существует задержка, которая позволяет остаться в блоке до получения ответа если от сервера приходит ошибка, то я должна тоже об этом знать.

Поэтому в блоке http есть красная кнопка, но это не кнопка, а команда по которой пойдет пользователь, если ответ не придет. Я кликаю на плюсик. Цепочка сообщений:



Здесь в поле пишу: Нет отчета от сервера и перенаправляю на главный блок:



Задержку я поставила 20 секунд, этого достаточно и вот получаю ответ:



Что здесь написано мне поможет расшифровать сервис.

Расшифровщик запросов JSON: https://jsonformatter.org/

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



Если перейду в режим Form, то здесь увижу какое количество токенов использовано для вопроса, для ответа. Здесь так же увижу ответ от искусственного интеллекта, который могу получить:



Я кликаю на текст и формируется строчка:



Я ее копирую, перехожу в блок http, включаю Записать ответ и вношу переменную.



Вместо стрелочек я ставлю точки и придумываю переменную, в которую будет попадать ответ от бота.

Теперь в продолжении цепочки сообщений я пишу:



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



И выбираю Главный сценарий:



Теперь в блоке http отключаю Выводить тело ответа в чат, чтобы в Боте не видеть эти сообщения.

Я возвращаюсь в главное меню (цепочка сообщений), добавляю кнопку Сгенерировать изображение:



Я ее тоже делаю инлайн и кликаю Сохранить. Затем добавляю еще один блок:



Имя переменной ставлю pront_image, а запрос для генерации такой:



После этого я направлю на другой блок:



Нижний блок http буду сейчас перенастраивать:



Пока оставила Ответ в чате. Захожу в документацию ChatGPT, копирую ссылку:



Вставляю ее в строку URL блока http. Здесь уже задержку можно указать побольше, 40 секунд.

Вот получила от бота ответ в 2 вариантах.

1 вариант:



2 вариант:



Можно использовать любой вариант. Копирую строку, перехожу в блок и буду использовать 2 переменные:




Выводить текст в чат, отключаю. Также можно создать 2 блока с одной переменной:



Картинки можно скачивать, а ссылки своеобразные и их использовать нельзя.

Загрузка...