from transformers import pipeline, Conversation, ConversationalPipeline import gradio as gr # Charger le modèle GPT de Hugging Face model_id = "microsoft/DialoGPT-medium" # Remplacez par le modèle souhaité chat_pipeline = pipeline("conversational", model=model_id) # Consigne que le modèle suivra pour chaque chat system_message = "You are a helpful assistant that always responds in a friendly manner." # Fonction pour générer une réponse à partir du message de l'utilisateur def generate_response(user_message, 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 conversation avec l'historique des messages conversation = Conversation() for message in messages: if message["role"] == "user": conversation.add_user_input(message["content"]) else: conversation.append_response(message["content"]) # Générer une réponse result = chat_pipeline(conversation) response = result.generated_responses[-1] history.append((user_message, response)) return history, response # Configurer et lancer l'interface de chat avec Gradio iface = gr.Interface( fn=generate_response, inputs=["text", "state"], outputs=["state", "text"], live=True, ) iface.launch()