diff --git a/README.md b/README.md
index 5835345..7ae63de 100644
--- a/README.md
+++ b/README.md
@@ -24,9 +24,6 @@
-
-
-
@@ -159,7 +156,7 @@ result = asyncio.run(
The `Runner` sets the solver and environment off in a loop, like in a traditional reinforcement learning setup.
-

+
@@ -186,9 +183,9 @@ message_history = [
```
This would then build up the message history, alternating between the assistant (who takes the *action*) and the user (who provides the *observation*).
-> **Context-Window Management:** When making calls to the model, all the last observations other than the current one are discarded in order to reduce the large number of image tokens required. Since the model responses include reflection on the observations and are all included in the message history, the model is still aware of the entire history when planning new actions.
+> **Context-Window Management:** When making calls to the model, all the observations other than the current one are discarded in order to reduce the large number of image tokens required. Since the model responses include reflection on the observations and are all included in the message history, the model is still aware of the entire history when planning new actions.
-The chat template will format this automatically. You should also pass the `Tools` that the model has access to, these will define the action space available to the model. You can do this with `transformers`:
+You should also pass the `Tools` that the model has access to, these will define the action space available to the model. You can do this with `transformers`:
```python
from qwen_vl_utils import process_vision_info
diff --git a/assets/loop.png b/assets/loop.png
index 0bab8e3..5c36c84 100644
Binary files a/assets/loop.png and b/assets/loop.png differ
diff --git a/src/proxy_lite/cli.py b/src/proxy_lite/cli.py
index 0bc4d85..9ef9cd0 100644
--- a/src/proxy_lite/cli.py
+++ b/src/proxy_lite/cli.py
@@ -15,6 +15,10 @@ def update_config_from_env(config: RunnerConfig) -> RunnerConfig:
config.solver.client.api_base = os.getenv("PROXY_LITE_API_BASE")
if os.getenv("PROXY_LITE_MODEL"):
config.solver.client.model_id = os.getenv("PROXY_LITE_MODEL")
+ if os.getenv("PROXY_LITE_VIEWPORT_WIDTH"):
+ config.environment.viewport_width = int(os.getenv("PROXY_LITE_VIEWPORT_WIDTH"))
+ if os.getenv("PROXY_LITE_VIEWPORT_HEIGHT"):
+ config.environment.viewport_height = int(os.getenv("PROXY_LITE_VIEWPORT_HEIGHT"))
return config
@@ -31,11 +35,11 @@ def do_command(args):
if args.model:
config.solver.client.model_id = args.model
if args.homepage:
- config.homepage = args.homepage
+ config.environment.homepage = args.homepage
if args.viewport_width:
- config.viewport_width = args.viewport_width
+ config.environment.viewport_width = args.viewport_width
if args.viewport_height:
- config.viewport_height = args.viewport_height
+ config.environment.viewport_height = args.viewport_height
o = Runner(config=config)
result = asyncio.run(o.run(do_text))