Hiroshi est un chatbot Telegram basé sur GPT4Free qui offre un accès 100 % gratuit pour interagir avec les modèles linguistiques GPT-3.5, GPT-4 et Llama2, y compris Bing, You, AI Chat, et plus encore. Les utilisateurs ont la liberté de sélectionner leur modèle préféré ou leur fournisseur spécifique. Notez que la vitesse/stabilité peut être légèrement diminuée lorsque vous travaillez avec certains fournisseurs. Le contexte de la conversation est entièrement conservé lorsque vous basculez entre les modèles et les fournisseurs.
Remarque : Ce bot donne accès à des services publics gratuits. La qualité et la rapidité de ces services peuvent varier en fonction de diverses conditions et de leur charge actuelle. Si vous avez besoin d'un bot qui utilise l'API officielle OpenAI et que vous disposez d'une CLÉ API, veuillez consulter le référentiel suivant : https://github.com/s-nagaev/chibi.
Bien sûr! @hiroshi_gpt_bot
L'application n'est pas du tout gourmande en ressources. Il fonctionne parfaitement sur le Raspberry Pi 4 minimal et sur l'instance AWS EC2 t4g.nano
la moins chère (2 cœurs arm64, 512 Mo de RAM), tout en étant capable de servir plusieurs personnes simultanément.
Extrayez l'image Hiroshi Docker :
docker pull pysergio/hiroshi:latest
Exécutez le conteneur Docker avec les variables d'environnement nécessaires :
docker run -d
-e TELEGRAM_BOT_TOKEN= < your_telegram_token >
-v < path_to_local_data_directory > :/app/data
--name hiroshi
pysergio/hiroshi:latest
Remplacez
et
par les valeurs appropriées.
Créez un fichier docker-compose.yml
avec le contenu suivant :
version : ' 3 '
services :
hiroshi :
restart : unless-stopped
image : pysergio/hiroshi:latest
environment :
TELEGRAM_BOT_TOKEN :
volumes :
- hiroshi_data:/app/data
volumes :
hiroshi_data :
Remplacez
par les valeurs appropriées.
Exécutez le conteneur Docker :
docker-compose up -d
Veuillez visiter le répertoire d'exemples du référentiel actuel pour plus d'exemples.
Vous pouvez configurer Hiroshi à l'aide des variables d'environnement suivantes :
Variable | Description | Requis | Valeur par défaut |
---|---|---|---|
TELEGRAM_BOT_TOKEN | Votre jeton de bot Telegram | Oui | |
ALLOW_BOTS | Autoriser d'autres robots à interagir avec Hiroshi | Non | FAUX |
ANSWER_DIRECT_MESSAGES_ONLY | Si True, le bot dans les discussions de groupe répondra uniquement aux messages contenant son nom (voir le paramètre BOT_NAME ) | Non | vrai |
ASSISTANT_PROMPT | Invite initiale de l'assistant pour OpenAI Client | Non | "Vous êtes un assistant serviable et sympathique. Votre nom est Hiroshi" |
BOT_NAME | Nom du robot | Non | "Hiroshi" |
GROUP_ADMINS | Liste de noms d'utilisateur séparés par des virgules, c'est-à-dire "@YourName,@YourFriendName,@YourCatName" , qui doivent disposer d'autorisations exclusives pour définir le fournisseur et effacer l'historique des dialogues dans les discussions de groupe. | Non | |
GROUPES_WHITELIST | Liste des identifiants de groupe sur liste blanche, séparés par des virgules, c'est-à-dire "-799999999,-788888888" | Non | |
LOG_PROMPT_DATA | Enregistrez les invites de l'utilisateur et les réponses GPT à des fins de débogage. | Non | FAUX |
MAX_CONVERSATION_AGE_MINUTES | Âge maximum des conversations (en minutes) | Non | 60 |
MAX_HISTORY_TOKENS | Nombre maximum de jetons dans l'historique des conversations | Non | 1800 |
MESSAGE_FOR_DISALLOWED_USERS | Message pour afficher les utilisateurs non autorisés | Non | "Vous n'êtes pas autorisé à interagir avec moi, désolé. Contactez d'abord mon propriétaire, s'il vous plaît." |
PROCURATION | Paramètres proxy pour votre application | Non | |
RÉDIS | Chaîne de connexion Redis, c'est-à-dire "redis://localhost" | Non | |
REDIS_PASSWORD | Mot de passe Redis (facultatif) | Non | |
Nouvelles tentatives | Le nombre de nouvelles tentatives adressées au fournisseur en cas d'échec de la réponse | Non | 2 |
SHOW_ABOUT | Réglez-le simplement sur false si, pour une raison quelconque, vous souhaitez masquer la commande /about | Non | vrai |
TEMPS MORT | Délai d'expiration (en secondes) pour le traitement des demandes | Non | 60 |
USERS_WHITELIST | Liste de noms d'utilisateur sur liste blanche, séparés par des virgules, par exemple "@YourName,@YourFriendName,@YourCatName" | Non | |
MONITORING_URL | Active la fonctionnalité de surveillance et envoie la requête GET à cette URL toutes les secondes MONITORING_FREQUENCY_CALL. | Non | |
MONITORING_FREQUENCY_CALL | Si la fonctionnalité de surveillance est active, envoie la requête GET à MONITORING_URL toutes les MONITORING_FREQUENCY_CALL secondes. | Non | 300 |
MONITORING_RETRY_CALLS | Enregistre la réponse d'erreur uniquement après les tentatives de MONITORING_RETRY_CALLS. | Non | 3 |
SURVEILLANCE_PROXY | Surveillance de l'URL du proxy. | Non |
Veuillez visiter le répertoire d'exemples pour l'exemple du fichier .env
.
Nous utilisons SemVer pour le versioning. Pour les versions disponibles, voir les balises sur ce référentiel.
Ce projet est sous licence MIT - voir le fichier LICENSE.md pour plus de détails.