ChatGPT sous Linux

From Lea Linux
Revision as of 17:52, 29 December 2023 by Lea (talk | contribs) (→‎Obtenir une clef API pour ChatGPT)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

ChatGPT

ChatGPT (Chat Generative Pre-trained Transformer, c'est à dire transformeur pré-entrainé de chat génératif) est un robot logiciel conversationnel qui utilise l'intelligence artificielle pour dialoguer. En particulier, ChatGPT répond à des questions, se souvient des questions précédentes, complète des phrases, fait des traductions, des syntèses, voire écrit des articles.

Au niveau technique, pour les curieux sur l'intelligence artificielle: ChatGPT utilise un modèle de langage, entraîné par apprentissage supervisé et apprentissage par renforcement. Son fonctionnement est volontairement bridé et ChatGPT reste vague sur des sujets tabous décidés par ses concepteurs.

L'accès à ChatGPT est gratuit, mais ce n'est pas un logiciel libre et son utilisation requiert de se créer un compte sur le site web de son éditeur. Veuillez noter que l'historique des chats peut être revu ou utilisé pour améliorer les services de ChatGPT. Ne postez pas d'information sensible ou privée sur le chat. D'autre part, ChatGPT peut se tromper, ne suivez pas ses conseils aveuglement. Ce n'est ni un ami, ni un psychiatre.

Enfin, veuillez noter qu'il existe des alternatives libres à ChatGPT et son modèle GPT, tels que par exemple Alpaca-LoRA, LLaMa, Hugging Face Transformers.

Créer un compte ChatGPT

Notez que pour protéger votre vie privée, vous pouvez choisir de ne pas donner votre vrai nom, votre vrai âge et utiliser une adresse de courriel à usage unique.

Allez sur https://openai.com et cliquez sur "Sign Up" pour vous créer un compte.

Entrez un email pour vous créer un compte et cliquez sur "Signu up" de nouveau, ensuite on vous demandera aussi un mot de passe.

Allez dans votre boîte de messagerie et vérifiez le courriel que vous a envoyé ChatGPT. Cliquez sur le lien pour confirmer votre adresse de messagerie.

Ensuite ChatGPT vous demandera votre nom complet et votre âge.

Vous arrivez maintenant dans une fenêtre de chat. Vous pouvez d'ores et déjà utiliser ChatGPT dans votre navigateur.

Il existe d'autre logiciels comme Bavarder qui fournissent une interface graphique pour ChatGPT. Dans la suite, nous allons voir comment utiliser ChatGPT en ligne de commande.

Obtenir une clef API pour ChatGPT

Une API (Interface de Programmation Applicative, en anglais, Application Programming Interface) est un ensemble de règles et de protocoles qui permet à différents logiciels de communiquer entre eux, ici le client avec le moteur ChatGPT. Une clef API est un ensemble de caractères alphanumériques qui servent comme jeton d'authentification.

Les APIs peuvent prendre différentes formes, notamment les APIs Web, qui sont couramment utilisées. Une API Web permet à des applications de communiquer via le protocole HTTP (Hypertext Transfer Protocol) pour échanger des données. Les données sont souvent échangées au format JSON (JavaScript Object Notation) ou XML (eXtensible Markup Language).

Retournez sur https://openai.com et cliquez sur 'Log In'. Ensuite, cliquez sur API. Vous arriverez sur la page https://platform.openai.com/docs/overview

Sur la droite, cliquez sur la première icône et choisissez "API keys". Cliquez sur le bouton "Start verification". Avant de créer votre clef API, l'éditeur de ChatGPT veut savoir votre téléphone : c'est très invasif. Là aussi, vous pouvez utiliser un numéro de téléphone temporaire.

Ensuite, créez une nouvelle clef API en cliquant sur 'Create new secret key'. ChatGPT va vous affichez des caractères. Copiez les et conservez les précieusement, pour des raisons de sécurité, c'est la seule fois que vous la verrez.

Shell GPT

Installez pip. Par exemple sous Fedora:

$ sudo dnf install python3-pip

Puis installez shell-gpt:

$ pip3 install shell-gpt

Defaulting to user installation because normal site-packages is not writeable
Collecting shell-gpt
  Downloading shell_gpt-0.9.4-py3-none-any.whl (23 kB)
Requirement already satisfied: click<9.0.0,>=7.1.1 in /usr/lib/python3.11/site-packages (from shell-gpt) (8.1.3)
Requirement already satisfied: distro<2.0.0,>=1.8.0 in /usr/lib/python3.11/site-packages (from shell-gpt) (1.8.0)
Requirement already satisfied: requests<3.0.0,>=2.28.2 in /usr/lib/python3.11/site-packages (from shell-gpt) (2.28.2)
Collecting rich<14.0.0,>=13.1.0
  Downloading rich-13.7.0-py3-none-any.whl (240 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 240.6/240.6 kB 2.0 MB/s eta 0:00:00
Collecting typer<1.0.0,>=0.7.0
  Downloading typer-0.9.0-py3-none-any.whl (45 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 45.9/45.9 kB 2.2 MB/s eta 0:00:00
Requirement already satisfied: charset-normalizer<4,>=2 in /usr/lib/python3.11/site-packages (from requests<3.0.0,>=2.28.2->shell-gpt) (3.1.0)
Requirement already satisfied: idna<4,>=2.5 in /usr/lib/python3.11/site-packages (from requests<3.0.0,>=2.28.2->shell-gpt) (3.4)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/lib/python3.11/site-packages (from requests<3.0.0,>=2.28.2->shell-gpt) (1.26.18)
Collecting markdown-it-py>=2.2.0
  Downloading markdown_it_py-3.0.0-py3-none-any.whl (87 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 87.5/87.5 kB 2.1 MB/s eta 0:00:00
Collecting pygments<3.0.0,>=2.13.0
  Downloading pygments-2.17.2-py3-none-any.whl (1.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 2.3 MB/s eta 0:00:00
Collecting typing-extensions>=3.7.4.3
  Downloading typing_extensions-4.9.0-py3-none-any.whl (32 kB)
Collecting mdurl~=0.1
  Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Installing collected packages: typing-extensions, pygments, mdurl, typer, markdown-it-py, rich, shell-gpt
Successfully installed markdown-it-py-3.0.0 mdurl-0.1.2 pygments-2.17.2 rich-13.7.0 shell-gpt-0.9.4 typer-0.9.0 typing-extensions-4.9.0

Exportez votre clef API (remplacer cette fausse clef par la vôtre) dans une variable d'environement:

$ export OPENAI_API_KEY="sk-NrkckBEFRrhMAaUZBSang7lbkFJMmrQnUsJXqBtPS1YUFKB"

C'est tout! La commande sgpt vous permet d'interagir avec ChatGPT en ligne de commande.

$ sgpt "aimes-tu Linux"

"Oui, en tant qu'assistant de programmation et d'administration système, j'aime Linux. C'est un système d'exploitation puissant et flexible qui offre de nombreuses fonctionnalités pour les développeurs et les administrateurs système."


Il est également possible de changer de modèle (par défaut GPT-4) en utilisant l'argument --model (utile si vous n'avez pas accès au dernier modèle GPT) :

$ sgpt --model "gpt-3.5-turbo" "aimes-tu Linux"

Les différents modèles se retrouvent à cette addresse: https://platform.openai.com/docs/models ou https://platform.openai.com/account/limits


Utiliser GPT-2

GPT-2 est un ancien modèlme de langage utilisé précédemment par ChatGPT. Il peut être installé localement et utilisé, mais ce modèle est moins puissant que celui fourni via l'API.

Clonez le dépôt git GPT-2 :

$ git clone https://github.com/openai/gpt-2.git
$ cd gpt-2

Téléchargez le modèle pré-entraîné :

$ python download_model.py 117M

Installez pip. Par exemple sous Fedora:

$ sudo dnf install python3-pip

Installez les dépendances requises avec pip :

$ pip install -r requirements.txt

Après avoir téléchargé le modèle et installé les dépendances, vous pouvez générer du texte en utilisant la commande suivante :

$ python src/generate_unconditional_samples.py



@ Retour à la rubrique Logiciels

Copyright

© 2023 Jiel Beaumadier

Tête de GNU Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la GNU Free Documentation License, Version 1.2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation; sans section invariante, sans page de garde, sans entête et sans page finale.