DeepSeek V4.1 Flash
Chiama DeepSeek V4.1 Flash con l'API ufficiale Chat Completions, Responses o Anthropic Messages: contesto di 1M token, ragionamento attivabile o disattivabile e input di immagini.
DeepSeek V4.1 Flash è il modello veloce ed economico di DeepSeek (l'API di DeepSeek lo chiama deepseek-flash). Per impostazione predefinita ragiona prima di rispondere, e puoi disattivare il ragionamento o impostarne il livello a ogni richiesta. Invia la richiesta ufficiale DeepSeek a SeedRouter: cambia l'URL di base e la chiave API, mantieni il corpo.
ID modello
| ID modello | Finestra di contesto | Output massimo | Livello di ragionamento | Predefinito |
|---|---|---|---|---|
deepseek-v4.1-flash | 1M token | 384K token (393,216) | none, low, high, max | Ragionamento attivo, high |
Input: testo e immagini. Output: testo. Consulta la pagina del modello per i prezzi attuali.
Esempio rapido
curl https://api.seedrouter.ai/v1/chat/completions \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4.1-flash",
"messages": [{"role": "user", "content": "Give me three names for a coffee shop."}]
}'Endpoint
| Formato | Metodo e percorso | Autenticazione |
|---|---|---|
| Chat Completions | POST https://api.seedrouter.ai/v1/chat/completions | Authorization: Bearer <key> |
| Responses | POST https://api.seedrouter.ai/v1/responses | Authorization: Bearer <key> |
| Anthropic Messages | POST https://api.seedrouter.ai/v1/messages | x-api-key: <key> oppure Authorization: Bearer <key>, più anthropic-version |
Tutti e tre restituiscono il formato di risposta ufficiale di DeepSeek, con o senza streaming. Mantieni la chiave API nel codice lato server.
Parametri
Campi di Chat Completions:
| Nome | Tipo | Obbligatorio | Predefinito | Note |
|---|---|---|---|---|
model | string | Sì | — | deepseek-v4.1-flash. |
messages | object[] | Sì | — | Messaggi di testo; immagini come parti image_url (vedi Input di immagini). |
thinking.type | enum | No | enabled | enabled o disabled. |
reasoning_effort | enum | No | high | none (ragionamento disattivato), low, high o max. minimal viene eseguito come low, medium e xhigh come high. |
max_tokens | integer | No | 8K, oppure 64K con il ragionamento (128K al livello max) | 1–393216. Include il ragionamento. |
stop | string or string[] | No | — | Sequenze di stop. |
response_format | object | No | {"type": "text"} | text o json_object. json_schema restituisce 400. |
tools | object[] | No | — | Strumenti di tipo funzione; strict è accettato. |
tool_choice | string or object | No | none senza strumenti, auto con strumenti | auto e none vengono applicati. required e una funzione con nome sono accettati, ma non forzano una chiamata. |
stream | boolean | No | false | Trasmette server-sent events. |
stream_options.include_usage | boolean | No | false | Ogni chunk contiene usage, pari a null tranne nell'ultimo. |
temperature | number | No | 1 | 0–2. Nessun effetto in modalità ragionamento. |
top_p | number | No | 1 | 0–1. In modalità ragionamento i valori inferiori a 0.95 vengono eseguiti come 0.95; senza ragionamento resta 1. |
user_id | string | No | — | L'identificativo del tuo utente finale. |
logprobs, top_logprobs | — | No | — | Accettati (top_logprobs da 0 a 20), ma non vengono restituite probabilità logaritmiche. |
frequency_penalty, presence_penalty | — | No | — | Deprecati da DeepSeek: accettati, senza effetto. |
Ragionamento e livello di ragionamento
Il ragionamento è attivo per impostazione predefinita al livello high. Disattivalo con "thinking": {"type": "disabled"} o "reasoning_effort": "none"; la risposta arriva subito e costa meno token di output. max dedica il massimo del ragionamento ai problemi difficili. Il ragionamento viene restituito in reasoning_content, accanto a content, ed è fatturato come token di output.
Quando una richiesta contiene tools, rimanda ogni messaggio precedente dell'assistente con il suo reasoning_content, come richiede DeepSeek nelle conversazioni con chiamate agli strumenti.
Input di immagini
Le immagini vanno nel content di un messaggio utente come parti image_url, con un URL http(s) pubblico oppure una data URI base64:
{"role": "user", "content": [
{"type": "image_url", "image_url": {"url": "https://example.com/chart.png"}},
{"type": "text", "text": "What does this chart show?"}
]}Un URL può avere al massimo 8192 caratteri e puntare a un'immagine di al massimo 32 MiB. Sostituisci l'URL di esempio con una tua immagine raggiungibile pubblicamente.
Dimensioni di fatturazione
Vedi i prezzi attuali nella pagina del modello. Una richiesta viene fatturata in base ai token che utilizza:
- token di input non presenti in cache (
prompt_cache_miss_tokens), - token di input presenti in cache (
prompt_cache_hit_tokens), - token di output, incluso il ragionamento.
Le tariffe dipendono da quando viene eseguita la richiesta. La fascia di punta va dalle 01:00 alle 04:00 e dalle 06:00 alle 10:00 UTC, dal lunedì al venerdì; tutte le altre ore, weekend compresi, sono fascia fuori punta, a metà delle tariffe della fascia di punta. L'addebito si basa sull'usage riportato con la risposta completata. Una richiesta fallita non viene addebitata. I registri di utilizzo del tuo account mostrano l'addebito esatto di ogni richiesta.
Output
Una richiesta Chat Completions senza streaming restituisce:
{
"id": "bc86988e-...",
"object": "chat.completion",
"created": 1790585983,
"model": "deepseek-v4.1-flash",
"choices": [{
"index": 0,
"finish_reason": "stop",
"logprobs": null,
"message": {"role": "assistant", "reasoning_content": "...", "content": "..."}
}],
"usage": {
"prompt_tokens": 36,
"completion_tokens": 39,
"total_tokens": 75,
"prompt_cache_hit_tokens": 0,
"prompt_cache_miss_tokens": 36,
"prompt_tokens_details": {"cached_tokens": 0},
"completion_tokens_details": {"reasoning_tokens": 0}
}
}Con "stream": true ogni chunk contiene un delta con reasoning_content o content, e l'ultimo chunk prima di data: [DONE] riporta l'utilizzo.
Responses API e Codex
POST /v1/responses accetta il corpo Responses: input, instructions, max_output_tokens, reasoning.effort (come reasoning_effort sopra), text.format (text o json_object; json_schema è accettato ma non applicato), tools (function e lo strumento personalizzato apply_patch), tool_choice, temperature, top_p, top_logprobs, user e stream. Il ragionamento viene restituito come elemento reasoning con contenuto reasoning_text, e uno stream trasporta eventi numerati da response.created a response.completed, con il ragionamento negli eventi response.reasoning_text.delta. L'API è stateless: previous_response_id, conversation e gli strumenti integrati come web_search vengono ignorati, quindi invia l'intera conversazione in input.
Per usare DeepSeek V4.1 Flash in Codex, aggiungi un provider a ~/.codex/config.toml e imposta SEEDROUTER_API_KEY:
model = "deepseek-v4.1-flash"
model_provider = "seedrouter"
show_raw_agent_reasoning = true
[model_providers.seedrouter]
name = "SeedRouter"
base_url = "https://api.seedrouter.ai/v1"
env_key = "SEEDROUTER_API_KEY"
wire_api = "responses"Formato Anthropic Messages
Anche il codice scritto per l'API Anthropic Messages può chiamare DeepSeek V4.1 Flash: invia il corpo Messages a /v1/messages con "model": "deepseek-v4.1-flash". system, max_tokens, tools, tool_choice (auto, none), thinking (enabled, disabled) e temperature (0–2) vengono applicati; output_config.effort e metadata.user_id sono accettati; top_k, stop_sequences e tool_choice any non hanno effetto. Il ragionamento viene restituito come blocchi thinking. Le immagini vengono passate come sorgenti base64 o url.
Errori
Gli errori usano {"error": {"code": ..., "message": "..."}} (l'endpoint Messages usa il formato di errore di Anthropic). Il code è un codice dal catalogo errori comune. Le richieste fallite non vengono addebitate.
Suggerimenti
- Disattiva il ragionamento per passaggi semplici e rapidi come classificazione o estrazione; tienilo attivo per ragionamento, matematica e codice.
- Metti il contesto lungo e riutilizzato all'inizio del prompt: l'input in cache viene fatturato a una frazione della tariffa di input.
- Esegui i grandi job batch nella fascia fuori punta, quando tutte le tariffe sono dimezzate.
