资讯详情
Claude 的 Fable 5 模型发布后,经历了一系列戏剧性的事件,包括备受瞩目的期待、美国政府的禁令以及限制非美国用户访问等,引起了广泛关注。随着这些风波的平息,模型正回归其作为生产力工具的本质。
为了帮助用户更好地利用 Fable 5,Claude 的工程师 Thariq Shihipar 在其社交媒体上发表了一篇长博文,分享了使用该模型的技巧。这篇博文旨在解答一个普遍存在的疑问:尽管当前模型的能力已十分强大,为何用户在使用时仍感觉无法准确完成任务?
Thariq 的文章揭示了核心原因:用户与模型之间存在信息差,具体表现为用户输入的提示词、技能、上下文与实际任务执行之间的不匹配。博文的核心内容便是指导用户如何弥合这一信息差,从而提升与模型协作的效率。
博文链接:https://x.com/trq212/status/2073100352921215386
Thariq 强调,与 Claude Fable 5 合作,让他深刻体会到“地图并非疆域”的道理。“地图”指的是用户提供的表征,即提示词、技能和上下文,而“疆域”则是实际需要完成工作的代码库、现实世界及其固有的约束。
他将“地图”与“疆域”之间的差距称为“未知项”。当 Claude 遇到未知项时,它需要依据对用户意图的最佳猜测来做出决策。任务越复杂,Claude 面对的未知项可能就越多。Fable 5 是首个让 Thariq 明显感受到工作质量瓶颈取决于自身澄清未知项能力的模型。他指出,仅仅提前规划不足以应对所有情况,因为未知项可能在实现过程中浮现,甚至可能揭示需要采用截然不同的解决方案。与 Fable 协作,本质上是一个在实现前、中、后不断发现未知项的迭代过程。
作者还提供了一些识别“未知项”的具体示例,读者可参考:https://thariqs.github.io/html-effectiveness/unknowns/
“未知项”可以从四个维度来理解:
拥有较少未知项的智能体式程序员,通常能清晰地定义目标并提供充分的细节,与代码库和模型行为保持高度同步。然而,他们也会预设未知项的存在。从某种意义上说,减少并提前规划未知项是智能体式编程的核心能力,而这项技能可以通过与 Claude 协作不断提升。
与 Claude 沟通需要精妙的平衡。过于具体的指令可能导致 Claude 僵化执行,即使有更优方案也难以变通;而过于模糊的指令则可能让 Claude 基于行业最佳实践进行选择,但这些选择未必适合特定任务。当用户未能充分考虑自身的未知项时,这两种情况都可能导致失败。用户可能不知道何时会遇到障碍,也不知道何时道路顺畅,但仍希望 Claude 能在必要时进行调整。
Claude 能够通过快速搜索代码库和互联网,以及其广泛的通用知识,帮助用户更快地发现未知项,并从失败中快速迭代。在此过程中,提供充足的初始上下文至关重要,包括用户当前思考的阶段、对问题和代码库的熟悉程度,以及将 Claude 视为思考伙伴进行协作。
Thariq 曾撰写过关于使用 Claude 生成 HTML 的内容,其中 HTML 工件常被用作可视化和表达想法的有效方式。本文将详细介绍他用于发现未知项的模式,这些模式可作为一组可调用的方法储备。
在工作开始阶段,理解自身盲点至关重要,尤其是在处理不熟悉的代码库或工作类型时。此时,用户可能面临大量“未知的未知”,不知道该问什么、什么才算好、过往的工作内容以及需要避免的陷阱。
用户可以要求 Claude 识别“未知的未知”并进行解释,通常会使用“blindspot pass”和“unknown unknowns”等词语,并提供自身背景信息。
示例提示词:
当面对大量“未知的已知”(即那些只有看到后才能明确标准的情况)时,用户可以与 Claude 进行头脑风暴和原型设计。尽早识别并表达这些未知项,比在实现阶段才发现要代价更低。
例如,用户可能只想尝试在某个框架中添加一个按钮,而不想立即接入后端路由或维护前端状态。在视觉设计方面,用户可能难以清晰表达,但看到后能辨认出想要的效果。此时,可以要求 Claude 提供不同设计方向的原型。
每次编码会话开始时,进行探索或头脑风暴有助于明确项目范围,防止范围设置过窄或过宽,Claude 可能会发现用户忽略的高价值方案。
示例提示词:
在充分头脑风暴后,若仍存在未知项,用户可让 Claude 围绕不明确或有歧义之处进行提问。向 Claude 提供问题背景,有助于其提出更有针对性的问题。
示例提示词:
当用户无法详细描述需求时,提供参考资料是有效途径,例如图表、文档或图片,其中源代码是最佳参考。用户可以将 Fable 指向特定文件夹,并告知其需要查看的代码,即使代码语言不同也无妨。Claude Design 也能通过读取网站模块的底层代码,提供比截图更丰富的细节。
示例提示词:
在准备实现时,用户可要求 Claude 先整理一份实现计划,重点关注可能发生变更的部分,如数据模型、类型接口或 UX 流程,以便提前暴露需要调整之处。
示例提示词:
在计划获得认可后,开启新会话并将相关工件传入提示词,让 Claude 进行实现。即使经过充分规划,仍可能存在未知项。Claude 在工作中可能会因代码中的边界情况而调整思路。
用户可要求 Claude 维护一个临时的 implementation-notes.md 或 .html 文件,记录其决策过程,以便下次尝试中学习。
示例提示词:
implementation-notes.md 文件。如果你遇到某个边界情况,导致你必须偏离原计划,请选择保守方案,在 ‘Deviations’ 下面记录原因,然后继续推进。”在发布成果时,获得理解、支持和批准至关重要。在最终文档中构建推介和解释类内容,有助于加速评审者理解,并确认已考虑周全常见失败点。
示例提示词:
一次长时间的工作会话后,Claude 可能完成了比用户意识到的更多工作。仅看代码 diff 难以全面理解,因为许多行为依赖于现有代码路径。
用户可要求 Claude 在提供大量上下文后,围绕变更进行提问,帮助自己真正理解发生了什么。只有在完美通过测验后,才会合并代码。
示例提示词:
Fable 的发布视频完全由 Claude Code 剪辑完成。Thariq 在这个全新领域,从已知部分开始,让 Claude 解释转录技术 Whisper 的工作原理,以及是否能用 ffmpeg 精确剪掉语气词或长停顿。
他希望 Claude 创建一个 UI,并与语音同步,于是让 Claude 使用 Remotion 和转录文本创建视频原型以验证可行性。当视频显得灰暗时,他意识到是调色问题,但并不了解调色。第一次尝试让 Claude 生成多个版本供选择后,他发现自己不清楚“好”的标准,转而让 Claude 教他调色,以发现自己的未知项。
模型越强大,用户越能通过正确的方法完成更多事情。当一个长期任务返回错误结果时,很可能是用户需要花更多时间定义未知项,或创建实现计划,让 Claude 能够在这些未知项中灵活应对。
每一次解释文档、头脑风暴、访谈、原型和参考资料,都是一种低成本的发现未知项的途径,可以在付出高昂代价修复之前,识别出用户原本不知道的事情。因此,在开始下一个项目时,不妨先让 Claude 协助你找到自身的未知项。
开云深耕开云入口领域,用心服务每一位用户。
您的昵称
2024年5月18日
开云(中国)官网,作为全球领先的体育资讯服务平台,致力于为广大体育爱好者提供最前沿、最全面的赛事动态。我们汇聚海量体育资源,确保用户能够第一时间掌握足球、篮球等热门赛事的最新消息。
回复 »