Anglais | 中文
Un bot Chatgpt pour télégramme basé sur Node.js. Prise en charge des API sans navigateur et basées sur le navigateur.
? V2 a été publié!
- Prise en charge de la conversation par chat par @vadko.
- Prise en charge de la file d'attente de messages en tant que facultatif par @vadko.
- Ajoutez un mécanisme de délai d'expiration pour empêcher la file d'attente de messages. Vous pouvez remplacer le délai d'expiration par défaut dans le fichier de configuration.
- Vous pouvez tirer l'image docker prédéfinie de Docker Hub maintenant!
- Soutenez l'API officielle Openai Chat Completion.
- Prise en charge du proxy en utilisant une fonction de récupération personnalisée.
Nous vous conseillons fortement d'utiliser l'API official . Il y a des rumeurs selon lesquelles OpenAI peut interdire votre compte si vous continuez à utiliser l'API unofficial et browser .
- Soutenez la file d'attente des messages pour éviter la limite de taux.
- Améliorez l'analyse de marque.
- Prise en charge du préfixe et du suffixe de l'invite personnalisés (vous permettant de personnaliser l'identité et le comportement du bot).
- Support Node.js v19.
Nous avons ajouté une prise en charge de l'API proxy non officielle par @ Acheong08. Cette API utilise un serveur proxy qui permet aux utilisateurs de contourner la protection CloudFlare et d'utiliser le vrai chatppt. Veuillez consulter l'utilisation pour plus de détails.
Pour les utilisateurs précédents, nous avons mis à jour nos options API.
api.versionest désormaisapi.type, avec Optionsbrowser(auparavantv3),official(auparavantv4) etunofficial. Veuillez mettre à jour votre fichier de configuration en conséquence.
Selon l'un des responsables des serveurs proxy inverses, OpenAI a corrigé cette méthode. Vous devez donc soit utiliser l'API officielle sans navigateur avec des modèles officiels (qui coûte de l'argent), soit utiliser la solution basée sur le navigateur.
Nous avons publié le v2.0.0 de ce bot, qui prend en charge les API sans navigateur et basé sur le navigateur. Vous pouvez basculer entre les deux API à tout moment à l'aide du fichier de configuration. De plus, nous avons refactorisé la base de code pour la rendre plus maintenable et plus facile à étendre.
Pour les anciens utilisateurs, vous devrez passer du fichier
.enven fichiers JSON dans le dossierconfig/.
| Chat privé | Chat de groupe |
|---|---|
![]() | ![]() |
api.official.systemMessage )Merci @ transitif-bullshit d'avoir créé cette table facile à comprendre!
| Taper | Gratuit? | Robuste? | Qualité? |
|---|---|---|---|
official | Non | ✅ Oui | ✅ Real Chatgpt Modèles |
unofficial | ✅ Oui | ☑️ Peut-être | ✅ Real Chatgpt |
browser | ✅ Oui | Non | ✅ Real Chatgpt |
official : utilise le modèle gpt-3.5-turbo par défaut avec l'API officielle d'Openai Chat Completion (approche officielle, robuste, mais ce n'est pas gratuit)unofficial : utilise un serveur proxy non officiel pour accéder à l'API backend de ChatGPT d'une manière qui contourne CloudFlare (utilise le vrai chatppt et est assez léger, mais s'appuie sur un serveur tiers et est limité à la vitesse)browser (non recommandé): utilise du marionnetteer pour accéder au Chatgpt WebApp officiel (utilise le vrai chatppt, mais très feuilleté, poids lourd et sujette aux erreurs)Avertissement
Il y a des rumeurs selon lesquelles OpenAI peut interdire votre compte si vous continuez à utiliser l'API
unofficialetbrowser. Utilisez-le à vos propres risques.
Pour commencer, suivez ces étapes:
local.json sous le dossier config/ . Vous pouvez copier la config/default.json en tant que modèle.local.json en suivant les instructions du fichier. Les paramètres dans local.json remplaceront les paramètres par défaut dans default.json .api.type sur official si vous souhaitez utiliser l'API officielle sans navigateur. Fournissez ensuite votre clé API OpenAI et d'autres paramètres. Vous pouvez vous référer à cela pour plus de détails. Notez que cela coûtera vos crédits.api.type sur unofficial si vous souhaitez utiliser l'API non officielle sans navigation. Fournissez ensuite votre jeton d'accès OpenAI (comment obtenir votre jeton d'accès?) Et d'autres paramètres. Vous pouvez vous référer à cela pour plus de détails.api.type sur browser si vous souhaitez utiliser l'API basé sur le navigateur (non recommandé). Fournissez ensuite les informations d'identification OpenAI / Google / Microsoft et d'autres paramètres. Vous pouvez vous référer à cela et pour plus de détails. Assurez-vous que un navigateur à base de chrome est installé.Ensuite, vous pouvez démarrer le bot avec:
pnpm install
pnpm build && pnpm startPour commencer, suivez ces étapes:
Créez un dossier nommé config et créez un fichier local.json . Vous pouvez suivre les instructions de la section "Choix # 1: Node" pour personnaliser les paramètres.
Exécutez la commande suivante pour démarrer le bot:
docker run -d -v ./config:/app/config raineggplant/chatgpt-telegram-bot:latest Cela tirera la dernière image qui ne prend en charge que l'API sans navigateur. Si vous souhaitez utiliser l'API basé sur le navigateur, vous pouvez ajouter un suffixe -browser à la balise, par exemple, raineggplant/chatgpt-telegram-bot:latest-browser .
Pour discuter avec le bot en télégramme, vous pouvez:
/chat ou la commande que vous avez spécifiée dans le fichier de configuration JSON)Remarque Assurez-vous que vous avez activé le mode de confidentialité de votre bot avant de l'ajouter à un groupe, ou il répondra à chaque message du groupe.
Le bot a également plusieurs commandes.
/help : afficher les informations d'aide./reset : réinitialisez le fil de chat actuel et démarrez un nouveau./reload (Admin requis, API basé sur le navigateur uniquement): actualisez la session Chatgpt.Remarque Lorsque vous utilisez une commande dans un groupe, assurez-vous d'inclure une mention après la commande, comme
/help@chatgpt_bot.
Vous pouvez utiliser XVFB pour créer un FrameBuffer virtuel sur un serveur sans tête et exécuter ce programme:
xvfb-run -a --server-args= " -screen 0 1280x800x24 -nolisten tcp -dpi 96 +extension RANDR " pnpm startNous vous recommandons d'utiliser Google Auth pour éviter les recapts de connexion compliqués. Si vous utilisez un compte OpenAI, vous devrez peut-être utiliser Nopecha ou 2CaptCha ou résoudre manuellement le RecaptCha (en vous connectant au serveur d'affichage à l'aide de X11VNC). Pour plus de détails sur la résolution de CAPTCHA, veuillez vous référer au référentiel API.
Licence MIT.
Laissez une étoile si vous trouvez ce projet utile.