Otimização de custosComparação
Rodar DeepSeek localmente ou usar uma API? Hardware, velocidade, custo
Verifique se sua GPU e RAM conseguem rodar o DeepSeek V4-Flash, que velocidade esperar e quando mudar o base_url é mais simples. Inclui uma tabela de custos.

Nesta página
Provavelmente não, a menos que você tenha 128 GB de RAM ou uma máquina da classe Mac Studio, ou tenha um motivo para manter cada token no seu próprio disco. Só o arquivo do DeepSeek V4-Flash tem cerca de 100 GB, e um guia da comunidade relata aproximadamente 6–10 tokens por segundo mesmo em hardware caro. Para a maioria dos apps e loops de agente, o caminho mais curto é apontar o cliente OpenAI para uma API hospedada: você muda base_url e a chave, e nada mais no seu código.
Abaixo: como verificar sua própria máquina em cinco minutos, que velocidade esperar e quanto custa uma carga de trabalho real através de uma API.
O DeepSeek cabe na sua memória?#
Os tamanhos aqui vêm de um guia da comunidade sobre rodar o DeepSeek localmente (deepseek- no GitHub, 18 partes, CC BY 4.0, lido em 22 de outubro de 2026). É não oficial e não tem vínculo com a DeepSeek. As próprias páginas do guia não concordam totalmente entre si sobre os tamanhos, então confirme o tamanho do arquivo no model card do Hugging Face antes de iniciar um download de 100 GB.
Segundo o guia, o DeepSeek V4-Flash-0731 tem 284B parâmetros, dos quais 13B são ativos por token. Os arquivos:
Role a tabela para a direita →
| Quantização | Tamanho do arquivo (valor do guia) |
|---|---|
| Q3 | cerca de 103 GB |
| Q4 | cerca de 155 GB |
| Q8 | cerca de 162 GB |
O modelo não precisa ficar inteiramente na memória de vídeo. O llama.cpp consegue manter as camadas de especialistas na RAM do sistema, mas a regra de bolso do guia é direta: uma GPU de 24 GB precisa de 128 GB de RAM ao lado dela.
Digamos que você tenha um bom PC gamer com uma GPU de 24 GB e 64 GB de RAM. Some os dois e compare com o menor arquivo:
24 + 64 = 88 GB, e o arquivo Q3 tem 103 GB.
Não cabe, e o sistema operacional ainda precisa de memória própria. Com 24 GB de VRAM e 128 GB de RAM você tem 152 GB, e o arquivo de 103 GB cabe com folga.
O mais novo DeepSeek-V4.1-Flash-1017 é maior: cerca de 552B parâmetros mais 196B de Engram, em torno de 510 GB em FP8 e cerca de 167 GB em 2-bit, segundo o mesmo guia. O suporte é o outro problema. Conforme o guia (verificado em 22 de outubro de 2026), ele não roda no Ollama, porque a arquitetura deepseek_v41 não é suportada, e o suporte no llama.cpp e no LM Studio não está nos branches principais. Isso muda rápido, então consulte as notas de versão do seu engine antes de planejar em cima disso.
Quão rápido é?#
O guia traz duas medições, ambas em quantização pesada e ambas números da comunidade, então leia como ordens de grandeza e não como benchmark:
- DGX Spark com 128 GB, V4-Flash em IQ2: cerca de 6–7 tokens por segundo.
- Mac Studio M3 Ultra com 256 GB, V4.1-Flash em MLX 2-bit: cerca de 9,5 tokens por segundo.
O guia não tem número para uma RTX 4090 ou 5090.
Como isso se sente? Uma resposta de 1.000 tokens é mais ou menos uma página e meia de texto:
1.000 ÷ 9,5 = 105,3 segundos
1.000 ÷ 6 = 166,7 segundos
Para um chat que você lê enquanto recebe o streaming, é lento mas utilizável. Para um agente que faz dezenas de chamadas por tarefa, isso soma rápido. Digamos que seu loop produza 2.000.000 de tokens de saída por dia e a máquina realmente gere 9,5 tokens por segundo sem parar:
2.000.000 ÷ 9,5 = 210.526 segundos
210.526 ÷ 3.600 = 58,5 horas
Isso é mais de um dia de geração para um dia de trabalho. Servidores reais fazem batching de várias requisições juntas, então o quadro não é tão sombrio para uma equipe, mas você estaria ajustando o engine em vez de construir seu produto.
Quanto custa a mesma carga de trabalho através de uma API#
Vamos tornar o exemplo concreto. Suponha um loop de agente que envia 10 milhões de tokens de entrada e recebe 2 milhões de tokens de saída por dia. Esses são números supostos, substitua pelos seus do log de uso.
A própria página de preços da DeepSeek (22 de outubro de 2026, a página em si não mostra data) lista deepseek-flash, servido pelo DeepSeek-V4.1-Flash-1017, com estes preços por 1M tokens, fora de pico / pico: entrada com cache miss $0,15 / $0,30, saída $0,60 / $1,20. Os horários de pico são 01:00–04:00 e 06:00–10:00 UTC, de segunda a sexta, excluindo feriados públicos chineses; fora de pico é metade do pico. A entrada com cache hit é bem mais barata ($0,003 / $0,006), então um loop que reenvia o mesmo prefixo longo vai ficar abaixo dos números aqui.
Para a carga de trabalho suposta, com cache misses:
Fora de pico: 10 × $0,15 + 2 × $0,60 = $2,70 por dia
Pico: 10 × $0,30 + 2 × $1,20 = $5,40 por dia
Na CheapTokens, para o mesmo tipo de loop de agente, use o MiniMax-M2.7 (minimax-m2.7): um preço fixo a qualquer hora, sem janela de pico, até 8.192 tokens de saída por resposta, contexto de 180K e um único saldo para todos os modelos. Os mesmos 10M de entrada e 2M de saída custam $0.80 por dia. No geral, contando entrada e saída juntas, é mais barato que o OpenRouter; aqui está a tabela ao vivo para exatamente esta carga de trabalho:
| Modelo | Entrada $/1M | Saída $/1M | Custo | OpenRouter |
|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.28 | $0.565 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.35 | $0.789 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.80 | $5.40 |
10.000.000 tokens de entrada e 2.000.000 tokens de saída no total. Os preços por 1M de tokens são atuais e mudam junto com nossas tarifas; a coluna OpenRouter mostra preços de referência para a mesma carga de trabalho.
A tabela lê a lista de preços atual cada vez que é exibida, então continua correta quando os preços mudam. A lista completa de preços está na página de preços da CheapTokens, e preços da API DeepSeek em 2026 explica como cache hits e horários de pico mudam uma fatura.
Quando seu próprio hardware compensa?#
Tokens locais não custam nada por requisição, mas a máquina custa. Uma forma simples de verificar:
payback days = hardware price ÷ (daily API bill − daily electricity)Não vou dar um preço de hardware aqui porque ele varia demais; coloque o que te foi cotado. Para ter uma ideia, pegue a conta fora de pico da página de preços da DeepSeek acima. Cada $1.000 de hardware precisa desta quantidade de dias da fatura da API para se pagar, antes de eletricidade e do seu próprio tempo:
1.000 ÷ 2,70 = 370,4 dias
E isso assume que a máquina consegue entregar esse volume, o que não consegue: a 9,5 tokens por segundo, não dá (veja a seção de velocidade acima), então para uma carga de trabalho de agente o retorno não fecha. Local faz mais sentido quando:
- os dados não podem sair da sua rede, e isso importa mais que a fatura;
- você já tem a máquina e a carga é leve, digamos algumas centenas de requisições por dia para uma ferramenta pessoal;
- você quer experimentar com os próprios pesos: quantização, fine-tuning, um engine da sua escolha.
Uma API faz mais sentido quando a carga de trabalho é um agente ou um serviço, quando você precisa da resposta em segundos, ou quando seu hardware está abaixo dos tamanhos de memória acima. Se sua máquina for pequena demais até para o arquivo DeepSeek mais leve, o MiniMax-M2.7 (contexto de 180K, até 8.192 tokens de saída por resposta, no geral mais barato que o OpenRouter) é um modelo para experimentar pelo mesmo cliente.
Migrando do local para uma API hospedada#
Projetos de hobby costumam começar no Ollama e depois crescer além dele. A boa notícia: os engines locais falam o protocolo OpenAI. A página de compatibilidade do Ollama (docs.ollama.com, verificada em 22 de outubro de 2026) mostra o endpoint http:/; o cliente precisa de algum valor em api_key, mas o Ollama o ignora. Streaming, modo JSON e tools funcionam; logprobs não.
Então a troca são duas linhas mais o nome do modelo:
import os
from openai import OpenAI
# Local Ollama: the key is required by the client but ignored by the server
# client = OpenAI(base_url="http://localhost:11434/v1/", api_key="ollama")
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"],
)
reply = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7", # take the exact id from the CheapTokens docs
messages=[{"role": "user", "content": "Summarize this ticket in one sentence: ..."}],
max_tokens=200,
)
print(reply.choices[0].message.content)
print(reply.usage)Quando funciona, você vê um resumo de uma frase e um objeto usage com as contagens de tokens de prompt e completion, os mesmos números em que sua fatura se baseia. A API da CheapTokens também aceita o formato Anthropic Messages, e a documentação mostra a primeira requisição passo a passo. Se base_url é novidade para você, API compatível com OpenAI: o que é base_url leva dois minutos.
Se não funcionar#
Connection refusedemlocalhost:11434: o Ollama não está rodando, ou você ainda está apontando para o endereço local.401: a chave está faltando ou foi copiada com um espaço; leia de uma variável de ambiente, como no exemplo.404ou modelo desconhecido: o id do modelo não corresponde. Nomes locais e nomes hospedados diferem, então copie o id da documentação.
Qual escolher#
Se você tem 128 GB ou mais e está curioso, rode os pesos em casa e aproveite o controle. Se você constrói um agente que queima milhões de tokens por dia, ou um serviço onde usuários esperam pela resposta, use a API e mantenha a configuração local para experimentos. O código continua o mesmo de qualquer forma, então você pode começar com um e migrar para o outro depois. Para saber mais sobre o lado de self-hosting, veja o que o DeepInfer significa para self-hosting; para experimentar o DeepSeek através da API, veja modelos DeepSeek da CheapTokens.



