Spaces:
Runtime error
Runtime error
File size: 1,907 Bytes
740e27a ec7cc31 740e27a ec7cc31 740e27a 70a64c6 740e27a |
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 43 44 45 46 47 48 49 |
# -*- coding: utf-8 -*-
"""Copia de app.ipynb
Automatically generated by Colab.
Original file is located at
https://colab.research.google.com/drive/1CWlm7_FskC5LwZaYL-sgzASC5LDAzZ15
"""
import transformers
from transformers import pipeline
import pandas as pd
import gradio as gr
url = 'https://docs.google.com/spreadsheets/d/e/2PACX-1vSWJvS1tP7pp_GpF1fb-KXDyQoACbxKZlUfB4Gd3SFHnX6Jz3xs9-9t0yMOnfPd59Up50Fp8OS02epO/pub?gid=1955047855&single=true&output=csv'
df = pd.read_csv(url)
df['contexto'] = df['Descripci贸n'] + '' + df['Atributos'] + ''
contestador = pipeline('question-answering', model='mrm8488/distill-bert-base-spanish-wwm-cased-finetuned-spa-squad2-es', {'use_fast': False})
def obtener_origen(personaje):
columna = df[df['Personaje'] == personaje]
if columna.empty:
return f'El personaje "{personaje}" no se encuentra en la base de datos.'
origen = columna.iloc[0]['Origen']
return f'El origen de este ser mitol贸gico "{personaje}" es "{origen}".'
def responder_pregunta(personaje, pregunta):
columna = df[df['Personaje'] == personaje]
if columna.empty:
return f'El personaje "{personaje}" no se encuentra en la base de datos.'
contexto = columna.iloc[0]['contexto']
resultado = {'answer': f'{contexto}'}
return resultado['answer']
def interfaz(nombre, pregunta):
origen = obtener_origen(nombre)
respuesta = responder_pregunta(nombre, pregunta)
return f"Respuesta: {respuesta}\nOrigen: {origen}"
demo = gr.Interface(
fn=interfaz,
inputs=[gr.Textbox(label="Nombre del personaje"), gr.Textbox(label="Pregunta")],
outputs=gr.Textbox(label="Respuesta"),
title="Sistema de Respuesta a Preguntas sobre Personajes Mitol贸gicos",
description="Introduce el nombre del personaje y la pregunta (ejem. 驴C贸mo es?, 驴qu茅 hace?...) para obtener una respuesta basada en los datos disponibles."
)
demo.launch() |