Update app.py
Browse files
app.py
CHANGED
@@ -30,6 +30,42 @@ asr_pipeline = pipeline(
|
|
30 |
feature_extractor=processor.feature_extractor, # Set the feature extractor for audio input
|
31 |
device=device
|
32 |
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
|
34 |
# Basic GET endpoint
|
35 |
@app.get("/")
|
|
|
30 |
feature_extractor=processor.feature_extractor, # Set the feature extractor for audio input
|
31 |
device=device
|
32 |
)
|
33 |
+
# Load question-answering model
|
34 |
+
model_name = 'pierreguillou/bert-base-cased-squad-v1.1-portuguese'
|
35 |
+
qa_pipeline = pipeline("question-answering", model=model_name)
|
36 |
+
|
37 |
+
# Define the context
|
38 |
+
context = r"""
|
39 |
+
A pandemia de COVID-19, também conhecida como pandemia de coronavírus, é uma pandemia em curso de COVID-19,
|
40 |
+
uma doença respiratória aguda causada pelo coronavírus da síndrome respiratória aguda grave 2 (SARS-CoV-2).
|
41 |
+
A doença foi identificada pela primeira vez em Wuhan, na província de Hubei, República Popular da China,
|
42 |
+
em 1 de dezembro de 2019, mas o primeiro caso foi reportado em 31 de dezembro do mesmo ano.
|
43 |
+
Acredita-se que o vírus tenha uma origem zoonótica, porque os primeiros casos confirmados
|
44 |
+
tinham principalmente ligações ao Mercado Atacadista de Frutos do Mar de Huanan, que também vendia animais vivos.
|
45 |
+
Em 11 de março de 2020, a Organização Mundial da Saúde declarou o surto uma pandemia. Até 8 de fevereiro de 2021,
|
46 |
+
pelo menos 105 743 102 casos da doença foram confirmados em pelo menos 191 países e territórios,
|
47 |
+
com cerca de 2 308 943 mortes e 58 851 440 pessoas curadas.
|
48 |
+
"""
|
49 |
+
|
50 |
+
# Define the request body for the POST method
|
51 |
+
class QuestionRequest(BaseModel):
|
52 |
+
question: str
|
53 |
+
|
54 |
+
# POST endpoint to answer questions
|
55 |
+
@app.post("/answer/")
|
56 |
+
async def answer_question(request: QuestionRequest):
|
57 |
+
try:
|
58 |
+
# Use the QA model to answer the question based on the context
|
59 |
+
result = qa_pipeline(question=request.question, context=context)
|
60 |
+
return {
|
61 |
+
"question": request.question,
|
62 |
+
"answer": result['answer'],
|
63 |
+
"score": round(result['score'], 4),
|
64 |
+
"start": result['start'],
|
65 |
+
"end": result['end']
|
66 |
+
}
|
67 |
+
except Exception as e:
|
68 |
+
raise HTTPException(status_code=500, detail=str(e))
|
69 |
|
70 |
# Basic GET endpoint
|
71 |
@app.get("/")
|