返回使用情境
開發者工具

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——有利潤空間,但重度使用者的利潤很緊。Prompt 快取不可或缺:工作區內容(檔案結構、慣例、最近使用的檔案)放入快取;每次呼叫只有立即編輯內容是新的。輸入成本可節省 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 費用是多少?

每月約 $40–55,而每位使用者收費 $20。這樣的利潤空間之所以可行,全靠 prompt caching 將輸入成本降低 50–70%。

程式碼助理的不同功能介面該搭配哪個模型?

行內自動完成需要在 200ms 內產生第一個 token,因此適合 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', ...}] 的工具定義,並以原子方式套用編輯;不要要求模型在單一回應中輸出多個完整檔案。