Основные компоненты#
Конфигурация бота#
Бот наследует все параметры конфигурации от базового класса GreenAPIBot
, включая возможность настраивать параметры экземпляра GREEN-API.
Полные параметры конфигурации для WhatsappGptBot:
bot = WhatsappGptBot(
# Обязательные параметры
id_instance="ваш-id-экземпляра",
api_token_instance="ваш-api-токен",
openai_api_key="ваш-openai-api-ключ",
# Опциональные GPT-специфические параметры
model="gpt-4o", # Модель по умолчанию
max_history_length=10, # Максимальное количество сообщений в истории разговора
system_message="Вы - полезный ассистент.", # Системное сообщение для установки поведения
temperature=0.5, # Температура для генерации ответов
error_message="Извините, я не смог обработать ваш запрос. Пожалуйста, попробуйте снова.",
session_timeout=1800, # Таймаут сессии в секундах (30 минут)
# Опциональные параметры из базового бота
bot_debug_mode=False, # Включить отладочные логи
debug_mode=False, # Включить режим отладки API
raise_errors=True, # Генерировать ли исключения при ошибках API
settings={ # Настройки экземпляра GREEN-API
"webhookUrl": "", # Пользовательский URL для вебхука
"webhookUrlToken": "", # Токен безопасности для вебхука
"delaySendMessagesMilliseconds": 500, # Задержка между сообщениями
"markIncomingMessagesReaded": "yes", # Отмечать сообщения как прочитанные
"incomingWebhook": "yes", # Включить входящие вебхуки
"keepOnlineStatus": "yes", # Поддерживать статус онлайн в WhatsApp
"pollMessageWebhook": "yes", # Включить вебхуки для опросов
}
)
WhatsappGptBot#
Основной класс для создания и управления вашим WhatsApp-ботом на базе OpenAI:
from whatsapp_chatgpt_python import WhatsappGptBot
bot = WhatsappGptBot(
id_instance="ваш-id-экземпляра",
api_token_instance="ваш-api-токен",
openai_api_key="ваш-openai-api-ключ",
model="gpt-4o",
system_message="Вы - полезный ассистент, специализирующийся на поддержке клиентов.",
max_history_length=15,
temperature=0.7,
settings={
"webhookUrl": "",
"markIncomingMessagesReaded": "yes",
"keepOnlineStatus": "yes",
"delaySendMessagesMilliseconds": 500,
}
)
# Запуск бота
bot.run_forever()