DeepSeek V4 for roleplay: setup, settings, and the Flash question.
Updated 2026-07-16
DeepSeek V4 connects to SillyTavern, RisuAI, and any custom-endpoint frontend with three values: https://api.apisrouter.com/v1, your key, and deepseek-v4-flash (or pro). This page covers the exact fields per frontend, which variant fits story traffic, sampler starting points, and how the 1M context changes long-chat budgeting.
Quick answer: three values, and Flash as the default.
Any frontend with a custom OpenAI-compatible option takes the same three values: endpoint https://api.apisrouter.com/v1, your sk-... key, and a model id typed exactly. For roleplay, start with deepseek-v4-flash: chat turns are the workload it is shaped for, and its rate is what makes hundred-message sessions cost less than a coffee. deepseek-v4-pro is one dropdown away for scenes that need deeper plotting. The same connection serves GLM, Kimi, and Claude ids, so a mid-story model comparison is a field change in the frontend rather than a new account anywhere.
Endpoint: https://api.apisrouter.com/v1
API key: sk-... (from APIsRouter)
Model: deepseek-v4-flash (typed exactly; deepseek-v4-pro for heavier scenes)Why the V4 family dominates roleplay communities.
Roleplay is economically brutal on language models: every turn resends the visible chat history, so a long story bills its whole past on each message. That makes per-token input price the single most important number in the setup, and it is where the V4 family stands apart; at DeepSeek's published rates a typical turn with 2,500 tokens of context and a 300-token reply prices around four hundredths of a cent on Flash. Price is not the whole case. V4's 1M-token context, served at that window through the catalog here, means the model itself almost never forces a truncation decision; the vendor's docs list both variants as strong long-context models, and community consensus has kept the DeepSeek family the default value pick on SillyTavern-style frontends across generations. Prose quality is solid long-form fiction territory, with the usual caveat that the strongest safe-for-work literary prose remains Claude's ground at a matching premium; the best-models roundup linked below covers those tradeoffs model by model.
SillyTavern setup, field by field.
SillyTavern appends /chat/completions itself, so the classic failure is pasting the full completions URL and getting a 404 from a doubled path; the field wants the base ending at /v1. An empty model dropdown after Connect means the /v1/models call failed: recheck the URL, the key, and that the source is Custom (OpenAI-compatible) rather than plain OpenAI, which on some builds ignores custom URLs entirely. Use Chat Completion mode, not Text Completion, for any hosted endpoint. If chats fail after the model list works, run one curl against /v1/chat/completions with the same key; the error that comes back is the provider's real one rather than the frontend's generic message.
- Open API Connections (the plug icon).
- Set API to Chat Completion.
- Set Chat Completion Source to Custom (OpenAI-compatible).
- Custom Endpoint (Base URL): https://api.apisrouter.com/v1, stopping at /v1 with no trailing path.
- Custom API Key: your sk-... key.
- Click Connect; pick deepseek-v4-flash from the dropdown that fills from /v1/models.
RisuAI setup.
In RisuAI, open Settings, go to the API tab, and pick the custom OpenAI-compatible provider rather than a named preset. Enter the key, the endpoint https://api.apisrouter.com/v1, and type deepseek-v4-flash into the model field, enabling the custom-model option if the dropdown does not know the id; without that toggle the app quietly keeps the last built-in model selected, which is the most common silent misconfiguration. Labels vary slightly across RisuAI's web, desktop, and mobile builds, but the three values are the same everywhere. On the web build the browser itself makes the API call, so a config that looks right but produces silence is worth checking in the developer console for a CORS block before anything else; the desktop build sidesteps that class of problem. Save, open a character, send one short message. A reply proves endpoint, key, and model id in one step.
Flash or Pro for stories, and what thinking mode does to a scene.
Flash is the right default for interactive roleplay: turns are frequent, replies are conversational, and the money math favors the volume tier by 3x. Pro earns a look for specific story shapes, long plot arcs that need setup from two hundred messages ago woven back in, ensemble scenes juggling several characters, or group chats where each reply must track multiple speakers; if Flash handles your hardest scene five times in a row, it handles your story. Both variants support thinking and non-thinking modes upstream, and the reasoning behavior matters for feel: a thinking pass adds a delay before the first visible word and bills as output tokens. How reasoning content surfaces through a given frontend varies, so send a few test messages and watch two things, the pause before the reply starts and the completion_tokens count in the usage log, to see which behavior your setup gets. If turns feel slow or bill heavier than the visible prose, cap response length; if scenes drift or drop threads, that is the signal to try Pro rather than to push samplers harder.
| Setting | Starting point | Note |
|---|---|---|
| Model | deepseek-v4-flash | Escalate to pro only for a nameable failure |
| Temperature | 0.9 | Down toward 0.7 if the character drifts, up to 1.1 for wilder prose |
| Top P | 0.95 | Leave alone unless output turns incoherent |
| Frequency / presence penalty | 0 to 0.3 | High values mangle names in long chats |
| Response length (max_tokens) | 300-500 | Raise with headroom if replies truncate mid-thought |
| Context size | 32K to start | The window allows far more; your bill is the limiter |
Context budgeting when the window is a million tokens.
V4's 1M context inverts the usual roleplay constraint: the model will almost never force you to trim history, so the budget decision is entirely yours, and it is financial. Frontends resend the whole allowed context every turn; a story allowed to accumulate 200K tokens of visible history bills 200K input tokens per message, and even at Flash rates that multiplies across a hundred-message evening. The economical shape is a deliberate working window, 32K holds a detailed card plus a long scene comfortably, with summaries or lorebook entries carrying older canon forward in compressed form. Spend the big window deliberately where it earns its cost: a finale that genuinely needs deep callbacks, or an archival reread, not every casual turn. The context-length guide linked below works the per-turn math across window sizes. One structural habit helps on this family specifically: keep the card and system prompt stable and append history rather than rewriting it. Stable prefixes are the cache-friendly shape on DeepSeek's own platform and the debug-friendly shape everywhere.
Pay-as-you-go · transparent per-model pricing
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Model | Official Price | Our Price |
|---|---|---|
| DeepSeek V4 Flash | $0.14 / $0.28 per M | $0.13 / $0.25 per M |
| DeepSeek V4 Pro | $0.43 / $0.87 per M | $0.39 / $0.78 per M |
| GLM-5.2 | $1.14 / $4.00 per M | $1.03 / $3.60 per M |
| Kimi K2.6 | $0.95 / $4.00 per M | $0.85 / $3.60 per M |
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
Content policy, stated plainly.
DeepSeek models operate under DeepSeek's usage policies, and requests through APIsRouter carry the upstream model's content rules plus the terms of your frontend; SillyTavern and RisuAI set their own conditions, and community platforms add rules of their own. Community discussion generally places the DeepSeek family as comparatively flexible for fictional scenarios, and the accurate version of that observation is a relative one about where policy lines sit, not an absence of lines. The practical guidance is the same as for every model on this site: keep scenarios within each platform's rules and age settings, and check the policies-compared page linked below before building a long-running story on any single model's current posture, because provider policies are living documents.
FAQ
What settings does SillyTavern need for DeepSeek V4?
API: Chat Completion. Source: Custom (OpenAI-compatible). Custom Endpoint: https://api.apisrouter.com/v1, stopping at /v1. Key: your sk-... key. Connect, then pick deepseek-v4-flash from the dropdown. Pasting the full completions path is the classic 404; SillyTavern appends /chat/completions itself.
Is DeepSeek V4 good for roleplay?
It is the value default of 2026 roleplay communities: strong long-form fiction, a 1M-token context, and per-turn costs low enough that long daily sessions stay in single-digit dollars per month. For the highest safe-for-work literary prose, Claude models remain the premium upgrade path.
Should I use V4 Flash or V4 Pro for stories?
Flash by default; it carries conversational turns well at a third of Pro's rate. Escalate to Pro for nameable failures: long plot arcs Flash loses track of, ensemble scenes, or group chats juggling several speakers. If Flash survives your hardest scene five times, keep it.
Why do some replies pause before the text starts?
Both V4 variants support a thinking mode, and a reasoning pass runs before visible prose and bills as output tokens. Watch completion_tokens against the visible reply length in the usage log; if turns bill heavy or feel slow, cap response length and test the same scene on the other variant.
How much roleplay history should I keep in context?
The window fits enormous histories (1M tokens as served here), but the frontend resends the allowed context every turn, so cost scales with what you keep visible. A 32K working window plus summarized older canon is the economical shape; spend the full window on scenes that genuinely need deep callbacks.
Can I switch between DeepSeek and other models mid-story?
Yes. The same endpoint and key serve glm-5.2, kimi-k2.6, and claude-sonnet-4-6, so switching is a model-field change in the frontend. History lives in the frontend, not the model, so the story continues wherever you point it.