File size: 1,031 Bytes
101e4d5 f5258d0 4b3e9b7 a4c7d7d aecb052 a4c7d7d aecb052 4b3e9b7 101e4d5 aecb052 0cf90b2 aecb052 0cf90b2 101e4d5 aecb052 f5258d0 aecb052 0cf90b2 e6b3aea aecb052 0cf90b2 e6b3aea 0cf90b2 aecb052 e6b3aea b223d37 aecb052 5ccd1b4 aecb052 5ccd1b4 101e4d5 158eb11 |
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 34 35 36 37 38 39 40 41 42 |
import gradio as gr
from transformers import pipeline
import torch
import os
from huggingface_hub import login
# Login con token seguro
hf_token = os.environ["HF_TOKEN"]
login(token=hf_token)
# Usa GPU si hay
device = 0 if torch.cuda.is_available() else -1
# Modelo de tipo chat liviano
pipe = pipeline(
"text-generation",
model="mistralai/TinyMistral-248M-Chat-v1",
device=device
)
# Formato chat para prompts
def responder(prompt):
formatted_prompt = f"[INST] {prompt} [/INST]"
respuesta = pipe(
formatted_prompt,
max_new_tokens=80,
do_sample=True,
temperature=0.7,
top_k=50,
top_p=0.9
)[0]["generated_text"]
return respuesta.replace(formatted_prompt, "").strip()
# Interfaz Gradio
with gr.Blocks() as demo:
gr.Markdown("## ⚡ AmInside 1.0 – Versión Chat Ligera")
entrada = gr.Textbox(label="Escribe tu mensaje")
salida = gr.Textbox(label="Respuesta")
entrada.submit(fn=responder, inputs=entrada, outputs=salida)
demo.launch()
|