Spaces:
Sleeping
Sleeping
| import random | |
| from env.task_graders import TASK_AGENT_GRADERS | |
| # Declared for GET /tasks + openenv.yaml (Phase 1 task/grader discovery). | |
| TASK_MANIFEST = [ | |
| { | |
| "name": "easy", | |
| "description": ( | |
| "Fewer cache items and low volatility; easier to infer staleness from noisy observations." | |
| ), | |
| "difficulty": "easy", | |
| "max_steps": 10, | |
| "grader": True, | |
| "grader_kind": "programmatic", | |
| "grader_callable": "env.task_graders:easy_agent_grader", | |
| "score_range": [0.0, 1.0], | |
| }, | |
| { | |
| "name": "medium", | |
| "description": ( | |
| "More items and moderate volatility; invalidation vs keep tradeoffs matter more." | |
| ), | |
| "difficulty": "medium", | |
| "max_steps": 10, | |
| "grader": True, | |
| "grader_kind": "programmatic", | |
| "grader_callable": "env.task_graders:medium_agent_grader", | |
| "score_range": [0.0, 1.0], | |
| }, | |
| { | |
| "name": "hard", | |
| "description": ( | |
| "Most items and high volatility; staleness signal is noisy and costly mistakes are easier." | |
| ), | |
| "difficulty": "hard", | |
| "max_steps": 10, | |
| "grader": True, | |
| "grader_kind": "programmatic", | |
| "grader_callable": "env.task_graders:hard_agent_grader", | |
| "score_range": [0.0, 1.0], | |
| }, | |
| ] | |
| def get_task(task_id): | |
| if task_id == "easy": | |
| return {"num_items": 2, "volatility": 0.1} | |
| elif task_id == "medium": | |
| return {"num_items": 3, "volatility": 0.4} | |
| elif task_id == "hard": | |
| return {"num_items": 4, "volatility": 0.8} | |
| else: | |
| return { | |
| "num_items": 3, | |
| "volatility": 0.3, | |
| } | |
| def sample_task(rng=None): | |
| r = rng if rng is not None else random | |
| return r.choice(["easy", "medium", "hard"]) | |
| def list_graders(): | |
| """Return task ids that have an enabled agent grader.""" | |
| return [ | |
| { | |
| "task": name, | |
| "grader_enabled": fn is not None, | |
| "callable": getattr(fn, "__name__", str(fn)), | |
| } | |
| for name, fn in TASK_AGENT_GRADERS.items() | |
| ] | |