Update app.py
Browse files
app.py
CHANGED
@@ -1,3 +1,5 @@
|
|
|
|
|
|
1 |
import streamlit as st
|
2 |
from transformers import pipeline
|
3 |
import re
|
@@ -27,6 +29,34 @@ def query_evidence(payload):
|
|
27 |
response = requests.post(API_URL_evidence, headers=headers_evidence, json=payload)
|
28 |
return response.json()
|
29 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
#-----------------------------------------------------------
|
31 |
st.title('Welcome to :blue[FACTIFY - 5WQA] ')
|
32 |
|
@@ -363,23 +393,14 @@ def gen_qa_who(df):
|
|
363 |
claim=df['claim'][i]
|
364 |
answer= split_ws(df["who"])
|
365 |
evidence=df["evidence"][i]
|
366 |
-
time.sleep(5)
|
367 |
if srl!="":
|
368 |
try:
|
369 |
for j in range(0,len(answer)):
|
370 |
-
|
371 |
-
#FACT_TO_GENERATE_QUESTION_FROM = f"""generate_who_based_question_from_context_using_the_next_answer:{answer[j]} [SEP] context:{claim}"""
|
372 |
-
#time.sleep(10)
|
373 |
-
question_ids = query({"inputs":FACT_TO_GENERATE_QUESTION_FROM,
|
374 |
-
"num_beams":5,
|
375 |
-
"early_stopping":True,
|
376 |
-
"min_length": 100,"wait_for_model":True})[0]['generated_text'].capitalize()
|
377 |
question_ids = rephrase_question_who(question_ids)
|
378 |
list_of_ques_who.append(f"""Q{j+1} :\n {question_ids}""")
|
379 |
list_of_ans_who.append(f"""Claim :\n {answer[j]}""")
|
380 |
-
|
381 |
-
time.sleep(5)
|
382 |
-
answer_evidence = query_evidence({"inputs":input_evidence,"truncation":True,"wait_for_model":True})[0]['generated_text']
|
383 |
if answer_evidence.lower() in evidence.lower():
|
384 |
list_of_evidence_answer_who.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
385 |
else:
|
@@ -424,22 +445,14 @@ def gen_qa_what(df):
|
|
424 |
claim=df['claim'][i]
|
425 |
answer= split_ws(df["what"])
|
426 |
evidence=df["evidence"][i]
|
427 |
-
time.sleep(5)
|
428 |
if srl!="":
|
429 |
try:
|
430 |
for j in range(0,len(answer)):
|
431 |
-
|
432 |
-
#time.sleep(10)
|
433 |
-
question_ids = query({"inputs":FACT_TO_GENERATE_QUESTION_FROM,
|
434 |
-
"num_beams":5,
|
435 |
-
"early_stopping":True,
|
436 |
-
"min_length": 100,"wait_for_model":True})[0]['generated_text'].capitalize()
|
437 |
question_ids = rephrase_question_what(question_ids)
|
438 |
list_of_ques_what.append(f"""Q{j+1}:{question_ids}""")
|
439 |
list_of_ans_what.append(f"""Claim :\n {answer[j]}""")
|
440 |
-
|
441 |
-
time.sleep(5)
|
442 |
-
answer_evidence = query_evidence({"inputs":input_evidence,"truncation":True,"wait_for_model":True})[0]['generated_text']
|
443 |
if answer_evidence.lower() in evidence.lower():
|
444 |
list_of_evidence_answer_what.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
445 |
|
@@ -486,22 +499,14 @@ def gen_qa_why(df):
|
|
486 |
claim=df['claim'][i]
|
487 |
answer= split_ws(df["why"])
|
488 |
evidence=df["evidence"][i]
|
489 |
-
time.sleep(5)
|
490 |
if srl!="":
|
491 |
try:
|
492 |
for j in range(0,len(answer)):
|
493 |
-
|
494 |
-
#time.sleep(10)
|
495 |
-
question_ids = query({"inputs":FACT_TO_GENERATE_QUESTION_FROM,
|
496 |
-
"num_beams":5,
|
497 |
-
"early_stopping":True,
|
498 |
-
"min_length": 100,"wait_for_model":True})[0]['generated_text'].capitalize()
|
499 |
question_ids = rephrase_question_why(question_ids)
|
500 |
list_of_ques_why.append(f"""Q{j+1}:{question_ids}""")
|
501 |
list_of_ans_why.append(f"""Claim :\n {answer[j]}""")
|
502 |
-
|
503 |
-
time.sleep(5)
|
504 |
-
answer_evidence = query_evidence({"inputs":input_evidence,"truncation":True,"wait_for_model":True})[0]['generated_text']
|
505 |
if answer_evidence.lower() in evidence.lower():
|
506 |
list_of_evidence_answer_why.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
507 |
else:
|
@@ -547,22 +552,14 @@ def gen_qa_when(df):
|
|
547 |
claim=df['claim'][i]
|
548 |
answer= split_ws(df["when"])
|
549 |
evidence=df["evidence"][i]
|
550 |
-
time.sleep(5)
|
551 |
if srl!="":
|
552 |
try:
|
553 |
for j in range(0,len(answer)):
|
554 |
-
|
555 |
-
#time.sleep(10)
|
556 |
-
question_ids = query({"inputs":FACT_TO_GENERATE_QUESTION_FROM,
|
557 |
-
"num_beams":5,
|
558 |
-
"early_stopping":True,
|
559 |
-
"min_length": 100,"wait_for_model":True})[0]['generated_text'].capitalize()
|
560 |
question_ids = rephrase_question_when(question_ids)
|
561 |
list_of_ques_when.append(f"""Q{j+1}:{question_ids}""")
|
562 |
list_of_ans_when.append(f"""Claim :\n {answer[j]}""")
|
563 |
-
|
564 |
-
time.sleep(5)
|
565 |
-
answer_evidence = query_evidence({"inputs":input_evidence,"truncation":True,"wait_for_model":True})[0]['generated_text']
|
566 |
if answer_evidence.lower() in evidence.lower():
|
567 |
list_of_evidence_answer_when.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
568 |
else:
|
@@ -608,22 +605,14 @@ def gen_qa_where(df):
|
|
608 |
claim=df['claim'][i]
|
609 |
answer= split_ws(df["where"])
|
610 |
evidence=df["evidence"][i]
|
611 |
-
time.sleep(5)
|
612 |
if srl!="":
|
613 |
try:
|
614 |
for j in range(0,len(answer)):
|
615 |
-
|
616 |
-
time.sleep(10)
|
617 |
-
question_ids = query({"inputs":FACT_TO_GENERATE_QUESTION_FROM,
|
618 |
-
"num_beams":5,
|
619 |
-
"early_stopping":True,
|
620 |
-
"min_length": 100,"wait_for_model":True})[0]['generated_text'].capitalize()
|
621 |
question_ids = rephrase_question_where(question_ids)
|
622 |
list_of_ques_where.append(f"""Q{j+1}:{question_ids}""")
|
623 |
list_of_ans_where.append(f"""Claim :\n {answer[j]}""")
|
624 |
-
|
625 |
-
time.sleep(5)
|
626 |
-
answer_evidence = query_evidence({"inputs":input_evidence,"truncation":True,"wait_for_model":True})[0]['generated_text']
|
627 |
if answer_evidence.lower() in evidence.lower():
|
628 |
list_of_evidence_answer_where.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
629 |
else:
|
@@ -650,44 +639,7 @@ def gen_qa_where(df):
|
|
650 |
#------------------------------------------------------
|
651 |
|
652 |
|
653 |
-
#------------------------------------------------------------
|
654 |
-
# if claim_text:
|
655 |
-
# if evidence_text:
|
656 |
-
# df=claim(claim_text)
|
657 |
-
# df["evidence"]=evidence_text
|
658 |
-
# final_df = pd.DataFrame(columns=['Who Claims', 'What Claims', 'When Claims', 'Where Claims', 'Why Claims'])
|
659 |
-
|
660 |
-
|
661 |
-
# final_df["Who Claims"]=gen_qa_who(df)
|
662 |
-
# final_df["What Claims"]=gen_qa_what(df)
|
663 |
-
# final_df["When Claims"]=gen_qa_when(df)
|
664 |
-
# final_df["Where Claims"]=gen_qa_where(df)
|
665 |
-
# final_df["Why Claims"]=gen_qa_why(df)
|
666 |
-
# st.table(final_df)
|
667 |
-
# st.write(df["claim"])
|
668 |
-
# st.write(df["evidence"])
|
669 |
-
# # st.write(gen_qa_who(df))
|
670 |
-
# # st.table(final_df)
|
671 |
-
|
672 |
-
# if claim_text and evidence_text:
|
673 |
-
# st.write("You entered: ", claim_text)
|
674 |
-
# st.write("You entered: ", evidence_text)
|
675 |
-
# st.caption(':green[Kindly hold on for a few minutes while the QA pairs are being generated]')
|
676 |
-
# df=claim(claim_text)
|
677 |
-
# df["evidence"]=evidence_text
|
678 |
-
# final_df = pd.DataFrame(columns=['Who Claims', 'What Claims', 'When Claims', 'Where Claims', 'Why Claims'])
|
679 |
-
# final_df["Who Claims"]=gen_qa_who(df)
|
680 |
-
# final_df["What Claims"]=gen_qa_what(df)
|
681 |
-
# final_df["When Claims"]=gen_qa_when(df)
|
682 |
-
# final_df["Where Claims"]=gen_qa_where(df)
|
683 |
-
# final_df["Why Claims"]=gen_qa_why(df)
|
684 |
-
# st.table(final_df)
|
685 |
-
# st.write(df["claim"])
|
686 |
-
# st.write(df["evidence"])
|
687 |
-
|
688 |
if claim_text and evidence_text:
|
689 |
-
# st.write("You entered: ", claim_text)
|
690 |
-
# st.write("You entered: ", evidence_text)
|
691 |
st.caption(':green[Kindly hold on for a few minutes while the QA pairs are being generated]')
|
692 |
df=claim(claim_text)
|
693 |
df["evidence"]=evidence_text
|
@@ -752,7 +704,4 @@ if claim_text and evidence_text:
|
|
752 |
final_df['Why Claims'] = output5 + [''] * (max_rows - len(output5))
|
753 |
st.write(f"""Claim : {claim_text}""")
|
754 |
st.write(f"""Evidence : {evidence_text}""")
|
755 |
-
st.table(final_df)
|
756 |
-
# st.write(df["claim"])
|
757 |
-
# st.write(df["evidence"])
|
758 |
-
|
|
|
1 |
+
|
2 |
+
|
3 |
import streamlit as st
|
4 |
from transformers import pipeline
|
5 |
import re
|
|
|
29 |
response = requests.post(API_URL_evidence, headers=headers_evidence, json=payload)
|
30 |
return response.json()
|
31 |
|
32 |
+
#--------------------------------------------------------------------------------------------
|
33 |
+
def model_load_qg(answer,claim):
|
34 |
+
FACT_TO_GENERATE_QUESTION_FROM = f"""{answer} [SEP] {claim}"""
|
35 |
+
while True:
|
36 |
+
try:
|
37 |
+
question_ids = query({"inputs":FACT_TO_GENERATE_QUESTION_FROM,
|
38 |
+
"num_beams":5,
|
39 |
+
"early_stopping":True,
|
40 |
+
"min_length": 100,
|
41 |
+
"wait_for_model":True})[0]['generated_text'].capitalize()
|
42 |
+
break
|
43 |
+
except:
|
44 |
+
time.sleep(1)
|
45 |
+
return question_ids
|
46 |
+
|
47 |
+
def model_load_qa(question_ids,evidence):
|
48 |
+
|
49 |
+
# Wait until the model is loaded
|
50 |
+
while True:
|
51 |
+
try:
|
52 |
+
input_evidence = f"answer_the_next_question_from_context: {question_ids} context: {evidence}"
|
53 |
+
answer_evidence = query_evidence({"inputs":input_evidence,"truncation":True,"wait_for_model":True})[0]['generated_text']
|
54 |
+
break
|
55 |
+
except:
|
56 |
+
time.sleep(1)
|
57 |
+
return answer_evidence
|
58 |
+
|
59 |
+
|
60 |
#-----------------------------------------------------------
|
61 |
st.title('Welcome to :blue[FACTIFY - 5WQA] ')
|
62 |
|
|
|
393 |
claim=df['claim'][i]
|
394 |
answer= split_ws(df["who"])
|
395 |
evidence=df["evidence"][i]
|
|
|
396 |
if srl!="":
|
397 |
try:
|
398 |
for j in range(0,len(answer)):
|
399 |
+
question_ids = model_load_qg(answer[j],claim)
|
|
|
|
|
|
|
|
|
|
|
|
|
400 |
question_ids = rephrase_question_who(question_ids)
|
401 |
list_of_ques_who.append(f"""Q{j+1} :\n {question_ids}""")
|
402 |
list_of_ans_who.append(f"""Claim :\n {answer[j]}""")
|
403 |
+
answer_evidence = model_load_qa(question_ids,evidence)
|
|
|
|
|
404 |
if answer_evidence.lower() in evidence.lower():
|
405 |
list_of_evidence_answer_who.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
406 |
else:
|
|
|
445 |
claim=df['claim'][i]
|
446 |
answer= split_ws(df["what"])
|
447 |
evidence=df["evidence"][i]
|
|
|
448 |
if srl!="":
|
449 |
try:
|
450 |
for j in range(0,len(answer)):
|
451 |
+
question_ids = model_load_qg(answer[j],claim)
|
|
|
|
|
|
|
|
|
|
|
452 |
question_ids = rephrase_question_what(question_ids)
|
453 |
list_of_ques_what.append(f"""Q{j+1}:{question_ids}""")
|
454 |
list_of_ans_what.append(f"""Claim :\n {answer[j]}""")
|
455 |
+
answer_evidence = model_load_qa(question_ids,evidence)
|
|
|
|
|
456 |
if answer_evidence.lower() in evidence.lower():
|
457 |
list_of_evidence_answer_what.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
458 |
|
|
|
499 |
claim=df['claim'][i]
|
500 |
answer= split_ws(df["why"])
|
501 |
evidence=df["evidence"][i]
|
|
|
502 |
if srl!="":
|
503 |
try:
|
504 |
for j in range(0,len(answer)):
|
505 |
+
question_ids = model_load_qg(answer[j],claim)
|
|
|
|
|
|
|
|
|
|
|
506 |
question_ids = rephrase_question_why(question_ids)
|
507 |
list_of_ques_why.append(f"""Q{j+1}:{question_ids}""")
|
508 |
list_of_ans_why.append(f"""Claim :\n {answer[j]}""")
|
509 |
+
answer_evidence = model_load_qa(question_ids,evidence)
|
|
|
|
|
510 |
if answer_evidence.lower() in evidence.lower():
|
511 |
list_of_evidence_answer_why.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
512 |
else:
|
|
|
552 |
claim=df['claim'][i]
|
553 |
answer= split_ws(df["when"])
|
554 |
evidence=df["evidence"][i]
|
|
|
555 |
if srl!="":
|
556 |
try:
|
557 |
for j in range(0,len(answer)):
|
558 |
+
question_ids = model_load_qg(answer[j],claim)
|
|
|
|
|
|
|
|
|
|
|
559 |
question_ids = rephrase_question_when(question_ids)
|
560 |
list_of_ques_when.append(f"""Q{j+1}:{question_ids}""")
|
561 |
list_of_ans_when.append(f"""Claim :\n {answer[j]}""")
|
562 |
+
answer_evidence = model_load_qa(question_ids,evidence)
|
|
|
|
|
563 |
if answer_evidence.lower() in evidence.lower():
|
564 |
list_of_evidence_answer_when.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
565 |
else:
|
|
|
605 |
claim=df['claim'][i]
|
606 |
answer= split_ws(df["where"])
|
607 |
evidence=df["evidence"][i]
|
|
|
608 |
if srl!="":
|
609 |
try:
|
610 |
for j in range(0,len(answer)):
|
611 |
+
question_ids = model_load_qg(answer[j],claim)
|
|
|
|
|
|
|
|
|
|
|
612 |
question_ids = rephrase_question_where(question_ids)
|
613 |
list_of_ques_where.append(f"""Q{j+1}:{question_ids}""")
|
614 |
list_of_ans_where.append(f"""Claim :\n {answer[j]}""")
|
615 |
+
answer_evidence = model_load_qa(question_ids,evidence)
|
|
|
|
|
616 |
if answer_evidence.lower() in evidence.lower():
|
617 |
list_of_evidence_answer_where.append(f"""Answer retrieved from evidence :\n {answer_evidence}""")
|
618 |
else:
|
|
|
639 |
#------------------------------------------------------
|
640 |
|
641 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
642 |
if claim_text and evidence_text:
|
|
|
|
|
643 |
st.caption(':green[Kindly hold on for a few minutes while the QA pairs are being generated]')
|
644 |
df=claim(claim_text)
|
645 |
df["evidence"]=evidence_text
|
|
|
704 |
final_df['Why Claims'] = output5 + [''] * (max_rows - len(output5))
|
705 |
st.write(f"""Claim : {claim_text}""")
|
706 |
st.write(f"""Evidence : {evidence_text}""")
|
707 |
+
st.table(final_df)
|
|
|
|
|
|