使用 Kimi K2:解锁更便宜的 Claude Code 和 MCP 集成等更多功能!

使用 Kimi K2:解锁更便宜的 Claude Code 和 MCP 集成等更多功能!

关键亮点

1. 代码代理的高级训练
工具使用训练:模拟跨数千个工具和领域的多轮交互。
强化学习:将可验证任务的标准奖励与基于评分标准的自我评估相结合,用于不可验证的任务。
顶级编码能力:在 LiveCodeBench 和 OJBench 等基准测试中表现出色,展示了强大的问题解决和调试能力。

2. 集成与易用性
可通过 Claude Code、Hugging Face 和 API 访问,对开发者十分友好。
实惠的价格使其强大的功能对广大用户触手可及。

Kimi K2 已成为新一代 AI 模型,具备卓越的编码和工具使用能力。凭借其混合专家(MoE)架构和先进的训练技术,它在代码编写、调试和工具管理等代理任务中展现出高性能。但它是否真的能兑现其作为顶级代码代理的承诺?让我们一探究竟。

Kimi K2 真的能改变 AI 代理的未来吗?

Kimi K2 基本属性

**类别 ** ** 详情**
基本信息 320 亿激活参数,1 万亿总参数。
开放
混合专家(MoE)
变体 供研究人员和构建者使用的基础模型。最适合微调和定制解决方案。
面向通用聊天和代理任务的后训练模型。反射级用于快速响应,无需扩展思考。
能力 文本到文本
在中文和英文方面表现出色
硬件 磁盘空间:完整模型需 1.09 TB。

Kimi K2 出色的代理能力

  • 优化器:MuonClip 优化器,采用先进的不稳定性解决技术。
  • 代理能力
    • 工具使用训练
      • 模拟跨数百个领域和数千个工具的多轮工具使用场景。
      • 数据由基于 LLM 的评估器使用任务特定评分标准进行过滤。
    • 强化学习
      • 可验证任务(如数学、编码):标准奖励信号。
      • 不可验证任务(如撰写报告):基于评分标准的自我评估。
      • 通过在线策略学习持续改进,增强判断能力。

Kimi K2 的性能表现

kimi k2 性能

来自 Moonshot AI

基于基准测试,Kimi K2 是一款专业、顶级的模型,优势明显。其能力可分为三个不同的层级:

  • 第一层级(主导):数学与 STEM
    这是 Kimi K2 最强的领域。它在大多数数学和科学基准测试(AIMEMATH-500HMMTZebraLogic)中达到了最先进(SOTA)水平,展现出卓越的推理引擎。
  • 第二层级(顶级):编码与工具使用
    Kimi K2 在编码(LiveCodeBenchOJBench)和代理任务中表现出色。其工具使用能力尤为突出,在 Tau2 电信基准测试中遥遥领先。虽然竞争力很强,但在某些特定代理编码场景(SWE-bench)中略逊于 Claude 模型。
  • 第三层级(具有竞争力):通用知识
    MMLU 等广泛知识基准测试中,Kimi K2 表现良好,但总体落后于领先的专有模型(如 Claude Opus 4)。在简单的问答任务中,其表现也落后于 GPT-4.1 等竞争对手。

简而言之:Kimi K2 在 STEM、编码和工具使用方面表现强劲,但在通用知识方面优势不大。

但它的价格是所有同类模型中最便宜的!

但价格是所有同类模型中最便宜的! 来自 Artificial Analysis

通过免费 Playground 访问 Kimi K2

你可以通过 Kimi Chat 界面访问 Kimi K2

但无法在此页面直接运行代码

kimik2 playground

通过免费 Playground 访问 Kimi K2

通过 Hugging Face 访问 Kimi K2

1. 在网站 UI 中使用 Hugging Face 上的 Novita AI

步骤 1:配置 API 密钥

  • 前往你的用户账户设置,管理 API 密钥。
  • 将你的 Novita AI 自定义 API 密钥添加到 Hugging Face。

在 Hugging Face 中配置 API 密钥

步骤 2:选择推理 API 模式

  • 自定义密钥模式:调用直接发送到推理提供商,使用你自己的 API 密钥。
  • HF 路由模式:此模式无需提供商令牌。费用计入你的 Hugging Face 账户,而非提供商账户。

选择推理 API 模式

步骤 3:在模型页面上探索兼容的提供商

  • 模型页面显示与所选模型兼容的第三方推理提供商(与当前模型兼容的提供商,按用户偏好排序)。

在模型页面上探索兼容的提供商

值得注意的是,不建议从 Hugging Face 下载此模型进行本地部署。由于具有 **320 亿激活参数 ** 和 **1 万亿总参数 **,它目前是世界上最大的开源模型。在本地运行该模型需要约 **2254.25 GB 显存 **,大致相当于 28 块 H100/A100 GPU

通过 API 访问 Kimi K2

Novita AI 集成 Anthropic API,可在 Claude Code 中使用 Kimi K2,
超越许多行业提供商。
它还提供 **131K 上下文 **、**131K 最大输出 **、**2.01 秒延迟 **、**11.06 TPS 吞吐量 ** 的 API,成本为 **$0.57/输入 ** 和 $2.30/输出,为充分发挥 Kimi K2 的代码代理潜力提供强大支持。

Novita AI

步骤 1:登录并访问模型库

登录你的账户,点击 模型库 按钮。

登录并访问模型库

立即体验 Kimi K2 Instruct!

步骤 2:选择你的模型

浏览可用选项,选择适合你需求的模型。

选择你的模型

步骤 3:开始免费试用

开始免费试用,探索所选模型的功能。

开始 Kimi K2 Instruct 免费试用

步骤 4:获取 API 密钥

为了通过 API 进行身份验证,我们将为你提供一个新的 API 密钥。进入“设置”页面,你可以按照图片所示复制 API 密钥。

获取 API 密钥

步骤 5:安装 API

使用编程语言特定的包管理器安装 API。

安装后,将必要的库导入你的开发环境。使用你的 API 密钥初始化 API,开始与 Novita AI LLM 交互。以下是 Python 用户使用聊天补全 API 的示例。

from openai import OpenAI

client = OpenAI(
    base_url="https://api.novita.ai/v3/openai",
    api_key="session_1g0vYAKH0Oir6vI6y4PZIGyFLVvuJiJDx0jZiEeYivQFmDr15mi83mWi-_bdrs0C-Q2hk281SCn1f4oUB49loQ==",
)

model = "moonshotai/kimi-k2-instruct"
stream = True # or False
max_tokens = 65536
system_content = "Be a helpful assistant"
temperature = 1
top_p = 1
min_p = 0
top_k = 50
presence_penalty = 0
frequency_penalty = 0
repetition_penalty = 1
response_format = { "type": "text" }

chat_completion_res = client.chat.completions.create(
    model=model,
    messages=[
        {
            "role": "system",
            "content": system_content,
        },
        {
            "role": "user",
            "content": "Hi there!",
        }
    ],
    stream=stream,
    max_tokens=max_tokens,
    temperature=temperature,
    top_p=top_p,
    presence_penalty=presence_penalty,
    frequency_penalty=frequency_penalty,
    response_format=response_format,
    extra_body={
      "top_k": top_k,
      "repetition_penalty": repetition_penalty,
      "min_p": min_p
    }
  )

if stream:
    for chunk in chat_completion_res:
        print(chunk.choices[0].delta.content or "", end="")
else:
    print(chat_completion_res.choices[0].message.content)

步骤 6:监控 LLM API 指标

系统评估有助于根据特定需求确定最佳部署策略。

  • 响应时间:测量典型请求的端到端延迟。
  • 吞吐量:测试并发请求处理能力。
  • 可靠性:监控随时间推移的正常运行时间和错误率。
  • 质量:比较不同部署方法的输出一致性。

你可以通过 LLM 指标控制台 访问这些指标。

通过 Claude Code 和 Fast MCP 访问 Kimi K2

第一部分:环境设置与前提条件

1.1 系统要求检查

开始前,确保系统满足以下要求:

Windows 系统:

  • Windows 10 或更高版本
  • Node.js 18+
  • Python 3.8+
  • 可访问 PowerShell 或命令提示符

Mac 系统:

  • macOS 10.15 或更高版本
  • Node.js 18+
  • Python 3.8+
  • 可访问终端

验证命令:

# 检查 Node.js 版本
node --version

# 检查 Python 版本
python --version
# 或
python3 --version

1.2 获取 Novita AI API 密钥

  1. 访问 Novita AI 网站 并创建账户
  2. 登录你的控制台
  3. 导航至“密钥管理”部分
  4. 点击“创建新密钥”生成 API 密钥
  5. 重要:立即复制并安全存储 API 密钥(仅显示一次)

立即体验 Novita AI

第二部分:Claude Code 安装

2.1 Windows 安装过程

打开命令提示符或 PowerShell,执行:

# 全局安装 Claude Code
npm install -g @anthropic-ai/claude-code

# 安装 Windows 特定版本
npx win-claude-code@latest

2.2 Mac 安装过程

打开终端,运行:

# 全局安装 Claude Code
npm install -g @anthropic-ai/claude-code

2.3 安装验证

# 检查 Claude Code 版本
claude --version

# 查看帮助信息
claude --help

第三部分:环境变量配置

3.1 Windows 环境设置

方法 1:临时设置(仅当前会话)

set NOVITA_API_KEY=Your_Novita_API_Key
set ANTHROPIC_MODEL=moonshotai/kimi-k2-instruct
set ANTHROPIC_SMALL_FAST_MODEL=moonshotai/kimi-k2-instruct

方法 2:永久设置

  1. 右键点击“此电脑” → “属性”
  2. 点击“高级系统设置”
  3. 点击“环境变量”
  4. 在“用户变量”中添加上述变量

3.2 Mac 环境设置

方法 1:临时设置(仅当前会话)

export ANTHROPIC_BASE_URL="https://api.novita.ai/anthropic"
export ANTHROPIC_AUTH_TOKEN="Your_Novita_API_Key"
export ANTHROPIC_MODEL="moonshotai/kimi-k2-instruct"
export ANTHROPIC_SMALL_FAST_MODEL="moonshotai/kimi-k2-instruct"

方法 2:永久设置

# 编辑配置文件
nano ~/.zshrc

# 添加环境变量
export ANTHROPIC_BASE_URL="https://api.novita.ai/anthropic"
export ANTHROPIC_AUTH_TOKEN="Your_Novita_API_Key"
export ANTHROPIC_MODEL="moonshotai/kimi-k2-instruct"
export ANTHROPIC_SMALL_FAST_MODEL="moonshotai/kimi-k2-instruct"

# 重新加载配置
source ~/.zshrc

第四部分:Fast MCP 服务器开发

4.1 安装 Python 依赖

# 安装 MCP SDK
pip install fastmcp

# 安装额外依赖
pip install requests uvicorn

4.2 创建 MCP 服务器脚本

创建一个名为 novita_mcp_server.py 的文件:

import os
import json
from mcp.server.fastmcp import FastMCP
import requests
from typing import Dict, Any

# Validate API key
if not os.environ.get('NOVITA_API_KEY'):
    raise ValueError("NOVITA_API_KEY environment variable is required")

base_url = "https://api.novita.ai/v3"
headers = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {os.environ['NOVITA_API_KEY']}"
}

mcp = FastMCP("Novita_API")

@mcp.tool()
def list_models() -> str:
    """
    List all available models from the Novita API.
    """
    try:
        url = base_url + "/openai/models"
        response = requests.get(url, headers=headers, timeout=30)
        response.raise_for_status()
        data = response.json()["data"]
        
        text = "Available Models:\n\n"
        for model in data:
            text += f"ID: {model['id']}\n"
            text += f"Description: {model.get('description', 'N/A')}\n"
            text += f"Type: {model.get('model_type', 'N/A')}\n\n"
        
        return text
    except Exception as e:
        return f"Error fetching models: {str(e)}"

@mcp.tool()
def chat_with_model(model_id: str, message: str) -> str:
    """
    Send a message to a specific model and get a response.
    """
    try:
        url = base_url + "/openai/chat/completions"
        payload = {
            "model": model_id,
            "messages": [{"role": "user", "content": message}],
            "max_tokens": 2000,
            "temperature": 0.7
        }
        response = requests.post(url, json=payload, headers=headers, timeout=60)
        response.raise_for_status()
        
        content = response.json()["choices"][0]["message"]["content"]
        return content
    except Exception as e:
        return f"Error communicating with model: {str(e)}"

if __name__ == "__main__":
    mcp.run(transport="stdio")

第五部分:运行 MCP 服务器

5.1 设置 Novita API 密钥

# Windows
set NOVITA_API_KEY=your_actual_api_key_here

# Mac/Linux
export NOVITA_API_KEY="your_actual_api_key_here"

5.2 启动 MCP 服务器

# 运行服务器
python novita_mcp_server.py

服务器将启动并通过 STDIO 监听 MCP 协议通信。

第六部分:Claude Code 集成

6.1 创建 MCP 配置

为 Claude Code 创建一个配置文件,使其连接到你的 MCP 服务器。将文件保存为 mcp_config.json,放在 Claude Code 项目的根目录下(即执行 claude . 命令的目录):

{
  "mcpServers": {
    "novita": {
      "command": "python",
      "args": ["path/to/novita_mcp_server.py"],
      "env": {
        "NOVITA_API_KEY": "your_api_key_here"
      }
    }
  }
}

6.2 使用 MCP 启动 Claude Code

导航到项目目录并启动 Claude Code:

# 导航到项目目录
cd your-project-directory

# 启动 Claude Code
claude .

第七部分:在 Claude Code 中使用 Kimi K2

7.1 基本使用示例

示例 1:生成一个 Python Web 应用程序

创建一个具有以下功能的 Flask Web 应用程序:
- 用户认证系统
- 使用 SQLAlchemy 的数据库集成
- RESTful API 端点
- 使用 HTML 模板的基本前端

示例 2:代码分析与优化

分析以下代码库并提出优化建议:
- 识别性能瓶颈
- 推荐代码结构改进
- 建议安全增强措施

Kimi K2 无疑是 AI 代码代理领域的有力竞争者。它在工具使用和编码方面的先进训练,结合基准测试中的竞争性表现,使其成为大多数编码场景的顶级选择。虽然它可能并非在所有场景中都超越 Claude 等专有模型,但其经济性和多功能性使其成为追求高性能且成本合理的开发者的绝佳选择。

常见问题解答

Kimi K2 在编码任务中表现如何?

它在 LiveCodeBench 和 OJBench 等编码基准测试中表现出色,具有强大的调试和工具使用能力。

Kimi K2 能否取代 GPT-4 或 Claude 等专有模型?

虽然具有竞争力,但在某些代理编码任务中略逊一筹,但凭借其经济性和灵活性弥补了不足。

如何访问 Kimi K2 进行编码任务?

你可以通过 Claude Code、Novita AI API 或 Hugging Face 使用 Kimi K2。

Novita AI 是一站式云平台,助力你的 AI 雄心。集成 API、无服务器、GPU 实例——你所需的成本高效工具。消除基础设施,免费开始,将你的 AI 愿景变为现实。

推荐阅读