Spaces:
Running
Running
| """HTTP client for the Stocker OpenEnv environment.""" | |
| import requests | |
| class StockerClient: | |
| def __init__(self, base_url: str = "http://localhost:7860"): | |
| self.base_url = base_url.rstrip("/") | |
| def reset(self, task_id: str = "task_easy") -> dict: | |
| r = requests.post(f"{self.base_url}/reset", json={"task_id": task_id}) | |
| r.raise_for_status() | |
| return r.json() | |
| def step(self, side: str, quantity: int = 0) -> dict: | |
| r = requests.post( | |
| f"{self.base_url}/step", | |
| json={"side": side, "quantity": quantity}, | |
| ) | |
| r.raise_for_status() | |
| return r.json() | |
| def get_state(self) -> dict: | |
| r = requests.get(f"{self.base_url}/state") | |
| r.raise_for_status() | |
| return r.json() | |
| def restore_state(self, state: dict) -> dict: | |
| r = requests.post(f"{self.base_url}/state", json=state) | |
| r.raise_for_status() | |
| return r.json() | |
| def health(self) -> dict: | |
| r = requests.get(f"{self.base_url}/health") | |
| r.raise_for_status() | |
| return r.json() | |