Як додати генерацію зображень у чат-боті за допомогою інструментів 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 запиту

Додайте в ланцюжок блок «Запит API» (API request).

Вкажіть потрібну URL-адресу для роботи зображеннями

У рядку «Отримати дані 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.

Ви також можете додати підпис до зображення та інші елементи повідомлення.

Зі збереженням посилання в змінну

Якщо між надсиланням запиту та видачею зображення користувачеві ви плануєте додавати інші блоки або використовувати отриману адресу в подальшому листуванні, ви можете зберегти її в змінну в аудиторії чат-бота з типом URL.

Тоді в блоці «Повідомлення» (Message) для надсилання зображення користувачеві можна вказати назву змінної, в яку зберегли адресу.

Тестування готового ланцюжка

Збережіть та запустіть отриманий ланцюжок, щоб перевірити, як відбуватиметься взаємодія з користувачем.

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

    Оцінка: 4 / 5

    Назад

    Як налаштувати голосове розпізнавання повідомлень в чат-ботах

    Далі

    Як підключити ChatGPT від OpenAI до чат-бота

    Спробуйте бота для розсилок в Facebook Messenger безкоштовно