文章目录
一、九类AI应用
AI+艺术:造梦日记、MidJourney、Stable Diffusion、Adobe、Stability、Remove
AI+聊天:ChatGPT、Discord、文心一言、Google Bard、星火、Character.Al
AI+社区:Kaggle、Hugging Face、H20、Github、Replicate、OpenCV
AI+创造:Heygen、RunwayML、Jasper、WriteSonic
AI+设计:Figma、Canva
AI+框架:PyTorch、Llamalndex、Auto GPT、Cafe、TensorFlow、LangChain、Keras、Google generativeAI+Developers、Fixie
AI+硬件:AMD、Nvidia、Hiascend
AI+效率:阿里通义、Notion、Zoom、Voice Al、Slack
AI+研究:Anthropic、Cohere、Al21、OpenAl
二、五个提示词技巧
- 技巧如You’re an expert in X;Explain step by step.
- 提供具体背景,甚至举例说明,如Here’s a list of requirements.
- 将相关上下文加载到内存:I’ll share my best writing first
- 鼓励LLM多点提问:Ask questions if you need more info
- 让LLM写多个方案,更好选择:Give me 3 variations
三、MidJourney的prompt使用举例
prompt 1:in the style of anime a giant floating chunk of land with a large japanese city on top with waterfalls coming off the side, surrounded by more floating rocks in the sky is flying msyterious animals the sun is shining warm and there is a valley below filled with lakes and cherry blossoms, booming with life
上面同样的prompt(改为chinese),在zpqy的cogview3上跑的结果:
prompt 2(中国风):in the style of anime a giant floating chunk of land with a large china city on top with waterfalls coming off the side, surrounded by more floating rocks in the sky is flying msyterious animals the sun is shining warm and there is a valley below filled with lakes and cherry blossoms, booming with life
prompt 3:medium size sunflower, 23 year old Chinese female, ((white cloth)),[dress],[[[shoulder exposure]]], black hair, ((drill hair)), in the center, (((medium length hair))), against a dark background, looking at the camera, ((smiling)), no obstructions, beautiful eyes, photo, (Side light), Fairy tale world, medium focus length, Nikon, 85mm, f/1.8, attention to detail
其他prompt:
positive prompt: 1girl,(solo:1.4),Ruffled blouse, cute, perfect face, laughing, offshoulder, corporate building, love, magical, romantic, joyous, unforgettable, passion, desire, devotion, bliss, forever, soulmate, forever, Cozy Ambiance, Warm Radiance, Gentle Coloration, <lora:Color Separation_B_1.1:0.7>
negative prompt: ng_deepnegative_v1_75t, (worst quality:2), (low quality:2), (normal quality:2), lowres, bad anatomy, normal quality, ((monochrome)), ((grayscale)), (verybadimagenegative_v1.3:0.8), negative_hand-neg,
param: Steps: 25, Sampler: DPM++ SDE Karras, CFG scale: 7, Seed: 4168117147, Size: 512x768, Model hash: e4a30e4607, Model: majicmixRealistic_v6, Denoising strength: 0.4, Clip skip: 2, ADetailer model: face_yolov8s.pt, ADetailer prompt: "compelling glances, tifa lockhart, <lora:tifaMeenow_tifaV2:0.6>", ADetailer confidence: 0.4, ADetailer dilate/erode: 4, ADetailer mask blur: 5, ADetailer denoising strength: 0.33, ADetailer inpaint only masked: True, ADetailer inpaint padding: 32, ADetailer model 2nd: hand_yolov8s.pt, ADetailer prompt 2nd: "beautiful hands, perfect hands", ADetailer negative prompt 2nd: " bad-hands-5, missing fingers", ADetailer confidence 2nd: 0.6, ADetailer dilate/erode 2nd: 4, ADetailer mask blur 2nd: 6, ADetailer denoising strength 2nd: 0.38, ADetailer inpaint only masked 2nd: True, ADetailer inpaint padding 2nd: 32, ADetailer version: 23.7.5, Hires upscale: 1.8, Hires steps: 15, Hires upscaler: 4x-UltraSharp, Lora hashes: "tifaMeenow_tifaV2: 5bf0b0cc76ca", Version: v1.4.0
比如上面的第一个生成图片如下,都非常逼真:
四、视频场景prompt
应用场景:短视频带货、小说推文、短剧、视频分成收益、虚拟数字人等
Sora文生视频,提前学习视频prompt提示词,快人一步打下基础
动画场景的特写是一个毛茸茸的小怪物跪在融化的红蜡烛旁边。
艺术风格是 3D 和现实的,重点是灯光和纹理。
这幅画的气氛是一种惊奇和好奇,怪物睁大眼睛、张开嘴巴凝视着火焰。
它的姿势和表情传达出一种天真和俏皮的感觉,就好像它第一次探索周围的世界一样。
暖色调和戏剧性灯光的使用进一步增强了图像的舒适氛围。
思考维度:
编号 | 主体部分 | 场景设置 | 视觉细节 | 动作与情感 | 技术与风格 |
---|---|---|---|---|---|
提示1 | 时尚女性 | 东京街道,充满温暖霓虹灯和动画城市标牌 | 黑色皮夹克、红色长裙、黑色靴子、太阳镜、红色口红 | 自信又随意地走路 | - |
提示2 | 毛茸茸的猛犸象 | 白雪皑皑的草地,积雪的树木和雪山 | 长长的毛茸茸的皮毛,午后的阳光 | 在风中轻轻飘动 | 低相机视角,美丽的摄影和景深 |
提示3 | 30岁太空人 | 蓝天、盐漠 | 红色羊毛针织摩托车头盔,色彩鲜艳 | 冒险经历 | 电影风格,35毫米胶片拍摄 |
提示4 | 海浪、崎岖悬崖 | 大苏尔加雷角海滩,太平洋海岸 | 蔚蓝的海水、白色的波浪、夕阳的金色光芒 | - | 无人机拍摄 |
五、结构化prompt框架
1. RTF框架
RTF(Role-Task-Format)
R-Role(角色):指定大模型担当固定角色(程序员、数据分析师、讲解员、记者等等)
T-Task(任务): 任务,告诉大模型需要为我们做的事情F-
Format(格式):大模型最终结果的返回格式(比如:表格、Markdown、英文等等)
# 数据源(与指令区分)
user_datasource = """XXX……"""
prompt1 = """分析一下在人工客服服务场景下,'''{user_datasource}'''中客户有哪些诉求。用一句话概括。"""
prompt2 = """分析一下在人工客服服务场景下,'''{user_datasource}'''中客户有哪些诉求。用一句话概括。让我们逐步思考。"""
# 模型输出结果
output1:在人工客服服务场景下,客户主要诉求为:微信账号存在安全风险导致无法添加好友、单点拦截、下载安装微信出现问题等,寻求客服协助解决问题。
output2:在人工客服服务场景下,客户主要诉求为:微信账号存在安全风险导致无法添加好友,以及因违规行为被限制登录,客户希望客服能够尽快处理这些问题。
# 分析结果
output1中的”单点拦截”并不是用户的诉求,而output2显然更加正确
2. RISEN框架
R-Role:大模型扮演的角色
I-Instructions: 指示命令,和Task-任务差不多
S-Steps: 步骤E-End
Goal: 最终目标
N-Narrowing(Constraints): 缩小范围(约束条件),和RTF框架中的Format有异曲同工之妙,一个是格式的约束,而这里的约束可以是任意方面,比如回答的内容(特定领域)、字数限制等等方面
3. 相关原则
(1)原则一:编写明确和具体的指令
策略1:使用分隔符清晰界定输入部分
在构建prompt时,使用分隔符将特定文本部分与提示的其他部分清晰隔开,能有效避免提示词冲突。任何能让模型识别出单独部分的符号都可作为分隔符,常见的包括:
- 章节标题:通过不同层级的标题区分不同内容模块。
- 三重双引号:
"""
,在代码编写中常用于包裹较长的文本字符串。 - 三重单引号:
'''
,功能与三重双引号类似,适用于不同的语法环境。 - 三重破折号:
---
,在文本中起到明显的分隔作用。 - 角括号:
<>
,常被用于标记特定元素。 - XML标签:,利用结构化的标签形式区分不同内容。
示例1:假设我们需要对一段产品描述进行总结,可通过如下方式使用分隔符:
product_description = f"""这是一款全新的智能手表,具备心率监测、睡眠追踪等健康功能,还支持多种运动模式记录,拥有高清显示屏和长达7天的续航能力。"""
prompt = f"""请总结以下产品描述:'''{product_description}'''"""
示例2:如果要让模型对一段用户评论进行情感分析,示例如下:
user_comment = f"""这款手机的拍照效果真的太棒了,色彩还原度高,夜景模式也很出色,唯一不足的是电池续航有点短。"""
prompt = f"""分析以下用户评论的情感倾向:''' {user_comment}''' """
策略2:要求结构化输出
为了便于后续对模型输出进行解析和处理,我们可以要求模型以特定的结构化格式输出,如HTML或JSON。这种方式能极大提高数据处理的效率,尤其是在Python编程环境中,结构化输出可直接读入字典或列表中,方便进一步的分析与操作。
示例 1:要求模型以 JSON 格式输出。
prompt = "请以json格式列出每个nodeType所体现的用户诉求、客服方案。每一个json-value不超过20个字"# 数据源(与指令区分)user_datasource = """XXX……""" # 模型输出{"IVR": {"用户诉求": "微信使用问题求助","客服方案": "引导正常使用或自助处理"},"ASYNC": {"用户诉求": "账号封禁等相关申诉","客服方案": "按规则处理或引导自助"},"AI": {"用户诉求": "支付相关问题咨询","客服方案": "要求用户详细描述问题"}}
示例2:以HTML格式输出一个简单的书籍。
prompt = "请以HTML格式列出三本你推荐的科幻小说及其作者。"# 模型输出<ul> <li>《三体》 - 刘慈欣</li> <li>《基地》 - 艾萨克·阿西莫夫</li> <li>《银河帝国:机器人五部曲》 - 艾萨克·阿西莫夫</li></ul>
其他:few-shot
(2)原则二:给予模型充足的思考时间
策略1:明确完成任务所需的步骤
逻辑清晰
示例:要求模型分析一首古诗,格式为“诗歌主题 - 主要意象 - 表达情感”。
poem = "床前明月光,疑是地上霜。举头望明月,低头思故乡。"prompt = f"""请按照“诗歌主题 - 主要意象 - 表达情感”的格式分析这首诗:{poem}"""# 模型输出思乡之情 - 明月 - 对故乡的深切思念
策略2:引导模型在得出结论前充分思考方案
明确指示模型在得出最终结论前,先进行充分的推理和分析,往往能获得更优的结果。有点ds r1的味道。
示例:问模型“如何提高公司的员工满意度”。
prompt = "在回答如何提高公司的员工满意度之前,请先思考至少三个方面的因素,然后综合这些因素给出全面的建议。"# 模型输出首先,从薪酬福利方面,可适当提高薪资水平、完善福利体系,如增加带薪休假天数等;其次,从职业发展角度,为员工提供更多培训机会和晋升通道;再者,从工作环境来看,营造舒适、和谐的办公氛围,加强团队建设活动。综合这些方面,提高公司员工满意度可以从优化薪酬福利、提供职业发展机会以及改善工作环境等措施入手。
4. 解决幻觉
可以要求模型在回答问题前,首先从给定文本中寻找相关引用,并依据这些引用来构建答这种方式
示例:给定一段关于历史事件的文本,要求模型回答相关问题。
text = """1861年,美国爆发了南北战争,这场战争是美国历史上的重要转折点,它主要围绕奴隶制的存废问题展开,北方主张废除奴隶制,南方则坚持保留。最终北方取得了胜利,为美国的工业化发展铺平了道路。"""prompt = f"""请从上述文本中找出相关信息,回答南北战争主要围绕什么问题展开?"""# 模型输出南北战争主要围绕奴隶制的存废问题展开,北方主张废除奴隶制,南方则坚持保留。
Reference
[1] 超详细的胎教级Stable Diffusion使用教程
[2]
My 5 Favorite AI Prompts for Writing: https://creatoreconomy.so/p/my-5-favorite-ai-prompts-for-writing
[3] 优Tech分享|大模型Prompt技巧全解析
[4] 9个最佳prompt框架:解锁LLMs无限潜力