Claude Opus 5.5 já está disponível no SeedRouter

Text

DeepSeek V4.1 Flash

View Markdown

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 modeloJanela de contextoSaída máximaNível de raciocínioPadrão
deepseek-v4.1-flash1M tokens384K tokens (393,216)none, low, high, maxRaciocí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

FormatoMétodo e caminhoAutenticação
Chat CompletionsPOST https://api.seedrouter.ai/v1/chat/completionsAuthorization: Bearer <key>
ResponsesPOST https://api.seedrouter.ai/v1/responsesAuthorization: Bearer <key>
Anthropic MessagesPOST https://api.seedrouter.ai/v1/messagesx-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:

NomeTipoObrigatórioPadrãoObservações
modelstringSim—deepseek-v4.1-flash.
messagesobject[]Sim—Mensagens de texto; imagens como partes image_url (veja Entrada de imagem).
thinking.typeenumNãoenabledenabled ou disabled.
reasoning_effortenumNãohighnone (raciocínio desligado), low, high ou max. minimal é executado como low, e medium e xhigh como high.
max_tokensintegerNão8K, ou 64K com raciocínio (128K no nível max)1–393216. Inclui o raciocínio.
stopstring or string[]Não—Sequências de parada.
response_formatobjectNão{"type": "text"}text ou json_object. json_schema retorna 400.
toolsobject[]Não—Ferramentas de função; strict é aceito.
tool_choicestring or objectNãonone sem ferramentas, auto com ferramentasauto e none são aplicados. required e uma função nomeada são aceitos, mas não forçam uma chamada.
streambooleanNãofalseTransmitir eventos enviados pelo servidor.
stream_options.include_usagebooleanNãofalseTodo chunk traz usage, com valor null exceto no último.
temperaturenumberNão10–2. Sem efeito no modo de raciocínio.
top_pnumberNão10–1. No modo de raciocínio, valores abaixo de 0.95 são executados como 0.95; sem raciocínio, fica em 1.
user_idstringNã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_NAME

Uma 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"