From b551063b898462232f9a5eeaa4d735cad68262b7 Mon Sep 17 00:00:00 2001 From: sergiopaniego Date: Mon, 17 Nov 2025 14:07:21 +0100 Subject: [PATCH 1/2] Update feeback count func --- src/envs/textarena_env/rewards.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/envs/textarena_env/rewards.py b/src/envs/textarena_env/rewards.py index 964a57a6..a2167eea 100644 --- a/src/envs/textarena_env/rewards.py +++ b/src/envs/textarena_env/rewards.py @@ -62,17 +62,16 @@ def extract_feedback_counts(feedback: str) -> Tuple[int, int]: return (0, 0) segments = [ - segment.strip() for segment in feedback.split("\n\n") if segment.strip() + segment.strip() for segment in feedback.split("\n") if segment.strip() ] - if not segments: + if len(segments) < 2: return (0, 0) - latest_segment = segments[-1] - lines = [line.strip() for line in latest_segment.splitlines() if line.strip()] - latest_line = lines[-1] if lines else latest_segment + marker_line = segments[1] + + green_count = marker_line.count("G") + yellow_count = marker_line.count("Y") - green_count = latest_line.count("G") - yellow_count = latest_line.count("Y") return (green_count, yellow_count) From 6129b8b49607efee089e0d99e63f50e94ffcf950 Mon Sep 17 00:00:00 2001 From: sergiopaniego Date: Mon, 17 Nov 2025 14:27:35 +0100 Subject: [PATCH 2/2] Update function --- src/envs/textarena_env/rewards.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/envs/textarena_env/rewards.py b/src/envs/textarena_env/rewards.py index a2167eea..bbd78b54 100644 --- a/src/envs/textarena_env/rewards.py +++ b/src/envs/textarena_env/rewards.py @@ -61,18 +61,18 @@ def extract_feedback_counts(feedback: str) -> Tuple[int, int]: if not feedback: return (0, 0) - segments = [ - segment.strip() for segment in feedback.split("\n") if segment.strip() - ] - if len(segments) < 2: + lines = [line.strip() for line in feedback.split("\n") if line.strip()] + if len(lines) < 2: return (0, 0) - marker_line = segments[1] + for line in lines: + normalized = line.replace(" ", "") + if normalized and all(c in "GYX" for c in normalized): + green = normalized.count("G") + yellow = normalized.count("Y") + return (green, yellow) - green_count = marker_line.count("G") - yellow_count = marker_line.count("Y") - - return (green_count, yellow_count) + return (0, 0) class _WordleRewardProvider: