Spaces:
Sleeping
Sleeping
Create app.py
Browse files
app.py
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import gradio as gr
|
| 2 |
+
import pandas as pd
|
| 3 |
+
|
| 4 |
+
# 1. Cargamos tu dataset (sustituye por la URL de tu archivo v0.7 si es necesario)
|
| 5 |
+
url = "https://huggingface.co/datasets/jamalinu/tarifit-catalan-public-services/resolve/main/tarifit_corpus_v0.7_trilingual.jsonl"
|
| 6 |
+
df = pd.read_json(url, lines=True)
|
| 7 |
+
|
| 8 |
+
def search(query):
|
| 9 |
+
if not query:
|
| 10 |
+
return "Escribe algo para buscar..."
|
| 11 |
+
|
| 12 |
+
# Buscamos en las columnas de Español y Catalán
|
| 13 |
+
results = df[
|
| 14 |
+
df['translation_es'].str.contains(query, case=False, na=False) |
|
| 15 |
+
df['translation_cat'].str.contains(query, case=False, na=False)
|
| 16 |
+
]
|
| 17 |
+
|
| 18 |
+
if results.empty:
|
| 19 |
+
return "No se han encontrado frases con esa palabra."
|
| 20 |
+
|
| 21 |
+
# Formateamos la respuesta
|
| 22 |
+
output = ""
|
| 23 |
+
for _, row in results.head(5).iterrows():
|
| 24 |
+
output += f"**Tarifit:** {row['text_rif']}\n"
|
| 25 |
+
output += f"**Català:** {row['translation_cat']}\n"
|
| 26 |
+
output += f"**Español:** {row['translation_es']}\n"
|
| 27 |
+
output += f"--- \n"
|
| 28 |
+
return output
|
| 29 |
+
|
| 30 |
+
# 2. Creamos la interfaz
|
| 31 |
+
demo = gr.Interface(
|
| 32 |
+
fn=search,
|
| 33 |
+
inputs=gr.Textbox(label="Busca una frase (ej: matrícula, hospital, hola)"),
|
| 34 |
+
outputs=gr.Markdown(label="Resultados en Tarifit"),
|
| 35 |
+
title="Trilingual Tarifit Assistant",
|
| 36 |
+
description="Buscador inteligente para servicios públicos en Tarifit, Catalán y Español."
|
| 37 |
+
)
|
| 38 |
+
|
| 39 |
+
if __name__ == "__main__":
|
| 40 |
+
demo.launch()
|