<think>在构思这篇文章的时候,我在考虑该从什么角度去阐述Prompt原理,首先要理解什么是Prompt,Prompt与大模型有什么关系,为什么大模型要做Prompt,怎样去做好Prompt提示词,带着这些疑问,我也浮现出曾经走过的弯路,吸取的教训以及总结的经验,希望能简洁、通俗而又带有启发的做一个有意义的分享!</think>
故事从这里开始
随着DeepSeek的火热,很多人都体验了和DeepSeek交互带来的便利,通过输入自己的问题,获得想要的结果,这个过程中有些人会觉得实实在在带来了方便,提问后分析过程,不仅让自己的思维更加开阔,让自己脑洞大开,但也有人觉得回答的和自己想要的天差地别,完全不是自己想要的答案,为什么同一个工具,有人觉得好,有人觉得不好,这里有个至关重要的原因,就是我们在提问时有没有精准的表达我们的意思,有没有让大模型更清楚的知道我们想要什么,如何让我们更好的表达,如何让大模型更深的理解,这就是我们不得不做的Prompt提示词工程。
一、Prompt几个疑问
1. 什么是Prompt
Prompt是用户根据自己的需求给AI大模型编辑的一段指令性文字,引导大模型生成预期的输出结果。
2. Prompt和大模型有什么关系
Prompt主要是对大模型发送指令和引导交互,通过精确的指令或结构化的语言引导大模型领会我们的意图,大模型将输入的文本进行分解,转化为向量表示,通过自然语言处理让计算机有更准确的理解,最大限度的符合我们的思想所表达的语义。
3. 为什么大模型要做Prompt
大模型存储积累了海量的数据,通过Prompt指令主要是为了引导模型理解用户意图,明确指令和结合上下文分析,快速的定位用户的需求,减少误差,给出针对性的解答,实践证明高质量的提示词能提高准确度,减少歧义内容。
4.为什么我们要了解Prompt工程?
- 减少无效沟通和反复试错的时间浪费,降低挫败感;
- 显著提升输出质量,获得更相关、更精准、更有创意的回答;
- 拓宽AI应用范围,能用AI完成更复杂、更定制化的任务;
- 提升个人竞争力,AI工具是必备技能,Prompt工程是基础。
二、Prompt的核心要素
1. Prompt原理
- 引导模型激活相关知识:
- 模型在训练过程中学习了海量的文本数据(书籍、文章、代码、对话等),形成了一个包含广泛知识和语言模式的庞大神经网络;
- 当你输入一个 Prompt 时,它本质上是在激活模型中与这个 Prompt 最相关的部分知识、模式和参数。
- 就像在搜索引擎输入关键词,Prompt 是给模型输入的“关键词+上下文+指令”,告诉它:“请调用与**相关的知识,以何种的方式,生成一个什么样的任务”。
给模型定义任务和输出,模型在收到指令后会明白需要做什么,比如:
- 回答问题: “最近火爆的大模型有哪些?”
- 生成文本: “秋天就要来了,帮我写一首带有秋风扫落叶的唯美意境古诗。”
- 段落翻译: “将以下英文句子翻译成中文:...”
- 文章总结: “用三句话总结这篇文章的核心观点和中心思想。”
- 代码生成: “写一个Python文件,调用电脑摄像头,实现人像的检测,输出属于哪一种情绪。”
- 扩展推理: “'好的事务都是缓慢到来的',继续完成后面的内容。”
- 赋予角色: “我的女朋友生气了,我想安稳好她,有什么好的方法和建议!”
一个明确而又不繁杂的Prompt,能极大地提高模型输出符合预期的概率。
- 提供上下文和约束:
- 参考背景:“比如代码生成时,可指定参考某一文件,或者基于某文章内容得出总结;或者秋天来了,创造关于秋天的诗句......”
- 格式要求:“代码生成可指定文件格式;内容生成可指定Markdown文档等”
- 模仿风格:“指定幽默风气的语气”、“专业严谨的学术语言”
- 长度限制:“回答100字以内”,“一段简短的模式”,“一首诗”
- 技巧方式:比如生成视频时"广角镜头缓慢推进,由远及近徐徐展现出山脉雪景.....",
2.提示词的策略
- 采用Cot(Chain-of-Thought) 显示的展示推理过程,要求模型在输出最终答案之前,明确要求它“逐步推理”、“展示思考过程”,跟着思路一步步得出结论,从而判断结论是否准确和符合预期。
- 提供 Few-Shot 参考示例,在给模型的提示中,包含几个输入-输出的示例,这些示例展示了你期望模型如何处理类似的任务(包括格式、推理步骤、风格等)。
例如在第一篇博文中我们指定让模型输出是属于正向还是负向:帮我判断产品表达的意思是正向还是负向,回复请用一个词语:正向 或者 负向
3.Prompt的主要类型
- 指令型:直接明了的知道要做什么,“输出滕王阁序全文以及说明创作背景”
- 问答型:为什么....;....是什么;
- 补全型:”月黑风高时,继续扩写,一个人走在黑夜的马路上“
- 创意型:给一个简单的故事情节,或诗句、文字内容输出一段文本
4.Prompt编写基本原则
- 清晰明确:避免使用不清楚、有歧义的语言,让任务更清晰
- 具体详细:落实细节,指明约束条件,场景具体化,风格要求等
- 上下文: 当任务需要特定视角或知识时,明确设定背景
- 输出要求: 明确希望答案以什么形式呈现(表格、JSON、Markdown等)
- 迭代优化:在结果欠缺的情况下,可以在上一次的指令上迭代,优化每次的输出
三、Prompt的应用场景
1.生成图片
简单版:一缕微黄的阳光洒下林间小路
精致版:铺满金黄、火红落叶的林间小径蜿蜒曲折,柔和的光束透过色彩斑斓的树冠洒下,形成梦幻的光柱,远处薄雾弥漫。逆光拍摄风格,温暖色调,秋日氛围浓郁,超真实细节。
总结:每一个Prompt都会生成结果,但什么样是符合预期,需要更细致的描述,提示词不同,结果差异也会很大。
参考:湿漉漉的青石板路反射着昏黄温暖的灯笼光芒,古色古香的建筑屋檐滴落雨滴,一把油纸伞在朦胧雨雾中渐行渐远。氛围神秘而浪漫,电影感构图,胶片质感。
2.生成网页代码
起初需要一个操作成功的弹窗提示,还没明确具体需要什么样式,打算看看生成出来的效果逐步优化:
step1:一个处理成功后的弹窗提示特效
step2:再多家一些文字内容和处理按钮
setp3:再加一个倒计时提醒10s后将自动关闭窗体
step4:在操作成功下面加一行有底色的特殊说明的文字
step5:再增加一段标题和大段文本的特别说明 整体宽度加宽
step6:右上角加一个关闭按钮
总结:在不清楚细节前,可以先输入简单指令,逐步迭代优化,达到预期的效果
3.生成视频
提示词:广角镜头缓慢推近,展现冬季雪山夜景,宁静祥和。月光洒在白雪覆盖的山峰上,冰冷的河水倒映着闪耀的星空,营造出梦幻而神秘的氛围。
超强提示词:(暮春时节的宋代沈园:一场穿越时空的惊鸿一瞥)
核心画面:
青石板小径在江南烟雨中泛着釉色水光,九曲回廊两侧垂丝海棠落英缤纷,池塘倒映着黛瓦粉墙与漫天绯云。陆游(四十岁模样)身着褪色青衫立于醉月亭,手持竹节杖凝望水面涟漪,眼角细纹盛满十年离殇。唐琬(三十许)穿着藕荷色对襟襦裙从葫芦门廊转角走来,云鬓微松簪着珍珠步摇,怀抱的琵琶柄端系着半旧同心结,抬眼时惊起廊下白鹭,裙裾拂过青苔的瞬间定格永恒。
光影特效:
夕阳穿过镂花窗棂形成丁达尔光柱,照亮空中旋转的海棠花瓣与雨丝,池面泛起星芒般的光点。采用浅景深镜头聚焦人物微表情,背景虚化的假山竹影呈现水墨晕染效果,人物衣袂纹理可见苏绣针脚与雨渍浸染的细节。
情感符号:
亭角风铃凝固在将响未响的姿态,石桌上半阙《钗头凤》墨迹未干,锦鲤衔着落花潜入深水。两人目光交汇处形成空气的波纹扰动,琵琶弦上凝结着晶莹水珠,陆游指节发白攥着未能送出的玉簪。
高级参数:
宋代院画美学结合4K电影级渲染,绢本设色质感与光学镜头感叠加,人物皮肤保有体温感与呼吸起伏,环境粒子效果包含2000万级花瓣/雨丝/光尘独立运算。色彩系统遵循宣和画谱色谱,动态范围覆盖暮光至烛光的17档亮度。
负面提示词:
现代物品、艳丽色彩、夸张表情、肢体接触、完满结局、晴空万里、对称构图、塑料质感、服装错误、字体显现、人群干扰、幸福氛围
最后,掌握Prompt工程能极大释放大型语言模型的潜力,让你更高效、更精准地获得所需结果。它是一个需要持续学习和实践的动态过程。