Skip to content

feat(models): add DeepSeek V4 Pro to the model picker - #250

Open
zachdive wants to merge 1 commit into
masterfrom
spangle-condorraptor
Open

feat(models): add DeepSeek V4 Pro to the model picker#250
zachdive wants to merge 1 commit into
masterfrom
spangle-condorraptor

Conversation

@zachdive

@zachdive zachdive commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add deepseek/deepseek-v4-pro-0813 to PARAMETRIC_MODELS — tools and reasoning confirmed via OpenRouter's endpoint metadata; the model is text-only, so supportsVision is false
  • Price it at $0.435/M input, $0.87/M output, cache reads at $0.003625/M per OpenRouter; cacheWrite is set to the input rate explicitly since DeepSeek has no cache-write surcharge and the fallback would bill 1.25x
  • Add the DeepSeek whale mark to ProviderLogo (official monochrome path from simple-icons), since DeepSeek is a new provider in the picker

No routing changes needed: non-Anthropic/Google ids already flow through OpenRouter.

Test plan

  • npm run typecheck passes
  • Verify DeepSeek V4 Pro appears in the model picker with its logo and completes a chat/CAD generation

🤖 Generated with Claude Code


Summary by cubic

Adds deepseek/deepseek-v4-pro-0813 to the model picker with correct pricing and a DeepSeek provider icon, enabling a low‑cost 1M‑token MoE model that was previously unavailable. The model is text‑only.

Details for review

  • Add to PARAMETRIC_MODELS: tools/thinking enabled; vision disabled.
  • Set MODEL_PRICES: input $0.435/M, output $0.87/M, cacheRead $0.003625/M; set cacheWrite to $0.435/M to avoid the default 1.25× surcharge.
  • Add DeepSeek whale mark to ProviderLogo.
  • No routing or env changes; OpenRouter handles non‑Anthropic/Google IDs.

Written for commit cddaf58. Summary will update on new commits.

Review in cubic

Add deepseek/deepseek-v4-pro-0813 to PARAMETRIC_MODELS (tools and
reasoning confirmed via OpenRouter's endpoint metadata; text-only, so
supportsVision is false) and price it at $0.435/M input, $0.87/M output,
cache reads at $0.003625/M per OpenRouter. cacheWrite is set to the
input rate explicitly since DeepSeek has no cache-write surcharge and
the fallback would bill 1.25x.

DeepSeek is a new provider in the picker, so also add its whale mark to
ProviderLogo (official monochrome path from simple-icons).

No routing changes needed: non-Anthropic/Google ids already flow through
OpenRouter.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
cadam Ready Ready Preview Aug 12, 2026 10:01pm

Request Review

@supabase

supabase Bot commented Aug 12, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project sgprnbvihmydyrzvkcir because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 3 files

Re-trigger cubic

@greptile-apps

greptile-apps Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

Adds DeepSeek V4 Pro as a text-only parametric model routed through OpenRouter.

  • Adds DeepSeek metadata and capability flags to the model picker.
  • Adds the provider's monochrome logo.
  • Adds explicit input, output, cache-read, and cache-write billing rates.

Confidence Score: 4/5

The PR appears safe to merge after addressing the non-blocking source-format violation in the new provider icon.

The model identifier, provider key, capability metadata, OpenRouter routing, and billing key align; the only accepted concern is the oversized SVG source line.

Files Needing Attention: src/components/ProviderLogo.tsx

Important Files Changed

Filename Overview
src/components/ProviderLogo.tsx Adds a matching DeepSeek provider mark, but its path violates the repository's maximum line-length convention.
src/lib/utils.ts Adds the DeepSeek model with consistent provider metadata and text-only capability marking.
src/server/aiChat.ts Adds a matching pricing entry with an explicit input-rate cache-write price to avoid the default surcharge.

Reviews (1): Last reviewed commit: "feat(models): add DeepSeek V4 Pro to the..." | Re-trigger Greptile

),
'Moonshot AI': <path d="M21 12.79A9 9 0 1 1 11.21 3a7 7 0 0 0 9.79 9.79z" />,
DeepSeek: (
<path d="M23.748 4.651c-.254-.124-.364.113-.512.233-.051.04-.094.09-.137.137-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.155-.708-.311-.955-.65-.172-.24-.219-.509-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.094.172.187.129.323-.082.28-.18.553-.266.833-.055.179-.137.218-.328.14a5.5 5.5 0 0 1-1.737-1.179c-.857-.828-1.631-1.743-2.597-2.46a12 12 0 0 0-.689-.47c-.985-.957.13-1.743.387-1.836.27-.098.094-.433-.778-.428-.872.003-1.67.295-2.687.685a3 3 0 0 1-.465.136 9.6 9.6 0 0 0-2.883-.101c-1.885.21-3.39 1.1-4.497 2.622C.082 8.776-.231 10.854.152 13.02c.403 2.284 1.568 4.175 3.36 5.653 1.857 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.132-.284 4.994-1.86.47.234.962.328 1.78.398.629.058 1.235-.031 1.705-.129.735-.155.684-.836.418-.961-2.155-1.004-1.682-.595-2.112-.926 1.095-1.295 2.768-3.598 3.284-6.733.05-.346.115-.834.108-1.114-.004-.171.035-.238.23-.257a4.2 4.2 0 0 0 1.545-.475c1.397-.763 1.96-2.016 2.093-3.517.02-.23-.004-.467-.247-.588M11.58 18.168c-2.088-1.642-3.101-2.183-3.52-2.16-.39.024-.32.472-.234.763.09.288.207.487.371.74.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.168-1.361-.801-2.5-1.86-3.301-3.306-.775-1.393-1.225-2.888-1.299-4.482-.02-.385.094-.522.477-.592a4.7 4.7 0 0 1 1.53-.038c2.131.311 3.946 1.264 5.467 2.774.868.86 1.525 1.887 2.202 2.89.72 1.066 1.494 2.082 2.48 2.915.348.291.626.513.892.677-.802.09-2.14.109-3.055-.615zm1.001-6.44a.306.306 0 0 1 .415-.287.3.3 0 0 1 .113.074.3.3 0 0 1 .086.214c0 .17-.136.307-.308.307a.303.303 0 0 1-.306-.307m3.11 1.596c-.2.081-.4.151-.591.16a1.25 1.25 0 0 1-.798-.254c-.274-.23-.47-.358-.551-.758a1.7 1.7 0 0 1 .015-.588c.07-.327-.007-.537-.238-.727-.188-.156-.426-.199-.689-.199a.6.6 0 0 1-.254-.078.253.253 0 0 1-.114-.358 1 1 0 0 1 .192-.21c.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.392.451.462.576.685.915.176.264.336.536.446.848.066.194-.02.353-.25.45" />

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Oversized DeepSeek SVG line

The complete DeepSeek path is written on one source line exceeding the repository's 100-character limit, making the icon data unnecessarily difficult to inspect and edit.

Context Used: .cursor/rules/code-style.mdc (source)

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This matches the file's existing convention: the OpenAI and Anthropic paths above are also single ~1,500-character lines. SVG path data is a single string literal, so Prettier can't wrap it, and splitting it into concatenated chunks would make the icon harder to diff against its source SVG. Keeping icon paths on one line in this file is intentional; please treat it as an accepted exception to the 100-character rule.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant