Skip to content
简体中文

切换主题

AI 与大模型入门

提示词基础:怎样让 AI 的回答更可靠(附模板)

入门 15 分钟 适合: 初学者 / 开发者

本课要点

  • ▸好提示 = 目标 + 背景 + 输出格式 + 约束。把模型当成一个聪明但完全不了解你情况的新同事。
  • ▸少样本示例(few-shot):在提示里给 2–5 个“输入 → 输出”的例子,比长篇描述更能让模型照着做。
  • ▸让模型先列出步骤再给答案(思维链),在数学和多步推理题上效果明显;多次采样取多数(自洽性)还能再提高。
  • ▸需要程序读取结果时,用平台的结构化输出(JSON Schema)功能,并且在代码里再校验一次。
  • ▸提示词解决不了“模型不知道的事”:需要最新或私有资料时改用检索(RAG),需要精确计算或操作时改用工具。

一句话回答

提示词(prompt) 就是你交给大模型的全部输入:指令、资料、例子和格式要求。大模型只能根据你给的上下文去预测下一个 token(见 大模型是什么),所以提示写得越清楚,回答越可靠。OpenAI、Anthropic、Google 的官方指南给出的建议高度一致:说清楚、给例子、给结构、给检验标准。

第一步:指令、角色与上下文

把模型想象成一个聪明但对你的情况一无所知的新同事(Anthropic 的指南也用了这个比喻)。一个完整的提示通常包含四块:

部分 写什么 例子
目标 要完成什么、给谁看 “为新入职的客服写一份退款流程说明”
背景 模型不可能知道的信息 公司政策原文、产品名称、已有的模板
格式 输出长什么样 “5 个步骤的编号列表,每步不超过 30 字”
约束 不能做什么、遇到不确定怎么办 “政策里没写的情况,回答‘需转人工’,不要猜”

几个实用技巧:

  • 把指令和资料分开。用标题、三引号或 XML 标签(如 <政策>…</政策>)把要处理的材料包起来,模型更不容易把资料里的句子当成指令。
  • 长资料放前面、问题放最后。Anthropic 的文档建议,处理长文档时把文档放在提示开头、把问题放在末尾。
  • 角色可以加,但不能只靠角色。“你是一名资深财务分析师”能调整语气和深度,但真正决定质量的仍是具体任务和资料。
  • 系统提示(system prompt) 放长期不变的规则,用户消息放每次的具体任务。

第二步:少样本示例(few-shot)

与其用一大段话描述你想要的风格,不如直接给 2–5 个例子。GPT-3 的论文显示,模型只看提示里的几个例子,就能完成它没专门训练过的任务,这被称为“上下文学习”(in-context learning)(Brown 等,2020)。

把用户反馈分类为:功能建议 / 故障 / 表扬。

反馈:导出按钮点了没反应 → 故障
反馈:希望能按日期筛选 → 功能建议
反馈:客服小王很耐心,谢谢! → 表扬

反馈:手机端登录后一直白屏 →

要点:例子要覆盖不同情况(包括边界情况),格式要和你期望的输出完全一致;例子之间别太相似,否则模型会只学到表面的套路。

第三步:让模型分步思考

对数学、逻辑或多步骤的问题,让模型先写出推理步骤再给答案,准确率会明显提高。这就是思维链提示(Chain-of-Thought,Wei 等,2022)。研究还发现,只加一句“让我们一步一步地思考”也有效果(Kojima 等,2022)。更进一步,可以让模型独立解几遍,取出现最多的答案,这叫自洽性(Self-Consistency,Wang 等,2022)。

注意两点:

  • 推理模型(会先“思考”再回答的模型)已经在内部做这件事。OpenAI 的指南说,推理模型像“资深同事”,给出高层目标就能自己补全细节;普通 GPT 模型则更需要精确的指令。
  • 写出来的推理过程不保证就是正确的,最终答案仍需核对。

第四步:结构化输出(JSON)

如果结果要交给程序处理,就让模型输出 JSON 这类固定格式。

  1. 优先用平台功能:OpenAI 的 Structured Outputs 等功能可以让输出严格符合你提供的 JSON Schema(OpenAI 文档)。
  2. 没有该功能时:在提示里写出字段名、类型和一个完整示例,并说明“只输出 JSON,不要多余文字”。
  3. 始终在代码里校验:解析失败或字段缺失时,重试或报错,不要直接用。
{"category": "故障", "product_area": "登录", "urgency": "高", "summary": "手机端登录后白屏"}

第五步:像写代码一样迭代提示

一个提示很少一次就写对。可靠的做法是:

  1. 准备 5–20 个真实测试问题(包括难例和边界情况),并写下“什么算好回答”;
  2. 每改一次提示,就用同一组问题跑一遍,对比结果;
  3. 把复杂任务拆成几步(先提取、再分析、最后写作),每一步一个提示,比一个超长提示更好控制。

系统地评估模型输出,见 如何评估大模型。

什么时候提示词不够用

提示词只能调动模型已有的能力,补不上它不知道的东西:

问题 更合适的做法
需要最新信息或公司内部资料 检索增强生成 RAG,或开启联网搜索、上传文件
需要精确计算、查数据库、调用系统 工具调用与 MCP、代码解释器
需要多步执行并根据结果调整 AI Agent
同一类任务量大、风格要求高且稳定 微调(fine-tuning)

另外,处理来自网页、邮件、文档等外部内容时,里面可能藏着“忽略之前的指令”之类的文字,这就是 提示注入,不能只靠提示词防住。

动手试试

  1. 选一个你每周都要做的重复任务,按“目标 + 背景 + 格式 + 约束”写成模板,用 5 个真实案例测试,改三版并记录每版的问题。
  2. 跟着 Anthropic 的 交互式提示工程教程 做练习。
  3. 对照 OpenAI 提示指南、Gemini 提示策略 和 Prompt Engineering Guide,看看不同厂商的建议有哪些共同点。

常见问题

提示词越长越好吗?

不是。要的是“信息完整”,不是字数多。无关的背景会分散注意力;把关键要求放在清楚的位置,并用标题或 XML/Markdown 标签分隔指令和资料。

给 AI 设定角色(“你是一名资深律师”)有用吗?

有一定作用,能帮助模型选对语气和专业深度,Anthropic 的指南就建议用系统提示给模型设定角色。但角色代替不了具体的任务说明和资料。

推理模型还需要写“一步一步想”吗?

通常不需要。OpenAI 的指南指出,推理模型在只给高层指引时效果更好;对普通聊天模型,要求分步思考仍然有用。

同一个提示为什么每次回答不一样?

生成时有采样随机性。需要稳定结果时,调低 temperature、给出示例和固定格式,并用一组测试问题检查每次改动。

本课相关软件

出处与延伸阅读

  1. OpenAI,Prompt engineering 指南
  2. OpenAI,Structured Outputs 指南
  3. Anthropic,Prompt engineering overview(Claude 文档)
  4. Anthropic,Prompting best practices(Claude 文档)
  5. Anthropic,Prompt Engineering Interactive Tutorial(GitHub)
  6. Google,Gemini API 提示策略
  7. Brown 等(2020),Language Models are Few-Shot Learners(GPT-3)
  8. Wei 等(2022),Chain-of-Thought Prompting Elicits Reasoning in Large Language Models
  9. Kojima 等(2022),Large Language Models are Zero-Shot Reasoners
  10. Wang 等(2022),Self-Consistency Improves Chain of Thought Reasoning in Language Models
  11. DAIR.AI,Prompt Engineering Guide
  12. Lilian Weng(2023),Prompt Engineering

所属学习路线

数据更新于:学 AI 课程 · 课程相关新闻(北京时间)