Deployment Guide
20 minutes min read
Kimi K2 Technical Team

Deploying Kimi K2 from Scratch: A Complete Practical Guide

Looking for website deployment instead? This guide is about deploying the Kimi K2 model and inference stack. If Kimi generated a public website link for you and you want to share it, export it, or move it to your own domain, read How to deploy a website from a Kimi link.

Foreword

Kimi K2, as a trillion-parameter mixture-of-experts model, has a more complex deployment process compared to traditional models, but it's also more interesting. This article will provide you with a complete deployment practical guide, from environment preparation to production-grade deployment, enabling you to fully leverage Kimi K2's powerful capabilities.

Whether you are an individual developer wanting to experience the latest AI technology or an enterprise technical team hoping to integrate Kimi K2 into production environments, this guide will provide you with detailed references.

Hardware Environment Requirements

Minimum Configuration Requirements

Deploying Kimi K2 requires considering its unique MoE architecture characteristics:

GPU Memory Requirements:

  • Inference Mode: At least 80GB GPU memory (recommended A100 80GB or H100 80GB)
  • Development Testing: 48GB GPU memory can run basic inference (A6000 or RTX 6000 Ada)
  • Quantized Deployment: 32GB GPU memory can run INT8 quantized version (RTX 4090 or A6000)

System Memory:

  • Minimum Requirement: 128GB system memory
  • Recommended Configuration: 256GB system memory
  • Large-scale Deployment: 512GB or higher

Storage Requirements:

  • Model Storage: 2TB high-speed SSD (model weights approximately 1.8TB)
  • Cache Space: 500GB additional space for inference cache
  • System Space: 100GB for operating system and dependencies

Network Requirements:

  • Model Download: Stable high-speed network connection (recommended 10Gbps+)
  • Distributed Deployment: Low-latency network environment (latency < 1ms)

Recommended Hardware Configuration

Single Machine Deployment:

CPU: 64-core Intel Xeon or AMD EPYC
GPU: 2x NVIDIA H100 80GB or 4x A100 80GB
Memory: 512GB DDR4/DDR5
Storage: 4TB NVMe SSD
Network: 10GbE network card

Cluster Deployment:

Node Configuration: 4-8 compute nodes
Single Node: 2x H100 80GB, 256GB memory, 2TB SSD
Network: InfiniBand or 100GbE interconnect
Storage: Distributed storage system (Ceph/GlusterFS)

Software Environment Configuration

Operating System Preparation

Recommended Systems:

  • Ubuntu 22.04 LTS (recommended)
  • CentOS 8 / Rocky Linux 8
  • RHEL 8+

Basic Environment Configuration:

# Update system
sudo apt update && sudo apt upgrade -y

# Install necessary tools
sudo apt install -y curl wget git vim htop nvtop

# Install development tools
sudo apt install -y build-essential cmake pkg-config

CUDA Environment Installation

CUDA Version Requirement: CUDA 12.1 or higher

# Download CUDA 12.1
wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda_12.1.0_530.30.02_linux.run

# Install CUDA
sudo chmod +x cuda_12.1.0_530.30.02_linux.run
sudo ./cuda_12.1.0_530.30.02_linux.run

# Configure environment variables
echo 'export PATH=/usr/local/cuda-12.1/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.1/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

# Verify installation
nvidia-smi
nvcc --version

Python Environment Setup

Python Version: 3.9+ (recommended 3.10)

# Use conda to create environment
conda create -n kimi-k2 python=3.10
conda activate kimi-k2

# Or use pyenv
curl https://pyenv.run | bash
pyenv install 3.10.12
pyenv global 3.10.12

Dependency Installation

# Core dependencies
pip install torch==2.1.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

# Transformers library
pip install transformers>=4.35.0

# Inference engine dependencies
pip install accelerate>=0.25.0
pip install bitsandbytes>=0.41.0

# Optional: Advanced features
pip install deepspeed>=0.12.0
pip install flash-attn>=2.3.0

Inference Engine Comparison and Selection

vLLM Engine

Features:

  • High-throughput inference
  • Dynamic batching
  • PagedAttention optimization
  • Good MoE support

Installation and Configuration:

pip install vllm>=0.2.5

# Start service
python -m vllm.entrypoints.openai.api_server \
  --model moonshot-ai/Kimi-K2-Instruct \
  --tensor-parallel-size 4 \
  --max-model-len 32768 \
  --port 8000

Advantages:

  • High memory usage efficiency
  • Supports large-scale concurrency
  • API compatible with OpenAI format

Use Cases:

  • Production environment services
  • High-concurrency applications
  • API service deployment

SGLang Engine

Features:

  • Structured generation optimization
  • Efficient state management
  • Supports complex inference patterns

Installation and Configuration:

pip install sglang[all]>=0.2.0

# Start service
python -m sglang.launch_server \
  --model-path moonshot-ai/Kimi-K2-Instruct \
  --tp-size 4 \
  --host 0.0.0.0 \
  --port 30000

Advantages:

  • Supports complex generation patterns
  • State caching optimization
  • Flexible control flow

Use Cases:

  • Complex reasoning tasks
  • Agent applications
  • Research and development

KTransformers Engine

Features:

  • MoE model specialized optimization
  • Memory-efficient management
  • Supports expert caching

Installation and Configuration:

pip install ktransformers>=0.1.0

# Python call example
from ktransformers import KTransformersLLM

model = KTransformersLLM(
    model_path="moonshot-ai/Kimi-K2-Instruct",
    device_map="auto",
    max_memory={0: "40GiB", 1: "40GiB"}
)

Advantages:

  • MoE architecture optimization
  • Intelligent expert scheduling
  • Memory usage optimization

Use Cases:

  • MoE model deployment
  • Resource-constrained environments
  • Research experiments

TensorRT-LLM Engine

Features:

  • NVIDIA GPU deep optimization
  • Ultimate inference performance
  • Production-grade stability

Compilation and Deployment:

# Download TensorRT-LLM
git clone https://github.com/NVIDIA/TensorRT-LLM.git
cd TensorRT-LLM

# Compile model
python examples/mixtral/build.py \
  --model_path moonshot-ai/Kimi-K2-Instruct \
  --dtype float16 \
  --use_gpt_attention_plugin float16 \
  --use_gemm_plugin float16 \
  --max_batch_size 32 \
  --max_input_len 32768 \
  --max_output_len 2048 \
  --output_dir ./kimi-k2-trt

Advantages:

  • Highest inference performance
  • Lowest latency
  • Enterprise-grade support

Use Cases:

  • Ultimate performance requirements
  • Low-latency applications
  • Enterprise production environments

Detailed Deployment Steps

Step 1: Obtain Model

Download from Hugging Face:

# Using git-lfs
git lfs install
git clone https://huggingface.co/moonshot-ai/Kimi-K2-Instruct

# Or using huggingface-hub
from huggingface_hub import snapshot_download

snapshot_download(
    repo_id="moonshot-ai/Kimi-K2-Instruct",
    local_dir="./Kimi-K2-Instruct",
    local_dir_use_symlinks=False
)

Download from ModelScope (recommended for Chinese users):

pip install modelscope

from modelscope import snapshot_download
snapshot_download(
    'moonshot-ai/Kimi-K2-Instruct',
    local_dir='./Kimi-K2-Instruct'
)

Step 2: Environment Verification

Verification Script:

import torch
import transformers
from transformers import AutoTokenizer, AutoModelForCausalLM

def verify_environment():
    # Check CUDA
    print(f"CUDA Available: {torch.cuda.is_available()}")
    print(f"CUDA Devices: {torch.cuda.device_count()}")
    print(f"CUDA Version: {torch.version.cuda}")
    
    # Check GPU memory
    for i in range(torch.cuda.device_count()):
        props = torch.cuda.get_device_properties(i)
        print(f"GPU {i}: {props.name}, Memory: {props.total_memory / 1e9:.1f}GB")
    
    # Check transformers version
    print(f"Transformers Version: {transformers.__version__}")
    
    return True

if __name__ == "__main__":
    verify_environment()

Step 3: Basic Inference Testing

Simple Inference Example:

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

# Load model and tokenizer
model_path = "./Kimi-K2-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_path,
    torch_dtype=torch.float16,
    device_map="auto",
    trust_remote_code=True
)

# Simple chat test
def chat_test():
    messages = [
        {"role": "user", "content": "Please briefly introduce the features of the Kimi K2 model"}
    ]
    
    text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
    inputs = tokenizer(text, return_tensors="pt").to(model.device)
    
    with torch.no_grad():
        outputs = model.generate(
            **inputs,
            max_new_tokens=512,
            temperature=0.7,
            do_sample=True,
            pad_token_id=tokenizer.eos_token_id
        )
    
    response = tokenizer.decode(outputs[0][inputs.input_ids.shape[-1]:], skip_special_tokens=True)
    print(f"Assistant: {response}")

if __name__ == "__main__":
    chat_test()

Step 4: Performance Optimization Configuration

Memory Optimization:

# Use gradient checkpointing
model.gradient_checkpointing_enable()

# Enable Flash Attention
model.config.use_flash_attention_2 = True

# Mixed precision inference
model = model.half()  # Convert to fp16

Batch Processing Optimization:

def batch_inference(prompts, batch_size=4):
    results = []
    for i in range(0, len(prompts), batch_size):
        batch = prompts[i:i+batch_size]
        inputs = tokenizer(batch, return_tensors="pt", padding=True, truncation=True)
        
        with torch.no_grad():
            outputs = model.generate(
                **inputs,
                max_new_tokens=256,
                do_sample=True,
                temperature=0.7,
                pad_token_id=tokenizer.eos_token_id
            )
        
        for j, output in enumerate(outputs):
            result = tokenizer.decode(output[inputs.input_ids.shape[-1]:], skip_special_tokens=True)
            results.append(result)
    
    return results

Production-Grade Deployment Solutions

Docker Containerization

Dockerfile:

FROM nvidia/cuda:12.1-devel-ubuntu22.04

# Install Python and dependencies
RUN apt-get update && apt-get install -y \
    python3.10 \
    python3-pip \
    git \
    wget \
    && rm -rf /var/lib/apt/lists/*

# Create working directory
WORKDIR /app

# Copy requirements file
COPY requirements.txt .

# Install Python dependencies
RUN pip3 install --no-cache-dir -r requirements.txt

# Copy application code
COPY . .

# Expose port
EXPOSE 8000

# Start command
CMD ["python3", "-m", "vllm.entrypoints.openai.api_server", \
     "--model", "/app/models/Kimi-K2-Instruct", \
     "--tensor-parallel-size", "2", \
     "--host", "0.0.0.0", \
     "--port", "8000"]

docker-compose.yml:

version: '3.8'

services:
  kimi-k2:
    build: .
    ports:
      - "8000:8000"
    volumes:
      - ./models:/app/models
      - ./logs:/app/logs
    environment:
      - CUDA_VISIBLE_DEVICES=0,1
    runtime: nvidia
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 2
              capabilities: [gpu]

Kubernetes Deployment

Deployment Configuration:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: kimi-k2-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: kimi-k2
  template:
    metadata:
      labels:
        app: kimi-k2
    spec:
      containers:
      - name: kimi-k2
        image: kimi-k2:latest
        ports:
        - containerPort: 8000
        resources:
          requests:
            nvidia.com/gpu: 2
            memory: "128Gi"
            cpu: "16"
          limits:
            nvidia.com/gpu: 2
            memory: "256Gi"
            cpu: "32"
        env:
        - name: TENSOR_PARALLEL_SIZE
          value: "2"
        volumeMounts:
        - name: model-storage
          mountPath: /app/models
      volumes:
      - name: model-storage
        persistentVolumeClaim:
          claimName: kimi-k2-models

Load Balancing and High Availability

Nginx Configuration:

upstream kimi_k2_backend {
    server 10.0.1.10:8000 weight=1 max_fails=3 fail_timeout=30s;
    server 10.0.1.11:8000 weight=1 max_fails=3 fail_timeout=30s;
    server 10.0.1.12:8000 weight=1 max_fails=3 fail_timeout=30s;
}

server {
    listen 80;
    server_name api.kimi-k2.local;
    
    location / {
        proxy_pass http://kimi_k2_backend;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # Increase timeout
        proxy_connect_timeout 60s;
        proxy_send_timeout 60s;
        proxy_read_timeout 60s;
        
        # Enable caching
        proxy_cache_bypass $http_upgrade;
    }
}

Common Issues and Solutions

Memory Shortage Issues

Problem Description: GPU memory shortage prevents model loading

Solutions:

# 1. Use model parallelism
model = AutoModelForCausalLM.from_pretrained(
    model_path,
    device_map="auto",
    max_memory={0: "40GiB", 1: "40GiB"},
    torch_dtype=torch.float16
)

# 2. Enable CPU offloading
model = AutoModelForCausalLM.from_pretrained(
    model_path,
    device_map="auto",
    offload_folder="./offload",
    torch_dtype=torch.float16
)

# 3. Use quantization
from transformers import BitsAndBytesConfig

quantization_config = BitsAndBytesConfig(
    load_in_8bit=True,
    llm_int8_threshold=6.0
)

model = AutoModelForCausalLM.from_pretrained(
    model_path,
    quantization_config=quantization_config,
    device_map="auto"
)

Slow Inference Speed

Problem Description: Inference speed doesn't meet requirements

Optimization Solutions:

# 1. Use Flash Attention
pip install flash-attn
model.config.use_flash_attention_2 = True

# 2. Batch inference
def optimized_batch_generate(prompts, batch_size=8):
    # Implement batch processing logic
    pass

# 3. Use KV Cache
model.config.use_cache = True

# 4. Compilation optimization
torch.compile(model, mode="reduce-overhead")

Expert Load Imbalance

Problem Description: Some experts are overused while others are idle

Solutions:

# Monitor expert usage
def monitor_expert_usage(model):
    expert_counts = {}
    # Add hook functions to monitor expert activation
    def hook_fn(module, input, output):
        if hasattr(module, 'expert_id'):
            expert_id = module.expert_id
            expert_counts[expert_id] = expert_counts.get(expert_id, 0) + 1
    
    # Register hooks
    for name, module in model.named_modules():
        if 'expert' in name:
            module.register_forward_hook(hook_fn)
    
    return expert_counts

Model Loading Failures

Problem Description: Model file corruption or network issues

Solutions:

# 1. Verify file integrity
sha256sum *.bin

# 2. Re-download corrupted files
git lfs pull

# 3. Use mirror sources
export HF_ENDPOINT=https://hf-mirror.com

API Service Stability

Problem Description: API service occasionally crashes or times out

Solutions:

# 1. Add health checks
@app.route('/health')
def health_check():
    try:
        # Simple inference test
        test_input = "Hello"
        # ... inference logic
        return {"status": "healthy"}, 200
    except Exception as e:
        return {"status": "unhealthy", "error": str(e)}, 500

# 2. Implement retry mechanism
import tenacity

@tenacity.retry(
    wait=tenacity.wait_exponential(multiplier=1, min=4, max=10),
    stop=tenacity.stop_after_attempt(3)
)
def reliable_generate(prompt):
    return model.generate(prompt)

# 3. Monitoring and logging
import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)

def generate_with_monitoring(prompt):
    start_time = time.time()
    try:
        result = model.generate(prompt)
        duration = time.time() - start_time
        logger.info(f"Generation completed in {duration:.2f}s")
        return result
    except Exception as e:
        logger.error(f"Generation failed: {str(e)}")
        raise

Performance Monitoring and Optimization

System Monitoring

GPU Monitoring Script:

#!/bin/bash
# gpu_monitor.sh

while true; do
    echo "$(date): GPU Status"
    nvidia-smi --query-gpu=timestamp,name,temperature.gpu,utilization.gpu,memory.used,memory.total --format=csv
    echo "---"
    sleep 30
done

Performance Metrics Collection:

import psutil
import GPUtil
import time
from prometheus_client import start_http_server, Counter, Histogram, Gauge

# Define metrics
REQUEST_COUNT = Counter('kimi_k2_requests_total', 'Total requests')
REQUEST_DURATION = Histogram('kimi_k2_request_duration_seconds', 'Request duration')
GPU_MEMORY_USAGE = Gauge('kimi_k2_gpu_memory_usage_bytes', 'GPU memory usage')
GPU_UTILIZATION = Gauge('kimi_k2_gpu_utilization_percent', 'GPU utilization')

def collect_metrics():
    while True:
        # GPU metrics
        gpus = GPUtil.getGPUs()
        for i, gpu in enumerate(gpus):
            GPU_MEMORY_USAGE.labels(gpu_id=i).set(gpu.memoryUsed * 1024 * 1024)
            GPU_UTILIZATION.labels(gpu_id=i).set(gpu.load * 100)
        
        time.sleep(10)

# Start metrics server
start_http_server(8080)

Performance Tuning Recommendations

Inference Latency Optimization:

  1. Use appropriate batch sizes
  2. Enable KV caching
  3. Choose suitable data types (FP16/BF16)
  4. Optimize sequence lengths

Throughput Optimization:

  1. Increase parallelism
  2. Use dynamic batching
  3. Optimize memory allocation
  4. Implement request queuing

Memory Optimization:

  1. Gradient checkpointing
  2. Model sharding
  3. CPU offloading
  4. Quantization techniques

Security and Best Practices

Security Deployment Guidelines

Network Security:

# SSL/TLS configuration
server {
    listen 443 ssl http2;
    ssl_certificate /path/to/certificate.crt;
    ssl_certificate_key /path/to/private.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256;
    
    # Security headers
    add_header X-Content-Type-Options nosniff;
    add_header X-Frame-Options DENY;
    add_header X-XSS-Protection "1; mode=block";
    add_header Strict-Transport-Security "max-age=31536000";
}

Access Control:

# API key verification
def verify_api_key(api_key):
    # Verify API key
    if api_key not in valid_api_keys:
        raise HTTPException(status_code=401, detail="Invalid API key")

# Request limiting
from slowapi import Limiter, _rate_limit_exceeded_handler
from slowapi.util import get_remote_address

limiter = Limiter(key_func=get_remote_address)
app.add_middleware(SlowAPIMiddleware)
app.add_exception_handler(RateLimitExceeded, _rate_limit_exceeded_handler)

@limiter.limit("5/minute")
@app.post("/v1/chat/completions")
async def chat_completions(request: Request):
    # Handle chat completion requests
    pass

Data Protection:

# Input filtering and sanitization
import re

def sanitize_input(text):
    # Remove potentially malicious content
    text = re.sub(r'<script.*?</script>', '', text, flags=re.IGNORECASE)
    text = re.sub(r'javascript:', '', text, flags=re.IGNORECASE)
    return text.strip()

# Log sanitization
def sanitize_logs(log_data):
    # Remove sensitive information
    patterns = [
        r'\b\d{4}[\s-]?\d{4}[\s-]?\d{4}[\s-]?\d{4}\b',  # Credit card numbers
        r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b',  # Email addresses
        r'\b\d{3}-?\d{2}-?\d{4}\b',  # SSN
    ]
    
    for pattern in patterns:
        log_data = re.sub(pattern, '[REDACTED]', log_data)
    
    return log_data

Operations Best Practices

Automated Deployment:

# deployment.yml
apiVersion: v1
kind: ConfigMap
metadata:
  name: kimi-k2-config
data:
  config.yaml: |
    model:
      path: "/models/Kimi-K2-Instruct"
      device_map: "auto"
      torch_dtype: "float16"
    server:
      host: "0.0.0.0"
      port: 8000
      max_concurrent_requests: 32
    monitoring:
      enabled: true
      prometheus_port: 8080

Backup and Recovery:

#!/bin/bash
# backup_script.sh

BACKUP_DIR="/backup/kimi-k2"
DATE=$(date +%Y%m%d_%H%M%S)

# Backup model files
echo "Backing up model files..."
tar -czf "${BACKUP_DIR}/model_${DATE}.tar.gz" /models/Kimi-K2-Instruct/

# Backup configuration files
echo "Backing up configuration..."
tar -czf "${BACKUP_DIR}/config_${DATE}.tar.gz" /app/config/

# Clean old backups
find $BACKUP_DIR -type f -mtime +7 -delete

echo "Backup completed: ${DATE}"

Health Monitoring and Self-Healing:

import asyncio
import aiohttp
import logging

async def health_monitor():
    """Continuously monitor service health"""
    while True:
        try:
            async with aiohttp.ClientSession() as session:
                async with session.get('http://localhost:8000/health') as response:
                    if response.status != 200:
                        logging.error(f"Health check failed: {response.status}")
                        await restart_service()
                    else:
                        logging.info("Health check passed")
        except Exception as e:
            logging.error(f"Health check error: {e}")
            await restart_service()
        
        await asyncio.sleep(30)

async def restart_service():
    """Restart service"""
    logging.info("Attempting to restart service...")
    # Implement restart logic
    pass

Troubleshooting Manual

Common Error Diagnosis

CUDA Memory Errors:

# Check GPU usage
nvidia-smi

# Clear GPU cache
python -c "import torch; torch.cuda.empty_cache()"

# Reduce batch size
export BATCH_SIZE=1

Model Loading Failures:

# Check model file integrity
import os
import hashlib

def verify_model_files(model_path):
    required_files = [
        'config.json',
        'pytorch_model.bin',
        'tokenizer.json',
        'tokenizer_config.json'
    ]
    
    for file in required_files:
        file_path = os.path.join(model_path, file)
        if not os.path.exists(file_path):
            print(f"Missing file: {file}")
            return False
    
    return True

Network Connection Issues:

# Test network connection
curl -X POST http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Kimi-K2-Instruct",
    "messages": [{"role": "user", "content": "Hello"}],
    "max_tokens": 100
  }'

# Check port usage
netstat -tulpn | grep :8000

# Check firewall settings
sudo ufw status

Community Support and Resources

Official Resources

Documentation and Guides:

Community Support:

Contributing and Feedback

Bug Report:

# Bug Report Template

## Environment Information
- OS: Ubuntu 22.04
- CUDA: 12.1
- Python: 3.10
- Kimi K2 Version: v1.0.0

## Problem Description
[Detailed description of the issue encountered]

## Reproduction Steps
1. [Step 1]
2. [Step 2]
3. [Step 3]

## Expected Behavior
[Description of expected correct behavior]

## Actual Behavior
[Description of actual behavior]

## Log Information

[Paste relevant logs]

Feature Requests:

  • Submit through GitHub Issues
  • Discuss in community forums
  • Participate in open-source contributions

Conclusion

This article provides a complete guide for Kimi K2 deployment from basic setup to production-grade applications. Key points include:

  1. Hardware Selection: Adequate GPU memory is crucial, H100 or A100 recommended
  2. Engine Selection: Choose appropriate inference engines based on use cases
  3. Optimization Strategies: Rational use of quantization, parallelism, and other techniques
  4. Monitoring and Operations: Establish comprehensive monitoring and alerting systems
  5. Security: Focus on network security and data protection
  6. Operations Practices: Establish automated deployment and fault handling mechanisms

As Kimi K2 technology continues to evolve, deployment solutions will also be continuously optimized. We recommend staying updated with official announcements and promptly adopting new optimization techniques.

Successful deployment of Kimi K2 requires not only technical capabilities but also deep understanding of business requirements. We hope this guide helps you complete the deployment smoothly and fully leverage Kimi K2's powerful capabilities. Whether for personal research projects or enterprise-level applications, Kimi K2 will provide strong technical support for your AI applications.

Related Articles

Kimi K2.7 Code is now available. This guide explains what Kimi K2.7 means for Kimi Code, 256K context coding, thinking mode, multimodal input, agent workflows, pricing, and developer adoption.
Kimi Code is now powered by Kimi K2.7 Code. This developer guide covers the kimi-k2.7-code model ID, Claude Code environment variables, Cline and RooCode settings, API usage, cost control, and prompt templates.
If Kimi gave you a public website link, it is already deployed for sharing. This guide explains when to use the Kimi link, when to export the code, and how to move the site to your own domain or hosting provider.