mirror of
https://github.com/open-thought/reasoning-gym.git
synced 2026-04-25 17:10:51 +00:00
Minor question template & score_answer improvements (#261)
* math prompt improvements * ignore brackets in complex_arithmetic results * improve additional instruction in prompt of polynomial_equations * more strict tests for score_answer in polynomial_equations * simplify special reward handling * fix test_intermediate_integration * fix sokoban dataset * add common dataset score_answer consistency test
This commit is contained in:
parent
bf24999bb0
commit
b2904ccab9
106 changed files with 403 additions and 507 deletions
|
|
@ -295,7 +295,7 @@ class PropositionalLogicDataset(ProceduralDataset):
|
|||
|
||||
def score_answer(self, answer: str | None, entry: dict[str, Any]) -> float:
|
||||
"""Robust scoring implementation for propositional logic answers"""
|
||||
if not answer:
|
||||
if not isinstance(answer, str):
|
||||
return 0.0
|
||||
|
||||
try:
|
||||
|
|
@ -304,7 +304,7 @@ class PropositionalLogicDataset(ProceduralDataset):
|
|||
valid_vars = set(entry["metadata"]["variables"])
|
||||
answer_vars = re.findall(r"([A-Z])", cleaned_answer)
|
||||
if any(var not in valid_vars for var in answer_vars):
|
||||
return 0.01
|
||||
return 0.0
|
||||
|
||||
premises = [Expression.from_string(p) for p in entry["metadata"]["premises"]]
|
||||
answer_expr = Expression.from_string(cleaned_answer)
|
||||
|
|
@ -316,7 +316,7 @@ class PropositionalLogicDataset(ProceduralDataset):
|
|||
return 1.0
|
||||
return 0.05
|
||||
except (ValueError, KeyError, AttributeError):
|
||||
return 0.01
|
||||
return 0.0
|
||||
|
||||
def _is_trivial(self, expr: Expression) -> bool:
|
||||
"""Check for trivial tautologies like P ∨ ¬P"""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue