Spaces:
Sleeping
Sleeping
| import re | |
| def normalize_answer(answer: str) -> str: | |
| """Apply minimal GAIA answer cleanup without changing meaning.""" | |
| cleaned = str(answer).strip() | |
| final_answer_match = re.search( | |
| r"FINAL\s+ANSWER\s*:\s*(.+)\s*$", | |
| cleaned, | |
| flags=re.IGNORECASE | re.DOTALL, | |
| ) | |
| if final_answer_match: | |
| cleaned = final_answer_match.group(1).strip() | |
| cleaned = cleaned.strip("` \n\t") | |
| cleaned = cleaned.strip() | |
| if ( | |
| len(cleaned) >= 2 | |
| and cleaned[0] == cleaned[-1] | |
| and cleaned[0] in {"'", '"'} | |
| ): | |
| cleaned = cleaned[1:-1].strip() | |
| cleaned = cleaned.removesuffix(".").strip() | |
| if re.fullmatch(r"\$?-?\d[\d,]*(?:\.\d+)?", cleaned): | |
| cleaned = cleaned.removeprefix("$").replace(",", "") | |
| return cleaned | |