diff --git a/README.md b/README.md index 64b0a08..57469f1 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,8 @@ The providers are imported from [providers.py](/os_computer_use/providers.py) an - GPT-4o and GPT-4o mini (vision + action) - Anthropic: - Claude (vision + action) +- OrcaRouter: + - GPT-5.5, Claude Sonnet 5, Gemini 3.5 Flash (vision + action) - HuggingFace Spaces: - OS-Atlas (grounding) - ShowUI (grounding) @@ -98,6 +100,7 @@ Additionally, add API key(s) for any LLM providers you're using: # Hugging Face Spaces do not require an API key. FIREWORKS_API_KEY=... OPENROUTER_API_KEY=... +ORCAROUTER_API_KEY=... LLAMA_API_KEY=... GROQ_API_KEY=... GEMINI_API_KEY=... diff --git a/os_computer_use/config.py b/os_computer_use/config.py index 1b3d04b..9029c71 100644 --- a/os_computer_use/config.py +++ b/os_computer_use/config.py @@ -10,6 +10,7 @@ # vision_model = providers.AnthropicProvider("claude-3.5-sonnet") # vision_model = providers.MoonshotProvider("moonshot-v1-vision") # vision_model = providers.MistralProvider("pixtral") +# vision_model = providers.OrcaRouterProvider("gpt-5.5") #vision_model = providers.GroqProvider("llama-3.2") vision_model = providers.OpenRouterProvider("qwen-2.5-vl") diff --git a/os_computer_use/providers.py b/os_computer_use/providers.py index 9f25f48..d706030 100644 --- a/os_computer_use/providers.py +++ b/os_computer_use/providers.py @@ -29,6 +29,16 @@ class OpenRouterProvider(OpenAIBaseProvider): } +class OrcaRouterProvider(OpenAIBaseProvider): + base_url = "https://api.orcarouter.ai/v1" + api_key = os.getenv("ORCAROUTER_API_KEY") + aliases = { + "gpt-5.5": "openai/gpt-5.5", + "claude-sonnet": "anthropic/claude-sonnet-5", + "gemini-flash": "google/gemini-3.5-flash", + } + + class FireworksProvider(OpenAIBaseProvider): base_url = "https://api.fireworks.ai/inference/v1" api_key = os.getenv("FIREWORKS_API_KEY")