返回使用场景
开发者工具

AI 编程助手——使用 Claude 和 GPT 构建类似 Cursor 的工具

Cursor、Aider、Cline、Continue.dev——它们都由同一批前沿 LLM 驱动。如果你正在构建编程工具,或在自己的开发产品中加入副驾驶,本文介绍相应架构和真实成本。

最后审核于 。

简述代码 AI 格局

Cursor、Aider、Cline、Continue.dev、Claude Code 本身——它们都构建在同三四个前沿 LLM 之上。差异化因素不是模型,而是围绕模型构建的智能体循环、文件索引、差异应用和用户体验。如果你正在构建其中一种产品(或在自己的开发者产品中构建代码助手),本页将介绍模型菜单、实际成本和延迟预算。

代码工作流的模型菜单

  • Claude Haiku 4.5(claude-haiku-4-5)——自动补全(每次补全约 $0.0001-0.0005)。延迟最低;流式首 token 时间与直接调用供应商相当
  • Claude Sonnet 5(claude-sonnet-5)——与代码库对话、多文件编辑、智能体循环。Cursor 级别的主力模型,每 1M token 价格为 $1.40 / $7.00
  • Claude Opus 5(claude-opus-5)——深度审查、架构评析、安全审计。速度较慢(P50 约 3 秒),但推理能力最强,每 1M token 价格为 $3.50 / $17.50
  • GPT-5.6 Sol(gpt-5-6-sol)——OpenAI 的代码调优模型:质量相近,但风格偏好不同

两种核心流程

code_assistant.py
import json
from openai import OpenAI
client = OpenAI(api_key="sk-kn-...", base_url="https://api.kunavo.com/v1")

# Code completion (autocomplete-as-you-type)
def complete(file_content: str, cursor_offset: int, file_path: str) -> str:
    before = file_content[:cursor_offset]
    after = file_content[cursor_offset:]
    resp = client.chat.completions.create(
        model="claude-haiku-4-5",   # FAST for IDE latency
        messages=[
            {"role": "system", "content": (
                "Complete the code at the cursor. Output ONLY the inserted "
                "text — no markdown, no explanation."
            )},
            {"role": "user", "content": (
                f"<file path=\"{file_path}\">\n{before}<CURSOR>{after}\n</file>"
            )},
        ],
        max_tokens=200,
        stop=["<CURSOR>", "</file>"],
    )
    return resp.choices[0].message.content

# Code review (heavier model). Claude enforces a json_schema
# response_format; json_object it does not.
REVIEW = {
    "type": "object",
    "properties": {
        "comments": {"type": "array", "items": {
            "type": "object",
            "properties": {"file": {"type": "string"},
                           "line": {"type": "integer"},
                           "comment": {"type": "string"}},
            "required": ["file", "line", "comment"],
            "additionalProperties": False,
        }},
        "verdict": {"type": "string", "enum": ["approve", "request_changes"]},
    },
    "required": ["comments", "verdict"],
    "additionalProperties": False,
}

def review(diff: str, conventions: str) -> dict:
    resp = client.chat.completions.create(
        model="claude-opus-5",
        messages=[
            {"role": "system", "content": [{
                "type": "text",
                "text": conventions,  # team style guide, security policy
                "cache_control": {"type": "ephemeral"},
            }]},
            {"role": "user", "content": f"Review this diff.\n\n{diff}"},
        ],
        response_format={"type": "json_schema",
                         "json_schema": {"name": "review", "schema": REVIEW}},
        max_tokens=2000,
    )
    return json.loads(resp.choices[0].message.content)

按功能划分的延迟预算

  • 行内自动补全:TTFT 必须 <200ms。Claude Haiku 4.5。流式输出,在光标移动时中止
  • 与代码库对话:TTFT <500ms 可以接受。Sonnet + 流式传输。随着响应生成逐步显示
  • 多文件编辑 / 重构:5-30 秒属于正常范围。显示进度,在后台运行,并展示差异供审查
  • PR 审查:10-60 秒可以接受。由 Opus 进行深度分析,并将结果整理为包含具体改进建议的审查意见

代码产品的成本经济学

每位开发者每月的实际使用量(重度用户):

  • 每天约 500 次补全 × Haiku 约 $0.0003 = $0.15/天 = $4-5/月
  • 每天约 30 次聊天会话 × Sonnet 约 $0.05 = $1.50/天 = $30-45/月
  • 每周约 3 次 PR 审查 × Opus 约 $0.30 = $1/周 = $4/月
  • 重度高级用户:约 $40-55/月 API 成本
  • 普通用户:约 $10-15/月

大多数代码 AI 产品的价格为 $20/用户/月——仍有利润空间,但对重度用户而言很紧张。提示词缓存至关重要:工作区上下文(文件结构、约定、最近文件)进入缓存;每次调用只有即时编辑上下文是新的。输入成本可节省 50-70%。如何设置缓存。

值得复用的架构模式

  • FIM(中间填充)提示:不要只说“从这里开始补全”,而是传入 before<CURSOR>after,让模型同时使用两侧内容
  • 停止序列:stop=["<CURSOR>", "</file>", "```\n"]可防止模型超出所请求的补全内容进行臆造
  • 用于多文件编辑的工具调用:不要要求模型在一次响应中输出 5 个文件。使用 tools=[{name: 'edit_file', ...}],让它生成结构化编辑,然后以原子方式应用
  • 通过流式传输进行推测解码:一旦前约 50 个 token 到达就立即显示;即使完整响应尚未完成,用户也会选择正确的结果

在几秒内切换供应商

Kunavo 兼容 OpenAI 协议。如果你基于 OpenAI SDK 构建了助手,只需替换 base_url,即可在相同代码下访问 Claude 和 GPT。迁移方法请参阅使用 OpenAI SDK 调用 Claude。

开始:/app/signup——充值 $10 后按需付费(约 30,000 次自动补全调用),余额永不过期。端点参考见 /docs/chat,Anthropic 原生 Messages API 见 /docs/messages。

常见问题

AI 编程助手的重度用户会产生多少 API 费用?

按每位用户 $20 定价,每月成本约为 $40–55。只有提示词缓存将输入成本降低 50–70%,这一利润空间才能成立。

不同的编程助手界面适合使用哪种模型?

行内自动补全需要将首 token 延迟控制在 200ms 以内,因此适合 Claude Haiku 4.5。代码库对话需要低于 500ms,因此适合 Claude Sonnet 4.6。PR 审查可接受 10–60 秒,因此适合 Claude Opus 4.7。

自动补全提示应如何组织格式?

使用 Fill-in-Middle 提示:将请求格式化为 before<CURSOR>after,让模型看到光标两侧的内容;并设置 stop=['<CURSOR>', '</file>'] 以防输出溢出。

助手应如何处理多文件编辑?

传入类似 tools=[{name:'edit_file', ...}] 的工具定义,并以原子方式应用编辑,而不是要求模型在一条回复中输出多个完整文件。