10. 面试题
初级(概念与口径)、中级(机制与设计)、高级(权衡与开放问题)各若干,参考答案附后。
初级
Q1. Cursor 的 Tab 补全为什么不用 GPT-4 级别的大模型?
延迟预算:补全必须数百毫秒内上屏,大模型 TTFT 做不到;且 Tab 是"pre-fill token hungry"任务(长输入、短输出),稀疏 MoE 小模型在同等延迟下质量更优【Lex #447 口径】。此外每天 4 亿+ 请求的体量下,大模型的推理成本也无法由免费不限量的产品形态承担。
Q2. Cursor 官方口径 Tab 服务端延迟的两个数字是多少?
2025-01 更新把 Tab 服务端延迟从约 475ms 压到约 260ms;上下文窗口从 5,500 token 扩到 13,000 token【官方博客口径】。
Q3. 什么是 Speculative Edits?和普通投机解码的区别?
普通投机解码用一个小 draft model 猜测 token、大模型验证;Speculative Edits 把"现有文件本身"当作确定性草稿——未改动区域成批验证、只有改动区域真正解码,输出在数学上等价于整文件重写【instant-apply 博客】。官方口径约 1000 tok/s,约 13x 于 Llama-3-70B 朴素推理。
Q4. Cursor 的代码库索引如何做到增量更新?
本地对每个文件算哈希构建 Merkle 树,与服务端比对根哈希/子树,只重传变化的文件(官方文档口径约 10 分钟周期);服务端只存嵌入向量 + 混淆路径 + 行号,不存明文代码【官方安全文档】。2026 年文档转向本地 Instant Grep + Explore 子代理,不再为搜索存嵌入。
Q5. Cursor Pro 的 $20 额度约等于多少次 frontier 模型请求?
官方口径:约 225 次 Sonnet 4 / 550 次 Gemini / 650 次 GPT-4.1(中位用量)【定价博客】。
中级
Q6. Tab 的 online RL 奖励如何设计?为什么不学一个"展示概率"过滤器?
奖励:目标接受率 25% 下,接受 +0.75、拒绝 −0.25、不展示 0,期望值恰在 p=25% 处过零,策略梯度同时优化"展示与否"与"展示什么"【tab-rl 博客】。Copilot 式外置过滤器(逻辑回归打分)把决策与生成割裂,且特征工程天花板低;内化成策略后,过滤与内容生成共享同一个表示。
Q7. on-policy 数据为什么迫使 Cursor 每 1.5-2 小时滚动上线 checkpoint?
策略更新后旧样本的奖励分布失效(新模型面对同一上下文的行为已变),梯度估计需要有偏校正;最干净的解法是持续让当前策略自产数据——于是上线延迟直接决定训练吞吐。这是"部署流水线即训练流水线"的因果链。
Q8. 为什么 Apply 用整文件重写而不用 diff?diff 匹配有什么确定性问题?
模型不擅长行号计数,diff 是弱分布格式;且 hunks 锚点在上下文漂移后大量失配(社区经验为 40%+ 失败)。整文件重写是模型原生分布,质量稳;代价是输出变长,由 Speculative Edits 把有效成本压回"只生成改动部分"【instant-apply 博客】。
Q9. 设计一个 Tab 补全的延迟预算表,并说明你会先优化哪一段。
参考教学预算:防抖 10ms、上下文组装 25ms、缓存 2ms、网络 40ms、排队 5ms、prefill 130ms、首 token 30ms、渲染 10ms、杂项 8ms(合计 260ms)。先打 prefill(占 50%):小模型/MoE、KV 缓存复用、multi-query 注意力、缓存预热都在这一段发力。
Q10. Router 的评测为什么用 AFC 和 keep rate 而不是离线 benchmark?
离线评测规模小且与真实使用脱节;更重要的是模型切换会引入缓存 miss 等在线成本,离线测不出来。AFC(接受/纠正推断的满意度)与 keep rate(代码长期留存)是产品真值,且 A/B 流量可直接优化它们【Router 博客】。
高级
Q11. Cursor 的"模型无关 + 自研模型"组合在 2026 年 OpenAI 断供报道下是否还成立?评估其脆弱性与韧性。
韧性:Router 让模型增删是配置问题;Tab/Apply 层本就不依赖 OpenAI;Composer 系列在替代 frontier 质量层。脆弱性:官方自己承认 Best Frontier 仍强于 Composer(Composer 博客脚注),质量层的替换有真实代价;且不同模型的工具调用风格差异会影响 RL 策略的迁移。判断:成本与供给韧性高,质量韧性中等,时间站在自研侧(RL 数据复利)。
Q12. 从嵌入索引转向 Instant Grep + 子代理,代表了什么架构判断?权衡是什么?
判断:当 agent 能自主多轮搜索时,预计算的全库嵌入索引的价值坍缩为首查延迟,而其成本(服务端存储、增量同步带宽、隐私审计面)是持续的。转向后:存储与同步成本归零、隐私面收敛到"文件内容进模型请求"这一可解释口径;代价是每次搜索消耗推理 token(由 Router 管成本)与更高的首查延迟。这是"向量检索 vs 按需词法检索"在产品规模上的真实裁决案例。
Q13. 固定订阅 + frontier API 成本的毛利结构如何设计对冲?评估 Cursor 三层对冲(额度池/Router/自有模型)的充分性。
额度池把成本透明化并限定敞口(超额按价转售);Router 在质量约束下压单位成本(官方口径约省 47%);自有模型把最贵的层换成边际成本(Tab/Apply 已闭环,Composer 定价 $0.50/$2.50 per M)。充分性:轻中度用户毛利健康,重度用户趋零但有界;结构性风险在 frontier 涨价与断供——前者由 Router 的可替换性对冲,后者由 Composer 进度对冲。参考 mini-demo 场景 5 的毛利悬崖曲线。
Q14. 如果让你为一个人工智能体产品复制 Cursor 的 online RL 闭环,列出前置条件清单。
① 高频交互产生带标注的信号(接受/拒绝/编辑距离);② 信号回传链路低延迟、可归因到策略版本;③ checkpoint 滚动上线能力(灰度、回滚、分钟级);④ 奖励可翻译成带零点的标量;⑤ 环境足够便宜以支撑 on-policy 采样(Cursor 用与产品同源的沙箱调度器);⑥ 护栏:线上 A/B 与离线回归,防止策略漂移伤害体验。缺任何一条,RL 闭环都会退化成季度级调参。