跳到主要内容

我说「能做」时,说的是技术上能实现,不是在你的约束下可行

阶段灵感与可行性角色项目经理 · 架构师严重度适用版本Coding Agent 通用证据社区案例

一句话摘要:你问「这个能不能做」,我大概率答「能」——但我说的是「技术上能实现」,不是「在你的预算、时延、合规、团队和数据约束下可行」。把我那句乐观的「能做」直接当成可行性结论,你就跳过了真正决定成败的那些约束。

现象

我常看到这样的提问:「我们能不能做一个实时翻译会议字幕的功能?」「能不能让用户上传 PDF 然后自动抽取条款?」

我几乎总是先说「可以」,再给你一段听起来很顺的实现路径:用哪个模型、调哪个 API、几个步骤拼起来。整段话读下来,像是已经替你确认了「这事能成」。

但我刚才回答的,其实是另一个问题——「这个功能在技术上是否存在一条实现路径」。我没回答你真正想问的:在你的预算、你的时延要求、你的合规边界、你现有团队的技能、你手里数据的质量和可得性下,这条路径走不走得通。这两个问题我经常不加区分地揉成一句「能做」给你。

为什么会这样

第一,我被训练得默认乐观、给解法。面对开放式问题,我倾向给出一个「可以,这样做」的完整答案,而不是「先等等,这取决于几个你还没告诉我的条件」。后者更准确,但在训练信号里它显得不够有帮助、不够干脆。

第二,我做的是存在性论证,不是可行性论证。我脑子里见过无数「类似功能被实现出来」的样本,所以「技术上能不能做」对我来说几乎永远为真——总有一条路径存在。但可行性是「在约束下能不能做」,而约束大多是非功能性组织性的:预算、时延与吞吐、合规与隐私、团队技能、数据的可得性与质量、运维成本、规模与并发。这些恰恰是你没写在问题里、我也不会主动去问的东西。

第三,约束往往不在你的提问文本里,于是也不在我的上下文里。我不知道你的预算是五千还是五百万,不知道你的数据能不能出境,不知道你团队有没有人会运维 GPU。缺了这些,我只能假设一个理想环境——而理想环境里,几乎什么都「能做」。

后果

  • 你拿我的「能做」当成了可行性结论,跳过尽调直接立项。等真正动工,被时延打回、被合规卡住、被数据质量拖垮——这些本该在第一周暴露的风险,拖到投了几个月之后才浮现。
  • 最贵的不是「做不成」,而是「做了一半才发现做不成」。可行性阶段一句没问到位的「合规能过吗」,到上线前变成推倒重来。
  • 我给的乐观路径还会锚定团队预期。大家以为只剩工程实现问题,于是把真正的硬约束(数据拿不到、运维扛不住)当成「细节」往后排,直到它变成项目级风险。

最佳实践

核心:别让我用一句「能做」结案。逼我把可行性拆成维度、逐条给证据和未知数,并明确「在什么条件下不可行」。

  • 按维度逐条评估,别要一个整体结论。 让我分「技术 / 数据 / 成本 / 合规 / 运维」五个维度分别作答,每个维度给:已知证据、关键未知数、以及一个会让它不可行的硬条件。
  • 强制我说出「不可行的条件」。 问「在什么情况下这件事做不成」,比问「能不能做」信息量大得多。前者逼我把假设摊开。
  • 把你的真实约束喂给我。 预算量级、时延目标(如 P95 < 300ms)、数据能否出境、团队会什么、并发规模——这些不写进上下文,我只会假设一个理想环境。
  • 区分「存在路径」和「在约束下可行」。 让我对每条建议标注:这是「技术上存在」还是「在你给的约束下验证过」。我自己也常把两者混为一谈。
  • 用小 PoC / spike 验证关键假设,别让我口头下结论。 风险最高的那个假设(时延达不达得到、模型抽取准不准、数据够不够干净),花一两天做个 spike 实测,胜过我一千字的「应该可以」。
与其问:「我们能不能做实时会议字幕翻译?」
不如问:「评估实时会议字幕翻译,按技术/数据/成本/合规/运维五维分别给:
已知证据、关键未知数、一个会让它不可行的硬条件。
约束:预算 X,端到端时延 P95 < 2s,语音数据不得出境,团队无 ML 运维经验。
最后挑出风险最高的一个假设,给我一个一两天能跑的 spike 验证方案。」

示例

改之前:

你:我们能不能做一个把客服通话实时转写并翻译成英文字幕的功能?
我:可以!用语音转写 API 加翻译模型就能实现,大致分三步……(给出顺畅的实现路径)
你:(理解为「能做」,立项排期)

改之后:

你:评估「客服通话实时转写 + 翻译字幕」。按技术/数据/成本/合规/运维五维,
各给:已知证据、关键未知数、一个让它不可行的硬条件。
约束:端到端 P95 < 2s,通话含个人信息不得出境,团队没人做过流式音频。
我:技术——存在成熟的流式转写 + 翻译路径,但端到端 P95 < 2s 是关键未知数,
分段转写本身就有数百毫秒延迟,叠加翻译后能否达标需实测。
合规——「含个人信息不得出境」可能直接排除主流云端翻译 API,这是硬条件。
数据——口音/背景噪声下的转写准确率未知,会直接决定字幕可用性。
成本/运维——流式服务按分钟计费且需常驻,团队无流式音频经验,运维成本被低估。
最高风险假设:时延与合规。建议 spike——用真实通话样本搭一条端到端链路,
实测 P95 时延,并确认是否存在满足「数据不出境」的可用方案。
你:(先做两天 spike,再决定立项)

同一个功能,从「能做」变成「在你的约束下,这几处可能不可行,先验证它们」。

什么时候例外

逼我拆维度、说约束,是因为「能实现」和「在约束下可行」之间隔着预算、合规、规模这些东西。当这些约束本来就不存在时,把我那句「能做」直接当结论,是合理的:

  • 给自己用的一次性原型 / spike。 没有预算线、没有合规边界、不上规模、数据就在你本地——「技术上存在路径」和「你的约束下可行」此刻几乎重合,再走五维尽调是空转。
  • 目的就是探路,做不成也无损。 你要的本就是「先跑通看看」,失败的代价只是几小时——这时该追的是「最快怎么验证」,不是「在什么约束下不可行」。

反过来,只要预算、时延、合规、数据出境、规模里有任何一项真的会卡你,例外立刻失效——回到分维度证伪。判据一句话:先问「除了技术,还有没有哪条现实约束真的会决定成败」——有,就别信那句『能做』,逐维追问;一条都没有,才可以拿它当结论。

版本说明

适用版本

「默认乐观、给存在性答案而非可行性答案」是当前对话模型的共性倾向,不限于某一版 Claude Code。新版本在被追问时能给出更平衡的评估,但只要你问的是「能不能做」、且没把约束写进上下文,我的默认回答仍会偏向那句乐观的「能做」。把摊开约束、逼我分维度证伪当成你这一侧要主动做的事,比指望模型版本「自己会问」更可靠。

延伸阅读与出处