DeepSeek V4 Pro (0813) vs Kimi K2.7 Code
Cuál usar y cuándo
Elige deepseek-v4-pro-0813 para trabajo de texto con contexto largo: su ventana de 1000000 tokens es casi 4x los 256000 de kimi-k2.7-code, su salida máxima de 393216 es 12x el límite de 32768, y las lecturas de caché cuestan $0.132 frente a $0.19, aunque su entrada de $1.32 es aproximadamente 1.4x los $0.95 que cobra B. Elige kimi-k2.7-code cuando necesites entrada de imágenes o video, lo cual deepseek-v4-pro-0813 no acepta, o cuando los prompts baratos sin caché importen más que el tamaño de la ventana; ten en cuenta que el razonamiento no se puede desactivar en él. Los precios de salida son similares en ambos casos, a $3.96 frente a $4.
Benchmarks
Publicado por los proveedores: Alibaba (Qwen) Anthropic ByteDance DeepSeek Google MiniMax Moonshot OpenAI Tencent Z.ai
Precios
| DeepSeek V4 Pro (0813) | Kimi K2.7 Code | Δ | |
|---|---|---|---|
| Entrada / 1M tokens | $1.32 | $0.95 | 1.4× |
| Salida / 1M tokens | $3.96 | $4 | 0.99× |
| Lectura de caché / 1M tokens | $0.132 | $0.19 | 0.69× |
| Escritura en caché | sin cargo aparte | - | - |
Tarifas tomadas del catálogo en vivo al generar el sitio; la página de cada modelo tiene la ficha de precios actualizada.
Dónde queda cada uno: precio de entrada por 1M de tokens entre los 76 modelos de chat que se facturan en esta unidad (escala logarítmica)
Capacidades
| DeepSeek V4 Pro (0813) | Kimi K2.7 Code | |
|---|---|---|
| Uso de herramientas | sí | sí |
| Control del razonamiento | siempre activo | siempre activo |
| Salida estructurada | sí | - |
| Caché de prompts | implícito (automático) | implícito (automático) |
| Duración de la caché | no fixed TTL (evicted when unused) | no publicado |
| Prefijo mínimo en caché | no publicado | no publicado |
Especificaciones
| DeepSeek V4 Pro (0813) | Kimi K2.7 Code | |
|---|---|---|
| Modalidades de entrada | texto | texto imagen vídeo |
| Modalidades de salida | texto | texto |
| Lanzamiento | 2026-08-13 | 2026-06 |
| Ventana de contexto | 1M | 256K |
| Salida máxima | 393K | 33K |
| Parámetro de razonamiento | reasoning_effort |
|
| Valores aceptados | reasoning_effort
| type
keep
|
| Valor por defecto | - | thinking on with Preserved Thinking on |
Las especificaciones se transcriben de la documentación de cada proveedor; si un proveedor no publica un dato, la fila se omite en vez de deducirlo. Fuentes completas: DeepSeek V4 Pro (0813) · Kimi K2.7 Code
Un mismo prompt en los dos modelos, medido a través de la pasarela
DeepSeek V4 Pro (0813) superado · 3 sentences
Enabling reasoning causes the model to generate a hidden chain-of-thought with many additional tokens before producing the final answer, which sharply increases compute consumption per request. Those extra reasoning tokens are billed at the same or higher rates, so total usage doubled even though the volume of final outputs stayed similar. We can control this by adjusting reasoning effort, setting token limits, or routing only complex requests through reasoning mode.
salida 308 tok (+226 razonamiento) latencia 5.1 s
Kimi K2.7 Code superado · 3 sentences
Enabling reasoning mode causes the model to generate an internal chain-of-thought before producing each answer, and that hidden reasoning text is billed like any other output. Those extra reasoning tokens typically add up to much more than the final response itself, so every API call now costs significantly more than before. Because our overall usage volume did not change, the doubled bill reflects that each query consumes roughly twice as many billable tokens.
salida 259 tok (+174 razonamiento) latencia 5.4 s
Cumplimiento de la instrucción (exactamente tres frases, se pueden contar), adaptación al público (registro de CFO) y la diferencia de facturación por razonamiento oculto que dejan ver los contadores de tokens de abajo.
DeepSeek V4 Pro (0813) superado · 8/8 cases
```python def longest_run(xs): if not xs: return 0 best = 1 cur = 1 for i in range(1, len(xs)): if xs[i] == xs[i - 1]: cur += 1 else: cur = 1 best = max(best, cur) return best ``` The bug is that `cur` was initialized to `0` and only counted adjacent matching pairs, so a run of length `n` produced `n - 1` (or `0` for a single element) instead of `n`. The code also reset to `0` on a change, when the new run should start at length `1`. Initializing `cur` and `best` to `1` fixes both the single-element case and runs ending at the last index.
salida 1315 tok (+1130 razonamiento) latencia 16.9 s
Kimi K2.7 Code superado · 8/8 cases
```python def longest_run(xs): if not xs: return 0 best = 1 cur = 1 for i in range(1, len(xs)): if xs[i] == xs[i - 1]: cur += 1 best = max(best, cur) else: cur = 1 return best ``` The bug is that the function counts *transitions* between equal neighbors instead of counting the items themselves, so a single-element list never enters the loop and returns `0` instead of `1`. Likewise, resetting `cur` to `0` on a mismatch forgets the current item that starts a new run, which causes runs that end at the last index to be undercounted. Initializing both `best` and `cur` to `1` and resetting `cur` to `1` fixes both issues.
salida 410 tok (+222 razonamiento) latencia 9.4 s
Si la corrección funciona de verdad (se puede ejecutar), lo densa que es la explicación y la eficiencia en tokens en una tarea acotada.
DeepSeek V4 Pro (0813) superado · 5/5 fields, guidance null
{"company":"Meridian Robotics","quarter":"September quarter","revenue_usd_m":412,"growth_pct":11.0,"guidance":null}
salida 2155 tok (+2121 razonamiento) latencia 26.0 s
Kimi K2.7 Code superado · 5/5 fields, guidance "withheld pending the Q4 close"
```json { "company": "Meridian Robotics", "quarter": "September quarter", "revenue_usd_m": 412, "growth_pct": 11, "guidance": "withheld pending the Q4 close" } ```
salida 721 tok (+663 razonamiento) latencia 13.2 s
Respeto del esquema (sin campos inventados), tentación de alucinar (la guidance se omite a propósito) y diferencias entre las vías de salida estructurada.
DeepSeek V4 Pro (0813) superado · 121 words, 0 banned, 1 question
Introducing cross-provider prompt caching in our API gateway. Send a prompt once, and the gateway stores its computed prefix across Anthropic, OpenAI, and other LLM providers. Subsequent requests with the same prompt hit the cache, cutting latency and token costs while keeping outputs consistent across routing decisions and provider failovers. Teams can route identical prompts between providers without reprocessing shared context or lengthy system instructions. How much could you save on repeated prompt prefixes? The cache respects provider-specific key formats, handles TTLs automatically, and works with streaming and batch requests. Enable it with one configuration flag—no changes to your application code. Available today on all plans. Monitor cache hit rates, token savings, and provider-specific performance metrics in the live dashboard.
salida 2845 tok (+2694 razonamiento) latencia 25.5 s
Kimi K2.7 Code superado · 120 words, 0 banned, 1 question
We're introducing Prompt Cache for our API Gateway, a new capability that stores prompt responses across multiple AI providers. By caching replies, you reduce redundant calls, lower latency, and cut costs without changing how you build. Teams using several model providers can now reuse identical prompt results instantly, keeping traffic consistent and budgets predictable. Responses are keyed by provider, model, and exact prompt, so you always get the right result. Configure TTL, hit thresholds, and eviction rules from a single dashboard. It fits into your existing routing and requires no code changes. Setup takes minutes and works with your current endpoints. Want to see how much latency and spend you can trim? Check the docs to enable Prompt Cache today.
salida 2375 tok (+2235 razonamiento) latencia 38.6 s
Respeto de las restricciones (límite de palabras, lista de palabras prohibidas, una única pregunta), sello de estilo y control de la longitud.
Cambia de uno a otro con una sola línea
Los dos ids aparecen en todas las pestañas de abajo; lo único que cambia es el par de líneas resaltadas. El endpoint, la clave y la estructura de la solicitud son los mismos.
from openai import OpenAI
client = OpenAI(
base_url="https://synthorai.io/v1",
api_key="sk-syn-...",
)
resp = client.chat.completions.create(
model="deepseek-v4-pro-0813",
# model="kimi-k2.7-code", # descomenta esta línea, comenta la de arriba
messages=[{"role": "user", "content": "Summarize this diff"}],
reasoning_effort="medium",
)
print(resp.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://synthorai.io/v1",
apiKey: "sk-syn-...",
});
const resp = await client.chat.completions.create({
model: "deepseek-v4-pro-0813",
// model: "kimi-k2.7-code", // descomenta esta línea, comenta la de arriba
messages: [{ role: "user", content: "Summarize this diff" }],
reasoning_effort: "medium",
});
console.log(resp.choices[0].message.content);curl https://synthorai.io/v1/chat/completions \
-H "Authorization: Bearer sk-syn-..." \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4-pro-0813",
# "model": "kimi-k2.7-code", # descomenta esta línea, comenta la de arriba
"messages": [{"role": "user", "content": "Hello"}],
"reasoning_effort": "medium"
}'package main
import (
"context"
"fmt"
"github.com/openai/openai-go/v3"
"github.com/openai/openai-go/v3/option"
)
func main() {
client := openai.NewClient(
option.WithBaseURL("https://synthorai.io/v1"),
option.WithAPIKey("sk-syn-..."),
)
resp, _ := client.Chat.Completions.New(context.TODO(), openai.ChatCompletionNewParams{
Model: "deepseek-v4-pro-0813",
// Model: "kimi-k2.7-code", // descomenta esta línea, comenta la de arriba
Messages: []openai.ChatCompletionMessageParamUnion{
openai.UserMessage("Summarize this diff"),
},
ReasoningEffort: openai.ReasoningEffortMedium,
})
fmt.Println(resp.Choices[0].Message.Content)
}import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.chat.completions.*;
import com.openai.models.ReasoningEffort;
OpenAIClient client = OpenAIOkHttpClient.builder()
.baseUrl("https://synthorai.io/v1")
.apiKey("sk-syn-...")
.build();
ChatCompletion resp = client.chat().completions().create(
ChatCompletionCreateParams.builder()
.model("deepseek-v4-pro-0813")
// .model("kimi-k2.7-code") // descomenta esta línea, comenta la de arriba
.addUserMessage("Summarize this diff")
.reasoningEffort(ReasoningEffort.MEDIUM)
.build());
System.out.println(resp.choices().get(0).message().content().orElse(""));Preguntas frecuentes
¿Cuál es más barato, DeepSeek V4 Pro (0813) o Kimi K2.7 Code?
Kimi K2.7 Code es más barato en Entrada / 1M tokens ($0.95 frente a $1.32, una diferencia de 1.4×). En otras filas puede ser al revés: la tabla de arriba recoge todas las tarifas, y el coste real depende de tu combinación de uso.
¿Puedo hacer pruebas A/B de DeepSeek V4 Pro (0813) frente a Kimi K2.7 Code sin dos integraciones?
Sí. Los dos se sirven desde el mismo endpoint compatible con OpenAI y con una sola clave API. Para cambiar de uno a otro basta con tocar una línea, el nombre del modelo, así que puedes mandar una parte del tráfico a cada uno y comparar directamente las facturas.
¿Admiten DeepSeek V4 Pro (0813) y Kimi K2.7 Code caché de prompts?
Sí. Los dos cobran las lecturas de caché por debajo de su tarifa de entrada, así que las cargas de trabajo que reutilizan un prefijo ya cacheado cuestan menos de lo que sugieren los precios de lista. Las tarifas exactas de lectura de caché están en la tabla de precios de arriba.