MoonshotAI: Kimi K2.7 Code vs Relace: Relace Search
A side-by-side comparison of MoonshotAI: Kimi K2.7 Code ($2.10 / 1M tokens) and Relace: Relace Search ($3.50 / 1M tokens) using current USD prices and capabilities from the api14 catalog. Both run through the same OpenAI-compatible API.
Specifications
| MoonshotAI: Kimi K2.7 Code | Relace: Relace Search | |
|---|---|---|
| Provider | Moonshot AI | Relace |
| Input | $2.10 / 1M tokens | $3.50 / 1M tokens |
| Output | $12.25 / 1M tokens | $10.50 / 1M tokens |
| Cache read | $0.56 / 1M tokens | - |
| Context window | 262,144 | 256,000 |
| Max output | 235,929 | 128,000 |
| Input | text, image | text |
| Output | text | text |
| Tool calling | ||
| Structured output | ||
| Reasoning control | ||
| Added | Jun 12, 2026 | Dec 8, 2025 |
Key differences
- MoonshotAI: Kimi K2.7 Code is 40% cheaper on input tokens.
- Relace: Relace Search is 14% cheaper on output tokens.
- Only MoonshotAI: Kimi K2.7 Code supports structured JSON output.
- Only MoonshotAI: Kimi K2.7 Code supports reasoning effort control.
- A request with 1,000 input and 500 output tokens costs $0.00823 with MoonshotAI: Kimi K2.7 Code and $0.00875 with Relace: Relace Search.
In depth
MoonshotAI: Kimi K2.7 Code is a text model from Moonshot AI, released on 2026-06-12. Relace: Relace Search is a text model from Relace, released on 2025-12-08. Both are served through api14 under the text category, so neither is a special-purpose endpoint you have to reach through a separate SDK. The main thing to note up front is that they were built by different teams with different priorities, and that shows in the parameter lists and the modalities each one accepts.
The clearest split is in what each model will take as input. Kimi K2.7 Code accepts text and image input and returns text, so you can send screenshots, diagrams or scanned pages alongside a prompt. Relace Search accepts text only. On context, the two are close enough that the difference is not worth planning around: Kimi K2.7 Code lists 262144 tokens and Relace Search lists 256000, and the qualitative comparison treats the context windows as not meaningfully different. Where they really diverge is the supported parameters. Kimi K2.7 Code exposes reasoning and include_reasoning, structured_outputs, logprobs and top_logprobs, logit_bias, min_p, repetition_penalty, frequency_penalty, presence_penalty, parallel_tool_calls, top_k, seed, stop, temperature, top_p, max_tokens, response_format, tool_choice and tools. Relace Search supports a much shorter set: max_tokens, response_format, seed, stop, temperature, tool_choice, tools and top_p. So structured outputs and reasoning are available only on Kimi K2.7 Code, while tool calling is available on both.
For task selection, the parameter list is the practical guide. If you need the model to emit a schema-conformant object, or you want to inspect reasoning traces, or you want to bias or sample the output distribution in fine-grained ways, Kimi K2.7 Code is the one that can do it. If your workload is plain text in and plain text out, with tool calls and a response format, Relace Search covers that with fewer knobs to reason about. Vision input is another deciding factor: only Kimi K2.7 Code takes images, so anything involving a screenshot or a diagram has to go there. On price, Kimi K2.7 Code is the cheaper side for input, while Relace Search is the cheaper side for output, so the cost picture depends on your input-to-output ratio rather than on one model being uniformly cheaper. Check the live price table on this page for the current numbers.
Calling either model through api14 works the same way, because the API is OpenAI-compatible. You point your client at the api14 base URL, send a chat completions request with your messages, and set the model field. The only change between the two is that string: use "moonshotai/kimi-k2.7-code" for Kimi K2.7 Code and "relace/relace-search" for Relace Search. Everything else in the request body stays where it is. If you are already sending tools, temperature, max_tokens or a response format, those fields carry over to both. If you are sending reasoning, structured_outputs, logprobs or image content, those belong to Kimi K2.7 Code and Relace Search will not accept them, so keep a separate request shape for each model rather than assuming one payload fits both.
Switch with one string
Both models use the same endpoint and request shape. Change the model value from "moonshotai/kimi-k2.7-code" to "relace/relace-search" and prompts, streaming and tools keep working.
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.chat.completions.create({
"model": "relace/relace-search",
"messages": [
{
"role": "user",
"content": "Explain vector databases in two sentences."
}
]
});
console.log(result.choices[0].message.content);
More comparisons
- LiquidAI: LFM3-1.7B vs Ricursive: Ripple 65B Preview
- LiquidAI: LFM3-1.7B vs Crouton Alpha
- LiquidAI: LFM3-1.7B vs Tencent: Hy4
- LiquidAI: LFM3-1.7B vs Z.ai: GLM 5.3 FlashX Legal
- Ricursive: Ripple 65B Preview vs Crouton Alpha
- Ricursive: Ripple 65B Preview vs Tencent: Hy4
- Ricursive: Ripple 65B Preview vs Z.ai: GLM 5.3 FlashX Legal
- Crouton Alpha vs Tencent: Hy4