Update app.py
Browse files
app.py
CHANGED
|
@@ -1,51 +1,48 @@
|
|
| 1 |
import gradio as gr
|
| 2 |
-
|
|
|
|
| 3 |
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
"""
|
| 7 |
-
client = InferenceClient("susanazhou/our.modelo_final")
|
| 8 |
|
|
|
|
|
|
|
|
|
|
| 9 |
|
| 10 |
-
# Función para
|
| 11 |
def respond(message, history, system_message, max_tokens, temperature, top_p):
|
| 12 |
-
# Arma el prompt incluyendo sistema, historial y nuevo mensaje
|
| 13 |
prompt = system_message + "\n"
|
| 14 |
-
for
|
| 15 |
-
prompt += f"Usuario: {
|
| 16 |
prompt += f"Usuario: {message}\nAsistente:"
|
| 17 |
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
|
|
|
| 21 |
max_new_tokens=max_tokens,
|
| 22 |
temperature=temperature,
|
| 23 |
top_p=top_p,
|
|
|
|
| 24 |
)
|
| 25 |
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
return
|
| 29 |
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
# ------------------------
|
| 33 |
# Descripción del proyecto
|
| 34 |
-
# ------------------------
|
| 35 |
-
|
| 36 |
descripcion = """
|
| 37 |
# 💬 LeIA GO: Explorando las variedades del español con NLP
|
| 38 |
|
| 39 |
-
¿Sabías que
|
| 40 |
*LeIA GO* nace para abordar este problema: un asistente lingüístico que analiza, genera, corrige y adapta textos teniendo en cuenta diferencias culturales y lingüísticas de distintas variedades del español.
|
| 41 |
|
| 42 |
-
|
| 43 |
---
|
| 44 |
|
| 45 |
### 🚀 Motivación
|
| 46 |
Nuestro proyecto nace con el objetivo de estudiar las diferencias lingüísticas entre las distintas variedades del español y sus normas culturales asociadas. Buscamos comprender mejor cómo varía el idioma en diferentes regiones para mejorar el procesamiento del lenguaje natural en español.
|
| 47 |
|
| 48 |
-
|
| 49 |
### 🌍 Impacto
|
| 50 |
Actualmente, la mayoría de los recursos y modelos de NLP están centrados en el inglés, mientras que el español, especialmente en sus múltiples variedades, cuenta con menos datos y herramientas de calidad. Nuestro proyecto pretende contribuir a mejorar la calidad y diversidad de los datos disponibles en español, facilitando el desarrollo de tecnologías más inclusivas y precisas para esta lengua.
|
| 51 |
|
|
@@ -58,24 +55,19 @@ Actualmente, la mayoría de los recursos y modelos de NLP están centrados en el
|
|
| 58 |
### 🎯 Objetivo de desarrollo sostenible (ODS)
|
| 59 |
Este proyecto contribuye al ODS 4: Educación de Calidad, promoviendo el acceso a recursos lingüísticos diversos que favorezcan la educación y la inclusión cultural a través del lenguaje.
|
| 60 |
|
| 61 |
-
|
| 62 |
### 👥 Equipo
|
| 63 |
– Susana Zhou (Español peninsular)
|
| 64 |
– Constanza Jeldres (Español de Chile)
|
| 65 |
– Gabriel Schwartzmann (Español de Perú)
|
| 66 |
"""
|
| 67 |
|
| 68 |
-
#
|
| 69 |
-
# Interfaz con pestañas
|
| 70 |
-
# ------------------------
|
| 71 |
-
|
| 72 |
with gr.Blocks() as demo:
|
| 73 |
with gr.Tab("Descripción del Proyecto"):
|
| 74 |
gr.Markdown(descripcion)
|
| 75 |
-
|
| 76 |
with gr.Tab("Chatbot LeIA GO"):
|
| 77 |
gr.ChatInterface(
|
| 78 |
-
|
| 79 |
additional_inputs=[
|
| 80 |
gr.Textbox(value="Eres una asistente lingüística especializada en español regional.", label="System message"),
|
| 81 |
gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Max new tokens"),
|
|
@@ -84,6 +76,5 @@ with gr.Blocks() as demo:
|
|
| 84 |
],
|
| 85 |
)
|
| 86 |
|
| 87 |
-
# Lanza la app
|
| 88 |
if __name__ == "__main__":
|
| 89 |
demo.launch()
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
+
import torch
|
| 3 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 4 |
|
| 5 |
+
# Configuración del modelo
|
| 6 |
+
model_id = "susanazhou/our.modelo_final"
|
| 7 |
+
device = "cuda" if torch.cuda.is_available() else "cpu"
|
|
|
|
| 8 |
|
| 9 |
+
# Cargar modelo y tokenizer
|
| 10 |
+
tokenizer = AutoTokenizer.from_pretrained(model_id)
|
| 11 |
+
model = AutoModelForCausalLM.from_pretrained(model_id).to(device)
|
| 12 |
|
| 13 |
+
# Función para responder
|
| 14 |
def respond(message, history, system_message, max_tokens, temperature, top_p):
|
|
|
|
| 15 |
prompt = system_message + "\n"
|
| 16 |
+
for user, assistant in history:
|
| 17 |
+
prompt += f"Usuario: {user}\nAsistente: {assistant}\n"
|
| 18 |
prompt += f"Usuario: {message}\nAsistente:"
|
| 19 |
|
| 20 |
+
inputs = tokenizer(prompt, return_tensors="pt").to(device)
|
| 21 |
+
|
| 22 |
+
output = model.generate(
|
| 23 |
+
**inputs,
|
| 24 |
max_new_tokens=max_tokens,
|
| 25 |
temperature=temperature,
|
| 26 |
top_p=top_p,
|
| 27 |
+
pad_token_id=tokenizer.eos_token_id,
|
| 28 |
)
|
| 29 |
|
| 30 |
+
decoded = tokenizer.decode(output[0], skip_special_tokens=True)
|
| 31 |
+
respuesta = decoded[len(prompt):].strip()
|
| 32 |
+
return respuesta
|
| 33 |
|
|
|
|
|
|
|
|
|
|
| 34 |
# Descripción del proyecto
|
|
|
|
|
|
|
| 35 |
descripcion = """
|
| 36 |
# 💬 LeIA GO: Explorando las variedades del español con NLP
|
| 37 |
|
| 38 |
+
¿Sabías que casi todos los modelos de NLP están entrenados principalmente en inglés? Mientras tanto, el español —hablado por más de 500 millones de personas— sigue estando subrepresentado, especialmente en sus variedades regionales.
|
| 39 |
*LeIA GO* nace para abordar este problema: un asistente lingüístico que analiza, genera, corrige y adapta textos teniendo en cuenta diferencias culturales y lingüísticas de distintas variedades del español.
|
| 40 |
|
|
|
|
| 41 |
---
|
| 42 |
|
| 43 |
### 🚀 Motivación
|
| 44 |
Nuestro proyecto nace con el objetivo de estudiar las diferencias lingüísticas entre las distintas variedades del español y sus normas culturales asociadas. Buscamos comprender mejor cómo varía el idioma en diferentes regiones para mejorar el procesamiento del lenguaje natural en español.
|
| 45 |
|
|
|
|
| 46 |
### 🌍 Impacto
|
| 47 |
Actualmente, la mayoría de los recursos y modelos de NLP están centrados en el inglés, mientras que el español, especialmente en sus múltiples variedades, cuenta con menos datos y herramientas de calidad. Nuestro proyecto pretende contribuir a mejorar la calidad y diversidad de los datos disponibles en español, facilitando el desarrollo de tecnologías más inclusivas y precisas para esta lengua.
|
| 48 |
|
|
|
|
| 55 |
### 🎯 Objetivo de desarrollo sostenible (ODS)
|
| 56 |
Este proyecto contribuye al ODS 4: Educación de Calidad, promoviendo el acceso a recursos lingüísticos diversos que favorezcan la educación y la inclusión cultural a través del lenguaje.
|
| 57 |
|
|
|
|
| 58 |
### 👥 Equipo
|
| 59 |
– Susana Zhou (Español peninsular)
|
| 60 |
– Constanza Jeldres (Español de Chile)
|
| 61 |
– Gabriel Schwartzmann (Español de Perú)
|
| 62 |
"""
|
| 63 |
|
| 64 |
+
# Interfaz Gradio
|
|
|
|
|
|
|
|
|
|
| 65 |
with gr.Blocks() as demo:
|
| 66 |
with gr.Tab("Descripción del Proyecto"):
|
| 67 |
gr.Markdown(descripcion)
|
|
|
|
| 68 |
with gr.Tab("Chatbot LeIA GO"):
|
| 69 |
gr.ChatInterface(
|
| 70 |
+
respond,
|
| 71 |
additional_inputs=[
|
| 72 |
gr.Textbox(value="Eres una asistente lingüística especializada en español regional.", label="System message"),
|
| 73 |
gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Max new tokens"),
|
|
|
|
| 76 |
],
|
| 77 |
)
|
| 78 |
|
|
|
|
| 79 |
if __name__ == "__main__":
|
| 80 |
demo.launch()
|