alia / app.py
repd79's picture
Update app.py
f849f21 verified
raw
history blame
1.61 kB
import torch
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
# Especifica el nombre del modelo
model_name = "BSC-LT/ALIA-40b"
# Cargar el tokenizador y el modelo
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
device_map="auto",
torch_dtype=torch.bfloat16 # Reduce uso de memoria a la mitad
)
# Verificar en qué dispositivo está el modelo
print(f"Modelo cargado en: {model.device}")
def generar_texto(entrada):
# Tokenizar la entrada
input_ids = tokenizer.encode(entrada, return_tensors="pt").input_ids.to("cuda")
# Generar texto con el modelo
output = model.generate(
input_ids,
max_length=100, # Reduce la longitud de salida
temperature=0.7, # Controla la aleatoriedad
top_p=0.9, # Reduce la búsqueda del modelo
num_return_sequences=1, # Evita múltiples respuestas simultáneas
do_sample=True # Sampling para rapidez
)
# Decodificar y retornar el texto generado
texto_generado = tokenizer.decode(output[0], skip_special_tokens=True)
return texto_generado
# Crear la interfaz de Gradio usando la sintaxis actualizada
interfaz = gr.Interface(
fn=generar_texto,
inputs=gr.Textbox(lines=2, placeholder="Escribe tu prompt aquí..."),
outputs=gr.Textbox(),
title="Generador de Texto con ALIA-40b",
description="Este modelo genera texto utilizando ALIA-40b, un modelo LLM entrenado por BSC-LT."
)
if __name__ == "__main__":
interfaz.launch()