Towhidul commited on
Commit
335d0c1
·
1 Parent(s): 4cae2e9

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +63 -64
app.py CHANGED
@@ -391,68 +391,67 @@ def qa_list_gen(claim,srl_list,evidence):
391
  #-------------------------------------------------------------------------
392
  # Handle form submission
393
  if submitted and claim_text and evidence_text:
394
- if not claim_text or not evidence_text:
395
- st.caption(':green[Kindly hold on for a few minutes while the QA pairs are being generated]')
396
- srl_list = list(itertools.chain(*[list(s) for s in srl(claim_text)]))
397
- qa_list=qa_list_gen(claim_text,srl_list,evidence_text)
398
- list_who = []
399
- list_what = []
400
- list_when = []
401
- list_where = []
402
- list_why = []
403
- list_misc = []
404
-
405
- for item in qa_list:
406
- question = item[0]
407
- if any(x in question.lower() for x in ['who', 'what', 'when', 'where', 'why']):
408
- if 'who' in question.lower():
409
- list_who.append(item)
410
- elif 'what' in question.lower():
411
- list_what.append(item)
412
- elif 'when' in question.lower():
413
- list_when.append(item)
414
- elif 'where' in question.lower():
415
- list_where.append(item)
416
- elif 'why' in question.lower():
417
- list_why.append(item)
418
- else:
419
- list_misc.append(item)
420
- lists = [list_who, list_when, list_why, list_where, list_what]
421
- for j, lst in enumerate(lists):
422
- for i, l in enumerate(lst):
423
- if l: # check if list is not empty
424
- l[0] = f"Q{i+1}: {l[0]}"
425
- l[1] = f"Claim:- {l[1]}"
426
- if l[2]:
427
- l[2] = f"answer retrieved from evidence:- {l[2]}"
428
- else:
429
- l[2] = f"answer retrieved from evidence:- No mention of '{['who', 'when', 'why', 'where', 'what'][j]}' in any related documents."
430
-
431
- for i in range(len(lists)):
432
- if not lists[i]:
433
- lists[i].extend([["No claims", "", f"No mention of '{['who', 'when', 'why', 'where', 'what'][i]}' in any related documents.", "❔ Not verifiable"]])
434
 
435
-
436
- final_df = pd.DataFrame(columns=['Who Claims', 'What Claims', 'When Claims', 'Where Claims', 'Why Claims', 'Misc Claims'])
437
-
438
- all_items_who = [item for item_list in list_who for item in item_list]
439
- all_items_what = [item for item_list in list_what for item in item_list]
440
- all_items_when = [item for item_list in list_when for item in item_list]
441
- all_items_where = [item for item_list in list_where for item in item_list]
442
- all_items_why = [item for item_list in list_why for item in item_list]
443
- all_items_misc = [item for item_list in list_misc for item in item_list]
444
-
445
-
446
- max_rows = max(len(all_items_who), len(all_items_what), len(all_items_when), len(all_items_where), len(all_items_why), len(all_items_misc))
447
-
448
- final_df['Who Claims'] = all_items_who + [''] * (max_rows - len(all_items_who))
449
- final_df['What Claims'] = all_items_what + [''] * (max_rows - len(all_items_what))
450
- final_df['When Claims'] = all_items_when + [''] * (max_rows - len(all_items_when))
451
- final_df['Where Claims'] = all_items_where + [''] * (max_rows - len(all_items_where))
452
- final_df['Why Claims'] = all_items_why + [''] * (max_rows - len(all_items_why))
453
- final_df['Misc Claims'] = all_items_misc + [''] * (max_rows - len(all_items_misc))
454
- st.write(f"""Claim : {claim_text}""")
455
- st.write(f"""Evidence : {evidence_text}""")
456
- st.table(final_df)
457
- else:
458
- st.warning("You need to input both the claim and evidence and then press Submit")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
391
  #-------------------------------------------------------------------------
392
  # Handle form submission
393
  if submitted and claim_text and evidence_text:
394
+ st.caption(':green[Kindly hold on for a few minutes while the QA pairs are being generated]')
395
+ srl_list = list(itertools.chain(*[list(s) for s in srl(claim_text)]))
396
+ qa_list=qa_list_gen(claim_text,srl_list,evidence_text)
397
+ list_who = []
398
+ list_what = []
399
+ list_when = []
400
+ list_where = []
401
+ list_why = []
402
+ list_misc = []
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
403
 
404
+ for item in qa_list:
405
+ question = item[0]
406
+ if any(x in question.lower() for x in ['who', 'what', 'when', 'where', 'why']):
407
+ if 'who' in question.lower():
408
+ list_who.append(item)
409
+ elif 'what' in question.lower():
410
+ list_what.append(item)
411
+ elif 'when' in question.lower():
412
+ list_when.append(item)
413
+ elif 'where' in question.lower():
414
+ list_where.append(item)
415
+ elif 'why' in question.lower():
416
+ list_why.append(item)
417
+ else:
418
+ list_misc.append(item)
419
+ lists = [list_who, list_when, list_why, list_where, list_what]
420
+ for j, lst in enumerate(lists):
421
+ for i, l in enumerate(lst):
422
+ if l: # check if list is not empty
423
+ l[0] = f"Q{i+1}: {l[0]}"
424
+ l[1] = f"Claim:- {l[1]}"
425
+ if l[2]:
426
+ l[2] = f"answer retrieved from evidence:- {l[2]}"
427
+ else:
428
+ l[2] = f"answer retrieved from evidence:- No mention of '{['who', 'when', 'why', 'where', 'what'][j]}' in any related documents."
429
+
430
+ for i in range(len(lists)):
431
+ if not lists[i]:
432
+ lists[i].extend([["No claims", "", f"No mention of '{['who', 'when', 'why', 'where', 'what'][i]}' in any related documents.", "❔ Not verifiable"]])
433
+
434
+
435
+ final_df = pd.DataFrame(columns=['Who Claims', 'What Claims', 'When Claims', 'Where Claims', 'Why Claims', 'Misc Claims'])
436
+
437
+ all_items_who = [item for item_list in list_who for item in item_list]
438
+ all_items_what = [item for item_list in list_what for item in item_list]
439
+ all_items_when = [item for item_list in list_when for item in item_list]
440
+ all_items_where = [item for item_list in list_where for item in item_list]
441
+ all_items_why = [item for item_list in list_why for item in item_list]
442
+ all_items_misc = [item for item_list in list_misc for item in item_list]
443
+
444
+
445
+ max_rows = max(len(all_items_who), len(all_items_what), len(all_items_when), len(all_items_where), len(all_items_why), len(all_items_misc))
446
+
447
+ final_df['Who Claims'] = all_items_who + [''] * (max_rows - len(all_items_who))
448
+ final_df['What Claims'] = all_items_what + [''] * (max_rows - len(all_items_what))
449
+ final_df['When Claims'] = all_items_when + [''] * (max_rows - len(all_items_when))
450
+ final_df['Where Claims'] = all_items_where + [''] * (max_rows - len(all_items_where))
451
+ final_df['Why Claims'] = all_items_why + [''] * (max_rows - len(all_items_why))
452
+ final_df['Misc Claims'] = all_items_misc + [''] * (max_rows - len(all_items_misc))
453
+ st.write(f"""Claim : {claim_text}""")
454
+ st.write(f"""Evidence : {evidence_text}""")
455
+ st.table(final_df)
456
+ else:
457
+ st.warning("You need to input both the claim and evidence and then press Submit")