Общайтесь в WhatsApp с искусственным интеллектом
Сервер: Node.JS, Express
База данных: Редис
API: WhatsApp Business Cloud API, OpenAI GPT-3.
Развертывание: Docker, Nginx, Linode.
Разное: ElasticSearch, Кибана.
WhatsApp-коннектор: Коннектор WhatsApp — это микросервис, который подключает бота к API WhatsApp, обрабатывает обмен сообщениями и входящие запросы от WhatsApp.
Чат-бот: Чат-бот — это микросервис, который будет подключаться к модели OpenAI GPT-3, чтобы отвечать на запросы пользователей на основе подсказок.
Для Meta Developers необходимо выполнить несколько предварительных условий и настроить. Подробности следуйте приведенному ниже руководству: https://blog.amitwani.dev/create-a-chatbot-using-whatsapp-cloud-api.
docker-compose
Обновить переменные среды
docker-compose-local.yml
внутри папки docker
для следующих переменных среды:VERIFY_TOKEN
— токен проверки для WhatsApp WebhookOPENAI_API_KEY
— API-ключ OpenAIWHATSAPP_TOKEN
— постоянный/временный токен аутентификации WhatsApp Business с разрешением whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
— конечная точка API отправки сообщений WhatsApp Cloud API с идентификатором номера телефонаCHATBOT_URL
— URL-адрес API микросервиса чат-бота. Запустите команду docker-compose -f docker-compose.local.yml up -d
внутри папки docker
.
npm
Перейдите к whatsapp-connector
и chatbot
чтобы установить их зависимости.
npm install
или
yarn add
Обновить переменные среды
.env
, скопировав .env.sample
в оба микросервиса.VERIFY_TOKEN
— токен проверки для WhatsApp WebhookOPENAI_API_KEY
— API-ключ OpenAIWHATSAPP_TOKEN
— постоянный/временный токен аутентификации WhatsApp Business с разрешением whatsapp_business_messaging
WHATSAPP_SEND_MESSAGE_API
— конечная точка API отправки сообщений WhatsApp Cloud API с идентификатором номера телефонаCHATBOT_URL
— URL-адрес API микросервиса чат-бота.Запустить сервер
npm run start
Легко развертывайте с помощью Docker, используя Dockerfile
расположенный в соответствующей папке служб, или файл docker-compose.yml
в папке docker
.
Действия GitHub используются для создания рабочего процесса CI/CD, указанного в файле workflow.yml
.
main
веткеdocker-compose.yml
, заменив переменные среды из секретов GitHub.docker-compose.yml
и nginx.conf
на серверdocker-compose
для воссоздания контейнеровЕсли у вас есть какие-либо отзывы, напишите мне по адресу [email protected].