Это чат-бот Telegram на основе Python, который использует API OpenAI с моделями GPT-3.5-Turbo* для предоставления разговорных ответов на пользователей в диалоговом контекстном порядке.
Вы можете легко настроить параметры моделей OpenAI для чат -бота, используя файл models.yml . Этот подход позволяет быстро регулировать настройки модели, такие как temperature , max_tokens , voice и так далее, не изменяя код. Просто отредактируйте файл models.yml .
Клонировать или загрузить репозиторий.
git clone [email protected]:welel/dialog-chat-bot.git
Оформление на GPT-3.5-Turbo .
git checkout gpt-3.5-turbo
Создайте виртуальную среду, активируйте ее и установите зависимости.
python -m venv env
source env/bin/activate
pip install --upgrade pip && pip install -r requirements.txt
Чтобы использовать голосовые сообщения, установите ffmpeg.
# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg
# on Arch Linux
sudo pacman -S ffmpeg
# on MacOS using Homebrew (https://brew.sh/)
brew install ffmpeg
# on Windows using Chocolatey (https://chocolatey.org/)
choco install ffmpeg
# on Windows using Scoop (https://scoop.sh/)
scoop install ffmpeg
Скопировать/переименовать .env.dist to .env и заполнить его данными.
cp .env.dist .env
Установите бот Telegram и получите токен бота (см. Https://medium.com/geekculture/generate-telegram-token-for-bot-api-d26faf9bf064 для инструкций).
Установите учетную запись Openai и получите ключ API (см. Https://beta.openai.com/docs/quickstart для инструкций).
Запустить бот.
python bot.py
Установите Docker и Docker Compose (ссылка, если вы не знаете, как).
Скопировать/переименовать .env.dist to .env и заполнить его данными.
cp .env.dist .env
Теперь просто создайте изображение и запустите его с помощью Docker Compose:
docker compose build
docker compose up -d
Чтобы начать взаимодействовать с ботом, отправьте любое сообщение в Telegram Bot.
Чатбот использует конфигурации, указанные в файле models.yml для адаптации его ответов. Этот файл обеспечивает подробную настройку параметров модели OpenAI, предлагая гибкость для регулировки поведения бота в соответствии с различными потребностями или контекстами.
models.yml Файл models.yml в каталоге проекта содержит конфигурации для различных моделей или сценариев. Вот как это настроить:
Выбор модели : под ключом models вы можете определить несколько конфигураций.
Каждая конфигурация может указать различную модель OpenAI. Например, конфигурация default использует gpt-3.5-turbo с пределом max_tokens 100. Вам необходимо установить имя конфигурации модели в переменной среды MODEL_CONFIG_NAME , чтобы выбрать конфигурацию.
Настройка модели чата OpenAI (раздел chat_model ) :
gpt-3.5-turbo , каждая из которых имеет различные возможности и размеры контекста. Настройка поведения чат -бота (раздел chatbot ) :
max_context_len определяет общее количество токенов (пользовательские входы и ответы бота), рассматриваемые в одном окне разговора. Корректировка этого помогает управлять деталями истории разговоров и может повлиять на вычислительные требования и выставление счетов. Настройка голоса BOT ( voice раздел) :
alloy , echo , fable , onyx , nova и shimmer . Каждый голос имеет уникальный тон и стиль.