Spaces:
Sleeping
Sleeping
Upload folder using huggingface_hub
Browse files
src/envs/maze_env/client.py
CHANGED
|
@@ -21,7 +21,7 @@ from core.http_env_client import HTTPEnvClient
|
|
| 21 |
from .models import MazeAction, MazeObservation, MazeState
|
| 22 |
|
| 23 |
if TYPE_CHECKING:
|
| 24 |
-
|
| 25 |
|
| 26 |
class MazeEnv(HTTPEnvClient[MazeAction, MazeObservation]):
|
| 27 |
"""HTTP client for Maze Environment."""
|
|
|
|
| 21 |
from .models import MazeAction, MazeObservation, MazeState
|
| 22 |
|
| 23 |
if TYPE_CHECKING:
|
| 24 |
+
pass
|
| 25 |
|
| 26 |
class MazeEnv(HTTPEnvClient[MazeAction, MazeObservation]):
|
| 27 |
"""HTTP client for Maze Environment."""
|
src/envs/maze_env/models.py
CHANGED
|
@@ -13,8 +13,7 @@ This module defines the Action, Observation, and State types for Maze games.
|
|
| 13 |
from __future__ import annotations
|
| 14 |
|
| 15 |
from dataclasses import dataclass, field
|
| 16 |
-
from
|
| 17 |
-
from typing import Any, Dict, List, Optional, Tuple, Literal
|
| 18 |
|
| 19 |
from core.env_server import Action, Observation, State
|
| 20 |
|
|
|
|
| 13 |
from __future__ import annotations
|
| 14 |
|
| 15 |
from dataclasses import dataclass, field
|
| 16 |
+
from typing import List
|
|
|
|
| 17 |
|
| 18 |
from core.env_server import Action, Observation, State
|
| 19 |
|
src/envs/maze_env/server/app.py
CHANGED
|
@@ -25,7 +25,6 @@ Variables:
|
|
| 25 |
"""
|
| 26 |
|
| 27 |
from core.env_server import create_app
|
| 28 |
-
import numpy as np
|
| 29 |
from ..models import MazeAction, MazeObservation
|
| 30 |
from .maze_environment import MazeEnvironment
|
| 31 |
from .mazearray import maze
|
|
|
|
| 25 |
"""
|
| 26 |
|
| 27 |
from core.env_server import create_app
|
|
|
|
| 28 |
from ..models import MazeAction, MazeObservation
|
| 29 |
from .maze_environment import MazeEnvironment
|
| 30 |
from .mazearray import maze
|
src/envs/maze_env/server/maze_environment.py
CHANGED
|
@@ -11,9 +11,9 @@ This module wraps Maze's environment and exposes it
|
|
| 11 |
via the OpenEnv Environment interface.
|
| 12 |
"""
|
| 13 |
|
| 14 |
-
from typing import
|
| 15 |
-
from core.env_server import
|
| 16 |
-
from .maze import Maze
|
| 17 |
from ..models import MazeAction, MazeObservation, MazeState
|
| 18 |
|
| 19 |
try:
|
|
@@ -60,10 +60,10 @@ class MazeEnvironment(Environment):
|
|
| 60 |
|
| 61 |
# build MazeObservation; convert numpy to list for JSON-serializable dataclass fields
|
| 62 |
pos_list = observation.tolist() if hasattr(observation, "tolist") else list(observation)
|
| 63 |
-
total_reward = 0
|
| 64 |
legal_actions = self._compute_legal_actions(pos_list[0])
|
| 65 |
|
| 66 |
-
return MazeObservation(position=pos_list, total_reward=total_reward, legal_actions=legal_actions)
|
| 67 |
|
| 68 |
def step(self, action: MazeAction) -> MazeObservation:
|
| 69 |
"""
|
|
|
|
| 11 |
via the OpenEnv Environment interface.
|
| 12 |
"""
|
| 13 |
|
| 14 |
+
from typing import List, Tuple, Optional
|
| 15 |
+
from core.env_server import Environment
|
| 16 |
+
from .maze import Maze
|
| 17 |
from ..models import MazeAction, MazeObservation, MazeState
|
| 18 |
|
| 19 |
try:
|
|
|
|
| 60 |
|
| 61 |
# build MazeObservation; convert numpy to list for JSON-serializable dataclass fields
|
| 62 |
pos_list = observation.tolist() if hasattr(observation, "tolist") else list(observation)
|
| 63 |
+
self.total_reward = 0
|
| 64 |
legal_actions = self._compute_legal_actions(pos_list[0])
|
| 65 |
|
| 66 |
+
return MazeObservation(position=pos_list, total_reward=self.total_reward, legal_actions=legal_actions)
|
| 67 |
|
| 68 |
def step(self, action: MazeAction) -> MazeObservation:
|
| 69 |
"""
|