第03课:Kimi 模型选型全景与成本计算
“选错模型,做出来的工具要么太贵客户不买单,要么太便宜但质量不够用。选型是在启动项目之前就要做的决策,改起来代价很高。”
3.1 Kimi 全系列模型一览(2026年6月)
| 模型名称 | 上下文 | 输出速度 | 思考模式 | 多模态 | 定位 |
|---|---|---|---|---|---|
kimi-k2.7-code |
256K | 标准 | 强制开启 | ✗ | 代码专项 |
kimi-k2.7-code-highspeed |
256K | 180-260 T/s | 强制开启 | ✗ | 代码·高速 |
kimi-k2.6 |
256K | 标准 | 可选 | ✓(图文) | 通用旗舰 |
kimi-k2.5 |
256K | 标准 | 可选 | ✓(图文) | 上一代通用 |
moonshot-v1-128k |
128K | 快 | ✗ | ✗ | 长文本·低成本 |
moonshot-v1-32k |
32K | 快 | ✗ | ✗ | 日常任务·最低价 |
moonshot-v1-8k |
8K | 最快 | ✗ | ✗ | 短文本·超低价 |
3.2 定价明细(2026年6月)
K2 系列(主力模型)
| 模型 | 输入 | 输出 | 缓存命中输入 |
|---|---|---|---|
kimi-k2.6 |
$0.95 / M token | $4.00 / M token | $0.16 / M token |
kimi-k2.7-code |
$0.95 / M token | $4.00 / M token | $0.19 / M token |
kimi-k2.7-code-highspeed |
略高 | 略高 | — |
moonshot-v1 系列(性价比选择)
| 模型 | 输入 | 输出 |
|---|---|---|
moonshot-v1-128k |
低于 K2 | 低于 K2 |
moonshot-v1-32k |
更低 | 更低 |
moonshot-v1-8k |
最低 | 最低 |
注:moonshot-v1 系列精确定价请以 platform.kimi.ai/docs/pricing 为准,K2 系列定价已在本书参考资料中核实。
3.3 成本计算公式
单次调用成本 = 输入token × 输入单价 + 输出token × 输出单价
(缓存命中时,缓存部分输入按缓存价计算)
Token 换算参考:
- 1个中文汉字 ≈ 1.5 token
- 1个英文单词 ≈ 1.3 token
- 1K中文字符 ≈ 1500 token
典型场景成本测算(K2.6):
| 场景 | 输入规模 | 输出规模 | 单次成本($) | 收费建议 |
|---|---|---|---|---|
| 一份500字文案 | ~750 T | ~750 T | $0.0040 | ¥5–20 |
| 一页合同审查 | ~2,000 T | ~1,000 T | $0.0059 | ¥50–200 |
| 10页报告摘要 | ~15,000 T | ~3,000 T | $0.026 | ¥100–500 |
| 50页长合同 | ~75,000 T | ~10,000 T | $0.111 | ¥500–2000 |
| 100页技术文档 | ~150,000 T | ~20,000 T | $0.222 | ¥1000–5000 |
关键认知:即使是100页的技术文档分析,API 成本约 $0.22(≈¥1.6),向客户收 ¥1000+ 是完全合理的。毛利率在99%以上。
3.4 场景选型决策树
你的任务是什么?
│
├─ 写代码 / 分析代码 / 技术文档 ──→ kimi-k2.7-code
│ (需要最快响应速度) ──→ kimi-k2.7-code-highspeed
│
├─ 图片 + 文字混合理解
│ (产品图、设计稿、截图分析)──→ kimi-k2.6
│
├─ 通用长文本(合同/报告/书稿)
│ ├─ 需要超强推理(法律/金融)──→ kimi-k2.6
│ └─ 需要压低成本(大批量) ──→ moonshot-v1-128k
│
├─ 多步骤 Agent / 自动化工作流 ──→ kimi-k2.6
│
└─ 短文本高频任务(分类/翻译) ──→ moonshot-v1-32k 或 8k
3.5 三个接单方向的模型配置
接单方向 A:文档审查服务(合同/报告/简历)
# 配置:K2.6 处理复杂分析,moonshot-v1-128k 处理简单摘要
REVIEW_CONFIG = {
"complex": { # 合同审查、财务分析
"model": "kimi-k2.6",
"temperature": 0.2,
"max_tokens": 3000
},
"summary": { # 报告摘要、简历提取
"model": "moonshot-v1-128k",
"temperature": 0.3,
"max_tokens": 2000
}
}
报价逻辑:
- 合同审查(<20页):¥200–500/份
- 报告摘要(任意长度):¥50–150/份
- 批量处理(>10份):¥100–300/份(打包价)
接单方向 B:代码辅助服务
# 配置:K2.7 Code 处理所有代码任务
CODE_CONFIG = {
"model": "kimi-k2.7-code",
"temperature": 0.2, # 代码需要低温度保证稳定性
"max_tokens": 4000
}
报价逻辑:
- 代码 review(<500行):¥200–500/次
- Bug 定位(描述问题):¥100–300/次
- 代码注释/文档生成:¥100–200/次
- 迁移旧代码到新框架:¥500–2000/项目
接单方向 C:SaaS 工具(多客户持续使用)
# 配置:用缓存压成本,K2.6 主力
SAAS_CONFIG = {
"model": "kimi-k2.6",
"system_prompt": "你是专业文案顾问...", # 固定系统提示,走缓存
"temperature": 0.7
}
# 缓存命中后输入成本从 $0.95 降至 $0.16/M(降 83%)
报价逻辑:
- 订阅制:¥99–299/月/用户
- 按使用量:¥0.5–2/次调用
- 企业版:¥1000–5000/月(含定制化)
3.6 成本控制实战工具
工具一:调用前估算 token 数
import tiktoken # OpenAI 开源的 tokenizer,对 Kimi 估算精度可接受
def estimate_tokens(text: str) -> int:
enc = tiktoken.get_encoding("cl100k_base")
return len(enc.encode(text))
def estimate_cost(input_text: str, expected_output_tokens: int = 500,
model: str = "kimi-k2.6") -> dict:
input_tokens = estimate_tokens(input_text)
prices = {
"kimi-k2.6": {"input": 0.95, "output": 4.00, "cache": 0.16},
"kimi-k2.7-code": {"input": 0.95, "output": 4.00, "cache": 0.19},
"moonshot-v1-128k": {"input": 0.30, "output": 1.00, "cache": None}, # 估算值
}
p = prices.get(model, prices["kimi-k2.6"])
input_cost = input_tokens * p["input"] / 1_000_000
output_cost = expected_output_tokens * p["output"] / 1_000_000
return {
"input_tokens": input_tokens,
"estimated_output_tokens": expected_output_tokens,
"estimated_cost_usd": round(input_cost + output_cost, 6),
"model": model
}
# 使用
doc = open("contract.txt").read()
estimate = estimate_cost(doc, expected_output_tokens=2000, model="kimi-k2.6")
print(f"预计消耗:{estimate['input_tokens']} tokens,成本:${estimate['estimated_cost_usd']}")
工具二:批量处理成本汇总
import time
from openai import OpenAI
client = OpenAI(
api_key=os.environ["MOONSHOT_API_KEY"],
base_url="https://api.moonshot.ai/v1"
)
class CostTracker:
def __init__(self):
self.total_input = 0
self.total_output = 0
self.call_count = 0
def track(self, usage):
self.total_input += usage.prompt_tokens
self.total_output += usage.completion_tokens
self.call_count += 1
def summary(self, model="kimi-k2.6"):
input_cost = self.total_input * 0.95 / 1_000_000
output_cost = self.total_output * 4.00 / 1_000_000
print(f"\n=== 成本汇总 ===")
print(f"调用次数:{self.call_count}")
print(f"总输入:{self.total_input:,} tokens (${input_cost:.4f})")
print(f"总输出:{self.total_output:,} tokens (${output_cost:.4f})")
print(f"总成本:${input_cost + output_cost:.4f}")
# 批量处理示例
tracker = CostTracker()
documents = ["合同1内容...", "合同2内容...", "合同3内容..."]
for i, doc in enumerate(documents):
response = client.chat.completions.create(
model="kimi-k2.6",
messages=[
{"role": "system", "content": "你是合同审查专家"},
{"role": "user", "content": f"审查以下合同:\n\n{doc}"}
]
)
tracker.track(response.usage)
print(f"第{i+1}份处理完成")
time.sleep(0.5) # 避免触发速率限制
tracker.summary()
3.7 常见选型误区
误区一:所有任务都用 K2.7 Code
K2.7 Code 强制思考,延迟更高、输出更长。用它来做"写一条广告语"是杀鸡用牛刀,既慢又贵。只在真正需要代码质量保证的场景才用。
误区二:为了省钱全用 moonshot-v1-8k
moonshot-v1-8k 的上下文只有 8K(约5000中文字),用它处理稍长一点的合同,文档会被截断导致分析不完整。便宜但不能完成任务,是真的亏钱。
误区三:忽视 K2.6 的缓存优势
很多开发者调用 Kimi 时没有启用 prompt caching,但 K2.6 的缓存命中价格是 $0.16/M,只有普通输入的17%。对于系统 prompt 固定的工具,这意味着成本可以降到原来的零头。下一课专门讲这个。
误区四:不测算实际 token 消耗
很多人不知道自己的工具每次调用实际消耗多少 token。第一单做完发现成本超出预期,钱都被 API 吃掉了。在定价前一定要先测算实际消耗。
本课行动清单
- [ ] 确定自己第一个工具的模型选择(参考 3.4 决策树)
- [ ] 用
estimate_cost()函数估算一次你的目标任务成本 - [ ] 在平台控制台找到定价页,确认当前实时价格
- [ ] 想好你的定价区间:API成本 × 100倍 = 最低报价基准
→ 继续阅读:第04课_长文本工具开发与接单.md