Maison  >  Article  >  développement back-end  >  Comment appeler l'interface GPT3.5 en Python

Comment appeler l'interface GPT3.5 en Python

PHPz
PHPzavant
2023-05-02 18:25:074368parcourir

    La méthode d'appel d'interface GPT3.5 comprend principalement quatre parties : l'installation d'openai, le remplacement d'api_requestor.py, l'appel d'interface et un exemple de description de programme.

1 installation openai

                     La bibliothèque openai Python peut être installée directement via pip install openai. Si openai a été installé, mais que les invites suivantes indiquent que ChatCompletion est introuvable, veuillez utiliser la commande « pip install -U openai » pour mettre à niveau openai.

2 Remplacement d'api_requestor.py

Une fois Python openai installé, le fichier api_requestor.py sera généré. Le fichier se trouve dans le répertoire de fichiers de la bibliothèque d'environnement python "site-packagesopenaiapi_requestor.py", comme indiqué ci-dessous. Remplacez le fichier et répondez api35 dans le compte public Lele Sensing School pour obtenir le fichier à remplacer.

Windows :
C:ProgramDataAnaconda3Libsite-packagesopenaiapi_requestor.py
ou
C:ProgramDataAnaconda3envsxxxlibsite-packagesopenaiapi_requestor.py
Linux
/root/miniconda3/lib/pythonxx/site-packages/openaiapi_requestor .py
ou
/root/miniconda3 /envs/xxx/lib/pythonxx/site-packages/openaiapi_requestor.py
Remplacez ce fichier Répondez à api35 dans le compte public Lele Perception School pour obtenir le fichier de remplacement. La description de l'appel de l'interface 明3 et la méthode d'appel de l'interface sont inchangées, ce qui est cohérent avec la propre méthode d'appel d'Openai. Il y a principalement 7 paramètres dans l'entrée.

                        (1) modèle : nom du modèle, gpt-3.5-turbo ou gpt-3.5-turbo-0301

                                                                                                                      .                              .

(3) Température : contrôle le caractère aléatoire du résultat. 0,0 signifie que le résultat est fixe. Si le caractère aléatoire est élevé, il peut être réglé sur 0,9.

(4) max_tokens : Le nombre maximum de mots renvoyés (y compris les questions et réponses). Généralement, les caractères chinois représentent deux jetons. Supposons qu'il soit défini sur 100. S'il y a 40 caractères chinois dans la question d'invite, le résultat renvoyé comprendra jusqu'à 10 caractères chinois. Le nombre maximum de jetons autorisés par l'API ChatGPT est de 4 096, c'est-à-dire que le paramètre maximum de max_tokens est de 4 096 moins le nombre de jetons dans la question.

(5) top_p : Réglé sur 1.

(6) Frequency_penalty : réglez-le simplement sur 0.

(7) présence_penalty : défini sur 0.

(8) flux : contrôlez la sortie continue ou la sortie complète.

Il convient de noter que les paramètres d'entrée ci-dessus ajoutent un flux, c'est-à-dire s'il faut utiliser le flux de contrôle pour la sortie.

Si la valeur de stream est False, alors tous les résultats textuels seront renvoyés dans leur intégralité, qui peuvent être lus via réponse.choices[0].delta['content']. Cependant, plus le nombre de mots est élevé, plus le temps d'attente pour le retour est long. Le temps peut se référer à 4 mots/seconde lors de la lecture du flux de contrôle. Si la valeur steam est True, le résultat renvoyé est un générateur Python et les résultats doivent être obtenus par itération. La moyenne est d'environ 4 mots par seconde (134 mots en 33 secondes, 157 mots en 39 secondes). Le programme de lecture est le suivant.

4 message

Le champ des messages se compose de deux parties : rôle et contenu, comme indiqué ci-dessous :

  model="gpt-3.5-turbo",
  messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who won the world series in 2020?"},
        {"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
        {"role": "user", "content": "Where was it played?"}
    ]

Dans le modèle gpt-3.5-turbo, le rôle comprend le système, le système et le contenu. . Il existe trois types d'assistant et d'utilisateur. Le rôle système équivaut à indiquer à ChatGPT quel rôle utiliser pour répondre à la question. Vous devez spécifier le rôle spécifique et le contenu de la question dans le contenu. La principale différence de gpt-3.5-turbo-0301 est qu'il accorde plus d'attention au contenu du problème et n'accorde pas d'attention particulière au rôle spécifique. Le modèle gpt-3.5-turbo-0301 est valable jusqu'au 1er juin et gpt-3.5-turbo continuera d'être mis à jour.

                                                                                                                          L'assistant assistant et l'utilisateur utilisateur équivalent à spécifier le rôle, et le contenu peut être directement écrit dans le sujet de préoccupation.

5 Exemples de programme

                                                ’ ’ ’ s

-- ’ l'effet d'appel API 3 de t-reeee

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer