一个桌面AI销售教练,要在10个"创始人声音"里选一个回答用户问题。路由延迟从3000毫秒砍到5毫秒,成本从每次0.005美元变成零,准确率只掉了4个百分点。作者选了后者。
这不是性能优化的故事,是关于什么时候该对"智能"说不的算术题。
产品长什么样
这套叫Sales Agent Pack的系统,本质是Electron桌面应用+Claude Code技能包。核心机制:用户输入销售问题,系统从10个"理事会声音"里挑一个作答。
每个声音不是角色扮演prompt,而是3000字的Markdown文件——从SaaS创始人的公开写作里提取的真实语料,聊天时整份塞进系统提示词。选错声音,答案技术正确但调性全错。
路由决策的典型案例:
"该不该把价格提到79美元?"→该找Lemkin(SaaStr运营者,做过大量定价实验)
"输给HubSpot了,角度在哪?"→该找Levie(挑战者定位专家)
"BP感觉太通用"→该找Chesky(身份驱动销售、设计背景)
路由质量直接决定用户体验。作者试了两种方案。
方案A:大模型元路由
思路很直觉:让Claude自己选。每次请求前先问一遍"这问题该谁答",代码长这样:
async function pickVoiceLLM(message) { const response = await anthropic.messages.create({ content: `Question: "${message}"\n\nWhich voice should answer? Reply with just one word from: Collison, Benioff, Lutke, Chesky, Huang, Altman, Amodei, Levie, Butterfield, Lemkin.` }); return response.content[0].text.trim(); }
100条样本测试下来:单次调用成本约0.005美元(输出50 token,输入约120 token),准确率89%——对比作者手工标注的"正确答案"。
延迟没提,但Anthropic API的冷启动+往返,实际体感在2-3秒级。对桌面应用来说,用户敲完问题要等一个"选谁回答"的额外往返,体验割裂。
方案B:确定性关键词路由
代码土得掉渣:一堆if判断,加个买家原型启发式。
function pickVoice(message, conversationType) { const m = message.toLowerCase(); // 硬覆盖——显式对话类型优先 if (conversationType === 'post_mortem') { return { primary: 'Lemkin', voiceFile: 'council/10-lemkin.md' }; } if (conversationType === 'competitive_positioning') { return { primary: 'Levie', voiceFile: 'council/08-levie.md' }; } // 定价关键词→Lemkin(SaaStr运营者) if (/price|pricing|raise.*price|tier|discount|annual.*contract/.test(m)) { return { primary: 'Lemkin', voiceFile: 'council/10-lemkin.md' }; } // ...更多规则 }
实测结果:延迟5毫秒,成本为零,准确率85%。
600倍速度差,4%准确率差距,无限成本差。作者选了方案B。
为什么"不够智能"反而赢了
这个决策违背了近两年AI产品的一个惯性:能用大模型就不用规则,能端到端就不分层。作者的算术拆得很细:
第一,错误成本不对称。路由错了,用户得到的是"风格不搭的正确答案",不是灾难性失败。85%和89%的差距,在实际体验里被后续对话的上下文修复能力稀释。
第二,延迟是产品级缺陷。桌面AI工具的竞争力在"跟得上思路",3秒路由延迟打断心流,5毫秒无感知。用户不会为4%的准确率提升忍受每次提问的卡顿。
第三,成本结构决定商业模式。0.005美元看起来便宜,但按日均1000次路由算,月成本150美元——对独立开发者的小工具,这是净利润和亏损的边界。零成本意味着可以定价更低或免费增值。
第四,可维护性被低估。关键词路由的失效模式透明:哪个词匹配错了,肉眼能调试。大模型路由的失效是黑箱,"为什么这次选了Altman而不是Amodei",需要逐条看log猜意图。
什么情况下该反着来
作者没说的边界同样重要。关键词路由能work,前提是问题类型和创始人专长有显式映射关系——定价、竞争、复盘、设计,这些词天然带领域标签。
如果10个声音的区别是"激进vs保守"或"数据驱动vs直觉驱动"这种维度,关键词会失效。这时候大模型对语义的模糊匹配能力才不可替代。
另一个变量是规模。10个选项是人工写规则的上限,100个选项时关键词组合的爆炸会让维护变成噩梦。但在产品早期,"刚好够用"的复杂度往往是护城河。
Claude Code的兴起让"用大模型路由大模型"变得极低成本——几行代码就能搭原型。这种易得性反而制造陷阱:默认选最"智能"的方案,而不做算术。
作者的实践是个提醒:智能是资源,不是美德。当确定性规则能覆盖80%场景时,剩下的20%也许不值得用20倍的成本去追。
产品昨晚已发:clskills.in/sales-agent-saas。10个创始人声音里,Lemkin的定价规则和Levie的竞争话术被命中频率最高——这是关键词路由留下的可观测副产品,比准确率数字更能说明用户真正在问什么。
如果你在做多Agent系统,路由层的设计决策,是选5毫秒还是3000毫秒,算过账了吗?
热门跟贴