AI Agent白手起家13: DeepSeek提示词工程实战指南
📅 2026/8/2 6:15:29
👁️ 阅读次数
📝 编程学习
纲要
- 推理型模型的提示词新范式
- 与传统非推理模型的区别
- 核心原则:简洁、信任、聚焦目标
- 提示词撰写的四种模式
- 指令驱动
- 需求导向
- 混合模式
- 启发式提问
- 通用提示词公式
- 指令 + 上下文 + 输入 + 输出
- 按需求场景的分类提示词结构
- 决策需求
- 创造性需求
- 执行需求
- 分析需求
- 验证需求
- 新手必知的 10 个魔法指令
- 续写、简化、总结、解释、翻译、类比、润色、扩写、步骤、举例
- 组合使用技巧
- 代码实战:用 Python 调用 DeepSeek API 对比不同提示词策略
- 完整可运行代码
- 对比简洁提示与过度引导的效果
- 总结
推理型模型的提示词新范式
DeepSeek R1 这类推理型模型内置了强大的思维链(CoT)能力,因此它的提示词撰写方式与传统非推理模型存在显著差异。如果我们仍然沿用过去那套“手把手教模型思考”的方法,反而会限制其内置的推理能力。
核心区别:
| 方面 | 非推理模型提示词 | 推理型模型提示词 |
|---|---|---|
| 引导方式 | 需要显式分步指导、示例驱动 | 只需明确目标与需求 |
| 复杂度 | 可包含角色扮演、思维链模板 | 简洁直接,避免冗余引导 |
| 信任程度 | 输出需要多次验证 | 思维链透明,结果更可信 |
| 典型用法 | “你是一位专家,第一步…第二步…” | “请分析以下问题并给出方案” |
三大原则:
- 简洁至上:不必在提示词中构造
CoT过程,模型会自动生成结构化的推理步骤。 - 聚焦目标:清晰描述你想要的结果,而不是教它如何思考。
- 避免干扰:慎用角色扮演类的启发式提示(如“你是一位资深律师”),这类设定可能干扰逻辑主线。
提示词撰写的四种模式
针对 DeepSeek,有以下几种有效的提示词模式:
- 指令驱动:适合简单、快速执行的任务。
例:用 Python 编写快速排序函数,输出需要包含注释。 - 需求导向:适合复杂问题,让模型自主推理。
例:我需要优化用户登录流程,请分析当前瓶颈并给出三种改进方案。 - 混合模式:兼顾灵活性与可控性。
例:设计一个杭州三日游计划,必须包含西湖和灵隐寺,且预算控制在 2000 元以内。 - 启发式提问:适合探索性、需要解释逻辑的问题。
例:为什么在此优化问题中选择梯度下降法?请对比其他算法并说明理由。
选择哪种模式,取决于你对结果的可控性要求和任务的复杂程度。
通用提示词公式
无论何种场景,一个结构化的 DeepSeek 提示词通常包含四个要素:
- 指令:要做什么。
- 上下文:任务背景或领域信息。
- 输入:模型需要处理的具体数据。
- 输出:期望的格式(文本、表格、JSON 等)。
按需求场景的分类提示词结构
根据任务类型,可以进一步细化提示词结构:
| 需求类型 | 提示词结构要素 | 示例 |
|---|---|---|
| 决策需求 | 目标 + 已有选项 + 评估标准 | “我们需选择云服务商,选项有 AWS/阿里云/华为云,请从成本、延迟、合规三方面评估并推荐。” |
| 创造性需求 | 主题 + 约束条件 + 创新方向 | “请设计一种新的社交 App 的裂变增长策略,要求零广告预算,方向侧重游戏化邀请机制。” |
| 执行需求 | 任务描述 + 步骤约束 + 输出格式 | “用 Python 处理 sales.csv,计算每月总销售额,按月份降序输出为 Markdown 表格,禁止使用 pandas。” |
| 分析需求 | 问题 + 数据/信息 + 分析方法 | “根据过去三个月用户流失数据,用归纳法找出主要流失原因。” |
| 验证需求 | 现有方案 + 验证目标 + 风险点检查 | “以下微服务架构方案是否存在单点故障风险?请逐组件分析。” |
新手必知的 10 个魔法指令
DeepSeek 提供了一套以/开头的快捷指令,相当于内置的提示词模板,能极大提升日常使用效率:
| 指令 | 用途 | 示例 |
|---|---|---|
/续写 | 延续现有内容 | /续写 在上文基础上增加市场分析部分 |
/简化 | 将复杂内容通俗化 | /简化 下面这段技术白皮书 |
/总结 | 提炼长文核心要点 | /总结 这篇 5000 字调研报告 |
/解释 | 解释专业名词或概念 | /解释 什么是 Transformer 自注意力机制 |
/翻译 | 多语言互译 | /翻译 为英文:大模型驱动的智能体 |
/类比 | 用相似事物解释复杂概念 | /类比 解释 RAG,请用图书馆借书做类比 |
/润色 | 优化文本流畅度与专业性 | /润色 (这段产品文案) |
/扩写 | 丰富现有内容细节 | /扩写 第三段关于成本分析的论述 |
/步骤 | 分解复杂操作流程 | /步骤 在 AWS 上部署微服务 |
/举例 | 获取具体实例帮助理解 | /举例 高并发场景下的缓存策略 |
使用技巧:
- 指令可以组合使用,例如:
/总结 文章内容,然后 /续写 补充自己的观点。 - 在指令后添加具体要求,如
/翻译 为日语,保留敬语。 - 用括号
()明确作用范围:/润色 (第二段)。
这些魔法指令本质上是简化版的提示词模板,非常适合刚接触 DeepSeek 的用户快速上手。
代码实战:用 Python 调用 DeepSeek 对比不同提示词策略
下面提供一个可直接运行的 Python 脚本,通过 DeepSeek API 演示“过度引导”与“简洁指令”对推理模型输出质量的影响。脚本使用openai库调用 DeepSeek 的deepseek-reasoner模型。
准备工作:
- 安装依赖:
pip install openai - 前往 platform.deepseek.com 注册并获取 API Key。
importopenai# ================= 配置区 =================API_KEY="your-deepseek-api-key"# 替换为你的真实 API KeyBASE_URL="https://api.deepseek.com"MODEL="deepseek-reasoner"# 推理模型# ==========================================client=openai.OpenAI(api_key=API_KEY,base_url=BASE_URL)# 同一个问题,使用两种不同的提示词风格question="某公司需要从三个候选人中选拔项目经理,请给出决策框架。"# 提示词 A:过度引导(非推理模型习惯)prompt_a=("你是一位资深 HR 专家。请按以下步骤思考:""第一步,列出候选人评估维度;""第二步,为每个维度分配权重;""第三步,基于假设的数据打分;""第四步,综合排序并给出最终推荐。\n"f"问题:{question}")# 提示词 B:简洁聚焦目标(推理模型推荐方式)prompt_b=f"问题:{question}\n请提供一个可直接用于高管会议的决策框架。"# 调用 APIresp_a=client.chat.completions.create(model=MODEL,messages=[{"role":"user","content":prompt_a}],temperature=0.0,max_tokens=800)resp_b=client.chat.completions.create(model=MODEL,messages=[{"role":"user","content":prompt_b}],temperature=0.0,max_tokens=800)print("===== 提示词 A(过度引导)=====")print(resp_a.choices[0].message.content)print("\n===== 提示词 B(简洁指令)=====")print(resp_b.choices[0].message.content)运行预期:
- 提示词 A 虽然也能得到答案,但模型可能会受到人为框架的束缚,思维广度受限。
- 提示词 B 往往能给出更具创造性和实用性的框架,因为它完全释放了模型自身的推理潜力。
通过这种对比,你可以直观感受到推理模型下“少即是多”的提示词设计哲学。
总结
针对 DeepSeek 这类推理型模型,提示词工程的核心发生了转变:从“教模型思考”变为“信任模型的思考能力”。遵循简洁、聚焦目标的原则,灵活运用指令驱动、需求导向等模式,配合内置的魔法指令,可以显著提升交互效率与输出质量。
在实践中,建议先用简洁指令测试模型表现,如未达到预期再逐步补充上下文,而不是一上来就给出一套复杂的角色设定和步骤约束。
编程学习
技术分享
实战经验