Text
DeepSeek V4.1 Flash
Use o DeepSeek V4.1 Flash com a API oficial Chat Completions, Responses ou Anthropic Messages: contexto de 1M de tokens, raciocínio ligado ou desligado e entrada de imagens.
O DeepSeek V4.1 Flash é o modelo rápido e de baixo custo da DeepSeek (a própria API da DeepSeek o chama de deepseek-flash). Por padrão ele raciocina antes de responder, e você pode desligar o raciocínio ou definir o nível dele a cada requisição. Envie a requisição oficial da DeepSeek para o SeedRouter: altere a URL base e a chave de API, mantenha o corpo.
ID do modelo
| ID do modelo | Janela de contexto | Saída máxima | Nível de raciocínio | Padrão |
|---|---|---|---|---|
deepseek-v4.1-flash | 1M tokens | 384K tokens (393,216) | none, low, high, max | Raciocínio ligado, high |
Entrada: texto e imagens. Saída: texto. Consulte a página do modelo para os preços atuais.
Exemplo rápido
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."}]
}'Endpoints
| Formato | Método e caminho | Autenticação |
|---|---|---|
| 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> ou Authorization: Bearer <key>, mais anthropic-version |
Os três retornam o formato de resposta oficial da DeepSeek, com ou sem streaming. Mantenha a chave de API em código do lado do servidor.
Parâmetros
Campos do Chat Completions:
| Nome | Tipo | Obrigatório | Padrão | Observações |
|---|---|---|---|---|
model | string | Sim | — | deepseek-v4.1-flash. |
messages | object[] | Sim | — | Mensagens de texto; imagens como partes image_url (veja Entrada de imagem). |
thinking.type | enum | Não | enabled | enabled ou disabled. |
reasoning_effort | enum | Não | high | none (raciocínio desligado), low, high ou max. minimal é executado como low, e medium e xhigh como high. |
max_tokens | integer | Não | 8K, ou 64K com raciocínio (128K no nível max) | 1–393216. Inclui o raciocínio. |
stop | string or string[] | Não | — | Sequências de parada. |
response_format | object | Não | {"type": "text"} | text ou json_object. json_schema retorna 400. |
tools | object[] | Não | — | Ferramentas de função; strict é aceito. |
tool_choice | string or object | Não | none sem ferramentas, auto com ferramentas | auto e none são aplicados. required e uma função nomeada são aceitos, mas não forçam uma chamada. |
stream | boolean | Não | false | Transmitir eventos enviados pelo servidor. |
stream_options.include_usage | boolean | Não | false | Todo chunk traz usage, com valor null exceto no último. |
temperature | number | Não | 1 | 0–2. Sem efeito no modo de raciocínio. |
top_p | number | Não | 1 | 0–1. No modo de raciocínio, valores abaixo de 0.95 são executados como 0.95; sem raciocínio, fica em 1. |
user_id | string | Não | — | Identificador do seu usuário final. |
logprobs, top_logprobs | — | Não | — | Aceitos (top_logprobs de 0 a 20), mas nenhuma probabilidade logarítmica é retornada. |
frequency_penalty, presence_penalty | — | Não | — | Obsoletos na DeepSeek: aceitos, sem efeito. |
Raciocínio e nível de raciocínio
O raciocínio vem ligado por padrão no nível high. Desligue-o com "thinking": {"type": "disabled"} ou "reasoning_effort": "none"; a resposta chega na hora e custa menos tokens de saída. max dedica o máximo de raciocínio a problemas difíceis. O raciocínio volta em reasoning_content, ao lado de content, e é cobrado como tokens de saída.
Quando uma requisição traz tools, envie de volta cada mensagem anterior do assistente com seu reasoning_content, como a DeepSeek exige em conversas com chamadas de ferramentas.
Entrada de imagem
As imagens vão no content de uma mensagem do usuário como partes image_url, com uma URL http(s) pública ou uma data URI em base64:
{"role": "user", "content": [
{"type": "image_url", "image_url": {"url": "https://example.com/chart.png"}},
{"type": "text", "text": "What does this chart show?"}
]}Uma URL pode ter no máximo 8192 caracteres e apontar para uma imagem de no máximo 32 MiB. Substitua a URL de exemplo por uma imagem sua publicamente acessível.
Dimensões de cobrança
Consulte as taxas atuais na página do modelo. Uma requisição é cobrada pelos tokens que usa:
- tokens de entrada que não estão no cache (
prompt_cache_miss_tokens), - tokens de entrada que estão no cache (
prompt_cache_hit_tokens), - tokens de saída, incluindo raciocínio.
As taxas dependem de quando a requisição é executada. O horário de pico vai das 01:00 às 04:00 e das 06:00 às 10:00 UTC, de segunda a sexta; todas as outras horas, incluindo fins de semana, ficam fora do horário de pico, com metade das taxas do horário de pico. A cobrança é retirada do usage informado com a resposta concluída. Uma requisição que falha não é cobrada. Os registros de uso da sua conta mostram a cobrança exata para cada requisição.
Saída
Uma requisição Chat Completions sem streaming retorna:
{
"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}
}
}Com "stream": true cada chunk traz um delta com reasoning_content ou content, e o último chunk antes de data: [DONE] traz o uso.
API Responses e Codex
POST /v1/responses aceita o corpo da Responses: input, instructions, max_output_tokens, reasoning.effort (como reasoning_effort acima), text.format (text ou json_object; json_schema é aceito, mas não aplicado), tools (function e a ferramenta personalizada apply_patch), tool_choice, temperature, top_p, top_logprobs, user e stream. O raciocínio volta como um item reasoning com conteúdo reasoning_text, e um stream traz eventos numerados de response.created até response.completed, com o raciocínio em eventos response.reasoning_text.delta. A API não guarda estado: previous_response_id, conversation e ferramentas integradas como web_search são ignorados, então envie a conversa inteira em input.
Para usar o DeepSeek V4.1 Flash no Codex, adicione um provider em ~/.codex/config.toml e defina 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
Código escrito para a API Anthropic Messages também pode chamar o DeepSeek V4.1 Flash: envie o corpo de Mensagens para /v1/messages com "model": "deepseek-v4.1-flash". system, max_tokens, tools, tool_choice (auto, none), thinking (enabled, disabled) e temperature (0–2) são aplicados; output_config.effort e metadata.user_id são aceitos; top_k, stop_sequences e tool_choice any não têm efeito. O raciocínio volta como blocos thinking. As imagens são enviadas como fontes base64 ou url.
Erros
Os erros usam {"error": {"code": ..., "message": "..."}} (o endpoint de Messages usa o formato de erro da Anthropic). O code é um código do catálogo de erros comum. Requisições falhadas não são cobradas.
Dicas
- Desligue o raciocínio em etapas simples e rápidas, como classificação ou extração; mantenha-o ligado para raciocínio, matemática e código.
- Coloque o contexto longo e reutilizado no início do prompt: a entrada em cache é cobrada por uma fração da taxa de entrada.
- Rode grandes jobs em lote fora do horário de pico, quando todas as taxas caem pela metade.
Relacionados
Grupo LLM opcional
Entre no Playground deste modelo para consultar os grupos disponíveis. As opções dependem das permissões da sua conta e do modelo selecionado. O Playground usa sua sessão de login; você não precisa fornecer uma chave API.
As chamadas de API mantêm sua chave API e o ID do modelo. Para selecionar um grupo, envie o nome exato dele no cabeçalho de requisição opcional X-SeedRouter-Group. Substitua GROUP_NAME abaixo por um nome exibido no Playground. Omita o cabeçalho ou use auto para manter o comportamento padrão da chave.
X-SeedRouter-Group: GROUP_NAMEUma chave API com restrições pode ter menos opções de grupo que o Playground. As requisições usam os preços do grupo selecionado e não mudam para outro grupo se ele estiver indisponível. Esta opção aceita chamadas LLM por HTTP, incluindo SSE; ela não se aplica a chamadas WebSocket, de imagem ou de vídeo.
Para consultar os grupos disponíveis para uma chave API específica sem gerar uma resposta do modelo, use este endpoint somente leitura. data[].id é o valor do cabeçalho; ratio é o multiplicador de preço da conta para esse grupo. A entrada auto reflete a estimativa atual da seleção padrão; seu multiplicador é null quando nenhum grupo padrão está disponível. A disponibilidade do grupo é verificada novamente quando você chama o modelo.
curl "https://api.seedrouter.ai/api/seedrouter/llm/groups?model=deepseek-v4.1-flash" \
-H "Authorization: Bearer YOUR_SEEDROUTER_KEY"