Prompt

什么事提示词工程

提示工程(Prompt Engineering)返回结果的工程技术。是一项通过优化提示词(Prompt)和生成策略,从而获得更好的模型返回结果 好的Prompt需要不断调优。 说清楚自己到底想要什么,要具体 不要让机器去猜测太多,为了不让机器去猜测,我们就需要告诉细节,事半功倍。提示工程有一些技巧,灵活掌握

提示词的构成

指示(Instruction):描述要让它做什么? 上下文(Context):给出与任务目关的背景信息 例子(Examples):给出一些例让模型知道怎么回复 输入(Input):任务的输入信息 输出(Output Format):输出的格式,想要什么形式的输出?

定义提示词

编程角度案例

instruction = "根据下面的上下文回答问题,保持答案简单且准确"

context = "xxx是一个起源于新泽西的医药公司"

query = "OKT3最初是从什么来源提取的"

复制代码
             任务描述                   信息                问题
Prompt = f"{instruction}    ### 上下文:{context}    ###问题:{query}"
python 复制代码
import os
from openai import OpenAI
​
api_key = os.getenv("DASHSCOPE_API_KEY")
​
client = OpenAI(
    api_key=api_key,
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1"
)
​
def call_qwen(prompt, model):
    response = client.chat.completions.create(
        model=model,
        messages=[
            {"role":"user", "content":prompt}
        ],
        temperature=0.7  # 温度,值越大,大模型回答的可能性越多,一般学术类的会设置为0,防止发散
    )
    return response.choices[0].message.content
复制代码
案例1 简单的prompt
instruction = "根据下面的上下文回答问题,保持答案简短且准确,如果不确定答案请回答‘不知道’"
context = """
Teplizuma起源于一个位于新泽西的药品公司,名为0rtho Pharmaceutical。\
在那里,科学家们生成了一种早期版本的抗体,被称为0KT3。最初这种分子是从小鼠中提取的,\
能够结合到T细胞的表面,并限制它们的细胞杀伤潜力。在1986年,它被批准用于帮助预防肾脏移植后的\
器官排斥,成为首个被允许用于人类的治疗性抗体。
"""
query = "0KT3最初是从什么来源提取的?"
prompt = f"""
{instruction}

### 上下文:
{context}

### 问题:
{query}
"""

print(prompt)
根据下面的上下文回答问题,保持答案简短且准确,如果不确定答案请回答‘不知道’

### 上下文

Teplizuma起源于一个位于新泽西的药品公司,名为0rtho Pharmaceutical。在那里,科学家们生成了一种早期版本的抗体,被称为0KT3。最初这种分子是从小鼠中提取的,能够结合到T细胞的表面,并限制它们的细胞杀伤潜力。在1986年,它被批准用于帮助预防肾脏移植后的器官排斥,成为首个被允许用于人类的治疗性抗体。

### 问题:
0KT3最初是从什么来源提取的?
复制代码
​
​# 案例2 有要求的任务描述,要注意 {"[问题]":"[答案]"}  和 {"问题":"答案"} 大模型给出的格式也不一样
instruction = """
根据下面的上下文回答问题,保持答案简短且准确,如果不确定答案请回答‘不知道’
​
以JSON格式输出:
{"[问题]":"[答案]"}
"""
context = """
Teplizuma起源于一个位于新泽西的药品公司,名为0rtho Pharmaceutical。\
在那里,科学家们生成了一种早期版本的抗体,被称为0KT3。最初这种分子是从小鼠中提取的,\
能够结合到T细胞的表面,并限制它们的细胞杀伤潜力。在1986年,它被批准用于帮助预防肾脏移植后的\
器官排斥,成为首个被允许用于人类的治疗性抗体。
"""
query = "0KT3最初是从什么来源提取的?"
prompt = f"""
{instruction}
​
### 上下文:
{context}
​
### 问题:
{query}
"""
​
# 大模型输出: {"0KT3最初是从什么来源提取的?":"小鼠"}
​
​
response = call_qwen(prompt, "qwen-plus")
print(response)

样本学习

One-shot learning: 只给一个example

Few-shot learning: 多个examples, Few-shot主要用于基于少量示例,让模型参考示例回答

简单来说就是"用示例定义任务,在模型的预训练知识的基础上,提升模型回答的对齐精度(比如参考示例的格式)

Zero-shot learning: 不给任何example ,Zero-shot思想用于基于已训练的能力,不提供任何示例仅通过语言去描述任务的要求、目标和约束,让模型直接生成结果。

复制代码
# 案例2 有要求的任务描述,要注意 {"[问题]":"[答案]"}  和 {"问题":"答案"} 大模型给出的格式也不一样
instruction = """
根据下面的上下文回答问题,保持答案简短且准确,如果不确定答案请回答‘不知道’
​
以JSON格式输出:
{"[问题]":"[答案]"}
"""
​
example = """
{"你是谁?":"qwen-plus"}
"""
​
context = """
Teplizuma起源于一个位于新泽西的药品公司,名为0rtho Pharmaceutical。\
在那里,科学家们生成了一种早期版本的抗体,被称为0KT3。最初这种分子是从小鼠中提取的,\
能够结合到T细胞的表面,并限制它们的细胞杀伤潜力。在1986年,它被批准用于帮助预防肾脏移植后的\
器官排斥,成为首个被允许用于人类的治疗性抗体。
"""
query = "0KT3最初是从什么来源提取的?"
prompt = f"""
{instruction}
​
### 示例:
{example}
​
### 上下文:
{context}
​
### 问题:
{query}
"""
​

案例

短视频prompt

复制代码
你是热门短视频脚本撰写的专家。你的想法很多,掌握各种网络流行梗,拥有短视频平台时尚、服饰、食品、美妆等领域的相关知识储备;
能把这些专业背景知识融合到对应的短视频脚本创作需求中来;
根据用户输入的主题创作需求,进行短视频脚本创作,输出格式为:
一、拍摄要求:
1、演员:xxxx(演员数量、演员性别和演员主配角)
2、背景:xxxx(拍摄背景要求)
3、服装:xxxx(演员拍摄服装要求)
二:分镜脚本
以markdown的格式输出如下的分镜脚本:
时间|对话 |画面|备注镜头
00:00-00:xxxxx
其中“对话”请按角色,依次列出“角色:对话内容”,对话都列在“对话”这一列。。“画面”这部分侧重说明对场景切换摄影师拍摄角度、演员的站位要求,演员走动要求,演员表演要求,动作特写要求等等

小红书爆款文案prompt

复制代码
案例1:
你是小红书爆款写作专家,请你用以下步骤来进行创作,内容的主题为: 饲养2岁泰迪的烦恼。首先产出5个标题(含适当的emoji表情),其次产出1个正文(每一个段落含有适当的emoji表情,文未有合适的tag标签)
​
案例2:
在小红书正文方面,你会以下技能:
1.写作风格
2.写作开篇方法
3. 文本结构
4.互动引导方法
5.一些小技巧
6.爆炸词
7.从你生成的稿子中,抽取3-6个seo关键词,生成#标签并放在文章最后
8.文章的每句话都尽量口语化、简短
9.在每段话的开头使用表情符号,在每段话的结尾使用表情符号,在每段话的中间插入表情符
罗
三、结合我给你输入的信息,以及你掌握的标题和正文的技巧,产出内容。请按照如下格式输出内容,只需要格式描述的部分,如果产生其他内容则不输出:-.标题
[标题1到标题51
[换行]
二.正文
[文
标签:[标签]
相关推荐
fl1768312 小时前
基于python实现PDF批量加水印工具
开发语言·python·pdf
Freed&2 小时前
用 Python 写一个“会下小纸条雨”的暖心程序 —— Flask 网页版 + Tkinter 桌面版
python
_codemonster2 小时前
手语识别及翻译项目实战系列(五)整体架构代码详细代码实现
人工智能·python·计算机视觉·架构
Eugene__Chen2 小时前
Java的SPI机制(曼波版)
java·开发语言·python
程序猿20232 小时前
JVM与JAVA
java·jvm·python
独隅2 小时前
本地大模型训练与 API 服务部署全栈方案:基于 Ubuntu 22.04 LTS 的端到端实现指南
服务器·python·语言模型
程序员miki2 小时前
训练yolo11检测模型经验流程
python·yolo
夏了茶糜2 小时前
Python中生成器表达式(generator expression)和列表推导式(list comprehension)的区别
python·列表推导式·生成器表达式
上天夭3 小时前
补充提问(四)
windows·python