# -*- 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'])