Spaces:
Sleeping
Sleeping
Download test_api_smoke.py from KRISHDEV99/OpenenvScaler: direct link, hf CLI and curl.
- Browser
- Download file 1.62 kB
-
https://huggingface.co/spaces/KRISHDEV99/OpenenvScaler/resolve/main/test_api_smoke.py
- Command line
-
hf download hf://spaces/KRISHDEV99/OpenenvScaler/test_api_smoke.py
-
curl -L -o test_api_smoke.py https://huggingface.co/spaces/KRISHDEV99/OpenenvScaler/resolve/main/test_api_smoke.py
1.62 kB
| import asyncio | |
| import os | |
| from client import CustomerSupportEnvClient | |
| from models import SupportAction | |
| BASE_URL = os.getenv("TARGET_BASE_URL", "https://krishdev99-openenvscaler.hf.space") | |
| async def run_episode(difficulty: str, index: int) -> dict: | |
| env = CustomerSupportEnvClient(base_url=BASE_URL) | |
| await env.connect() | |
| reset_result = await env.reset(difficulty=difficulty, index=index) | |
| rewards: list[float] = [] | |
| done = bool(reset_result.done) | |
| observation = reset_result.observation | |
| actions = [ | |
| SupportAction(action_type="classify", content="technical_issue"), | |
| SupportAction(action_type="search_kb", content=observation.kb_id), | |
| SupportAction( | |
| action_type="respond", | |
| content="Thank you for contacting us. We will assist you shortly.", | |
| ), | |
| ] | |
| for action in actions: | |
| if done: | |
| break | |
| step_result = await env.step(action) | |
| rewards.append(float(step_result.reward or 0.0)) | |
| done = bool(step_result.done) | |
| observation = step_result.observation | |
| await env.close() | |
| return { | |
| "difficulty": difficulty, | |
| "index": index, | |
| "ticket_id": observation.ticket_id, | |
| "done": done, | |
| "steps": len(rewards), | |
| "reward_sum": round(sum(rewards), 4), | |
| } | |
| async def main() -> None: | |
| for difficulty in ("easy", "medium", "hard"): | |
| for index in (0, 1): | |
| result = await run_episode(difficulty, index) | |
| print(result) | |
| if __name__ == "__main__": | |
| asyncio.run(main()) | |