dialogatexto / app.py
jcmachicao's picture
Update app.py
a8d2364
# -*- coding: utf-8 -*-
'''
José Carlos Machicao
GestioDinámica
Fecha de producción: 2022_01_31
Fecha de actualización 2022_02_15
'''
import streamlit as st
import torch
from transformers import pipeline
from transformers import AutoTokenizer, AutoModelForQuestionAnswering
st.image('gdmk.png', width=150)
texto = st.text_area('Cargue un texto de hasta 2 hojas, 500 palabras, ó 5000 caracteres: ', height=100)
st.write('Si no tienes un texto listo, puedes usar el que está en este link, sólo copiando y pegando el texto en el espacio de arriba.')
st.write('[link](https://huggingface.co/spaces/jcmachicao/dialogatexto/blob/main/trucha_peru.txt)')
st.write('También puedes modificar las preguntas.')
preg_1 = st.text_input('Pregunta 1', '¿Cuánta trucha exportó el Perú durante el año 2020?')
preg_2 = st.text_input('Pregunta 2', '¿Qué países estuvieron involucrados?')
preg_3 = st.text_input('Pregunta 3', '¿Cómo interviene el proceso de congelamiento?')
pregs = [preg_1, preg_2, preg_3]
if len(pregs)<3:
st.write('Por favor complete las 3 preguntas')
boton_preg = st.button('Enviar preguntas')
modelo_hf2 = 'mrm8488/distill-bert-base-spanish-wwm-cased-finetuned-spa-squad2-es'
modelo_qa = AutoModelForQuestionAnswering.from_pretrained(modelo_hf2)
#modelo_qa = AutoModelForQuestionAnswering.from_pretrained("mrm8488/bert-base-spanish-wwm-cased-finetuned-spa-squad2-es")
tokenizer = AutoTokenizer.from_pretrained("mrm8488/bert-base-spanish-wwm-cased-finetuned-spa-squad2-es",
#{"use_fast": False}
)
tokenizer2 = AutoTokenizer.from_pretrained(modelo_hf2,
#{"use_fast": False}
)
if boton_preg:
st.write('Procesando texto ', texto[0:50], '...')
preguntas = pipeline('question-answering', model=modelo_qa, tokenizer=tokenizer2)
for preg in pregs:
respuesta = preguntas({'question': preg, 'context': texto})
st.write(preg)
st.write(respuesta['answer'])
st.write('\n Confiabilidad: ', respuesta['score'])