Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- os.environ['http_proxy'] = 'http://proxy-url:port'
- # set http_proxy=http://proxy-url:port
- # pip install openai
- import openai
- import os
- # Mettre votre clé d'API ici
- openai.api_key = "apikeyhere"
- # - Ajout d'une fonction pour sélectionner le modèle à utiliser
- def select_model():
- print("Available models:")
- print("1. curie")
- print("2. babbage")
- print("3. davinci")
- print("4. text-davinci-002")
- print("5. text-davinci-003")
- model = input("Select a model (1-5): ")
- if model == "1":
- model = "curie"
- elif model == "2":
- model = "babbage"
- elif model == "3":
- model = "davinci"
- elif model == "4":
- model = "text-davinci-002"
- elif model == "5":
- model = "text-davinci-003"
- else:
- print("Invalid selection. Defaulting to model 'davinci'")
- model = "davinci"
- return model
- # - Ajout d'une fonction pour personnaliser le niveau de température de la réponse
- def select_temperature():
- print("Available temperature settings:")
- print("1. Low (0.0)")
- print("2. Medium (0.5)")
- print("3. High (1.0)")
- temperature = input("Select a temperature setting (1-3): ")
- if temperature == "1":
- temperature = 0.0
- elif temperature == "2":
- temperature = 0.5
- elif temperature == "3":
- temperature = 1.0
- else:
- print("Invalid selection. Defaulting to temperature '0.7'")
- temperature = 0.7
- return temperature
- # - Ajout d'une fonction pour sauvegarder la conversation dans un fichier
- def save_conversation(prompt, message):
- # Demander à l'utilisateur le nom du fichier
- filename = input("Enter filename: ")
- # Vérifier si le fichier existe déjà
- if os.path.exists(filename):
- # Si oui, demander confirmation
- print("File already exists. Do you want to overwrite it? (y/n)")
- response = input()
- # Si non, quitter la fonction
- if response.lower() == "n":
- return
- # Sinon, on peut continuer
- else:
- # Créer le fichier s'il n'existe pas
- open(filename, "w").close()
- # Ecrire la demande et la réponse dans le fichier
- with open(filename, "a") as f:
- f.write(f"User: {prompt}\nChatbot: {message}\n\n")
- # Confirmer que le fichier a été sauvegardé
- print(f"Conversation saved to {filename}")
- # - Ajout d'une fonction pour charger une conversation à partir d'un fichier
- def load_conversation(filename):
- # Vérifier si le fichier existe
- if not os.path.exists(filename):
- # Si non, afficher un message d'erreur
- print("Error: File does not exist")
- return
- # Sinon, on peut continuer
- else:
- # Lire le fichier et extraire le texte
- with open(filename, "r") as f:
- text = f.read()
- # Afficher le texte à l'utilisateur
- print(text)
- # - Ajout d'une fonction pour afficher les informations d'utilisation
- def print_usage():
- print("Usage:")
- print("1. Type a message to start a new conversation")
- print("2. Type 'load <filename>' to load a conversation from a file")
- print("3. Type 'save' to save the current conversation to a file")
- print("4. Type 'model' to change the model")
- print("5. Type 'temp' to change the temperature")
- print("6. Type 'exit' to quit the conversation")
- # Demander à l'utilisateur d'entrer le premier message
- prompt = input("What would you like to say to the chatbot? ")
- # Définir le modèle à utiliser (défaut: Davinci)
- model_engine = select_model()
- # Définir le niveau de température (défaut: 0.7)
- temperature = select_temperature()
- # Continuer la conversation jusqu'à ce que l'utilisateur décide d'arrêter
- while True:
- # Vérifier s'il s'agit d'une commande
- if prompt.startswith("load "):
- # Si oui, charger la conversation
- load_conversation(prompt[5:])
- elif prompt == "save":
- # Sinon, sauvegarder la conversation
- save_conversation(prompt, message)
- elif prompt == "model":
- # Sinon, changer le modèle
- model_engine = select_model()
- elif prompt == "temp":
- # Sinon, changer le niveau de température
- temperature = select_temperature()
- elif prompt == "exit":
- # Si l'utilisateur veut quitter la conversation, sortir de la boucle
- break
- elif prompt == "help":
- # Afficher les informations d'utilisation
- print_usage()
- else:
- # Sinon, envoyer la demande à l'API
- response = openai.Completion.create(
- engine=model_engine,
- prompt=prompt,
- max_tokens=1024,
- n=1,
- stop=None,
- temperature=temperature,
- )
- # Récupérer la réponse générée par l'API
- message = response.choices[0].text.strip()
- # Afficher la réponse à l'utilisateur
- print("Chatbot:", message)
- # Demander à l'utilisateur s'il veut continuer la conversation
- prompt = input("What would you like to say next? (Type 'help' for usage info) ")
- # Afficher un message de sortie à l'utilisateur
- print("Thank you for chatting!")
- #https://platform.openai.com/playground
- #https://chat.openai.com/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement