alex-abb's picture
Update app.py
fa7e230 verified
raw
history blame
2.16 kB
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:
"""
@spaces.GPU
# 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()