milyiyo's picture
Change the logo
8f6eebf
raw
history blame contribute delete
No virus
2.74 kB
import gradio as gr
from functions import extract_text, summarize_text, generate_question, get_answer_context, answer_question
def update(name='default text'):
return f"Welcome to Gradio, {name}!"
img_url = 'https://huggingface.co/spaces/hackathon-somos-nlp-2023/learning-assistance/resolve/main/assets/owl-reading-2.png'
with gr.Blocks() as demo:
gr.HTML(
value=f"<img src='{img_url}' alt='owl-reading-logo' style='width: 300px; height: 300px'/>")
gr.Markdown('# Asistente de aprendizaje')
gr.Markdown("## Obtener el texto")
gr.Markdown(
"En esta sección puede proporcionar una URL la cual será revisada para extraer su contenido.")
with gr.Column():
with gr.Row():
inp_url = gr.Textbox(placeholder="URL",
show_label=False)
btn_extract_text = gr.Button("Extraer texto")
out_url_text = gr.Textbox(label="Texto extraído")
btn_extract_text.click(
fn=extract_text, inputs=inp_url, outputs=out_url_text)
# Summary section
gr.Markdown("## Elaborar resumen")
gr.Markdown(
"Utilice esta función para generar un resumen del texto extraído.")
btn_summarize = gr.Button("Elaborar resumen")
out_summary = gr.Textbox(label="Resumen")
btn_summarize.click(fn=summarize_text,
inputs=out_url_text, outputs=out_summary)
# Question generation section
gr.Markdown("## Evalúa tu conocimiento")
gr.Markdown(
"Mejore su comprensión del texto extraído respondiendo a preguntas generadas a partir de diferentes secciones del mismo.")
with gr.Row():
with gr.Column():
btn_question_gen = gr.Button("Pregúntame algo sobre el contenido")
out_question_gen = gr.Textbox(show_label=False)
btn_question_gen.click(fn=generate_question, inputs=out_url_text,
outputs=out_question_gen)
with gr.Column():
btn_question_gen = gr.Button("Muestra contexto de la respuesta")
out_question_answer = gr.Textbox(show_label=False)
btn_question_gen.click(fn=get_answer_context,
outputs=out_question_answer)
# Question and answering
gr.Markdown("## Pregunta sobre el texto")
gr.Markdown(
"Esta sección está diseñada para que puedas hacer preguntas relacionadas con el contenido del texto extraído")
inp_qna = gr.Textbox(placeholder="Escriba su pregunta aquí",
show_label=False)
btn_qna = gr.Button("Responder")
out_qna = gr.Textbox(show_label=False)
btn_qna.click(fn=answer_question, inputs=inp_qna, outputs=out_qna)
demo.launch()