谷歌宣布将 Gemini Pro 1.5 的输入上下文窗口从 100 万个令牌增加一倍至 200 万个令牌,而 OpenAI 发布了 GPT-4o,其生成令牌的速度比 GPT-4 Turbo 快 2 倍,成本低 50%,并且原生接受和生成多模态令牌。我认为这些发展是 18 个月趋势中的最新进展。鉴于我们看到的改进,开发人员的最佳实践也发生了变化。
自 2022 年 11 月 ChatGPT 推出以来,其关键里程碑包括 GPT-4、Gemini 1.5 Pro、Claude 3 Opus 和 Llama 3-70B 的发布,许多模型提供商在两个重要方面提高了其能力:
-
推理,使 LLM 能够思考复杂的概念并遵循复杂的指令; -
更长的输入上下文窗口。
GPT-4 和其他高级模型的推理能力使它们非常擅长解释带有详细说明的复杂提示。许多人习惯于向 LLM 快速提出 1 到 2 句话的查询。相比之下,在构建应用程序时,我看到经验丰富的团队经常编写长达 1 到 2 页的提示(我的团队称之为“超级提示”),这些提示提供复杂的说明,以详细说明我们希望 LLM 如何执行任务。我仍然看到团队在编写详细说明方面做得不够。要获取中等长度提示的示例,请查看 Claude 3 的系统提示。它非常详细,并明确指导了 Claude 应该如何表现。
这与我们通常在 LLM 的 Web 用户界面上使用的提示方式非常不同,我们可能会快速提出一个查询,如果答案不令人满意,则通过与聊天机器人反复对话来澄清我们想要什么。
此外,输入上下文窗口长度的增加为开发人员的工具包添加了另一种技术。GPT-3 启动了大量关于少样本上下文学习的研究。例如,如果您使用 LLM 进行文本分类,您可能会给出一些文本片段及其类标签(例如 1 到 5 个示例),以便它可以使用这些示例推广到其他文本。但是,对于更长的输入上下文窗口(GPT-4o 接受 128,000 个输入标记,Claude 3 Opus 接受 200,000 个标记,Gemini 1.5 Pro 接受 100 万个标记(200 万个标记刚刚在有限预览中宣布)),LLM 并不局限于少数几个示例。通过多样本学习,开发人员可以在提示中给出数十个甚至数百个示例,这比少样本学习效果更好。
构建复杂的工作流程:
-
写下快速、简单的提示并看看其效果如何。 -
根据输出的不足之处,反复充实提示。这通常会导致更长、更详细的提示,甚至可能是超级提示。 -
如果这仍然不够,请考虑少量或多次学习(如果适用)或不太频繁地进行微调。 -
如果仍然没有产生您需要的结果,请将任务分解为子任务并应用代理工作流程。
给普通人的26条详细提示工程策略
1、与LLM交流不需要礼貌,所以无需添加“请”、“如果你不介意”、“谢谢”、“我想”等短语,直接切入主题。
2、在提示中整合预期的受众,例如,受众是该领域的专家。
3、将复杂任务分解为一系列更简单的提示,进行互