Spaces:
Runtime error
Runtime error
import gradio as gr | |
import requests | |
from bs4 import BeautifulSoup | |
from transformers import pipeline | |
# Load the trained model | |
qa_model = pipeline("question-answering") | |
def extract_answer(question, url): | |
"""Get context from URL and use it to answer the question""" | |
# Retrieve actual page content | |
html = requests.get(url).content | |
# Create BS4 object to handle HTML data | |
soup = BeautifulSoup(html, 'html.parser') | |
for data in soup(['style', 'script', 'meta', 'link', 'noscript']): | |
# Remove tags | |
data.decompose() | |
# Get and clean up plain text | |
context = soup.get_text() | |
while "\n\n" in context: | |
context = context.replace("\n\n", "\n") | |
answer_dict = qa_model(question = question, context = context) | |
return answer_dict | |
title = "Webpage-Based Question Answering" | |
description = "Using a webpage as context for extractive question answering." | |
enable_queue=True | |
examples=[ | |
["Where was Messi born?", "https://en.wikipedia.org/wiki/Lionel_Messi"], | |
["When was Cristiano Ronaldo born?", "https://en.wikipedia.org/wiki/Cristiano_Ronaldo"] | |
] | |
iface = gr.Interface( | |
fn=extract_answer, | |
inputs=["text", "text"], | |
outputs="text", | |
title=title, | |
description=description, | |
examples=examples | |
) | |
iface.launch(enable_queue=enable_queue) |