AI大模型进阶系列(03) prompt 工程指南 | 实战核心技术有哪些?

本文涉及的产品
通义法睿合同智能审查,1个月8份合同免费体验
简介: 本文深入讲解了AI大模型中的prompt工程。文章分析了role角色(system、user、assistant)的意义,message多轮会话记忆机制,以及prompt的核心三要素(上下文背景、输入内容、输出指示)。同时介绍了多种提示优化技术,如少样本提示、CoT链式思考、prompt chaining链式提示、思维树ToT提示等,还展示了让AI生成提示词的方法,为实际应用提供了全面指导。

美国对全球贸易加征关税这件史诗级大事,对社会经济领域产生巨大影响,舆情的节奏也在加速震荡。一夜醒来,川建国给自己搞了个台阶,继续搞变脸戏法、实行延期大法,给软蛋们90天期限继续求他。而春江水暖鸭先知,这波震荡影响何时触底,静待相关靴子落地,仍需要一段时间。不管影响几何,闹剧何时休,本次全球经济增速减缓,大家最为看好最有潜力的增长引擎,还得是AI应用进步发展。


一、前言背景

二、message role 类型意义

2.1 role角色

2.2 message实现多轮会话记忆

2.3 prompt的核心三要素

三、prompt 提示优化技术

3.1 少样本提示

3.2 CoT(chain-of-thought) 链式思考提示

3.3  prompt chaining 链式提示-LLM的秘密

3.4 思维树ToT提示

3.5 其他prompt工程技术

四、巨人肩膀-让AI大模型生成提示词


一、前言背景

    随着大模型推理能力不断增强,日常普通的应用,普通输入就可以得到较好的响应。然而在商业应用实践,对结果的确定性、专业性、稳定性等方面有极高的要求,极致的AI体验将是研发目标。

    因此,研发人员在AI大模型应用实践过程中,无法避开高阶的prompt engineering。prompt涉及的内容非常多,模型参数、prompt的设计、样本提示、RAG、工具引用、响应要求、合规伦理要求等都需要考虑。今天我们尽可能整理分享实践过程中非常核心且实用的要点供大家参考。

二、message role 类型意义

    在系列1 prompt部分,已经介绍过模型参数temperature、top_p、响应最大token数max length、频率惩罚frequency penalty参数、惩罚Presence Penalty等参数。

    模型参数配置完成后,开始向大模型输入内容。每条内容由role+content组成。比如通过deepseek api,让大模型生成一个五子棋游戏的demo传参:

2.1 role角色

     role角色它有三个可选值:

system:表示系统指令,通常用来传达开发者定义好的核心指令,用于当前会话,比如让大模型扮演角色的要求定义,以及控制会话行为、风格、任务,让大模型输出具有稳定性和适应特定任务的案例。但通常为非必须,此外也考虑避免注入指令攻击,影响大模型稳定性。

user: 表示用户输入的内容,通常直接作为用户消息的prompt。目前我们所输入的prompt 内容,都是在这个role=user的content内容里。在不应用system role情况下,在特定垂直领域场景通常在prompt锲入指定角色定义,帮助大模型识别任务角色定义。比如在prompt里开头(也就是用户输入内容之前)增加一段【你是一名xx人员,客户回答xx问题,采用xx风格,提供xxx信息】,然后再拼接用户输入内容,提交到大模型提问。此外,还可以在这里增加其他上下文信息,以及响应输出的要求。

assistant:是大模型回答返回的内容。

    比如这个demo,大模型返回:

2.2 message实现多轮会话记忆

     大模型会话请求调用是没有状态的,比如当前会话,最开头你告诉大模型你的名字,经过多次对话后,大模型依然记得你的名字,是因为背后的请求默认将messages上下文拼接发送给大模型。比如deepseek的多轮会话demo:

      第二次提问最终提交给deepseek api的message就是:

2.3 prompt的核心三要素

       面对较为复杂的任务场景,完整的提示词通常包括上下文背景、输入的内容、输出的指示。

上下文背景:通过介绍任务背景、相关上下文、样本案例信息,帮助大模型更专注处理响应任务。上下文越具体,数据和任务越相关,模型响应效果越好。

输入的内容:一般特指用户输入的原文内容。

输出指示:对大模型响应内容的要求、格式、字数限制等。

      围绕这三要素,出现很多prompt优化技术,但更多的是在上下文背景上进行深入探索实践,并为最近输出结果质量提高保障。

三、prompt 提示优化技术

      目前经过大量数据训练的LLM能够很好执行用户简单直接的prompt输入,当零样本提示效果不理想,我们可以通过给与少样本提示、或者RAG搜索增强、利用其他系统服务来给与足够上下文信息,获得理想AI效果。

3.1 少样本提示

      少样本提示,就是在真正提问之前,提供一段示例样本,供大模型推理参考。比如:

3.2 CoT(chain-of-thought)链式思考提示

      由于之前低版本的大模型推理能力相对较弱,面对一下复杂的算术、符号、常识的推理,即使提供少量样本提示,响应并不可靠和稳定。这时候可以提供CoT 链式思考,让大模型学习正确的思维链去处理解决特定任务。

      链式思考提示,实际就是在少样本提示内容里,增加人类思考或者解决方案内容过程。

      比如算术推理题,在prompt里给了思考推理模板,最终大模型也参考改思维链去推理,得到正确答案:

而对于普通的算术推理,目前的deepseek可以自行思考,最终给出正确的推理答案。

      链式思考提示,里面又有零样本CoT提示、自动思维链Auto-CoT提示。

零样本的CoT,简洁到不提供思考样本,只在问题末尾新增一句话:【xxx,让我们逐步思考 or 请一步一步地思考,or let us think step by step】。

自动思维链,面对复杂任务的时候,会先将问题分类,然后选择具有代表性的问题,通过使用零样本CoT提示,去生成推理链。

3.3  prompt chaining 链式提示-LLM的秘密

     在一些复杂任务场景,比如文档总结、摘要提取、文章引用等任务,我们要求知道大模型结果响应的依据,prompt chaining就是一个很实用的技术。

     链式提示核心主要分两步,第一步分解任务,第二步根据子任务去构建最终的提示prompt。

     比如知识库AI,基于已有的文档或者私域数据进行回答问题。prompt的设计,就可以分两步:

1、【你是一个百科全书助手,你的任务是根据知识库回到问题。第一步从知识库里提取与问题相关的知识作为引文,请用'括起来引文列表。】

2、根据第一步得到的引用列表(xx具体引文列表),和原始知识库,对用户xx输入问题进行回答,请xx..

     链式提示背后实现,就好比大模型的思考的秘籍,可以减少幻觉,提高结果的可解释性。这个链式提示,和现在的RAG实现思路有异曲同工之妙。

3.4 思维树ToT提示

     对于需要深度探索、预测分析、推理计算设计的复杂任务,传统提示技巧难以得到满意响应。思维树tree of thoughts框架提示,引导AI模型把思维作为解决复杂问题的中间步骤,让大模型可以对自己的推理过程进行评估调整。

     思维树的核心原理,本质是通过多轮对话搜索形式,增强LLM解决问题的能力。而每一轮对话,都进行评估,并向前尝试验证局部解,并抽样得到评估结果,通过多轮探索继续向前或者回溯验证,得到最终结果。

       对于ToT提示法,hulbert将ToT的框架概括成了一段简短的提示词,可以直接参考指导LLM在推理过程对中间思维进行评估:

【假设三位不同的专家来回答这个问题。

所有专家都写下他们思考这个问题的第一个步骤,然后与大家分享。

然后,所有专家都写下他们思考的下一个步骤并分享。

以此类推,直到所有专家写完他们思考的所有步骤。

只要大家发现有专家的步骤出错了,就让这位专家离开。

请问...】

3.5 其他prompt工程技术

      在AI大模型实践过程中,除了直接在prompt输入进行优化,最终目标都是引导LLM向人类专家智脑一样解决复杂问题。而专家解决问题的方式有非常多种,这也就可以衍生非常多种prompt工程框架。

      比如RAG、function call、React、ART等技术。

四、巨人肩膀-让AI大模型生成提示词

      在AI时代,一切都可以AI。prompt提示工程方法框架众多,如果自己的选择和尝试没有得到理想结果,我们还可以让大模型帮我们生成多个提示词,并从中评估选择最优提示词模板,解决业务问题。

      比如deepseek 提供一个提示词生成demo案例:


推荐阅读拉丁解牛相关专题系列(欢迎交流讨论):

1、JVM进阶调优系列(3)堆内存的对象什么时候被回收?

2、JVM进阶调优系列(2)字节面试:JVM内存区域怎么划分,分别有什么用?

3、JVM进阶调优系列(1)类加载器原理一文讲透

4、JAVA并发编程系列(13)Future、FutureTask异步小王子

5、MySQL进阶突击系列(05)突击MVCC核心原理 | 左右护法ReadView视图和undoLog版本链强强联合

相关文章
|
3天前
|
人工智能 测试技术 计算机视觉
让AI看懂3小时长视频!Eagle 2.5:英伟达推出8B视觉语言模型,长视频理解能力碾压72B大模型
Eagle 2.5是英伟达推出的8B参数视觉语言模型,通过创新训练策略在长视频和高分辨率图像理解任务中超越更大规模模型,支持512帧视频输入和多样化多模态任务。
70 10
让AI看懂3小时长视频!Eagle 2.5:英伟达推出8B视觉语言模型,长视频理解能力碾压72B大模型
|
4天前
|
人工智能 自然语言处理 运维
让AI读懂K线图!ChatTS-14B:字节开源的时间序列理解和推理大模型,自然语言提问秒解趋势密码!
ChatTS-14B是字节跳动开源的时间序列专用大模型,基于Qwen2.5-14B微调优化,通过合成数据对齐技术显著提升分析能力,支持自然语言交互完成预测推理等复杂任务。
42 1
让AI读懂K线图!ChatTS-14B:字节开源的时间序列理解和推理大模型,自然语言提问秒解趋势密码!
|
3天前
|
机器学习/深度学习 人工智能 自动驾驶
让AI看懂图像每个像素!英伟达推出多模态大模型 DAM-3B:图像视频局部描述精度提升300%
英伟达推出的DAM-3B多模态大语言模型,通过创新的焦点提示技术和局部视觉骨干网络,实现了对图像和视频中特定区域的精准描述生成,为内容创作和智能交互领域带来全新可能。
68 0
让AI看懂图像每个像素!英伟达推出多模态大模型 DAM-3B:图像视频局部描述精度提升300%
|
1天前
|
人工智能 搜索推荐 API
AI赋能大学计划·大模型技术与应用实战学生训练营——华东师范大学站圆满结营
4月24日,由中国软件行业校园招聘与实习公共服务平台携手阿里魔搭社区共同举办的AI赋能大学计划·大模型技术与产业趋势高校行大模型应用实战学生训练营——华东师范大学站圆满结营。
21 0
|
13天前
|
人工智能 开发框架 安全
Serverless MCP 运行时业界首发,函数计算让 AI 应用最后一公里提速
作为云上托管 MCP 服务的最佳运行时,函数计算 FC 为阿里云百炼 MCP 提供弹性调用能力,用户只需提交 npx 命令即可“零改造”将开源 MCP Server 部署到云上,函数计算 FC 会准备好计算资源,并以弹性、可靠的方式运行 MCP 服务,按实际调用时长和次数计费,欢迎你在阿里云百炼和函数计算 FC 上体验 MCP 服务。
156 29
|
4天前
|
开发框架 人工智能 Java
破茧成蝶:传统J2EE应用无缝升级AI原生
本文探讨了技术挑战和解决方案,还提供了具体的实施步骤,旨在帮助企业顺利实现从传统应用到智能应用的过渡。
破茧成蝶:传统J2EE应用无缝升级AI原生
|
29天前
|
人工智能 数据可视化 API
36.7K star!拖拽构建AI流程,这个开源LLM应用框架绝了!
`Flowise` 是一款革命性的低代码LLM应用构建工具,开发者通过可视化拖拽界面,就能快速搭建基于大语言模型的智能工作流。该项目在GitHub上线不到1年就斩获**36.7K星标**,被开发者誉为"AI时代的乐高积木"。
140 8
|
19天前
|
存储 人工智能 监控
一键部署 Dify + MCP Server,高效开发 AI 智能体应用
本文将着重介绍如何通过 SAE 快速搭建 Dify AI 研发平台,依托 Serverless 架构提供全托管、免运维的解决方案,高效开发 AI 智能体应用。
2374 64
|
26天前
|
人工智能 API 计算机视觉
AI-ClothingTryOn:服装店老板连夜下架试衣间!基于Gemini开发的AI试衣应用,一键生成10种穿搭效果
AI-ClothingTryOn是基于Google Gemini技术的虚拟试衣应用,支持人物与服装照片智能合成,可生成多达10种试穿效果版本,并提供自定义提示词优化功能。
175 17
AI-ClothingTryOn:服装店老板连夜下架试衣间!基于Gemini开发的AI试衣应用,一键生成10种穿搭效果
|
30天前
|
机器学习/深度学习 人工智能 自然语言处理
多模态AI核心技术:CLIP与SigLIP技术原理与应用进展
近年来,多模态表示学习在人工智能领域取得显著进展,CLIP和SigLIP成为里程碑式模型。CLIP由OpenAI提出,通过对比学习对齐图像与文本嵌入空间,具备强大零样本学习能力;SigLIP由Google开发,采用sigmoid损失函数优化训练效率与可扩展性。两者推动了多模态大型语言模型(MLLMs)的发展,如LLaVA、BLIP-2和Flamingo等,实现了视觉问答、图像描述生成等复杂任务。这些模型不仅拓展了理论边界,还为医疗、教育等领域释放技术潜力,标志着多模态智能系统的重要进步。
166 13
多模态AI核心技术:CLIP与SigLIP技术原理与应用进展
下一篇
oss创建bucket