Spaces:
Runtime error
Runtime error
from transformers import pipeline | |
import gradio as gr | |
import os | |
import spaces | |
# Charger le modèle GPT de Hugging Face | |
model_id = "deepseek-ai/deepseek-llm-7b-chat" | |
pipe = pipeline("text-generation", model=model_id) | |
# Consigne que le modèle suivra pour chaque chat | |
system_message = """Classify the text into neutral, negative or positive. | |
Text: This movie is definitely one of my favorite movies of its kind. The interaction between respectable and morally strong characters is an ode to chivalry and the honor code amongst thieves and policemen. | |
Sentiment: | |
""" | |
# Fonction pour générer une réponse à partir du message de l'utilisateur | |
def generate_response(user_message, history): | |
try: | |
# Initialiser history s'il est None | |
if history is None: | |
history = [] | |
# Ajouter le message système au début de l'historique des messages | |
messages = [{"role": "system", "content": system_message}] + [{"role": "user", "content": user_message}] | |
# Créer une chaîne de caractères représentant la conversation | |
conversation_text = system_message + "\n" | |
for past_user_input, past_bot_response in history: | |
conversation_text += f"User: {past_user_input}\nAssistant: {past_bot_response}\n" | |
# Ajouter le nouveau message de l'utilisateur | |
conversation_text += f"User: {user_message}\n" | |
# Générer une réponse | |
result = pipe(conversation_text, max_new_tokens=150) | |
response = result[0]['generated_text'].split("User: ")[-1].strip() # Extraire la réponse générée | |
# Mettre à jour l'historique | |
history.append((user_message, response)) | |
return history, response | |
except Exception as e: | |
# En cas d'erreur, retourner l'historique inchangé et un message d'erreur | |
return history, f"Error: {str(e)}" | |
# Configurer et lancer l'interface de chat avec Gradio | |
iface = gr.Interface( | |
fn=generate_response, | |
inputs=[gr.Textbox(lines=2, placeholder="Enter your message here..."), gr.State()], | |
outputs=[gr.State(), gr.Textbox()], | |
live=True, | |
) | |
iface.launch() | |