mirror of
https://github.com/open-thought/reasoning-gym.git
synced 2026-04-23 16:55:05 +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
061282e373
commit
5d7fbac0ad
106 changed files with 403 additions and 507 deletions
|
|
@ -221,8 +221,8 @@ class WordLadderDataset(ProceduralDataset):
|
|||
}
|
||||
|
||||
def score_answer(self, answer: Optional[str], entry: dict[str, Any]) -> float:
|
||||
if answer is None:
|
||||
return 0
|
||||
if not isinstance(answer, str):
|
||||
return 0.0
|
||||
|
||||
answer_words = tuple(s.strip() for s in answer.upper().split(","))
|
||||
|
||||
|
|
@ -239,17 +239,17 @@ class WordLadderDataset(ProceduralDataset):
|
|||
# 4. all words are in our vocabulary
|
||||
|
||||
if len(answer_words) < 2:
|
||||
return 0
|
||||
return 0.0
|
||||
|
||||
if answer_words[0] != start_word or answer_words[-1] != end_word:
|
||||
return 0.01
|
||||
return 0.0
|
||||
|
||||
if not all(len(w) == word_length for w in answer_words):
|
||||
return 0.01
|
||||
return 0.0
|
||||
|
||||
for i in range(1, len(answer_words)):
|
||||
if sum(1 for a, b in zip(answer_words[i - 1], answer_words[i]) if a != b) != 1:
|
||||
return 0.01
|
||||
return 0.0
|
||||
|
||||
reward = 1.0
|
||||
for word in answer_words:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue