# DeepSeek V4.1 Flash

> Run DeepSeek V4.1 Flash by melious online or via API. $0.2273/M input, $0.0114/M cached input, $1.1367/M output, no setup.

**URL:** https://inference.sh/apps/melious/deepseek-v4-1-flash
**Last updated:** 2026-10-20

---

DeepSeek V4.1 Flash — 552B multimodal MoE with 1M context, image input and controllable reasoning. Frontier agentic and coding performance. Via the Melious API.

- app: `melious/deepseek-v4-1-flash`
- maker: [melious](https://inference.sh/apps/melious.md)
- category: [chat](https://inference.sh/apps/category/chat.md)
- tasks: [vision](https://inference.sh/apps/tag/vision.md), [reasoning](https://inference.sh/apps/tag/reasoning.md), [coding](https://inference.sh/apps/tag/coding.md)
- price: $0.2273/M input, $0.0114/M cached input, $1.1367/M output
- runs via: api, javascript and python sdk, belt cli, mcp

## deepseek-v4-1-flash API Guide

### About
deepseek v4.1 flash — 552b multimodal moe with 1m context, image input and controllable reasoning. frontier agentic and coding performance. via the melious api.

### Get an API Key
Create one in [settings → api keys](https://app.inference.sh/settings/keys). The examples read it from `INFERENCE_API_KEY`.

```bash
export INFERENCE_API_KEY="inf_your_key"
```

### 1. Calling the API

#### Install the Client

```bash
pip install inferencesh
```

#### Run and Get Result
Submit a request and wait for the final result.

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])

## version @39ttz9bq pinned
result = client.run({
        "app": "melious/deepseek-v4-1-flash@39ttz9bq",
        "input": {}
    })

print(result["output"])
```

#### Stream Live Updates
Get real-time progress updates as the task runs.

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])

## version @39ttz9bq pinned
## stream=True yields updates as they arrive
for update in client.run({
        "app": "melious/deepseek-v4-1-flash@39ttz9bq",
        "input": {}
    }, stream=True):
    if update.get("progress"):
        print(f"progress: {update['progress']}%")
    if update.get("output"):
        print(f"output: {update['output']}")
```

#### Run in the Background
Start the task and get its id back right away, then check on it with `GET /tasks/{id}`. It is done when `status` is 10 (completed), 11 (failed) or 12 (cancelled).

```python
import os
from inferencesh import inference, TaskStatus

client = inference(api_key=os.environ["INFERENCE_API_KEY"])

## returns as soon as the task is created
task = client.run({
        "app": "melious/deepseek-v4-1-flash@39ttz9bq",
        "input": {}
    }, wait=False)

## later: read its current state
state = client.tasks.get(task["id"]).data
if state["status"] == TaskStatus.COMPLETED:
    print(state["output"])
```

### 2. Files

#### Automatic Upload

```python
## local file paths are automatically uploaded
result = client.run({
    "app": "melious/deepseek-v4-1-flash@39ttz9bq",
    "input": {
        "image": "/path/to/local/image.png",  # detected & uploaded
        "audio": "https://example.com/audio.mp3",  # url passed through
    }
})
```

#### Manual Upload

```python
## upload and get a hosted URL
file = client.files.upload("/path/to/file.png")
print(file.uri)  # https://cloud.inference.sh/...
```

### 3. Schema

#### Input
- **text** (string): Text
- **images** (array): Images
- **files** (array): Files
- **attachments** (array): Attachments
- **context** (array): Context
- **role** (string): ChatMessageRole
- **reasoning** (string): Reasoning
- **tool_call_id** (string): Tool Call Id
- **system_prompt** (string): System Prompt
- **context_size** (integer): The context size for the model.
- **temperature** (number): Temperature
- **top_p** (number): Top P
- **top_k** (integer): Top K
- **min_p** (number): Min P
- **frequency_penalty** (number): Frequency Penalty
- **presence_penalty** (number): Presence Penalty
- **repetition_penalty** (number): Repetition Penalty
- **seed** (integer): Seed
- **stop** (array): Stop
- **max_tokens** (integer): Max Tokens
- **reasoning_effort** (string): ReasoningEffortEnum
- **reasoning_max_tokens** (integer): Reasoning Max Tokens
- **tools** (array): Tools
- **tool_choice** (object): ToolChoice
- **response_format** (object): ResponseFormat

#### Output
- **reasoning** (string): Reasoning
- **reasoning_state** (object): Reasoning State
- **response** (string): Response
- **tool_calls** (array): Tool Calls
- **usage** (object): LLMUsage

## other chat apps

- [DeepSeek V4.1 Flash 1017](https://inference.sh/apps/melious/deepseek-v4-1-flash-1017.md): $0.341/M input, $0.0341/M cached input, $1.364/M output
- [Claude Fable 5.1 (Claude Code)](https://inference.sh/apps/anthropic/claude-code-fable-5-1.md): from $0.00000277/sec
- [Claude Haiku 5.5 (Claude Code)](https://inference.sh/apps/anthropic/claude-code-haiku-5-5.md): from $0.00000277/sec
- [Claude Opus 5.5 (Claude Code)](https://inference.sh/apps/anthropic/claude-code-opus-5-5.md): from $0.00000277/sec
- [Claude Sonnet 5.5 (Claude Code)](https://inference.sh/apps/anthropic/claude-code-sonnet-5-5.md): from $0.00000277/sec

## faq

### how much does DeepSeek V4.1 Flash cost?

$0.2273/M input, $0.0114/M cached input, $1.1367/M output. you pay per run from your inference shell credits. no subscription is required.

### how do I run DeepSeek V4.1 Flash via api?

call melious/deepseek-v4-1-flash with the javascript or python sdk, the rest api, or `belt app run melious/deepseek-v4-1-flash` from a terminal. the api reference on this page lists every input.

### who makes DeepSeek V4.1 Flash?

DeepSeek V4.1 Flash is made by melious and runs on inference shell. every melious app is listed at https://inference.sh/apps/melious.

### can my agent use DeepSeek V4.1 Flash?

yes. agents call it as a tool through the inference shell mcp server (https://api.inference.sh/mcp), the belt cli or the sdk, and pay per run like you do.

### what are the alternatives to DeepSeek V4.1 Flash?

other chat apps on inference shell include DeepSeek V4.1 Flash 1017, Claude Fable 5.1 (Claude Code), Claude Haiku 5.5 (Claude Code), Claude Opus 5.5 (Claude Code). they run through the same api, so switching is a one-line change.
