提示工程作者·李·布恩斯特拉Google
提示工程致谢内容贡献者迈克尔谢尔曼赵超艾里克·阿姆布罗斯安南特·纳瓦拉加里亚安东尼奥·古利西蒙·卡梅尔馆员与编辑安东尼奥·古利安南特·纳瓦拉加里亚GraceMollison技术文档编写员乔伊·海梅克设计师迈克尔·兰宁
目录表引言6品示工程7LLM输出配置8喻出长度抽样控制9温度9Top-K和top-P10将其全部综合在一起11提示技术13一般提示/零样本提示13一次性与少量样本15系统、上下文和角色提示18系统提示19角色提示21上下文提示23
回溯提示25思维链(CoT29自我一致性32思维树(ToT)36ReAct(理由与行动)37自动提示工程40代码提示代码解释的提示44代码翻译提示46提示用于调试和代码审查48关于多模态提示?54最佳实践54提供示例54设计以简洁为本55请具体说明输出内容。56使用说明而非限制56控制最大合牌长度58在提示中使用变量。58尝试不同的输入格式和写作风格59对于分类任务的少样本提示,混合不同类别。59适应模型更新60尝试不同的输出格式60
JSON修复61与模式协作62共同与其他提示工程师进行实验63CoT最佳实践64记录各种提示尝试64摘要66脚注68
你不需要成为数据分析专家科学家或机器学习工程师-每个人都可以编与一个提示。引言在考虑大型语言模型的输入和输出时,文本提示(有时伴随其他模态,如图像提示)是模型用来预测特定输出的输入。您不需要是数据科学家或机器学?一每个人都可以编写提示。然而,制作最有效的提示可能很复杂。您提示的许多方面都会影响其有效性:您使用的模型、模型的训练数据、模型配置、您的词汇选择、风格和语气、结构以及上下文都很重要。因此,提示工程是一个迭代的过程。不充分的提示可能导致模糊、不准确的结果,并阻碍模型提供有意义的输出。
当您与Gemin聊天机器人进行对话时,您基本上编写提示词,然而这份白皮书侧重于在vertexA中为Gemini模型编写提示词,或通过使用API进行编写,因为通过直接提示模型,您可以访问诸如温度等配置。这份白皮书详细讨论了即时工程。我们将探讨各种提示技术,帮助您入门,并分享提示专家的技巧和最佳实践。我们还将讨论在制作提示时可能遇到的挑战。提示工程记住一个语言模型的工作原理;它是一个预测引擎。该模型接受序列文本作为输入,然后基于其训练数据预测下一个标记应该是什么。语言模型被操作化以反复执行此操作,将先前预测的标证添加到序列文本的末尾,以便预测下一个标记。下一个标记的预测基于前一个标记中的内容与语言模型在训练过程中所见到的内容之间的关系。当你编写一个提示时,你正在尝试设置大型语言模型以预测正确的令牌序列。提示工程是设计高质量提示的过程,以引导大型语言模型生成准确输出。这个过程涉及调整以找到最佳的提示,优化提示长度,并评估提示的写作风格和结构与任务的相关性。在自然语言处理和大型语曹模型的情况下,提示是提供给模型以生成响应或预测的输入。
这些提示可用于实现各种理解和生成任务,例如文本摘要、信息提取、问答、文本分类语言或代码翻译、代码生成以及代码文档或推理请随意参阅谷歌的提示指南。23使用简单而有效的提示示例,当进行即时工程时,您将首先选择一个模型。无论您使用Vertex A中的Gemini语售模型、GPTClade,还是开源模型如Gemma或LLaMA,都需要针对您的特定模型优化提示。除了即时反馈,您还需要调整大型语言模型的各种配置,LLM输出配置一旦您选择了您的模型,您需要确定模型配置。大多数大型语言模型都提供了各种配置选项这些选项控制着语言模型的输出。有效的提示工程需要为您的任务优化这些配置输出长度一个重要的配置设置是在响应中生成多少个标记。生成更多的标记需要LLM进行更多的计算这可能导致更高的能、可能的啊应时间变慢更高的成本。
减少LLM的输出长度并不会使LLM在创建输出时在风格或文本上变得更加简洁,它只是导致!LM在达到限制后停止预测更多标记。如果你的需求需要较短的输出长度,你可能还需要设计你的提示来适应这种情况。输出长度限制对于某些LLM提示技术,如ReAct,尤为重要,在这些技术中,LLM会在你想要的响应之后继续发出无用的标记。请注意,生成更多代币需要LLM进行更多计算,这导致更高的能耗和潜...