📰 来源:Towards Data Science | 📅 翻译日期:2026年6月16日
🔗 原文:查看原文
🤖 翻译:DeepSeek AI · 仅供参考
为什么需要与编码代理对齐
编码代理在快速实现方面表现出色。然而,当编码变得普遍时,我观察到的主要瓶颈之一是人类大脑与编码代理之间的知识传递。
如果你能正确地向编码代理传达想法,它在实现解决方案、测试和确保正确实施方面会非常高效。
但在许多情况下,细节繁多,很难确保在提示编码代理时包含所有细节。
这就是对齐发挥作用的地方。在本文中,我将讨论如何有效确保你的意图与编码代理一致,并介绍一些可用的技巧。
这张信息图突出了本文的主要内容。我将讨论如何更好地与编码代理对齐,从而提高工作效率。(图片由ChatGPT生成)
为何要与Claude Code等编码代理对齐
首先,我总是想讨论为什么你应该关注某个特定主题。这里就是为什么你应该与Claude Code这样的编码代理对齐。
编码代理在得到非常具体且描述良好的规范时,能极其出色地实现功能。
然而,创建这种描述良好的规范比你想象的更难。首先,你必须精确描述你想要实现的内容,而你的脑海中有一个想法。但总有很多细微差别,在向编码代理描述时很难涵盖。
- 你可能会忘记提及某些需要实现的部分
- 你可能没有意识到实现过程中需要做出的决策
- 你的解释可能存在歧义
这些问题通常是你事先未注意到的,因为作为人类,你无法拥有实现目标的完美上下文,很多时候你是在根据他人(如客户或产品经理)的需求进行实现。
其次,你没有完整的上下文,因为你并不完全了解代码库中的所有内容,尤其是现在很多代码由AI编写。事先很难全面了解,因此你缺少完美上下文。
这就是编码代理对齐如此困难的原因。在本文中,我将介绍如何有效与编码代理对齐,使其达到最佳性能,并能更好地一次性完成你要求的功能。
如何与编码代理对齐
在本节中,我将介绍我用于与编码代理对齐的具体技巧,以及一种对齐的思维方式。
每个部分都包含一个具体的想法、心态或技巧,你可以将其应用到自己的编程工作中,以有效与编码代理对齐。
代理总是倾向于默认解决方案
我要介绍的第一个概念是,编码代理在实现某些功能时总是倾向于默认解决方案。
这意味着编码代理通常会查看仓库中之前类似实现的模式,复制并重复执行。
如果你的代码库组织混乱,当你要求编码代理实现新功能时,它很可能延续之前的不良模式,以次优方式放置新功能。
举个例子:
许多代码库自然包含大量LLM调用。在理想的代码库中,你会有一个服务(单个文件或文件夹)称为LLM服务,包含所有LLM调用。函数通过选项决定如何调用LLM,例如选择哪个LLM、是否使用结构化输出、最大输出令牌等。
然而,组织混乱的代码库不会将其集中在一个文件中,而是在多个文件中定义LLM调用提供者,每个文件包含单独的LLM调用。这被称为糟糕的关注点分离。
现在,如果你在组织良好的代码库中要求实现另一个LLM调用,LLM会默认采用自然解决方案,即使用公共的共享LLM服务文件,这很好。
但如果工作在混乱的代码库中,LLM调用分散在多个文件中,代理可能会继续这种行为,创建另一个新的单独LLM调用,进一步恶化关注点分离模式。
我在这里想说明的是,编码代理只会遵循代码库中的自然模式,无论它是好是坏。因此,如果你想有效与编码代理对齐,确保代码库具有良好的模式并定期重构至关重要。
关于重构的更多内容,你可以阅读我在TDS上关于如何使用Claude Code重构代码的文章。
积极使用计划模式
与编码代理对齐的一个重要技巧是,在与它们交互时积极使用计划模式。计划模式之所以优秀,是因为它帮助你识别你设想并向LLM解释的实现与当前代码库之间的歧义。你可能忘记了对代码库进行一项更改会影响其他部分,你需要决定是否继续更改或调整实现细节。
你不应该期望自己事先完全了解代码库,只是因为
评论已关闭