Upgrade Claude 3.5 snapshot to a version with computer use support

This commit is contained in:
James Murdza
2025-08-19 11:38:52 -04:00
parent da9abc2ad8
commit 9a4c7215d8
11 changed files with 14 additions and 14 deletions
@@ -34,7 +34,7 @@ You can then use this as a tool for your agent:
from agent import ComputerAgent from agent import ComputerAgent
agent = ComputerAgent( agent = ComputerAgent(
model="anthropic/claude-3-5-sonnet-20240620", model="anthropic/claude-3-5-sonnet-20241022",
tools=[custom_computer], tools=[custom_computer],
) )
@@ -122,7 +122,7 @@ class MyCustomComputer(AsyncComputerHandler):
custom_computer = MyCustomComputer() custom_computer = MyCustomComputer()
agent = ComputerAgent( agent = ComputerAgent(
model="anthropic/claude-3-5-sonnet-20240620", model="anthropic/claude-3-5-sonnet-20241022",
tools=[custom_computer], tools=[custom_computer],
) )
@@ -36,7 +36,7 @@ With the OpenAI provider, prompt caching is handled automatically for prompts of
```python ```python
from agent import ComputerAgent from agent import ComputerAgent
agent = ComputerAgent( agent = ComputerAgent(
model="anthropic/claude-3-5-sonnet-20240620", model="anthropic/claude-3-5-sonnet-20241022",
use_prompt_caching=True, use_prompt_caching=True,
) )
``` ```
@@ -25,7 +25,7 @@ from computer import Computer
computer = Computer(...) computer = Computer(...)
agent = ComputerAgent( agent = ComputerAgent(
model="anthropic/claude-3-5-sonnet-20240620", model="anthropic/claude-3-5-sonnet-20241022",
tools=[computer, read_file], tools=[computer, read_file],
) )
``` ```
@@ -16,7 +16,7 @@ Claude models with computer-use capabilities:
- Claude 4.1: `claude-opus-4-1-20250805` - Claude 4.1: `claude-opus-4-1-20250805`
- Claude 4: `claude-opus-4-20250514`, `claude-sonnet-4-20250514` - Claude 4: `claude-opus-4-20250514`, `claude-sonnet-4-20250514`
- Claude 3.7: `claude-3-7-sonnet-20250219` - Claude 3.7: `claude-3-7-sonnet-20250219`
- Claude 3.5: `claude-3-5-sonnet-20240620` - Claude 3.5: `claude-3-5-sonnet-20241022`
```python ```python
agent = ComputerAgent("claude-3-5-sonnet-20241022", tools=[computer]) agent = ComputerAgent("claude-3-5-sonnet-20241022", tools=[computer])
@@ -16,7 +16,7 @@ All models that support `ComputerAgent.run()` also support `ComputerAgent.predic
- Claude 4.1: `claude-opus-4-1-20250805` - Claude 4.1: `claude-opus-4-1-20250805`
- Claude 4: `claude-opus-4-20250514`, `claude-sonnet-4-20250514` - Claude 4: `claude-opus-4-20250514`, `claude-sonnet-4-20250514`
- Claude 3.7: `claude-3-7-sonnet-20250219` - Claude 3.7: `claude-3-7-sonnet-20250219`
- Claude 3.5: `claude-3-5-sonnet-20240620` - Claude 3.5: `claude-3-5-sonnet-20241022`
### OpenAI CUA Preview ### OpenAI CUA Preview
- Computer-use-preview: `computer-use-preview` - Computer-use-preview: `computer-use-preview`
+1 -1
View File
@@ -48,7 +48,7 @@ async def run_agent_example():
# model="anthropic/claude-opus-4-20250514", # model="anthropic/claude-opus-4-20250514",
# model="anthropic/claude-sonnet-4-20250514", # model="anthropic/claude-sonnet-4-20250514",
# model="anthropic/claude-3-7-sonnet-20250219", # model="anthropic/claude-3-7-sonnet-20250219",
# model="anthropic/claude-3-5-sonnet-20240620", # model="anthropic/claude-3-5-sonnet-20241022",
# == UI-TARS == # == UI-TARS ==
# model="huggingface-local/ByteDance-Seed/UI-TARS-1.5-7B", # model="huggingface-local/ByteDance-Seed/UI-TARS-1.5-7B",
+1 -1
View File
@@ -84,7 +84,7 @@ if __name__ == "__main__":
### Anthropic Claude (Computer Use API) ### Anthropic Claude (Computer Use API)
```python ```python
model="anthropic/claude-3-5-sonnet-20241022" model="anthropic/claude-3-5-sonnet-20241022"
model="anthropic/claude-3-5-sonnet-20240620" model="anthropic/claude-3-7-sonnet-20250219"
model="anthropic/claude-opus-4-20250514" model="anthropic/claude-opus-4-20250514"
model="anthropic/claude-sonnet-4-20250514" model="anthropic/claude-sonnet-4-20250514"
``` ```
+2 -2
View File
@@ -114,14 +114,14 @@ MODEL_MAPPINGS = {
"Anthropic: Claude 4 Opus (20250514)": "anthropic/claude-opus-4-20250514", "Anthropic: Claude 4 Opus (20250514)": "anthropic/claude-opus-4-20250514",
"Anthropic: Claude 4 Sonnet (20250514)": "anthropic/claude-sonnet-4-20250514", "Anthropic: Claude 4 Sonnet (20250514)": "anthropic/claude-sonnet-4-20250514",
"Anthropic: Claude 3.7 Sonnet (20250219)": "anthropic/claude-3-7-sonnet-20250219", "Anthropic: Claude 3.7 Sonnet (20250219)": "anthropic/claude-3-7-sonnet-20250219",
"Anthropic: Claude 3.5 Sonnet (20240620)": "anthropic/claude-3-5-sonnet-20240620", "Anthropic: Claude 3.5 Sonnet (20241022)": "anthropic/claude-3-5-sonnet-20241022",
}, },
"omni": { "omni": {
"default": "omniparser+openai/gpt-4o", "default": "omniparser+openai/gpt-4o",
"OMNI: OpenAI GPT-4o": "omniparser+openai/gpt-4o", "OMNI: OpenAI GPT-4o": "omniparser+openai/gpt-4o",
"OMNI: OpenAI GPT-4o mini": "omniparser+openai/gpt-4o-mini", "OMNI: OpenAI GPT-4o mini": "omniparser+openai/gpt-4o-mini",
"OMNI: Claude 3.7 Sonnet (20250219)": "omniparser+anthropic/claude-3-7-sonnet-20250219", "OMNI: Claude 3.7 Sonnet (20250219)": "omniparser+anthropic/claude-3-7-sonnet-20250219",
"OMNI: Claude 3.5 Sonnet (20240620)": "omniparser+anthropic/claude-3-5-sonnet-20240620", "OMNI: Claude 3.5 Sonnet (20241022)": "omniparser+anthropic/claude-3-5-sonnet-20241022",
}, },
"uitars": { "uitars": {
"default": "huggingface-local/ByteDance-Seed/UI-TARS-1.5-7B" if is_mac else "ui-tars", "default": "huggingface-local/ByteDance-Seed/UI-TARS-1.5-7B" if is_mac else "ui-tars",
@@ -38,13 +38,13 @@ def create_gradio_ui() -> gr.Blocks:
"Anthropic: Claude 4 Opus (20250514)", "Anthropic: Claude 4 Opus (20250514)",
"Anthropic: Claude 4 Sonnet (20250514)", "Anthropic: Claude 4 Sonnet (20250514)",
"Anthropic: Claude 3.7 Sonnet (20250219)", "Anthropic: Claude 3.7 Sonnet (20250219)",
"Anthropic: Claude 3.5 Sonnet (20240620)", "Anthropic: Claude 3.5 Sonnet (20241022)",
] ]
omni_models = [ omni_models = [
"OMNI: OpenAI GPT-4o", "OMNI: OpenAI GPT-4o",
"OMNI: OpenAI GPT-4o mini", "OMNI: OpenAI GPT-4o mini",
"OMNI: Claude 3.7 Sonnet (20250219)", "OMNI: Claude 3.7 Sonnet (20250219)",
"OMNI: Claude 3.5 Sonnet (20240620)" "OMNI: Claude 3.5 Sonnet (20241022)"
] ]
# Check if API keys are available # Check if API keys are available
+1 -1
View File
@@ -98,7 +98,7 @@ async def main():
# model="anthropic/claude-opus-4-20250514", # model="anthropic/claude-opus-4-20250514",
# model="anthropic/claude-sonnet-4-20250514", # model="anthropic/claude-sonnet-4-20250514",
# model="anthropic/claude-3-7-sonnet-20250219", # model="anthropic/claude-3-7-sonnet-20250219",
# model="anthropic/claude-3-5-sonnet-20240620", # model="anthropic/claude-3-5-sonnet-20241022",
# == UI-TARS == # == UI-TARS ==
# model="huggingface-local/ByteDance-Seed/UI-TARS-1.5-7B", # model="huggingface-local/ByteDance-Seed/UI-TARS-1.5-7B",
+1 -1
View File
@@ -442,7 +442,7 @@
"source": [ "source": [
"anthropic_agent = ComputerAgent(\n", "anthropic_agent = ComputerAgent(\n",
" tools=[computer],\n", " tools=[computer],\n",
" model=\"anthropic/claude-3-5-sonnet-20240620\",\n", " model=\"anthropic/claude-3-5-sonnet-20241022\",\n",
" trajectory_dir=str(Path(\"trajectories\")),\n", " trajectory_dir=str(Path(\"trajectories\")),\n",
" verbosity=logging.INFO\n", " verbosity=logging.INFO\n",
")\n" ")\n"