Here’s the detail most posts bury: the day DeepSeek V4 Pro 0813 went GA, the API already treated deepseek-v4-pro as the new build – zero code change if you were already calling that string. HN and LocalLLaMA lit up within hours. The useful part is quieter: same endpoint, same price sheet as preview, stronger post-training for agent loops.
Key takeaway: Skip raw curl demos. Point Claude Code at DeepSeek’s Anthropic base URL, map Opus/Sonnet slots to deepseek-v4-pro[1m], park Flash on subagents. Cache hits and the reasoning_content round-trip decide whether the bill and the tool loop stay sane.
What just shipped (short version)
On August 12, 2026, DeepSeek marked V4 Pro general availability. The official API docs now route deepseek-v4-pro to DeepSeek-V4-Pro-0813. Flash stays on DeepSeek-V4-Flash-0731.
Same MoE skeleton as the April preview: 1.6T total / 49B active. Hybrid Compressed Sparse Attention + Heavily Compressed Attention – the DeepSeek-V4 tech report (arXiv:2606.19348) puts that at ~27% of V3.2’s single-token FLOPs and ~10% of the KV cache at 1M context. Context 1M. Max output 384K. Thinking on by default, effort high.
As of that day’s pricing page: Pro is $0.435 per 1M input on a cache miss, $0.003625 on a hit, $0.87 per 1M output. Concurrency 500 on Pro, 2500 on Flash. OpenRouter shows the GA slug at the same list prices and about 54 tok/s on the DeepSeek provider (P50 latency ~1.5s there).
I’ll be honest – the first hour after the Reddit “it’s up” post, I wasted time hunting new HF shards. API first, weights later. That’s the DeepSeek cadence this cycle.
Method A vs Method B: raw API or agent stack
| Method A – Direct DeepSeek API | Method B – Claude Code / Anthropic route | |
|---|---|---|
| Setup time | API key + OpenAI SDK | Env vars + existing Claude Code |
| Best for | Custom apps, scripts, OpenRouter | Repo-scale coding agents |
| Model string | deepseek-v4-pro |
deepseek-v4-pro[1m] (+ Flash for Haiku/subagents) |
| Pain point | You own tool-loop + reasoning_content | Env mapping quirks, effort flags |
| Winner if… | You’re building product | You want work done tonight |
Building a backend? Method A. Need a refactor finished before dinner? B. Community noise picked B for a reason: keep the Claude Code loop, pay Pro rates instead of Opus rates. More shipped per minute of setup for this tutorial’s audience.
Walkthrough: Claude Code on DeepSeek V4 Pro 0813
Grab a key from platform.deepseek.com. Missing Claude Code?
npm install -g @anthropic-ai/claude-code
claude --version
Linux/Mac env block (PowerShell variants live on the same docs page):
export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic
export ANTHROPIC_AUTH_TOKEN=<your DeepSeek API Key>
export ANTHROPIC_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_OPUS_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_SONNET_MODEL=deepseek-v4-pro[1m]
export ANTHROPIC_DEFAULT_HAIKU_MODEL=deepseek-v4-flash
export CLAUDE_CODE_SUBAGENT_MODEL=deepseek-v4-flash
export CLAUDE_CODE_EFFORT_LEVEL=max
export CLAUDE_CODE_AUTO_COMPACT_WINDOW=786432
cd /path/to/your-project
claude
That block is straight out of DeepSeek’s Claude Code integration guide – Opus-class slots → Pro, Haiku/subagents → Flash. The [1m] suffix selects the million-token path. CLAUDE_CODE_EFFORT_LEVEL=max pushes high-effort thinking; the HF model card’s Pro-Max suite (SWE-bench Verified 80.6%, GPQA Diamond 90.1%, and friends) is the vendor’s peak-effort story, not an independent 0813 re-score.
Pro tip: Flash on subagents and Haiku. Pro’s concurrency cap is 500; Flash is 2500. Parallel agent spam on Pro alone is how you meet rate limits the hard way.
Prefer pure Python? Same model, OpenAI SDK, base URL https://api.deepseek.com:
from openai import OpenAI
client = OpenAI(api_key="...", base_url="https://api.deepseek.com")
r = client.chat.completions.create(
model="deepseek-v4-pro",
messages=[{"role": "user", "content": "Refactor this module for idempotent retries."}],
reasoning_effort="high",
extra_body={"thinking": {"type": "enabled"}},
)
print(r.choices[0].message.content)
Or pin OpenRouter’s deepseek/deepseek-v4-pro-0813 if you want one key across providers – handy while first-party pricing footnotes still threaten a raise.
When Flash still beats Pro
Don’t default Pro for everything.
After Flash-0731, people comparing the two say Flash is chattier and burns more output tokens while thrashing toward an answer. Pro tends to land cleaner with less “wait, let me reread the function.” List price: Flash is about 3× cheaper on input miss and on output ($0.14 / $0.28 vs $0.435 / $0.87). High-concurrency chatty fan-out? Flash. Hard multi-file reasoning, long-doc synthesis, or “get it right in one pass”? Pro 0813.
Non-thinking mode still exists – flip thinking off for low-stakes autocomplete-style work. FIM completion is non-thinking only, per the features table on the pricing page.
Edge cases that actually break sessions
- Tool calls + thinking = mandatory reasoning_content. If the turn used tools, every later request must send the assistant’s
reasoning_contentback. Drop it → HTTP 400. No tools between user turns? Docs allow omitting it; the server ignores leftovers. In Python, appendresponse.choices[0].messagewholesale and you dodge half the bugs. - Silent sampling knobs. In thinking mode, temperature / top_p / presence_penalty / frequency_penalty do nothing. No error. Your “creative” settings are cosplay.
- Cache economics. Miss is $0.435/M; hit is $0.003625/M (~120×). Early GA traffic on multi-provider dashboards showed very high hit rates, so weighted average input can sit absurdly far below list. Stable system prompts and repeated code context print money; unique mega-dumps every call do not.
- Price-hike footnote. DeepSeek’s pricing page says a big API price increase is planned. As of 0813 launch day (Aug 12, 2026) listed rates still matched preview – plan workloads like the discount window might close.
- Weights lag. API says 0813; Hugging Face still served the April preview artifacts on day one. Local runners shouldn’t assume new shards dropped with the version string.
Is 0813 a full retrain or “just” post-training on the same MoE skeleton? Public materials push the GA label and endpoint swap harder than a fresh tech report – treat independent leaderboards as lagging until they catch the new build.
FAQ
Do I need a new model name in my code for DeepSeek V4 Pro 0813?
No. Keep calling deepseek-v4-pro. OpenRouter users who want the pinned slug use deepseek/deepseek-v4-pro-0813. DeepSeek routes the alias to 0813.
Pro or Flash for a coding agent?
Main planner/editor on a whole repo: Pro. Quick file edits and anything that fans out into many parallel calls: Flash (cheaper tokens, higher concurrency). Official Claude Code mapping already does this – Pro on Opus/Sonnet slots, Flash on Haiku/subagent slots – so boilerplate doesn’t pay flagship rates.
Why did my multi-turn tool agent die with a 400?
Almost always a stripped reasoning_content field after a tool-using assistant turn. Many OpenAI-compatible clients drop unknown fields on the way back in. Fix the serializer, or append the full assistant message object the SDK returned (see the edge-case list above).
Separate foot-gun people mix up with the 400: some preview stacks emitted tool calls as plain text inside content instead of structured tool_calls. If you see that, force tools in the request and fix the parser – chasing reasoning_content alone won’t help.
Open your project folder, export the Anthropic env block above with a fresh DeepSeek key, and run one real refactor on Pro 0813 before the pricing footnote stops being theoretical.