Merge branch 'main' of github.com:xlang-ai/OSWorld

This commit is contained in:
yuanmengqi
2025-07-23 16:05:42 +00:00
3 changed files with 406 additions and 4 deletions

View File

@@ -194,7 +194,13 @@ class DesktopEnv(gym.Env):
self.require_terminal = require_terminal
# Initialize emulator and controller
if provider_name != "docker": # Check if this is applicable to other VM providers
# Docker provider needs delayed initialization due to container lifecycle
if provider_name == "docker":
logger.info("Docker provider detected - will initialize on first reset()")
# Initialize controllers as None for Docker - they'll be set up in reset()
self.controller = None
self.setup_controller = None
else:
logger.info("Initializing...")
self._start_emulator()
@@ -289,6 +295,11 @@ class DesktopEnv(gym.Env):
self.is_environment_used = False
else:
logger.info("Environment is clean, skipping snapshot revert (provider: {}).".format(self.provider_name))
# Initialize Docker provider controllers if not already done
if self.provider_name == "docker" and self.controller is None:
logger.info("Initializing Docker provider controllers...")
self._start_emulator()
if task_config is not None:
if task_config.get("proxy", False) and self.enable_proxy: