|
from typing import Dict, List |
|
|
|
|
|
def result_to_reader_input(result: Dict[str, List[str]]) \ |
|
-> Dict[str, List[str]]: |
|
"""Takes the output of the retriever and turns it into a format the reader |
|
understands. |
|
|
|
Args: |
|
result (Dict[str, List[str]]): The result from the retriever |
|
""" |
|
|
|
|
|
|
|
num_entries = len(result['n_chapter']) |
|
|
|
|
|
reader_result = { |
|
'titles': [], |
|
'texts': [] |
|
} |
|
|
|
for n in range(num_entries): |
|
|
|
if result['subsection'][n] != 'nan': |
|
title = result['subsection'][n] |
|
elif result['section'][n] != 'nan': |
|
title = result['section'][n] |
|
else: |
|
title = result['chapter'][n] |
|
|
|
reader_result['titles'].append(title) |
|
reader_result['texts'].append(result['text'][n]) |
|
|
|
return reader_result |
|
|