Proveedores de IA
8 proveedores, cada uno con su bridge en C. Cambia con una clave de configuración. Streaming, thinking, tool use — matriz de features por proveedor abajo.
Resumen
scorpiox code se conecta a backends de IA mediante bridges C por proveedor. Cada proveedor es una capa de traducción independiente. Establece SX_PROVIDER en scorpiox-env.txt para cambiar.
Detalles del proveedor
Modelos
Funcionalidades
Claves de configuración
Meta-provider that routes through scorpiox.net. API_BACKEND selects upstream: claude, gemini, gemini-internal, glm, llamacpp.
Modelos
Funcionalidades
Claves de configuración
Native Claude Code CLI emulation. User-Agent: claude-cli/2.0.51. Beta flags: claude-code-20250219, oauth-2025-04-20, interleaved-thinking-2025-05-14.
Modelos
Funcionalidades
Claves de configuración
OpenAI Codex via chatgpt.com backend-api. Always streams internally. Maps opus/sonnet/haiku to gpt-5.5/gpt-5.4/gpt-5.4-mini.
Modelos
Funcionalidades
Claves de configuración
Generic OpenAI-compatible provider. Works with llama.cpp, Ollama, vLLM, etc. Translates Anthropic Messages API to OpenAI Chat Completions via scorpiox-openai binary.
Modelos
Funcionalidades
Claves de configuración
Direct Anthropic API with x-api-key. Auth providers: official, antigravity (proxy with model mapping), zai (api.z.ai proxy), custom.
Modelos
Funcionalidades
Claves de configuración
Google Gemini via Vertex AI with API key auth. Maps opus→gemini-3.1-pro-preview, sonnet→gemini-3-flash-preview, haiku→gemini-3.1-flash-lite-preview.
Modelos
Funcionalidades
Claves de configuración
Google Gemini via cloudcode-pa API with SSE streaming. Failover: cloudcode-pa.googleapis.com, daily-cloudcode-pa.googleapis.com.
Modelos
Funcionalidades
Claves de configuración
Claude models via Google cloudcode-pa API. Non-streaming (requestType: claude). Failover endpoints supported.
Matriz de funcionalidades
| Funcionalidades | scorpiox | claude_code | codex | openai | anthropic | gemini_vertex | google_gemini | google_claude |
|---|---|---|---|---|---|---|---|---|
| function calling | — | — | ✓ | — | — | — | — | — |
| http relay support | — | — | — | ✓ | — | — | — | — |
| interleaved thinking | — | ✓ | — | — | — | — | — | — |
| model name mapping | — | — | — | — | ✓ | — | — | — |
| multi auth provider | — | — | — | — | ✓ | — | — | — |
| multi backend | ✓ | — | — | — | — | — | — | — |
| multi endpoint failover | — | — | — | — | — | — | ✓ | ✓ |
| proxy support | — | ✓ | — | — | — | — | — | — |
| retry with backoff | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| sse parsing | — | — | ✓ | — | — | — | ✓ | — |
| streaming | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | — |
| thinking | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| token auto refresh | — | ✓ | ✓ | — | — | — | ✓ | ✓ |
| tool use | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| traffic logging | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Configuración
SX_PROVIDER=claude_code
# Model tier (mapped per-provider)
MODEL=opus
# Enable streaming + thinking
STREAMING=true
THINKING=true
THINKING_BUDGET=10000
# Provider-specific: Claude Code token source
CLAUDE_CODE_TOKEN_SOURCE=local
# Provider-specific: Anthropic API key
ANTHROPIC_API_KEY=sk-ant-...
# Provider-specific: OpenAI-compatible endpoint
OPENAI_BASE_URL=http://localhost:8080/v1
# Provider-specific: Vertex AI
VERTEX_API_KEY=AIza...
Cambiar proveedor
SX_PROVIDER=codex
# Switch to local llama.cpp via OpenAI-compatible
SX_PROVIDER=openai
OPENAI_BASE_URL=http://localhost:8080/v1
OPENAI_MODEL=qwen2.5-coder-32b
# Switch to Gemini via Vertex AI
SX_PROVIDER=gemini_vertex
VERTEX_API_KEY=AIza...
# Switch to Google Gemini (Cloud Code)
SX_PROVIDER=google_gemini
GOOGLE_TOKEN_SOURCE=local
# Switch to Google Claude (Cloud Code)
SX_PROVIDER=google_claude
GOOGLE_TOKEN_SOURCE=local
Autenticación
Used by: claude_code, codex, google_gemini, google_claude. Tokens are fetched automatically via helper binaries (scorpiox-claudecode-fetchtoken, scorpiox-codex-fetchtoken). Token sources: local, remote (SSH), TCP.
Used by: anthropic (x-api-key), gemini_vertex (query param), openai (Bearer). Set the key in scorpiox-env.txt and it's passed through on every request.
Used by: scorpiox. Sends Anthropic-style headers to the scorpiox.net router, which selects the upstream backend via API_BACKEND (claude, gemini, gemini-internal, glm, llamacpp).