Il s'agit d'un chatbot télégramme basé sur Python qui utilise l'API OpenAI avec des modèles GPT-3.5-Turbo- * pour fournir des réponses conversationnelles aux utilisateurs de manière consacrée au contexte de dialogue.
Vous pouvez facilement configurer les paramètres des modèles OpenAI pour le chatbot en utilisant le fichier models.yml . Cette approche permet des ajustements rapides des paramètres du modèle tels que temperature , max_tokens , voice et ainsi de suite sans modifier le code. Modifiez simplement le fichier models.yml pour modifier le comportement et le style de réponse de votre chatbot selon les besoins.
Clone ou télécharger le référentiel.
git clone [email protected]:welel/dialog-chat-bot.git
Découvrez sur la branche GPT-3.5-turbo .
git checkout gpt-3.5-turbo
Créez un environnement virtuel et activez-le et installez les dépendances.
python -m venv env
source env/bin/activate
pip install --upgrade pip && pip install -r requirements.txt
Pour utiliser les messages vocaux, veuillez installer 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
Copier / renommer .env.dist à .env et les remplir de données.
cp .env.dist .env
Configurez un bot télégramme et obtenez un jeton de bot (voir https://medium.com/geekculture/generate-telegram-token-for-bot-api-d26faf9bf064 pour les instructions).
Configurez un compte OpenAI et obtenez une clé API (voir https://beta.openai.com/docs/quickstart pour les instructions).
Exécutez le bot.
python bot.py
Installez Docker et Docker Compose (lien si vous ne savez pas comment).
Copier / renommer .env.dist à .env et les remplir de données.
cp .env.dist .env
Maintenant, construisez simplement l'image et exécutez-la avec Docker Compose:
docker compose build
docker compose up -d
Pour commencer, interagir avec le bot, envoyez n'importe quel message au bot télégramme.
Le chatbot utilise des configurations spécifiées dans le fichier models.yml pour adapter ses réponses. Ce fichier permet une personnalisation détaillée des paramètres du modèle OpenAI, offrant une flexibilité pour ajuster le comportement du bot en fonction de différents besoins ou contextes.
models.yml Le fichier models.yml dans le répertoire de projet contient des configurations pour différents modèles ou scénarios. Voici comment le configurer:
Sélection d'un modèle : Sous la touche models , vous pouvez définir plusieurs configurations.
Chaque configuration peut spécifier un modèle OpenAI différent. Par exemple, la configuration default utilise gpt-3.5-turbo avec une limite max_tokens de 100. Vous devez définir un nom de configuration de modèle dans la variable d'environnement MODEL_CONFIG_NAME pour sélectionner la configuration.
Configuration du modèle de chat Openai (section chat_model ) :
gpt-3.5-turbo , chacune avec différentes capacités et tailles de fenêtre de contexte. Configuration du comportement du chatbot (section chatbot ) :
max_context_len définit le nombre total de jetons (entrées utilisateur et réponses BOT) considérés dans une seule fenêtre de conversation. L'ajustement de cela permet de gérer les détails de l'historique conversationnel et peut avoir un impact sur les exigences de calcul et la facturation. Configuration de la voix de Bot (section voice ) :
alloy , echo , fable , onyx , nova et shimmer . Chaque voix a un ton et un style uniques.