utilisation de chatGPT dans Telegram

Créez un bot ChatGPT sur votre compte Telegram avec Python

Créez un bot ChatGPT sur votre compte Telegram avec Python

ChatGPT est un modèle de langage très avancé développé par OpenAI, conçu pour fournir des réponses précises et pertinentes à une grande variété de questions et de requêtes en langage naturel.

Personnellement je trouve que l’une des façons les plus faciles et pratiques d’accéder à ChatGPT est via Telegram, une application de messagerie instantanée populaire avec des millions d’utilisateurs à travers le monde.

Dans cet article, nous allons vous guider à travers les étapes simples pour utiliser ChatGPT sur Telegram via quelques lignes de codes Python, afin que vous puissiez tirer le meilleur parti de ce modèle de langage de pointe.

Ce dont vous avez besoin:

  • un compte chez OpenAI
  • votre éditeur de code préféré: moi c’est Visual Studio Code
  • un compte telegram

Etape 1: Obtenez votre clef API sur OpenAI.com

Pour ce faire, rien de plus simple, inscrivez vous et allez dans l’onglet API keys directement depuis ce lien

Créez un bot ChatGPT sur votre compte Telegram avec Python

Cliquez sur “Create new secret key”

Créez un bot ChatGPT sur votre compte Telegram avec Python

Ensuite copiez cette clef secrète et sauvegardez la sur votre bloc-note, vous en aurez besoin pour plus tard.

Etape 2: Faire un bot ChatGPT qui marche dans votre terminal via requête API

Dans cette section, on va tester un des exemples que proposent OpenAI sur cette page, et faire en sorte dans un premier temps que cela fonctionne sur votre terminal

Créez un bot ChatGPT sur votre compte Telegram avec Python

On va choisir l’exemple “Q&A” — cliquez dessus et regardez le code que vous propose OpenAI

A présent, ouvrez votre éditeur de code (pour moi c’est visual code studio), créez un fichier python que je vais appeler “cgt_test_terminal.py” et copiez-coller le code ci-dessous dans votre fichier sur visual code.

import os
import openai

openai.api_key = "COPIER-COLLER ICI VOTRE CLEF API SECRETE D'OPEN AI"

response = openai.Completion.create(
  model="text-davinci-003",
  prompt="Quelle est la taille de la tour eiffel ?",
  temperature=0.5,
  max_tokens=500,
  top_p=1,
  frequency_penalty=0.0,
  presence_penalty=0.0,
)

print(response.choices[0].text)

Bien entendu, pensez bien à ajouter votre clef secrète API obtenue lors de l’étape 1

Vous pouvez ensuite dans la partie “prompt”, écrire une question pour ChatGPT — en l’occurence je lui demande la taille de la tour eiffel.

(Petit aparté sur les paramètres temperature et max_tokens en fin de cet article !)

A présent, ouvrez votre terminal, si vous êtes sur Mac et faites runner votre code pour s’assurer que tout fonctionne

Créez un bot ChatGPT sur votre compte Telegram avec Python

On s’assure que cela fonctionne bien.

Etape 3: Connectez notre script au bot Telegram

Rendez vous sur Telegram, et allez trouver BotFather en tapant dans la barre de recherche

Créez un bot ChatGPT sur votre compte Telegram avec Python

Cliquez dessus, ensuite sur Menu (en bas à gauche) puis sélectionnez /newbot comme ci dessous

Créez un bot ChatGPT sur votre compte Telegram avec Python

Suivez les instructions (donnez un nom et un surnom à votre bot) jusqu’à cette étape

Créez un bot ChatGPT sur votre compte Telegram avec Python

A ce stade la vous avez deux éléments importants:

  1. le lien pour parler à votre bot t.me/….
  2. le token de votre bot telegram. Faites un copier coller de votre token et sauvegardez le sur votre bloc note.

Ensuite, retournez sur votre éditeur de code, et remplacez le code initial par celui-ci

import os
import openai
from aiogram import Bot,Dispatcher,executor, types

bot = Bot(token = 'COPIER-COLLER ICI VOTRE TOKEN DE VOTRE BOT TELEGRAM')
dp = Dispatcher(bot)

openai.api_key = "COPIER-COLLER ICI VOTRE CLEF API SECRETE D'OPEN AI"

@dp.message_handler(commands = ['start','help'])
async def welcome(message: types.Message):
    await message.reply('Salut, je suis un bot ChatGPT sur ton telegram. Fais toi plaisir et pose une question')

@dp.message_handler()
async def gpt(message:types.Message):
    response = openai.Completion.create(
    model="text-davinci-003",
    prompt=message.text,
    temperature=0.5,
    max_tokens=200,
    top_p=1,
    frequency_penalty=0.0,
    presence_penalty=0.0,
    )
    await message.reply(response.choices[0].text)

if __name__ == "__main__":
    executor.start_polling(dp)

Attention il faut bien entendu ajuster ce code et de bien ajouter votre token de votre bot telegram que BotFather vous a donné un peu plus haut, ainsi que votre clef secrète de votre API d’openAI (obtenue à l’étape 1)

A présent retournez dans votre terminal, installer le requirement suivant

Créez un bot ChatGPT sur votre compte Telegram avec Python
pip install aiogram

et runnez votre code dans votre terminal comme lors de l’étape 2

Créez un bot ChatGPT sur votre compte Telegram avec Python

ensuite allez sur telegram, sur la conversation avec votre bot, appuyez sur “start”, ou sinon simplement écrivez /start, pour commencez à interagir avec chatGPT directement sur votre telegram

Créez un bot ChatGPT sur votre compte Telegram avec Python

et voila c’est parti !

Créez un bot ChatGPT sur votre compte Telegram avec Python

Limites du dispositif

Notez que cela ne fonctionnera que tant que votre programme python tourne sur votre terminal. Donc dès que vous fermez votre terminal, ou votre ordinateur, cela ne fonctionnera plus. Si vous souhaitez avoir en permanence votre bot qui fonctionne sur votre téléphone, même si votre terminal est éteint, n’hésitez pas à le dire en commentaires et nous réfléchirons à vous proposer un autre tutorial !

Aussi, OpenAI vous fournit un crédit de 18$ gratuit pour leur API, vous pouvez monitorer votre usage directement via ce lien

Have fun !


Pour aller plus loin

Aparté concernant les paramètres disponibles dans l’API d’openAI.

Vous pouvez désormais jouer un peu avec les paramètres de votre fichier python, nous les avons paramétré comme ceci pour rappel, libre à vous de jouer avec

Créez un bot ChatGPT sur votre compte Telegram avec Python

Notez ici que vous avez plusieurs paramètres sur lequel vous pouvez jouer, notamment la temperature et max_token, ce sont des paramètres que vous pouvez utiliser pour personnaliser les réponses générées par ChatGPT en fonction de vos besoins spécifiques.

La température est une variable comprise entre 0 et 1 – cela contrôle la créativité ou la variabilité des réponses de ChatGPT. Lorsque la température est plus élevée (proche de 1), ChatGPT sera plus créatif et produira des réponses plus originales et imprévisibles, tandis que lorsque la température est plus basse (proche de 0), ChatGPT sera plus conservateur et produira des réponses plus prévisibles et stéréotypées.

Max_tokens, quant à lui, contrôle la longueur maximale de la réponse générée par ChatGPT. Vous pouvez spécifier un nombre maximum de tokens ou de mots pour la réponse, et ChatGPT générera une réponse qui n’excède pas ce nombre. Cela peut être utile pour éviter que ChatGPT ne génère des réponses trop longues ou pour vous assurer que les réponses restent succinctes et pertinentes.