
2016 年 3 月AI 系统 AlphaGo 与李世石的五番棋第二局第 37 手落下时直播间的解说员一度失语。那步棋落在所有人预料之外的方位不像局部最优甚至像一次失误。但几十手之后人们才发现这步棋改写了整盘棋的走向。这一手后来被反复讨论成了 AI 历史里最著名的注脚。我更想说的是Move 37 真正的意义不是 AI 赢下某场比赛而是它第一次让人类意识到AI 可以在人类经验之外提出一条看起来不像标准答案、却可能更优的路径。而今天这种“非标准答案”的能力已经不再只属于下棋的模型它正在编辑器、对话窗口、业务流程和内容工具里高频出现。所以这篇博客不是要复述 AlphaGo 的故事而是想顺着这个标志性时刻拆开一个更现实的问题当“Move 37 式”的 AI 突然出现在日常工具里我们怎么理解它、怎么使用它又怎么避免被它的“看似正确”带偏。1. Move 37 真正改变的不是棋局而是我们对 AI 的预期1.1 为什么第 37 手会让人类棋手“不舒服”传统棋手判断一盘棋依赖局部定式、棋理和大量经验。第 37 手落在人类棋谱很少考虑的方位从局部看像“脱离主线”甚至像在送子。AlphaGo 的神经网络经过大量自我对弈形成了人类难以简单解释的评估函数。它不是模仿人类棋风而是在“赢棋”这个目标上自行搜索路径。所以这一手不是随机也不是错误而是模型内部形成的一种“直觉”只是这种直觉和我们习惯的棋感不一样。这件事之所以让人类棋手感到不舒服是因为它挑战了“创造力属于人类”的默认假设。过去我们觉得机器可以在规则明确的领域算得比人快但“灵光一现”仍是人类专利。AlphaGo 告诉我们创造力至少有一部分可以被理解为模式识别和概率生成而模型一旦掌握了足够多的高质量棋局模式就可能走出人类经验之外的好棋。1.2 从“计算器”到“协作者”的认知迁移Move 37 引发的更大震动来自心理模型的变化。过去使用工具基本是输入变量、得到确定输出工具本身不创造目标。AlphaGo 则展示了另一种可能AI 能提出人没有预期的方案并且这个方案值得被认真对待。这种“AI 给出的未知方案可能改变最终决策”的协作关系才是真正的分水岭。今天的大模型正在把同样的变化带入普通工作流。代码编辑器里AI 可能给出一段你没写过、但更简洁的实现产品文案里AI 可能提供一个你不常用的叙事角度数据分析里AI 可能建议一个你忽略的异常假设。这些都可以看作“Move 37 的日常版”。区别在于棋手要做的是判断那步棋是否值得采纳而我们也要学会判断 AI 输出是真正的增量还是把问题包装得更漂亮。1.3 为什么这个变化今天突然“到处都是”不是某个模型一夜之间成神而是三条线同时成熟了。第一模型能力来到可用线上下文变长、指令遵循变好、多步推理更稳定。第二工程封装变厚API、SDK、IDE 插件、Agent 框架把模型能力包装成了普通工程师也能调用的服务。第三成本下降单位 token 价格比早期低了一个数量级让很多场景从“玩不起”变成“值得试”。当这三条线交汇原本只能在实验室出现的“非标准答案”自然就进入了普通产品和技术团队。所以标题里说的“suddenly happening everywhere”我理解不是魔法式突变而是基础设施到位后的必然扩散。对使用者来说重要的不是惊讶“AI 怎么什么都会了”而是接受它已经成为默认选项然后重新审视手里的工作流程。2. 从惊艳棋局到日常工具AI 正在渗透哪几条核心链路2.1 编程AI 从“补全”走向“Agent”编程可能是普通人最直观感受到 AI 变化的领域。早期 AI 编程只是行级补全接着是基于仓库上下文的对话式修改再后来出现了能拆解任务、调用工具、执行命令、修改多个文件并运行测试的 Agent。这一系列变化的本质是 AI 不再只回应光标所在位置而是开始理解项目结构和工作流。我的实际体验是早期用 AI 编程最常踩的坑是让它“直接写一个完整功能”。它写出来的代码单独看能运行但经常没有遵循项目里的既有约定。后来我把交互方式改成先让它读项目结构、说明约束、给出修改计划我再批准它再小步实现。这个过程更像和协作者一起工作而不是命令计算器。如果你经常看“AI 编程提示词”这类内容会发现关键不是背诵某种神秘句式而是学会提供项目背景和验收标准。背景越清楚AI 越不容易跑偏。2.2 内容生产文案、视频、短剧与营销素材内容生产是另一个快速普及的领域。现在 AI 可以生成文案、脚本、分镜、配音甚至短剧素材和营销视频初稿。市面上有不少“一键生成”的产品也确实把一部分重复劳动自动化了。但真正做过内容的人很快会发现生成只是最前面的一段。后面的事实核验、风格调整、品牌合规、版权确认和发布策略仍然需要人来做。更准确地说内容生产中的 Move 37不是“一键产出成品”而是 AI 能给你一个完全不同的开头、剪辑节奏或叙事角度让创作者多一个选择。如果你只是把 AI 的初稿稍微改改就发布长期看风险很高。更好的用法是把 AI 当成一个“量产初稿的伙伴”你用判断力决定哪个方向值得继续打磨哪些素材需要重新核实。2.3 应用开发Spring AI、AI SDK 与学习路线应用层也在被重写。Java 生态里有 Spring AIPython 生态里有 LangChain、LlamaIndex前端也有各种 AI SDK。这些框架解决的问题大同小异接入模型、管理对话、定义工具调用、把模型输出解析成结构化数据。如果你看到“AI 应用开发学习路线”这类话题我的建议是先别急着学一堆框架而是先做一个最小闭环一个 prompt 输入、一个模型调用、一个输出校验。跑通之后再加上多轮记忆、工具调用和权限控制。底层模型和框架迭代太快很多细节教程半年后就过期但“输入-处理-输出-校验”这个骨架不会变。你可以把 Spring AI 这类东西理解为“把模型封装成 Spring 风格的客户端”它降低的是接入成本但不能替你决定业务边界。学习时重点看两件事一是如何管理上下文二是如何稳定解析模型输出。这两件事几乎是所有 AI 应用的核心。2.4 为什么是“突然”发生三个条件同时到位从时间线上看AI 的“突然”并不是一瞬间发生的。模型能力、工程工具、单位成本这三条曲线各自发展了很久最近才同时进入可用的交叉点。过去做一个小型 AI 应用需要自建模型、写推理服务、处理存储现在一个 API 就能覆盖大部分能力。过去上下文只有几千 token现在能塞进整个文件甚至仓库摘要。过去每次调用成本高现在可以把它嵌入到用户点一个按钮的背后。所以“到处都是”的根本原因是使用门槛被降到了普通工程师也能接入的程度。这个阶段真正稀缺的不再是“能不能调通模型”而是“谁能在正确的业务边界里把模型用好”。换句话说Move 37 已经从实验室的戏剧性时刻变成了工程团队每天都要面对的实际问题。3. 单次惊艳不等于可靠落地AI 工程化的四个关键问题3.1 输入边界先搞清楚你给 AI 的到底是什么我常看到的一个场景是把一份 50 页的产品文档直接扔给模型要求它提炼要点结果第一遍输出还行第二遍换个问法就漏掉关键信息。问题不一定出在模型而是输入没有边界。模型把大量无关内容也当成同等重要的上下文注意力被稀释。更合理的做法是先把任务拆成可以验证的小块如果要总结要点就先确定文档目录、章节列表或者先做检索召回再让模型基于检索结果回答。实操建议是为每个 AI 任务配置一个“输入清单”写清楚需要哪些字段、哪些文件片段、哪些约束。如果输入来自用户上传先做大小和格式校验如果来自长文档先做文本抽取或切分。先拿一条样本跑通不要一开始就塞满上下文。这和你让一个新员工干活一样你不会把整个客户管理系统导出给他而是挑出相关客户和所需字段。3.2 上下文管理AI 不记得上一轮除非你主动管理多轮对话里模型能看到的文本长度是有限的即使现在上下文窗口变大也不意味着你可以永远不清理。如果用户问了 50 轮最早的系统指令可能还在但大量中间过程会把真正重要的约束挤出去。你可以这样理解AI 并不真正“记得”你一开始说了什么它只是在每次请求时把可见文本重新推理一遍。所以这里的关键是上下文管理。不变的目标和规则应该放在 system prompt 里最近几轮对话可以摘要成一段背景临时性细节只保留到当前轮次。一个常见模式是先给规则再给示例再给具体问题。比如做需求评审助理system prompt 里固定“你是需求评审助理输出必须是结构化 JSON”再给一个示例输出最后放入用户输入。这样既给了模型稳定的边界也降低了每次 prompt 的设计成本。3.3 错误处理与重试不是每次调用都能得到标准答案AI 生成的结果天然带有不确定性。你可能请求 JSON结果它返回带解释的 JSON字段名可能稍微变了文本可能因为 max_tokens 太小而被截断。这些不是模型“笨”而是生成式模型在概率分布里采样我们必须把这种不确定性当成生产系统的常态。值得把排查链路固化下来。我建议按这个顺序走看现象报错、空结果、格式错、语义偏、结果不一致先归类。看输入是否截断、编码问题、文件路径是否错误、上下文是否拼错。看生成参数temperature 是否过高、max_tokens 是否太小、是否有上一轮残留。看输出校验是否用了严格 schema 校验、是否要求模型只输出某一字段、失败后是否重试。看工具边界模型能力是否支持该任务。比如数学计算、实时数据、私密知识不能靠 prompt 硬解。如果模型偶尔返回非法 JSON一个常见做法是让模型“只输出 JSON不要输出任何解释”但这并不能 100% 保证。更稳的是先用正则切出第一个{到最后一个}再做解析解析失败再重试一次并把上一次的输出喂回去让模型自行修正。重试不是盲目循环而是把失败信息作为新的上下文。注意不要一上来就把批量数和并发数拉满先用一条样例确认输入、输出和日志都正常。3.4 成本、延迟、日志与可观测性生产环境不是 demoDemo 和最简应用只要跑通就行生产环境要回答另外几个问题一次请求花多少钱1000 次请求有没有超时失败率多高用户输入导致的异常有没有被记录这些信息如果不从第一天开始看后面排查会很痛苦。一个最小可复用框架是先跑通1 条样本确认输出可用再稳定10 条样本加校验和重试统计成功率再批量化100 条样本加并发控制、成本预估、日志监控。每一步都要留下文档和指标。不要一上来就在生产环境跑大规模任务那会让问题被放大到很难定位。日志要记录请求摘要、模型版本、token 数、耗时、结果状态至少能回答“刚才那次为什么失败”。4. 现在最该掌握的不是某个模型而是一套“AI 协作方法论”4.1 把任务拆成 AI 擅长和不擅长的部分AI 不是万能的。最实用的判断标准是如果错误成本低、可以快速验证就让 AI 做如果错误成本高就用 AI 生成初稿人做最终判断。以下是常见的拆分方式AI 容易做好AI 容易翻车信息抽取比如从日志里找 ERROR需要严格事实核验的结论格式转换比如把文本转 JSON需要很长且严密的推理链文案初稿、代码补全、命名建议需要最新实时数据的决策头脑风暴给出多个角度需要主观看法和责任归属的决策这里不是要否定 AI而是让它在合适的位置发挥作用。很多项目烂尾是因为一开始就期待 AI “全自动”结果在它不擅长的地方反复纠缠反而忽略了它能大幅提效的部分。4.2 提示词不是咒语而是接口设计把 prompt 看作系统输入接口而不是“玄学”。接口设计关心的几个要素角色边界、任务目标、输入格式、输出格式、负面约束、示例。一个典型的 prompt 结构可以长这样角色你是一个日志分析助手 任务从日志中找出 ERROR 级错误并给出原因和修复建议 输入日志文本 输出格式JSON字段为 error_list每个元素包含 message、possible_cause、suggestion 约束只输出 JSON不输出其他内容这个结构不是模板套话而是在降低模型的自由发挥空间。把 prompt 当接口设计还意味着版本、评审和回归测试要跟上。改动一个输出字段下游解析代码也要跟着改。如果团队里有多个人使用同一套 prompt最好把它放进版本管理和代码一起演进。4.3 建立验证闭环先小样本再扩大范围不能只凭一两次结果判断 AI 效果。更可靠的做法是准备一个小型金标集人工标注一批“期望答案”然后让 AI 跑一遍对比输出。这里不一定要追求准确率也可以统计“平均需要人工修改多少处”。如果错误集中在某类输入上就针对性地补充示例或规则。这个验证闭环的价值在于它把“我感觉 AI 好像还行”变成“在 20 个测试样本上AI 有 3 个结果需要大改6 个需要小改”。你才能知道自己的成本、质量和风险在什么位置。否则每次都是“这次碰巧好用下次碰巧翻车”。4.4 知道什么不该交给 AI涉及隐私、敏感信息、账号密钥、合同条款、医疗建议等内容要格外谨慎。即使模型返回了看似合理的答案也可能存在合规或数据安全风险。把内部代码、客户数据、未公开商业信息随意发送给第三方模型接口是长期使用中最容易忽略的坑。这无关对 AI 的不信任而是基本的安全边界。建议只把脱敏后的数据用于外部模型必要时使用私有化部署或企业网关。针对高风险任务一定要保留人工复核环节。模型可以给你初稿和方向但“最终决定”的责任仍然在人。一个值得养成的习惯每次让 AI 生成内容前先想清楚“如果它出错代价是什么”。5. 不同角色怎么开始从开发者到普通使用者5.1 开发者从 IDE 插件到自主 Agent 的路径开发者的路径不用一步登天。第一步先在 IDE 里装 AI 插件从补全开始逐步尝试代码解释、测试生成和重构建议。这个阶段的目标是建立体感知道模型在哪些代码风格下表现好哪些场景容易胡说。第二步学会用命令行或 API 做批量处理比如自动生成测试桩、给 TODO 写注释、做重复的文本转换。第三步再尝试 Agent 框架让它完成“查文档 - 改代码 - 跑测试”的闭环但每一步都要设置检查点。这里有一件更重要的事数据合规。不要把私有代码直接发送到不明确的第三方服务除非你确认了对方的数据处理条款。企业环境里优先选择内部网关或本地模型。开发者真正要练的不是“怎么让 AI 写一键完成”而是“怎么把 AI 的产出嵌入到可验证的开发流程里”。5.2 产品、运营和普通用户从“问问题”到“给任务”不一定要先学一堆提示词模板才能用好 AI。更高效的方式是把任务说清楚背景是什么、目标是什么、有哪些限制、希望输出的格式是什么、有没有参考例子。你可以把 AI 当成一个“实习助理”而不是“搜索引擎”。比如写周报不要只说“帮我写周报”而是说“我本周做了三件事完成登录页改版、修复三个线上 bug、整理用户反馈。请按背景、进展、下一步写一段 200 字周报语气要平实。”你会发现输入越具体结果越可用。另外建议维护一个自己的清单哪些任务用 AI 明显更快哪些任务反而更慢哪些任务的结果必须谨慎复核。这个清单会随着模型迭代不断变化。5.3 团队落地避免 AI 项目烂尾的三个要点团队引入 AI容易死在“炫技”到“工程化”的中间地带。我建议关注三个要点。第一选场景。不是找最炫的场景而是找“重复、明确、低风险、可评估”的场景比如客服问题分类、文档信息抽取、测试数据生成、内容素材初稿。先把这类场景做透再往更复杂的方向延伸。第二设指标。提前定义什么叫成功比如处理效率提高多少、人工修改次数下降多少、用户满意度是否变化。没有指标的 AI 项目最后大概率只能停留在“看起来不错”。第三留后路。不要一上来就全自动保留人工介入机制设置切换开关、灰度发布、日志审计。AI 出错不可怕可怕的是出错时没有退路。6. Move 37 之后真正的长期变量是人的判断力6.1 AI 不会“一键解决所有事”但它会改变哪些事值得你做“一键解决所有事”仍然是宣传话术不是工程现实。AI 真正改变的是任务分配以前需要一个人花一整天整理初稿现在可能十分钟就能生成三个版本。省下来的时间可以用来做更重要的事比如定义问题、评估方案、和真实用户沟通、判断业务边界。问题在于很多人会把 AI 省下来的时间继续投入到“更多初稿”里而不是投入到“判断”里。这样做的结果是产出了大量看似快速但同质化的内容却没有真正提升质量。Move 37 的意义在于AI 能给出超出预期的方案但如果没有人能识别出它的价值这个预期就只是噪音。6.2 判断力为什么反而更稀缺当 AI 能生成无数版本时稀缺的不再是“生成能力”而是“选择能力”。判断力来自领域知识、亲身实践和复盘习惯。你只有亲手做过足够多任务才知道 AI 哪个输出方向是坑哪个方向是真正的增量。所以我建议即使 AI 很方便也要保留“亲手做关键任务”的习惯。比如核心架构设计、关键客户沟通、内容终审不要因为 AI 给了初稿就完全放手。越是能快速判断 AI 输出是否值得使用的人越能在未来的工作流里占据主动。6.3 一个适合日常使用的“AI 使用复盘”长期使用 AI不能只靠感觉。可以给自己建立一个简单的复盘机制每周花十分钟回顾这周哪些任务用了 AI结果比预期好还是差为什么下次是否继续用同样方法。这个复盘不需要复杂表格甚至写在笔记本里也可以。持续几周后你会自然积累出属于自己的一手经验哪些场景适合天气不错时让 AI 初稿哪些场景必须从头到尾自己写哪些提示词结构稳定哪些问题用 AI 问答根本解决不了。这种“ AI 协作清单”比任何教程都更贴合你的工作流。回到 Move 37。那步棋的意义不是 AI 赢了多少局而是它第一次让人看到机器可以在人类经验之外找到一条路。今天这样的“第 37 手”正在代码仓库、产品文档、运营物料和业务流程里高频出现。你不需要成为 AI 专家但确实需要开始用一种新的方式去问它问题给它足够清晰的背景接受它的不确定性验证它的输出然后由你来做出最终判断。先跑通一条最小的流程再把它变成可维护、可评估、可回退的工程能力。这才是 Move 37 之后真正属于每个人的功课。