Migration guide · 5 minutes
OpenRouter → QuickSilver Pro
Two lines of code. 75% lower on Claude Opus 5.5 and Sonnet 5.5, ~20% lower on Qwen 3.7 Plus and MiniMax M3. GLM-5.3 matches its selected OpenRouter endpoint; GPT-6.1 Sol is at list. For the comparative analysis, see /vs/openrouter.
- Code changes
- base_url · API key · model IDs
- Model IDs to rename
- 17 mappings
- Then
- test your core flows end-to-end
The 5 steps
Sign up at quicksilverpro.io/dashboard. First top-up bonus: we match your first top-up 100%, up to $50 — added to your balance when you top up again (any amount from $5).
In your OpenAI SDK init, swap the
base_url.- base_url="https://openrouter.ai/api/v1" + base_url="https://api.quicksilverpro.io/v1"Replace
OPENROUTER_KEYwith your QSP key.- api_key=os.environ["OPENROUTER_KEY"], + api_key=os.environ["QSP_KEY"],Drop the
provider/prefix. The Qwen models also drop the trailing-a3bMoE-config suffix.OpenRouter QuickSilver Pro deepseek/ deepseek- v4- flash- 0731 deepseek- v4- flash deepseek/ deepseek- v4- pro deepseek- v4- pro qwen/ qwen3. 7- max qwen3. 7- max qwen/ qwen3. 7- plus qwen3. 7- plus qwen/ qwen3. 7- flash qwen3. 7- flash qwen/ qwen3. 6- plus qwen3. 6- plus qwen/ qwen3. 6- 35b- a3b qwen3. 6- 35b moonshotai/ kimi- k2. 6 kimi- k2. 6 moonshotai/ kimi- k2. 7- code kimi- k2. 7- code moonshotai/ kimi- k3 kimi- k3 z- ai/ glm- 5. 3 glm- 5. 3 z- ai/ glm- 5. 3- flash glm- 5. 3- flash openai/ gpt- oss- 120b gpt- oss- 120b qwen/ qwen3. 8- 27b qwen3. 8- 27b qwen/ qwen3. 8- flash qwen3. 8- flash- next qwen/ qwen3. 8- omni- flash qwen3. 8- omni- flash z- ai/ glm- 5. 2 glm- 5. 2 Run one representative request for each feature — chat, tool_calls, json_schema strict mode, streaming. Apart from the known difference below, any behavioral diff is a bug — report it.
One known difference: json_schema strict mode is model-dependent. The Claude models do not support it, so a schema there is advisory and the enforced path is a tool with
strict: true— structured output.
Full before/after
from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key=os.environ["OPENROUTER_KEY"],
)
r = client.chat.completions.create(
model="deepseek/deepseek-v4-flash-0731",
messages=[{"role": "user", "content": "Hi"}],
)from openai import OpenAI
client = OpenAI(
base_url="https://api.quicksilverpro.io/v1",
api_key=os.environ["QSP_KEY"],
)
r = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "Hi"}],
)from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key=os.environ["OPENROUTER_KEY"],
)
r = client.chat.completions.create(
model="deepseek/deepseek-v4-flash-0731",
messages=[{"role": "user", "content": "Hi"}],
)Common migration pitfalls
Cache-hit ratio drops temporarily
OpenRouter's cache lives across upstream providers; when you switch to QSP your cache starts cold. For the first day or two, observed cost may be a few % higher than list-price math suggests. Cache fills within 24-48h of your normal traffic pattern.
Model version drift
The undated OpenRouter DeepSeek ID serves an older build. QSP pins V4 Flash to the official 0731 revision; re-run evals if they were tuned to the older output style.
Don't migrate models you don't use on QSP
QSP's catalog spans open weights (Qwen3.8, GLM-5.3, DeepSeek V4.1, Kimi K3, MiniMax M3) and the closed frontier (GPT-6.1 Sol, Claude Opus 5.5 and Sonnet 5.5, Gemini 3.8, Grok 4.7) — so Claude and GPT workloads move over too, on the same key. If your setup also uses Llama, Mistral, or the long tail of community models, keep calling OpenRouter for those. Many teams run both SDKs side-by-side.
Rate limits work differently
OpenRouter silently smooths across upstreams. QSP enforces per-key throughput caps (default 600 req/min, 1M tok/min, 8 parallel). For bursty workloads, enable retry-on-429 in your client and ask for a higher limit if needed.
Start saving in 5 minutes
First top-up matched 100%, up to $50 in bonus credits, added on your next top-up. Keep your OpenAI SDK unchanged — only the URL and key change.