diff --git a/Evaluation/RAG_Evaluator/src/api/SASearch.py b/Evaluation/RAG_Evaluator/src/api/SASearch.py index efd3aa86..05f425cf 100644 --- a/Evaluation/RAG_Evaluator/src/api/SASearch.py +++ b/Evaluation/RAG_Evaluator/src/api/SASearch.py @@ -64,7 +64,10 @@ def extract_answer(answer: Dict) -> str: if not center_panel: return "No Answer Found" snippet_content = center_panel.get('data', [{}])[0].get('snippet_content', [{}]) - answer_string = " ".join(content.get('answer_fragment', "No Answer Found") for content in snippet_content) if snippet_content else "No Answer Found" + if type(snippet_content) is not list: + answer_string = snippet_content + else: + answer_string = " ".join(content.get('answer_fragment', "No Answer Found") for content in snippet_content) if snippet_content else "No Answer Found" return answer_string diff --git a/Evaluation/RAG_Evaluator/src/api/XOSearch.py b/Evaluation/RAG_Evaluator/src/api/XOSearch.py index c6d9f643..0550da90 100644 --- a/Evaluation/RAG_Evaluator/src/api/XOSearch.py +++ b/Evaluation/RAG_Evaluator/src/api/XOSearch.py @@ -61,7 +61,10 @@ def extract_answer(answer: Dict) -> str: if not center_panel: return "No Answer Found" snippet_content = center_panel.get('data', [{}])[0].get('snippet_content', [{}]) - answer_string = " ".join(content.get('answer_fragment', "No Answer Found") for content in snippet_content) if snippet_content else "No Answer Found" + if type(snippet_content) is not list: + answer_string = snippet_content + else: + answer_string = " ".join(content.get('answer_fragment', "No Answer Found") for content in snippet_content) if snippet_content else "No Answer Found" return answer_string