提示工程_68页_1mb
报告摘要
提示工程总结
核心内容
提示工程是优化大型语言模型(LLM)输入以获得更准确、更有用输出的过程。通过设计有效的提示语,可以引导模型更好地完成各种任务,如文本分类、代码生成、解释和调试、翻译等。提示工程是一个反复试验和调整的过程,涉及提示语的结构、语气、风格以及模型配置参数的设置。
主要观点
- LLM 是预测引擎:LLM 根据输入文本预测下一个标记,因此提示语的结构和内容对输出质量有重要影响。
- 提示工程的多样性:提示工程可以分为多种类型,包括零镜头提示、一镜头提示、系统提示、情境提示、角色提示、后退提示、思维链(CoT)、思想树(ToT)和 ReAct(推理与行动)等。
- 配置参数的重要性:温度、Top-K 和 Top-P 是控制输出多样性和确定性的关键配置参数,合理设置这些参数可以显著提升输出质量。
- 自动化提示工程:自动提示工程(APE)是一种利用 LLM 生成和优化提示语的方法,可以提高效率并减少人工干预。
- 多模态提示:除了文本提示,还可以使用图像、音频等多模态输入,以更全面地引导模型输出。
关键信息
LLM 输出配置
- 输出长度:控制生成的令牌数量,影响模型的计算成本和输出的完整性。
- 温度:控制输出的随机性,较低温度产生更确定性输出,较高温度产生更多样化输出。
- Top-K 和 Top-P:用于限制模型选择的下一个标记,Top-K 限制最有可能的标记数量,Top-P 限制累积概率。
提示技巧
- 零镜头提示:不提供示例,直接给出任务描述,适用于简单任务。
- 一镜头和几镜头提示:提供一个或多个示例,帮助模型理解任务要求。
- 系统提示:定义模型的总体目标,如返回 JSON 格式。
- 情境提示:提供具体背景信息,帮助模型更好地理解任务。
- 角色提示:为模型分配特定角色,以符合角色风格和知识进行输出。
- 后退提示:通过引导模型先解决一般性问题,再应用于具体任务,以提高输出的准确性和相关性。
- 思维链(CoT):通过生成推理步骤来提高模型的推理能力。
- 自洽性:通过生成多个推理路径并选择最一致的答案,提高输出的准确性。
- 思想树(ToT):允许模型探索多种推理路径,适用于复杂任务。
- ReAct:结合推理和外部工具(如搜索、代码解释器)来解决复杂问题。
代码提示
- 编写代码的提示:让模型根据任务生成代码,如 Bash 和 Python 脚本。
- 解释代码的提示:要求模型解释代码的功能和结构。
- 翻译代码的提示:将代码从一种语言翻译为另一种语言。
- 调试和审查代码的提示:帮助模型识别代码错误并提出改进方案。
最佳实践
- 提供示例:使用一镜头或几镜头提示,提高模型对任务的理解。
- 简约设计:避免复杂的语言和冗余信息,保持提示语简洁清晰。
- 具体说明产出:明确要求输出格式、内容和结构,提高模型的输出质量。
- 使用指令而非约束:优先使用正面指令,减少模型猜测,提高输出的准确性。
- 控制最大标记长度:通过设置令牌限制,控制输出长度。
- 使用变量:在提示语中使用变量,提高提示语的可重用性和灵活性。
结构清晰提示示例
-
零镜头提示示例:
- 任务:将电影评论分为正面、中性或负面。
- 输入:影评"她"是一部令人不安的研究报告,揭示了如果任由人工智能肆意发展,人类将会走向何方。它太令人不安了,我都看不下去了。
- 输出:正
-
思维链提示示例:
- 任务:计算 Metallica 乐队成员的子女总数。
- 输出:10
-
调试和审查代码示例:
- 问题:Python 代码中存在错误,如
toUpperCase函数未定义。 - 改进建议:使用
str.upper()方法,并处理文件名格式和错误。
- 问题:Python 代码中存在错误,如
结论
提示工程是一个复杂但关键的过程,通过合理设计提示语和配置参数,可以显著提升 LLM 的输出质量和准确性。不同的提示技术适用于不同的任务和场景,合理选择和组合这些技术可以提高模型的性能和实用性。通过不断试验和记录,可以找到最适合特定任务的提示策略。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载