@mattpocockuk: 这段视频的观看时长已达 96,000 小时 相当于超过十年 有时候我仍然觉得难以置信
摘要
Matt Pocock argues that effective AI-assisted development requires respecting LLM limitations, specifically the 'intelligence zone' and amnesiac context windows, advocating for small tasks and clear system prompts over vague specifications.
查看缓存全文
缓存时间: 2026/05/10 22:32
这段视频积累了 9.6 万小时的观看时长
那已经超过十年了
有时我仍然觉得难以置信
https://t.co/gMtfs17H9k
简而言之:Matt Pocock 认为,有效的 AI 辅助开发需要尊重大语言模型(LLM)的局限性——特别是“智能区”与“低效区”的区别,以及上下文窗口具有“失忆”的特性。他主张采用小任务、清晰的系统提示,以及诸如“审问我(Grill Me)”这样严格的对齐技能,而不是模糊的“从规范到代码”的方法。
简而言之
高效的 AI 协作遵循传统的软件工程原则:保持任务小型化以停留在 LLM 的“智能区”内,将上下文窗口视为频繁重置的“失忆”状态,并优先考虑对代码的深入理解,而非模糊的规范文档。
核心论点:传统软件工程规则依然适用
AI 教育者 Matt Pocock 提出,虽然 AI 代表了一种新范式,但软件工程的基础原则仍然至关重要。在与 AI 协作时,那些促进人类协作的实践同样非常有效。本次研讨会的目标是证明,尊重这些基础比盲目追随 AI 趋势能产生更好的结果。
理解 LLM 的局限性
要有效地与大语言模型(LLLM)合作,开发者必须理解两个特定的“奇怪局限性”:
- 智能区(Intelligence Zone)与低效区(Stupid Zone)
- 上下文的失忆特性(《记忆碎片》风格)
智能区与低效区
引用 Dex Hardy(来自 Human Layer)的观点,Pocock 解释说,LLM 在开始新对话时表现最为高效。这就是“智能区”,此时注意力机制承受的压力最小。
随着令牌(tokens)被添加到上下文窗口中,计算负荷呈二次方增加。Pocock 用向足球联盟增加球队来类比:每一个新令牌都会基于位置和含义与每一个其他令牌建立新的关系。
- 阈值: 无论上下文窗口是 20 万还是 100 万令牌,当容量达到约 40% 或大约 10 万令牌时,模型性能开始下降。
- 低效区: 超过此阈值后,模型变得“更笨”,做出糟糕的决策。
建议: 保持任务小型化。不要给 AI 超出其处理能力的内容。这与 Martin Fowler 的《重构》和《程序员修炼之道》中的传统建议一致。如果任务庞大(例如克隆一个公司的代码库),将其分解为适合“智能区”的小块。
多阶段规划 vs. 循环
Pocock 批评常见的多阶段规划(第一阶段、第二阶段、第三阶段),认为这本质上是一个循环。他提到了“Ralph Wiggum”式软件实践——这个术语可能指的是一种简单、迭代的方法:定义最终目标(PRD),然后要求 AI 进行微小的更改,逐步向该目标迈进。
虽然这种 Ralph Wiggum 式的迭代是可行的,但 Pocock 更喜欢更有结构的方法。关键在于确保每一步都保持在智能区内。
失忆式的上下文窗口
LLM 的行为就像电影《记忆碎片》(Memento)中的主角:它们不断遗忘。每次会话都遵循相似的生命周期:
- 系统提示(System Prompt): 基础上下文。应保持最小化。在此加载 25 万令牌会立即迫使模型进入“低效区”。
- 探索: 编码代理探索代码库。
- 实施: 编写代码。
- 测试: 运行反馈循环。
当上下文被清除时,模型直接重置回系统提示。
压缩 vs. 重置
许多开发者使用“压缩”来将长对话总结为更小的令牌占用空间。Pocock 不喜欢这种方法。他认为,优化为《记忆碎片》风格的重置更为优越。如果你能结构化你的工作,使得你可以清除上下文并返回到一个干净、一致的起点(系统提示)而不丢失进度,你将处于更有利的位置。
练习:构建游戏化功能
研讨会过渡到一个使用为班级构建的课程管理系统(CMS)的实际练习。目标是根据客户 Sarah Chen 的需求简报,构建一个游戏化功能以提高学生留存率。
“审问我(Grill Me)”技能
Pocock 引入了一项名为“审问我”的自定义技能,以解决对齐问题。他明确反对“规范到代码”运动,即开发者编写高层规范并让 AI 直接将其转换为代码。他认为这是一种“氛围编程(vibe coding)”的形式,忽略了实际的代码,导致失败,因为开发者必须理解并塑造代码库。
“审问我”技能旨在通过在进行任何编码之前强制执行严格的面试流程来防止错位。
工作原理
该技能提示指示 LLM 执行以下操作:
“无情地就计划的各个方面对我进行面试,直到我们达成共同理解。逐一解决决策树的每个分支,解决依赖关系。对于每个问题,提供你的推荐答案。一次只问一个问题。”
执行步骤
- 清除上下文: Pocock 清除当前上下文以重新开始,避免进入“低效区”。
- 调用技能: 他调用
grill me技能,将客户简报 (client-brief.md) 作为输入传递。- 注意: 简报包含来自 Sarah Chen 的 Slack 消息,指出留存率低,希望添加游戏化功能。
- 面试过程: LLM 开始提出有针对性的问题,以澄清范围、依赖关系和决策。
- 共同理解: 目标是在进行编码之前,就实施细节达成共识。
这种方法确保开发者保持对代码的控制权和理解力,而不是被动接受基于模糊规范的 AI 生成输出。
相似文章
@Alokkumarzz: 别看一小时的电影了,看这个。在14分钟内,撰写《Building Effective Agents》的Anthropic工程师将向你传授……
Anthropic工程师的一段短视频解释了如何构建高效的AI Agent,提供了通常开发者需要数月才能掌握的密集见解。
@mattpocockuk:我正在从零开始开发一款叫 Slopwatch 的应用,并把整个过程拍成视频。这是学习像真正的工程师一样使用 AI 编程工具的绝佳方式……
Matt Pocock 宣布他正在从头构建一款名为 Slopwatch 的应用,并全程录像,旨在分享高效使用 AI 编程工具的实用技巧。项目第一步是从 Rust、Go、Node.js 和 Bun 等选项中选定编程语言。
@SaitoWu: https://x.com/SaitoWu/status/2053101671035851216
The article summarizes a talk by Matt Pocock criticizing 'specs-to-code' approaches, arguing that solid software engineering fundamentals like TDD and modular design are more critical than ever for effectively using AI coding assistants like Claude Code.
@mattshumer_:我花了七年时间给 AI 系统写提示。这里有一套简单框架,我会推荐给朋友,帮他们最大化 AI 智能体的价值……
Matt Shumer 基于七年经验,分享一套简洁的提示框架,帮助用户充分发挥 AI 智能体性能。
@Av1dlive: Garry Tan (Y-Combinator CEO): “当有人问我如何‘提示’我的 AI 时,答案是:我不提示。技能即提示…"
Garry Tan 主张从手动 AI 提示转向基于技能的自动化,展示了 GBrain 和 GStack 等开源工具,用于永久捕获和复用工作流。