Upload 2 files
Browse files- env/tasks.py +10 -10
- openenv.yaml +5 -5
env/tasks.py
CHANGED
|
@@ -190,7 +190,7 @@ def get_task(task_id: str) -> Dict[str, Any]:
|
|
| 190 |
"dirty_df": pd.DataFrame(TASK1_DIRTY),
|
| 191 |
"task_id": "task1_easy",
|
| 192 |
"difficulty": "easy",
|
| 193 |
-
"grader":
|
| 194 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 195 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 196 |
},
|
|
@@ -199,7 +199,7 @@ def get_task(task_id: str) -> Dict[str, Any]:
|
|
| 199 |
"dirty_df": pd.DataFrame(TASK2_DIRTY),
|
| 200 |
"task_id": "task2_medium",
|
| 201 |
"difficulty": "medium",
|
| 202 |
-
"grader":
|
| 203 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 204 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 205 |
},
|
|
@@ -208,7 +208,7 @@ def get_task(task_id: str) -> Dict[str, Any]:
|
|
| 208 |
"dirty_df": pd.DataFrame(TASK3_DIRTY),
|
| 209 |
"task_id": "task3_hard",
|
| 210 |
"difficulty": "hard",
|
| 211 |
-
"grader":
|
| 212 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 213 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 214 |
},
|
|
@@ -217,7 +217,7 @@ def get_task(task_id: str) -> Dict[str, Any]:
|
|
| 217 |
"dirty_df": pd.DataFrame(TASK2_DIRTY),
|
| 218 |
"task_id": "task4_medium_alt",
|
| 219 |
"difficulty": "medium",
|
| 220 |
-
"grader":
|
| 221 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 222 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 223 |
},
|
|
@@ -226,7 +226,7 @@ def get_task(task_id: str) -> Dict[str, Any]:
|
|
| 226 |
"dirty_df": pd.DataFrame(TASK3_DIRTY),
|
| 227 |
"task_id": "task5_hard_alt",
|
| 228 |
"difficulty": "hard",
|
| 229 |
-
"grader":
|
| 230 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 231 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 232 |
},
|
|
@@ -248,7 +248,7 @@ def list_tasks() -> list[dict[str, Any]]:
|
|
| 248 |
"task_id": "task1_easy",
|
| 249 |
"difficulty": "easy",
|
| 250 |
"max_steps": 20,
|
| 251 |
-
"grader":
|
| 252 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 253 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 254 |
},
|
|
@@ -257,7 +257,7 @@ def list_tasks() -> list[dict[str, Any]]:
|
|
| 257 |
"task_id": "task2_medium",
|
| 258 |
"difficulty": "medium",
|
| 259 |
"max_steps": 20,
|
| 260 |
-
"grader":
|
| 261 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 262 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 263 |
},
|
|
@@ -266,7 +266,7 @@ def list_tasks() -> list[dict[str, Any]]:
|
|
| 266 |
"task_id": "task3_hard",
|
| 267 |
"difficulty": "hard",
|
| 268 |
"max_steps": 20,
|
| 269 |
-
"grader":
|
| 270 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 271 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 272 |
},
|
|
@@ -275,7 +275,7 @@ def list_tasks() -> list[dict[str, Any]]:
|
|
| 275 |
"task_id": "task4_medium_alt",
|
| 276 |
"difficulty": "medium",
|
| 277 |
"max_steps": 20,
|
| 278 |
-
"grader":
|
| 279 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 280 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 281 |
},
|
|
@@ -284,7 +284,7 @@ def list_tasks() -> list[dict[str, Any]]:
|
|
| 284 |
"task_id": "task5_hard_alt",
|
| 285 |
"difficulty": "hard",
|
| 286 |
"max_steps": 20,
|
| 287 |
-
"grader":
|
| 288 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 289 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 290 |
},
|
|
|
|
| 190 |
"dirty_df": pd.DataFrame(TASK1_DIRTY),
|
| 191 |
"task_id": "task1_easy",
|
| 192 |
"difficulty": "easy",
|
| 193 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 194 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 195 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 196 |
},
|
|
|
|
| 199 |
"dirty_df": pd.DataFrame(TASK2_DIRTY),
|
| 200 |
"task_id": "task2_medium",
|
| 201 |
"difficulty": "medium",
|
| 202 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 203 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 204 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 205 |
},
|
|
|
|
| 208 |
"dirty_df": pd.DataFrame(TASK3_DIRTY),
|
| 209 |
"task_id": "task3_hard",
|
| 210 |
"difficulty": "hard",
|
| 211 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 212 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 213 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 214 |
},
|
|
|
|
| 217 |
"dirty_df": pd.DataFrame(TASK2_DIRTY),
|
| 218 |
"task_id": "task4_medium_alt",
|
| 219 |
"difficulty": "medium",
|
| 220 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 221 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 222 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 223 |
},
|
|
|
|
| 226 |
"dirty_df": pd.DataFrame(TASK3_DIRTY),
|
| 227 |
"task_id": "task5_hard_alt",
|
| 228 |
"difficulty": "hard",
|
| 229 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 230 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 231 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 232 |
},
|
|
|
|
| 248 |
"task_id": "task1_easy",
|
| 249 |
"difficulty": "easy",
|
| 250 |
"max_steps": 20,
|
| 251 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 252 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 253 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task1_easy"],
|
| 254 |
},
|
|
|
|
| 257 |
"task_id": "task2_medium",
|
| 258 |
"difficulty": "medium",
|
| 259 |
"max_steps": 20,
|
| 260 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 261 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 262 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task2_medium"],
|
| 263 |
},
|
|
|
|
| 266 |
"task_id": "task3_hard",
|
| 267 |
"difficulty": "hard",
|
| 268 |
"max_steps": 20,
|
| 269 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 270 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 271 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task3_hard"],
|
| 272 |
},
|
|
|
|
| 275 |
"task_id": "task4_medium_alt",
|
| 276 |
"difficulty": "medium",
|
| 277 |
"max_steps": 20,
|
| 278 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 279 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 280 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task4_medium_alt"],
|
| 281 |
},
|
|
|
|
| 284 |
"task_id": "task5_hard_alt",
|
| 285 |
"difficulty": "hard",
|
| 286 |
"max_steps": 20,
|
| 287 |
+
"grader": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 288 |
"grader_fn": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 289 |
"grader_path": TASK_GRADER_ENTRYPOINTS_COLON["task5_hard_alt"],
|
| 290 |
},
|
openenv.yaml
CHANGED
|
@@ -15,7 +15,7 @@ tasks:
|
|
| 15 |
difficulty: easy
|
| 16 |
max_steps: 20
|
| 17 |
description: "Remove duplicates, fill missing values, standardise country names."
|
| 18 |
-
grader: env.graders
|
| 19 |
grader_fn: env.graders:grade_task1_easy
|
| 20 |
grader_path: env.graders:grade_task1_easy
|
| 21 |
- id: task2_medium
|
|
@@ -24,7 +24,7 @@ tasks:
|
|
| 24 |
difficulty: medium
|
| 25 |
max_steps: 20
|
| 26 |
description: "Fix mixed date formats, convert price strings, correct category typos."
|
| 27 |
-
grader: env.graders
|
| 28 |
grader_fn: env.graders:grade_task2_medium
|
| 29 |
grader_path: env.graders:grade_task2_medium
|
| 30 |
- id: task3_hard
|
|
@@ -33,7 +33,7 @@ tasks:
|
|
| 33 |
difficulty: hard
|
| 34 |
max_steps: 20
|
| 35 |
description: "Resolve duplicate user IDs, clip session outliers, fix invalid bounce rates."
|
| 36 |
-
grader: env.graders
|
| 37 |
grader_fn: env.graders:grade_task3_hard
|
| 38 |
grader_path: env.graders:grade_task3_hard
|
| 39 |
- id: task4_medium_alt
|
|
@@ -42,7 +42,7 @@ tasks:
|
|
| 42 |
difficulty: medium
|
| 43 |
max_steps: 20
|
| 44 |
description: "Alternative medium scenario sharing the same grading criteria as task2_medium."
|
| 45 |
-
grader: env.graders
|
| 46 |
grader_fn: env.graders:grade_task4_medium_alt
|
| 47 |
grader_path: env.graders:grade_task4_medium_alt
|
| 48 |
- id: task5_hard_alt
|
|
@@ -51,7 +51,7 @@ tasks:
|
|
| 51 |
difficulty: hard
|
| 52 |
max_steps: 20
|
| 53 |
description: "Alternative hard scenario sharing the same grading criteria as task3_hard."
|
| 54 |
-
grader: env.graders
|
| 55 |
grader_fn: env.graders:grade_task5_hard_alt
|
| 56 |
grader_path: env.graders:grade_task5_hard_alt
|
| 57 |
|
|
|
|
| 15 |
difficulty: easy
|
| 16 |
max_steps: 20
|
| 17 |
description: "Remove duplicates, fill missing values, standardise country names."
|
| 18 |
+
grader: env.graders:grade_task1_easy
|
| 19 |
grader_fn: env.graders:grade_task1_easy
|
| 20 |
grader_path: env.graders:grade_task1_easy
|
| 21 |
- id: task2_medium
|
|
|
|
| 24 |
difficulty: medium
|
| 25 |
max_steps: 20
|
| 26 |
description: "Fix mixed date formats, convert price strings, correct category typos."
|
| 27 |
+
grader: env.graders:grade_task2_medium
|
| 28 |
grader_fn: env.graders:grade_task2_medium
|
| 29 |
grader_path: env.graders:grade_task2_medium
|
| 30 |
- id: task3_hard
|
|
|
|
| 33 |
difficulty: hard
|
| 34 |
max_steps: 20
|
| 35 |
description: "Resolve duplicate user IDs, clip session outliers, fix invalid bounce rates."
|
| 36 |
+
grader: env.graders:grade_task3_hard
|
| 37 |
grader_fn: env.graders:grade_task3_hard
|
| 38 |
grader_path: env.graders:grade_task3_hard
|
| 39 |
- id: task4_medium_alt
|
|
|
|
| 42 |
difficulty: medium
|
| 43 |
max_steps: 20
|
| 44 |
description: "Alternative medium scenario sharing the same grading criteria as task2_medium."
|
| 45 |
+
grader: env.graders:grade_task4_medium_alt
|
| 46 |
grader_fn: env.graders:grade_task4_medium_alt
|
| 47 |
grader_path: env.graders:grade_task4_medium_alt
|
| 48 |
- id: task5_hard_alt
|
|
|
|
| 51 |
difficulty: hard
|
| 52 |
max_steps: 20
|
| 53 |
description: "Alternative hard scenario sharing the same grading criteria as task3_hard."
|
| 54 |
+
grader: env.graders:grade_task5_hard_alt
|
| 55 |
grader_fn: env.graders:grade_task5_hard_alt
|
| 56 |
grader_path: env.graders:grade_task5_hard_alt
|
| 57 |
|