Spaces:
Running
Running
import openai | |
import os | |
import gradio as gr | |
# Configure votre clé API | |
openai.api_key = os.environ['OpenaiKey'] | |
def writing_assistant(debut, suite, instructions): | |
# Construction de la requête | |
with open('instructions.txt', 'r') as fichier: | |
# Lecture du contenu du fichier | |
instructions = fichier.read() + "\n" + instructions | |
prompt = f"DEBUT = '{debut}'\n SUITE = '{suite}' \n INSTRUCTIONS = {instructions}" | |
messages = [ | |
{"role": "system", "content": f"Tu es un assistant d'écriture. Tu aides un auteur contemporain à écrire, en t'inspirant de son style littéraire."}, | |
{"role": "user", "content": prompt} | |
] | |
# Call GPT-3.5-turbo API | |
response = openai.ChatCompletion.create( | |
model="gpt-3.5-turbo", | |
messages=messages, | |
temperature=0.9 | |
) | |
# Get generated text | |
texte_reecrit = response.choices[0].message['content'].strip() | |
return texte_reecrit | |
# Définition d'inputs par défaut | |
with open('debut_par_defaut.txt', 'r') as fichier: | |
# Lecture du contenu du fichier | |
debut_par_defaut = fichier.read() | |
with open('suite_par_defaut.txt', 'r') as fichier: | |
# Lecture du contenu du fichier | |
suite_par_defaut = fichier.read() | |
# Création de l'interface Gradio | |
iface = gr.Interface( | |
fn=writing_assistant, | |
inputs=[ | |
gr.inputs.Textbox(lines=5, label="Début", default = debut_par_defaut), | |
gr.inputs.Textbox(lines=5, label="Suite", default = suite_par_defaut), | |
gr.inputs.Textbox(lines=2, label="Instructions additionnelles") | |
], | |
outputs=gr.outputs.Textbox(label="Texte réécrit"), | |
title="Assistant d'écriture", | |
description="par Nicolas \nRéécrit un brouillon en respectant un début avec un style donné." | |
) | |
# Lancer l'interface | |
iface.launch() |