2025-03-03
在人类软件工程中,试图弄清楚该做什么时,一种常见的反模式是直接跳到提出解决方案,而不强迫每个人清楚地阐明所有需求是什么。通常,你的问题空间受到足够的约束,以至于一旦你写下所有需求,解决方案就是唯一确定的;没有需求,很容易陷入争论特定解决方案的困境。
LLM 对你的需求一无所知。当你在没有指定所有约束的情况下要求它做某事时,它将用其训练集中最可能的答案填补所有空白。也许这很好。但是如果你需要更自定义的东西,那么实际上告诉 LLM 是你的责任。如果你要求 LLM 做一些过于不明确的事情并且它误解了你,最好编辑原始提示并重试;因为之前的对话保留在上下文中,将不正确的解释留在上下文中会使 LLM 更难以进入与你的需求相符的潜在空间的正确部分。
顺便说一句,如果你确定解决方案的某些方面应该以特定的方式工作,那么告诉 LLM 是很有帮助的,因为这也有助于你进入正确的潜在空间。并且重要的是要正确地做到这一点,因为 LLM 会非常努力地遵循你要求它做的事情,即使它不合适。