Asistente_IA / app.py
juanelot's picture
Update app.py
f5025c8 verified
import gradio as gr
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
# Cargar el modelo y el tokenizador
model_name = "distilgpt2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
def generate_response(prompt, max_length=100):
inputs = tokenizer.encode(prompt, return_tensors="pt")
with torch.no_grad():
outputs = model.generate(
inputs,
max_length=max_length,
num_return_sequences=1,
temperature=0.7,
top_p=0.9,
do_sample=True
)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
return response.strip()
def chatbot(message, history):
history = history or []
# Construir el prompt
prompt = "Eres un asistente AI amigable y útil. Responde de manera concisa y coherente.\n\n"
for human, ai in history:
prompt += f"Human: {human}\nAI: {ai}\n"
prompt += f"Human: {message}\nAI:"
response = generate_response(prompt)
history.append((message, response))
return history, history
iface = gr.Interface(
fn=chatbot,
inputs=["text", "state"],
outputs=["chatbot", "state"],
title="Tu Compañero AI con DistilGPT-2",
description="Un chatbot de IA utilizando el modelo DistilGPT-2 para conversaciones simples.",
)
iface.launch()