Как добавить генерацию изображений в чат-боте с помощью инструментов OpenAI

Генерация изображений — один из эффективных инструментов для создания эскизов и персонализации контента. Вы можете подключить AI-генератор изображений в мессенджер, чтобы помочь клиентам визуализировать свой запрос.

В SendPulse нет прямой интеграции с генераторами изображений в чат-ботах, но если они позволяют получать доступ по API, вы можете подключить их с помощью блока Запрос API в нужной цепочке. В статье рассмотрим такую интеграцию на примере модели DALL·E от OpenAI.

Краткое знакомство с моделью DALL·E

Модель DALL·E позволяет создавать свои изображения по текстовому описанию, а также генерировать один или несколько вариантов на основе переданного изображения. С ее помощью можно сэкономить время и усилия, например, при подготовке черновиков и эскизов.

Вот несколько примеров бизнес-кейсов, где использование сгенерированных изображений может быть полезным:

  • Онлайн-магазины: для создания уникальных изображений товаров, подготовки эскизов для индивидуальных заказов покупателей.
  • Маркетинг: для иллюстрирования рекламных материалов уникальными изображениями.
  • Недвижимость: для создания эскизов интерьеров, виртуальных туров по квартирам и домам.
  • Страховые компании: для визуализаций аварийных ситуаций, иллюстрирования инструкций.
  • Туристические агентства: для создания визуализаций экскурсий и туров.

Images API DALL·E находится в стадии разработки и бета-тестирования, поэтому скорость работы генератора ограничена до 50 изображений в минуту. Если вам понадобится увеличить лимит, ознакомьтесь со статьей справочного центра OpenAI.

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

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

Для поиска вдохновения при написании подсказок также рекомендуем ознакомиться с общими советами по работе с моделями OpenAI в статье Как подключить GPT к чат-боту.

Получение текста от пользователя

Перейдите в раздел Чат-боты (Chatbots) и создайте новую цепочку с триггером запроса генерации изображения или подберите нужную среди существующих.

Чтобы запросить у пользователя подсказку о том, какое изображение ему требуется, добавьте в редакторе цепочек блок Сообщение (Message). Включите опцию Ждать ответ пользователя (Wait for the subscriber’s response) и укажите название переменной, в которую будет записан ответ (в рассмотренном примере это request).

Для обработки текстовой подсказки ответ следует валидировать как строку (String).

Отправка API запроса

Укажите нужный адрес URL для работы c изображениями

Добавьте в цепочку блок Запрос API (API request).

В строке Получить данные по URL (Retrieve data from an external URL) укажите метод запроса POST и адрес запроса к API.

Для генерации изображения по тексту используется следующий адрес:

https://api.openai.com/v1/images/generations

Укажите метод авторизации

В заголовке запроса добавьте способ авторизации и тип контента:

Authorization Bearer {{$OPENAI_KEY}}
Content-Type application/json

Где {{$OPENAI_KEY}}глобальная переменная из аудитории чат-бота, в которой хранится ключ доступа к API OpenAI. Вы также можете указать само значение ключа в строке, но его сохранение в виде переменной облегчает повторное использование в других цепочках.

Добавьте тело запроса

В теле запроса (Request body) вам необходимо передать полученное текстовое описание, количество генерируемых изображений и их размеры.

Пример тела запроса:

  {
  "prompt": "{{request}}",
   "n": 1,
  "size": "256x256"
}

Где prompt — полученное описание, сохраненное в переменной аудитории чат-бота (в нашем случае {{request}});
n — количество генерируемых изображений (передается натуральным числом (integer) от 1 до 10);
size — размер изображений в пикселях (доступны варианты: 256x256, 512x512 или 1024x1024, при этом изображения меньшего размера генерируются быстрее).

Получите адрес изображения

Отправьте тестовый запрос с помощью кнопки Проверить запрос (Test request). В ответе вы получите URL-адрес готового изображения.

Отправка изображения

Без сохранения ссылки на изображение

Если следующим сообщением вы выводите сгенерированное изображение пользователю, вы можете указать путь к нему в виде JSON Path: {{$['data']['0']['url']}}.

Обратите внимание, что данные, которые вы не записываете, а используете через JSON Path, можно использовать только один раз в следующем текстовом блоке. Если вам нужно записать результат, сохраните получаемое значение в переменную.

Для этого в ветке успешно обработанного запроса добавьте блок Сообщение (Message), добавьте элемент Изображение (Image) и выберите источник изображения Image URL.

В поле с адресом URL укажите JSON Path.

Вы также можете добавить подпись к изображению и другие элементы сообщения.

С сохранением ссылки в переменную

Если между отправкой запроса и выдачей изображения пользователю вы планируете добавлять другие блоки или использовать полученный адрес в дальнейшей переписке, вы можете сохранить его в переменную в аудитории чат-бота c типом URL.

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

Тестирование готовой цепочки

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

    Оцените, насколько полезна статья "Как добавить генерацию изображений в чат-боте с помощью инструментов OpenAI"

    Оценка: 5 / 5 (7)

    Назад

    Как настроить голосовое распознавание сообщений в чат-ботах

    Далее

    Как подключить ChatGPT от OpenAI к чат-боту

    Популярное в нашем блоге

    Создайте собственный чат-бот