跳至主要内容

Kimi K2:六个实用示例指南

了解 Moonshot 的 Kimi K2 是什么、如何访问它,并通过六个可用的实用示例了解其实际表现。
· 8分钟 阅读

使用 AI 探索

开源 AI 再次引发关注:Moonshot AI 近期发布了Kimi K2,这是一款 Mixture-of-Experts(MoE)语言模型,具有 320 亿激活参数和 1 万亿总参数。

在这篇博客中,我将解释 Kimi K2 是什么、如何访问它,并带您了解 Kimi K2 的实际用例。我们将探讨 Kimi K2 如何:

  • 生成结构化、响应式的网页内容
  • 创建如 SVG 等图形输出
  • 支持交互式数据可视化与统计分析
  • 模拟复杂科学现象
  • 开发有趣的游戏
  • 规划带有交互功能的详细行程

我们通过每周五发布的免费通讯 The Median,向读者及时传递 AI 领域最新动态,梳理一周重点事件。订阅它,每周用几分钟保持敏锐:

Kimi K2 是什么?

Kimi K2 是 Moonshot AI 设计的语言模型,在 1 万亿总参数的架构中启用了 320 亿参数。Kimi K2 针对 Agentic 任务进行了优化,旨在通过工具驱动的复杂任务执行行动、操作与推理。截至 2026 年 1 月底,已有新模型 Kimi K2.5。

Kimi K2 提供两种形式:

  1. Kimi-K2-Base:用于自定义微调的基础模型;以及
  2. Kimi-K2-Instruct:针对通用聊天与自主任务执行进行调优。

Kimi K2 在基准测试中表现可观,尤其在 Agentic 编码与工具使用方面:

kimi k2 benchmarks

来源:Kimi K2

与其他开源模型(如DeepSeek V3、Qwen 2.5 和 LLaMA 4)相比,Kimi K2 在基准上常有更佳表现,但在实际应用中可能需要更精心的提示工程才能获得最佳效果,通常通过迭代优化实现。鉴于其专家路由的 MoE 架构,它甚至被非正式地描述为“DeepSeek V3 的头更少、专家更多”。

尽管 API 基础设施仍在完善、文档也有待更清晰,但 Kimi K2 以当下极具性价比而突出。它非常适合熟悉基于 LLM 工作流的资深开发者,不过初学者可能会面临更陡峭的学习曲线。

如何访问 Kimi K2?

您可以通过聊天界面和 API 访问 Kimi K2。

Kimi Chat

您可以通过Kimi Chat 界面访问 Kimi K2:

接下来,我将逐步说明如何通过 API 配置 Kimi K2,您也可以直接跳到示例部分。

Kimi K2 API

您也可以通过 API 端点访问 Kimi K2。目前在免费层下,通用查询在一定数量内可免费使用,之后会切换至基于点数的计费层。

Free Tier usage in Kimi K2

User level for credit based tier

您需要一个 API 密钥,可在 Moonshot 开发者控制台生成。下面一步步进行。

步骤 1:生成 API 密钥

以下是访问 Moonshot API 以使用 Kimi K2 模型的方法:

  1. 使用您的 Gmail 账号登录 Moonshot 控制台。

Moonshot console login

  1. 在账单选项卡下点击充值(Recharge)并添加您的银行卡信息。本教程大约 5 美元即可。账单上还会有 5 美元代金券。
  2. 进入API Keys 选项卡并点击Create API Key。填写 API 密钥名称和项目(初期保持默认),并保存该密钥以备后用。

Create an API key for kimi k2

步骤 2:设置 Python 环境

现在,为我们的本地实验搭建一个环境:

conda create -n kimi python=3.10
conda activate kimi

上述代码将创建并激活名为 kimi 的 Python 环境。

步骤 3:设置全局变量

建议将 API 密钥导出为终端中的环境变量,或保存到 .env 文件。以下是在您的 Python 环境(此处为 kimi)中保存的方法:

export MOONSHOT_API_KEY="your_api_key"

要验证 Moonshot API 是否正确设置为环境中的全局变量,请运行:

echo $MOONSHOT_API_KEY

如果运行上述命令能看到密钥值,即可继续;否则请先将密钥设置为全局变量。若您在 .env 文件中设置 API 密钥,请按如下方式保存:

MOONSHOT_API_KEY=your_api_key

现在,我们已准备好探索 Kimi K2 的能力。

步骤 4:发起一次 API 调用

既然已设置好 API 密钥,让我们用 Kimi K2 模型尝试一次基础的聊天补全任务。

from openai import OpenAI
import os
MOONSHOT_API_KEY = os.getenv("MOONSHOT_API_KEY", "your-moonshot-api-key")
client = OpenAI(
    api_key=MOONSHOT_API_KEY,
    base_url="https://api.moonshot.ai/v1"
)
def simple_chat(model_name: str):
    messages = [
        {"role": "system", "content": "You are Kimi, an AI assistant created by Moonshot AI."},
        {"role": "user", "content": "Explain LLM to a 5-year-old."}
    ]
    response = client.chat.completions.create(
        model=model_name,
        messages=messages,
        stream=False,
        temperature=0.6,
        max_tokens=256
    )
    print(response.choices[0].message.content)
simple_chat("kimi-k2-0711-preview")

上述 Python 脚本使用提供的 API 密钥和端点配置了 API 客户端。simple_chat() 函数以系统与用户消息的聊天格式向 Kimi 模型(kimi-k2-0711-preview)发送预设提示,然后打印助手的回复。

First user request output

示例 1:网站模拟

接下来,我将分享自己在多种场景下测试 Kimi K2 的一手体验。我首先使用 Kimi K2 聊天界面自带的 HTML 编辑器生成了一个简单的网站模拟,用户可以预览生成的 HTML 代码。我使用的提示如下:

提示:创建一个功能丰富的 SaaS 落地页

与我最近尝试的其他模型(如Grok 4或Gemini Diffusion)相比,Kimi K2 生成代码所需时间显著更长(约 5 分钟)。不过,尽管最初有延迟,生成应用的图形与交互元素都非常准确。此外,Kimi K2 还能有效发挥其 Agentic 能力,从 Unsplash 抓取适用于 HTML 页面的免版税图片。

示例 2:生成 SVG 表现

接着,我尝试生成一些 SVG(可缩放矢量图形)表现。虽然模型花了一些时间才产出较好的 SVG 图像,但最终完成得不错。

提示: 创建一只蝴蝶的 SVG 表现

起初,我让模型创建一条龙的表现,输出只有一些阴影和颜色。不过,经过几轮迭代,模型生成了一只不错的蝴蝶。

Generating SVG Representations with Kimi K2

示例 3:结合模拟分析数据集

在该示例中,我让 Kimi K2 分析一个简单数据集,并通过 HTML 仪表板展示结果。使用的提示如下:

提示:创建一个交互式 HTML 仪表板,具备流畅且现代的 UI,允许用户基于提供的 ds_salaries.csv 数据集,模拟并可视化远程办公对各类岗位薪资的影响。

仪表板应包含以下增强组件:

1. 动态模拟控件(用户模拟器):

用于调整的响应式滑块输入和数字字段:

远程溢价(%)

岗位特定的倍数因子

基础薪资的通胀或通缩

输入更改对数据集影响的实时反馈

解释各参数影响的工具提示

2. 交互图与热力图:

薪资 vs 岗位 × 远程比例的交互图

可选开关以在柱状图、折线图或热力图视图间切换

高亮离群点或统计上显著的交互作用

3. 实时统计洞见:

实时回归输出(OLS、ANOVA)

突出 p 值与显著性阈值

可视化残差图或模型诊断(若可行)

4. 现代化界面设计:

移动友好、零依赖,使用原生 HTML/CSS/JS

卡片式布局,配合可折叠分区以增强清晰度

流畅的动效、过渡,以及明暗模式切换

确保所有输出可直接复制粘贴到单个 index.html 文件中,无外部依赖。包含通过 <input type="file"> 元素加载 CSV 的占位逻辑。加分项:为模拟数据添加 CSV 预览表和下载导出选项。

在这次使用 Kimi K2 的实验中,模型成功接收并处理了上传的数据集,并能基于数据中提取的变量正确更新模拟控件。用户界面支持明暗模式切换,带来顺滑的视觉体验。

然而,输出缺失多个关键分析组件:没有交互图、没有热力图可视化,也没有诸如回归摘要或 ANOVA 等实时统计洞见。虽然 Kimi K2 在结构生成与 UI 逻辑方面表现良好,但在统计推理与交互可视化方面的局限在此用例中较为明显。

示例 4:科学模拟

Kimi 团队为其聊天界面提供了科学模拟的用例,并可在聊天中预览 HTML 代码。我尝试的提示如下:

提示: 创建一个 3D 粒子星系模拟

Science Simulation 1 with kimi k2

我尝试对模拟进行一些编辑,以观察模型对修改的适应性,比如从顶部视角、合理的粒子旋转以及不同的粒子尺寸。

修订提示:将当前的 3D 粒子星系模拟修改为从俯视角(位于星系盘面上方)渲染。恒星与旋臂应呈现自中心向外延展的螺旋模式,围绕 Z 轴(垂直于屏幕)旋转。请确保:

从顶视图看,恒星位置分布为扁平的螺旋

旋转速度影响 XY 平面内的角向旋转

不显示垂直倾斜或 Y 轴厚度——压平 Z 维度

相机/视角固定在星系上方(正交或俯视)

可选地添加中心发光隆起以模拟银核

保留所有现有控件(恒星数量、旋臂数量、缩放、旋转速度),并确保重新生成时符合俯视布局。

修订后的提示带来了显著改进的可视化效果,体现了模型对提示修改的快速适应能力。不过,预览中的滑块只是装饰性元素,对实际的星系模拟没有实质交互或影响。

示例 5:游戏模拟

受原始文档启发,我尝试提示模型生成一个基于网页的游戏,类似您在断网时可能玩过的恐龙游戏。我使用的提示如下:

提示: 创建一个基于网页的 3D 恐龙生存游戏。

设计史前环境,包含低多边形风格的树木、岩石与悬崖。

用基础物理(重力、惯性)为恐龙添加简单的行走、跳跃、下蹲动画。

玩家使用 WASD 键控制恐龙,并用空格键跳过障碍。

为地形与天穹使用手工编码纹理,以程序化图案而非图片链接,模拟“洞穴壁画”风格(类似阿尔塔米拉)。

添加背景元素,如移动的云朵与飞行的翼龙,以增强沉浸感。

让地面不平起伏,并在地形片段间平滑过渡。

随机生成仙人掌、岩浆坑或其他恐龙等障碍。

分数会随着生存时间增加——以《摩登原始人》风格计数器显示在左上角。

添加环境音效:低沉的鼓点与丛林声。

可选:

加入夜间模式,包含萤火虫与灌木丛中发光的眼睛。

如有需要可使用 Three.js 或 Babylon.js,但若要保持零依赖则回退到纯 WebGL/Canvas。

出乎意料的是,该游戏的初始版本无法使用。我尝试在不超出上下文窗口的前提下,使用更精炼且更长的提示重新生成。 结果如下:

结果稍有改善,但游戏机制仍未按预期运行。这一观察表明,在开发完整的软件项目时,一次性提示(one-shot prompting)可能导致性能问题;采用 Agentic 框架对 Kimi K2 进行迭代式提示与调整,通常会如团队在局限性部分所述,带来更好且更可靠的结果。

示例 6:度假行程规划

在这个示例中,我通过让 Kimi K2 构建行程并以 HTML 页面形式分享,探索了其网页搜索能力。

提示:我最近身心俱疲,想要一个为期 5 天、能深度恢复的健康疗愈之旅,帮助重启身心。我在旧金山,愿意在美国境内或境外旅行。请先搜索符合我健康目标(如减压、数字排毒、瑜伽与清洁饮食)且能适配我灵活时间安排的疗愈度假地。优先考虑包含亲近自然、SPA 疗程,以及冥想或呼吸练习等正念活动的选项。

找到理想方案后,请规划一切:出行安排(航班或本地交通)、住宿预订、每日瑜伽课程、按摩或 SPA 预约、健康饮食(优先素食或纯素),以及周边的自然或人文体验(如森林漫步、声浴或茶道)。

此外,请查询目标地在我可能出行时间窗内的天气预报并建议最佳出行日期。随后将完整行程按时间拆分,整理为每日安排,包括:

晨间仪式与课程

餐食与饮食计划

下午活动

晚间放松流程

本地探索机会

我还想要一张漂亮的路线图,展示我从旧金山出发到疗愈目的地的行程,并标注重要停靠点、景点或值得纪念的瞬间。

最后,请不要与我的日历同步或发送电子邮件,而是将完整计划编排为一页视觉出色的本地 HTML 旅行页面。该 HTML 页面应:

符合新粗野主义(Neo-Brutalism)风格

采用大胆、富表现力的布局,并有意制造设计冲突感

使用质朴而丰富的配色(浅绿、石灰、深棕等)

包含手绘或插画风的健康主题元素(如瑜伽剪影、日/月图案)

包含清晰的可视路线图与可折叠的每日行程

在移动端与桌面端上完全自适应

特别注意字体选择与对比度

该 HTML 页面应呈现宁静、现代、朴实的气质,作为我的个人疗愈之旅规划门户。

该提示大约经过两轮迭代便生成了行程,并以 HTML 页面形式预览。通过网页搜索工具获取的信息,帮助模型拟定了一份完善的行程。

结语

Kimi K2 是开源 LLM 生态中的一项值得关注的补充。在我的测试中,它在视觉与结构生成方面表现强劲,尤其在通过分步提示或迭代优化引导时。

话虽如此,Kimi K2 并非完美。它的响应可能较慢;部分输出——尤其是模拟与游戏逻辑——往往需要多次迭代才能达标;交互元素也不总能按预期工作。

总体而言,对于愿意进行实验的开发者,Kimi K2 具备实打实的能力。如果您对基于 LLM 的工作流感到熟悉,并希望以较低成本对 Agentic 行为有更多掌控,这款模型值得一试。

Aashi Dutt

作者

Aashi Dutt

我是一名 Google Developers 机器学习(生成式 AI)领域的专家、Kaggle 三项专家,以及 Women Techmakers 大使,拥有 3 年以上的技术从业经验。2020 年我共同创办了一家健康科技初创公司,目前在佐治亚理工学院攻读计算机科学硕士,专攻机器学习。

主题