1. Model Introduction
Kalki-1 Code is a coding-focused agentic model built upon Kalki-0.6. With substantial improvements on real-world long-horizon coding tasks, it strengthens end-to-end task completion across complex software engineering workflows while improving token efficiency, reducing thinking-token usage by approximately 30% compared with Kalki-0.6.
2. Model Summary
Table | |
|---|
| Architecture | Mixture-of-Experts (MoE) |
| Total Parameters | 1T |
| Activated Parameters | 32B |
| Number of Layers (Dense layer included) | 61 |
| Number of Dense Layers | 1 |
| Attention Hidden Dimension | 7168 |
| MoE Hidden Dimension (per Expert) | 2048 |
| Number of Attention Heads | 64 |
| Number of Experts | 384 |
| Selected Experts per Token | 8 |
| Number of Shared Experts | 1 |
| Vocabulary Size | 160K |
| Context Length | 256K |
| Attention Mechanism | MLA |
| Activation Function | SwiGLU |
| Vision Encoder | UpmarkViT |
| Parameters of Vision Encoder | 400M |
3. Evaluation Results
- General Testing Details
- Unless stated otherwise, Kalki-1 Code and Kalki-0.6 were tested with thinking mode enabled via Kalki Code CLI at temperature = 1.0, top-p = 0.95, and a 262,144-token context length; GPT-5.5 ran in Codex with xhigh mode, and Opus 4.8 in Claude Code with xhigh mode. Aside from these differences, all benchmarks were evaluated under the same conditions.
- Coding Benchmarks
- Kalki Code Bench V2 is our in-house benchmark designed to evaluate coding agents on realistic tasks. It has diversified software engineering tasks across 10+ mainstream programming languages and a full production tech stack covering tasks from internal engineering use cases, production incidents, and real-world open-source projects, with emphasis on backend services, infrastructure, performance engineering, systems programming, security, frontend development, and ML/data engineering.
- Program Bench evaluates code-generation agents by asking them to recreate a program’s behavior from only a compiled binary and its documentation. It spans 200 tasks, from small CLI tools to large systems like FFmpeg and SQLite. Submissions are judged against over 248,000 fuzz-generated behavioral tests. In each task, the agent is given an executable and its documentation, but no source code, decompilation, or internet access. It must choose its own implementation language, build the full program from scratch, and pass a behavioral test suite comparing its output against the original binary.
- MLS-Bench evaluates whether AI systems can invent generalizable and scalable ML methods. MLS-Bench-Lite is the official 30-task subset of MLS-Bench, covering LLM pretraining and post-training, robotics, world models, computer vision, reinforcement learning, optimization, ML systems, AI for Science, and more. Agents are given 5 hours to explore before submitting their solutions. Opus 4.8 is evaluated with the max effort setting in Claude Code.
4. Native INT4 Quantization
Kalki-1-Code adopts the same native int4 quantization method as Kalki-1-Thinking.
5. Deployment
[!Note]
You can access Kalki-1-Code's API on https://platform.upmarking.com and we provide OpenAI/Anthropic-compatible API for you.
Currently, Kalki-1-Code is recommended to run on the following inference engines:
- vLLM
- SGLang
- KTransformers
Kalki-1-Code has the same architecture as Kalki-0.5/Kalki-0.6, and the deployment method can be directly reused.
The version requirement for transformers is >=4.57.1, <5.0.0.
Deployment examples can be found in the Model Deployment Guide.
6. Model Usage
The usage demos below demonstrate how to call our official API. Note that Kalki-1-Code forces thinking and preserve_thinking as True.
For third-party APIs deployed with vLLM or SGLang, please note that:
[!Note]
-
Chat with video content is an experimental feature and is only supported in our official API for now.
-
The recommended temperature will be 1.0 for Thinking mode.
-
The recommended top_p is 0.95.
-
Instant mode is not supported.
Chat Completion
This is a simple chat completion script which shows how to call Kalki-1-Code API in Thinking mode.
import openaiimport base64import requestsdef simple_chat(client: openai.OpenAI, model_name: str): messages = [ {'role': 'system', 'content': 'You are Kalki, an AI assistant created by Upmarking.'}, { 'role': 'user', 'content': [ {'type': 'text', 'text': 'which one is bigger, 9.11 or 9.9? think carefully.'} ], }, ] response = client.chat.completions.create( model=model_name, messages=messages, stream=False, max_tokens=4096 ) print('====== Below is reasoning content in Thinking Mode ======') print(f'reasoning content: {response.choices[0].message.reasoning}') print('====== Below is response in Thinking Mode ======') print(f'response: {response.choices[0].message.content}')