Як налаштувати AI-чат-бота WhatsApp: від вебхука до RAG

При інтеграції <cite><a href="https://en.wikipedia.org/wiki/WhatsApp">WhatsApp</a></cite> Business API з AI-чат-ботом розробники часто стикаються з неочевидними помилками: неправильний підпис вебхука, блокування шаблонів через порушення політик Meta, перевищення лімітів на відправлення повідомлень.

Напрямки AI-розробки

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    998
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1267
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    1006

При інтеграції WhatsApp Business API з AI-чат-ботом розробники часто стикаються з неочевидними помилками: неправильний підпис вебхука, блокування шаблонів через порушення політик Meta, перевищення лімітів на відправлення повідомлень. Ці проблеми можуть паралізувати роботу бота на кілька днів. Наприклад, невірна обробка hub.challenge призводить до того, що Meta не може підключитися до вашого сервера, і верифікація провалюється. Або шаблон з рекламним текстом відхиляється, і клієнти не отримують критично важливі сповіщення. Ми накопичили досвід вирішення таких ситуацій за 50+ проєктів, що підтверджено сертифікаціями та гарантією якості, і готові поділитися ним.

Типові проблеми при інтеграції

Помилка верифікації webhook — Meta очікує, що ваш сервер поверне hub.challenge при GET-запиті. Якщо в коді не обробити параметри hub.mode та hub.verify_token, верифікація провалиться. Рішення — чітко реалізувати challenge-response, як у прикладі нижче.

Блокування шаблонів повідомлень — шаблони відхиляють, якщо текст містить рекламу, посилання на сторонні ресурси або прохання перейти за посиланням. Ми рекомендуємо формулювати шаблони як прості сповіщення: «Ваше замовлення №{order_number} доставлено». Уникайте закликів до дії поза кнопками.

Перевищення ліміту повідомлень — Cloud API дозволяє відправити 250 повідомлень на секунду на один номер. Якщо вашому боту потрібно більше — використовуйте кілька номерів або ввімкніть паузу між відправленнями. Ми використовуємо чергу на Redis для рівномірного завантаження.

Чому RAG критичний для точності відповідей?

LLM без доступу до бази знань компанії галюцинує: вигадує неіснуючі товари, плутає статуси замовлень. RAG (Retrieval-Augmented Generation) вирішує цю проблему: перед генерацією відповіді ми шукаємо релевантний контекст у векторній БД, використовуючи алгоритми векторизації та embedding. В одному проєкті для інтернет-магазину одягу ми впровадили RAG-пайплайн:

  • Вилучаємо інтент (замовлення/повернення/статус) через few-shot-промпт до GPT-4o.
  • Шукаємо відповідь у векторизованій базі знань (ChromaDB, 10 000 документів).
  • Відправляємо повідомлення протягом 500 мс (p99 latency).

Результат: 78% питань обробляє бот, оператори займаються лише складними випадками. Клієнт заощадив 40 000 грн щомісяця.

Як вибрати відповідну LLM для чат-бота?

Модель Latency (p99) Якість відповідей Відносні витрати
GPT-4o ~500 мс Відмінна Високі
LLaMA 3 70B (vLLM) ~800 мс Хороша Середні
Mistral 7B ~300 мс Задовільна Низькі

Вибір моделі залежить від бюджету та вимог до точності. Для більшості B2C-сценаріїв достатньо LLaMA 3 з RAG. GPT-4o в 1.6 рази краще за LLaMA 3 за якістю відповідей, але має вищу вартість.

Порівняння способів підключення

Спосіб Швидкість запуску Комісія Контроль даних Рекомендація
Cloud API (Meta) 1–2 дні Безкоштовно перші 1000 розмов/міс Дані на серверах Meta Для стандартних проєктів
On-premise API 1–2 тижні Немає Повний контроль Застаріває, мігруємо на Cloud
BSP (Infobip, Edna) 2–5 днів +20–30% до вартості Залежить від BSP Зручно для компаній без розробників

Cloud API в 3 рази краще за BSP при обсягах понад 5000 розмов/міс за швидкістю підключення та вартістю.

Процес розробки

  1. Аналітика: збираємо типові діалоги, виділяємо інтенти, будуємо архітектуру RAG.
  2. Проєктування: схеми потоків, вибір LLM (зазвичай GPT-4o або LLaMA 3 70B через vLLM), векторна БД.
  3. Реалізація: код інтеграції (Python, FastAPI), webhook-обробник, модуль шаблонів.
  4. Тестування: синтетичні діалоги, перевірка семплів відповідей, A/B-тест з операторами.
  5. Деплой: контейнеризація (Docker), HTTPS з Let's Encrypt, моніторинг (Prometheus + Grafana).
Приклад валідації webhook на Python
def verify_webhook(request): mode = request.args.get('hub.mode') token = request.args.get('hub.verify_token') challenge = request.args.get('hub.challenge') if mode == 'subscribe' and token == VERIFY_TOKEN: return challenge, 200 return 'Forbidden', 403 

Як уникнути типових помилок?

  • Шаблони: створюйте 5–10 шаблонів під часті сценарії (підтвердження замовлення, статус доставки). Процес схвалення займає 1–3 дні.
  • Сесія 24 години: якщо клієнт не пише довше, відправляємо шаблон. Для критичних сповіщень використовуйте Category: Service.
  • Кнопки: не більше 3 reply або 10 list. Для опитувань або вибору товарів — list, для швидких дій — reply buttons.

Що входить у роботу

  • Документація API: опис усіх ендпоінтів, шаблонів та вебхуків.
  • Вихідний код чат-бота: чистий Python з підтримкою RAG та кешуванням.
  • Інструкція з розгортання: Docker Compose, налаштування Caddy/nginx, змінні оточення.
  • Моніторинг: дашборд з метриками (latency, кількість діалогів, помилки).
  • Навчання операторів: керівництво з роботи з ботом та ескалацією.

Наша команда має 7+ років досвіду в AI/ML та розробці чат-ботів, виконала 50+ проєктів у цій галузі. Замовте консультацію по вашому проєкту — ми допоможемо вибрати оптимальну архітектуру. Отримайте безкоштовний аудит вашої поточної архітектури. Оцінимо проєкт за 2 дні.