Skip to content

DeepSeek: DeepSeek V4.1 Flash 1017

deepseek/deepseek-v4.1-flash-1017

DeepSeek V4.1 Flash 1017 is the October 17, 2026 snapshot of DeepSeek V4.1 Flash: a fast sparse mixture-of-experts model with a 1M-token context window and text and image input. Pin it when you need behaviour that will not change.

Modalities
TextImageText
In / out price
$0.375 / $1.50
per 1M tokens
Context
1.05M
1,048,576 tokens
Max output
393K
393,216 tokens
Released
Oct 17, 2026

Pricing

What you pay per 1 million tokens. Cached prompt tokens are billed at the cache-read price when the upstream reports them; otherwise at the input price.

Token typePrice / 1MPer token
Input (prompt)$0.375$0.000000375
Output (completion)$1.50$0.0000015
Cache read$0.0075$0.0000000075

Worked example: a request with 10,000 prompt tokens and 1,000 completion tokens costs $0.00525. While it runs, the request holds the maximum it could cost (based on max_tokens), then settles at the actual cost. How pricing works

Capabilities

Only capabilities we have verified end to end through the API are listed.

Features
StreamingTool callingStructured outputsReasoning
Input
TextImage
Output
Text
Context window
1,048,576 tokens
Max output
393,216 tokens

Performance on AI Models Router

Measured from real requests through our API in the last 7 days, all customers. A figure appears once it rests on at least 50 requests; until then we show how many there are, never an estimate.

Success rate
100.0%
3,620 requests
Cache-hit rate
94.8%
3,620 requests
Time to first token
455ms
median · 3,169 requests
Output speed
335 tok/s
median · 3,002 requests
How each figure is measured
Success rate
Requests that returned a complete response, out of those that succeeded or failed on the supply side (an upstream error, timeout, capacity limit or a fault on our side). Requests you cancel, invalid requests and your own credit or key limits don't count. A request that fails before any output is never charged.
Cache-hit rate
Cached prompt tokens as a share of all prompt tokens, billed at the cache-read price.
Time to first token
Median time from your request reaching us to the first streamed token, reasoning included.
Output speed
Median output tokens per second after the first token, on streamed replies of at least 50 tokens.

Updated every 10 minutes · last computed 19:55 UTC

Usage · last 30 days

Requests
4,220
Tokens
140.08M
133.91M in · 6.16M out

Requests per day

Requests by day
DayRequests
2026-10-060
2026-10-070
2026-10-080
2026-10-090
2026-10-100
2026-10-110
2026-10-120
2026-10-130
2026-10-140
2026-10-150
2026-10-160
2026-10-170
2026-10-180
2026-10-190
2026-10-200
2026-10-210
2026-10-220
2026-10-230
2026-10-240
2026-10-250
2026-10-260
2026-10-270
2026-10-28463
2026-10-29347
2026-10-300
2026-10-3139
2026-11-0169
2026-11-0262
2026-11-032,647
2026-11-04593

API

  1. 1Get your API key

    Create a key on the API keys page and export it:

    Shell
    export AMR_API_KEY=sk-amr-v1-...
  2. 2Make your first request

    Any OpenAI-compatible client works. The model slug is deepseek/deepseek-v4.1-flash-1017.

    from openai import OpenAI
    
    client = OpenAI(
        base_url="https://api.aimodelsrouter.ai/v1",
        api_key="sk-amr-v1-...",  # or os.environ["AMR_API_KEY"]
    )
    
    completion = client.chat.completions.create(
        model="deepseek/deepseek-v4.1-flash-1017",
        messages=[{"role": "user", "content": "What is the meaning of life?"}],
    )
    print(completion.choices[0].message.content)
  3. 3Stream the response

    Set stream: true. The final chunk carries usage and cost.

    stream = client.chat.completions.create(
        model="deepseek/deepseek-v4.1-flash-1017",
        messages=[{"role": "user", "content": "Write a haiku about routers."}],
        stream=True,
        stream_options={"include_usage": True},
    )
    for chunk in stream:
        if chunk.choices and chunk.choices[0].delta.content:
            print(chunk.choices[0].delta.content, end="", flush=True)
        if chunk.usage:  # final chunk: one choice with an empty delta, usage present
            print("\ncost (USD):", chunk.usage.cost)