File size: 1,326 Bytes
7c8690b fe60596 d5f1713 fe60596 d5f1713 fe60596 d5f1713 fe60596 d5f1713 fe60596 d5f1713 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import gradio as gr
from huggingface_hub import hf_hub_download
from llama_cpp import Llama
# Téléchargement automatique du modèle depuis Hugging Face Hub
model_path = hf_hub_download(
repo_id="google/gemma-2b-it-GGUF",
filename="gemma-2b-it-Q4_K_M.gguf",
cache_dir="./model_cache" # dossier local pour stocker le modèle
)
# Chargement du modèle en CPU
llm = Llama(model_path=model_path, n_ctx=2048, n_threads=2)
def chatbot(message, history):
prompt = (
"Tu es un coach santé virtuel et empathique. "
"Ton rôle est de créer un planning quotidien personnalisé pour aider "
"l'utilisateur à rester en bonne santé. "
"Le planning doit inclure : horaires de repas, suggestions alimentaires équilibrées, "
"exercices adaptés, conseils de sommeil et hydratation. "
"Ne fais pas de diagnostic médical et précise toujours que l'utilisateur doit consulter "
"un médecin pour tout problème grave. Réponds avec bienveillance et clarté.\n\n"
)
for human, bot in history:
prompt += f"Utilisateur: {human}\nAssistant: {bot}\n"
prompt += f"Utilisateur: {message}\nAssistant:"
output = llm(prompt, max_tokens=300)
return output["choices"][0]["text"]
gr.ChatInterface(chatbot, title="Coach Santé Virtuel").launch() |