“Prompt(提示词)” 是大语言模型(LLM)交互中的核心概念,可以理解为:
你输入给 AI 的指令、问题、信息或上下文内容,用来引导它生成你想要的结果。
Prompt 就像是和 AI 对话时你说的话,或者是你给它布置的一道题。
比如你说:
请写一首关于月亮的五言诗
这句话就是 Prompt。AI 会根据这句话生成一段文字(比如一首诗)。
类型 | 示例 |
---|---|
❓ 问题 | “什么是量子力学?” |
✍️ 指令 | “写一个 Python 函数判断素数” |
📝 内容补全 | “Once upon a time, there was a…” |
💬 对话上下文 | 用户/助手多轮聊天内容 |
📄 系统提示(system prompt) | “你是一位严谨的法律顾问,请只用中文回答。” |
🧱 模板 | “给我一份包含 {食材} 的三菜一汤菜单。” |
特性 | 描述 |
---|---|
📌 上下文依赖 | 模型会根据你之前说的内容来生成下一句 |
🧠 越明确越好 | 明确、具体的 prompt 会生成更准确结果 |
🔁 可迭代优化 | 多次尝试和调整 prompt 可以显著改善结果 |
🧩 可结构化 | 可以把 prompt 拆成多个组件(见 MCP、Chain of Thought) |
随着 LLM 变强,人们发现:
精心设计的 Prompt 能显著提升模型表现!
于是出现了一门新技能:Prompt Engineering(提示工程)
典型技巧包括:
Prompt 不佳 | Prompt 优化后 |
---|---|
写一篇文章 | 写一篇关于 AI 在教育行业应用的 500 字中文文章,包含 3 个具体例子 |
解释概率 | 用小学五年级能懂的语言,解释什么是概率,并举两个生活中的例子 |
Prompt 就是你与大语言模型交流的“语言”,它决定了模型能不能理解你、帮你完成任务。
当然可以!System Prompt 和 User Prompt 是大语言模型(如 ChatGPT)内部最常用的两种提示类型,它们在对话中扮演着不同的角色。下面为你详细解释:
System Prompt 是在对话开始前,由系统提供给模型的“角色设定”或“行为指令”,用于告诉模型**“你是谁”、“你该怎么说话”、“你的语气/身份/规则是什么”**。
你是一个专业的法律顾问,只能使用简洁的中文回答用户的问题,不允许虚构法律条文。
User Prompt 是用户在每一轮对话中输入的内容,也就是你平时在聊天框里打的文字。
帮我写一份辞职信,语气要礼貌但坚定。
类型 | 示例内容 |
---|---|
🧠 System Prompt | 你是一个经验丰富的厨师,请只用简洁的中文回答,并附上具体食材用量。 |
🙋♂️ User Prompt | 我想做一道番茄炒蛋,能给我一份详细做法吗? |
模型最终就会用“厨师身份 + 简洁中文 + 有食材细节”的方式来回答你:
【番茄炒蛋做法】
食材:
- 鸡蛋 3 个
- 番茄 2 个
- 盐 1/2 茶匙
- 糖 1/2 茶匙
- 油 适量
步骤:
1. 鸡蛋打散,加少许盐调味。
2. 番茄切块备用。
3. 热锅倒油,炒蛋至刚熟取出。
4. 重新加油炒番茄,略出汁后加糖调味。
5. 倒入炒蛋,翻炒均匀即可。
项目 | System Prompt | User Prompt |
---|---|---|
谁写的 | 系统/开发者设定 | 用户输入 |
起始位置 | 对话开头或模型调用前 | 每一轮交互中 |
控制范围 | 模型行为、语气、角色 | 具体任务、问题或信息 |
是否可见 | 用户一般看不到(默认隐藏) | 明确输入,看得见 |
举例 | “你是一位医生” | “我的胃最近不舒服该怎么办?” |
如果你在用 OpenAI API(如 GPT-4 接口),你会看到这两类 prompt 是通过以下格式发送的:
[
{ "role": "system", "content": "你是一个乐于助人的AI助手" },
{ "role": "user", "content": "告诉我如何写一封道歉信" }
]
如果你有自己做 LLM 接入、或者用 LangChain / AutoGen 等框架时想设计 prompt,我也可以教你如何组合这些提示词以达到最佳效果 😊