先说几个核心判断:想让 DeepSeek 精准输出技术方案、代码或文档,关键在于提示词是否清晰传达了你的需求,而不是模型本身的能力。每次结果偏离重点、遗漏关键约束、格式混乱——根本原因往往出在提示词的设计上。

以下从五个维度拆解优化技巧,每一环都提供可落地的实操细节。
明确角色:让 AI 清楚自己该以什么身份回答
提示词的第一句话就要定义 AI 身份,必须包含专业领域、经验年限和核心能力。例如写成“你是一位有 8 年经验的 Python 后端架构师,专注高并发微服务系统设计与性能调优”。
身份确定后,紧接一个“请”字引出具体任务。禁止使用“可以”“试试”“帮忙”这类弱指令词。应写成“请基于上述身份,分析以下 Django 视图函数的线程安全风险”,而非“你可以看看这个函数有没有问题”。
试想一下,如果不加角色限定,模型默认调用通用知识库回答,很容易混入初级建议或跨领域类比。加入具体角色后,【模型会自动抑制非相关领域的常识输出,激活对应参数层的知识权重】。
结构化拆解:将模糊需求转化为可执行步骤
有两种常用方法。第一种是用编号强制逻辑顺序:
1. 先识别输入数据中的关键字段(如用户 ID、时间戳、操作类型)→
2. 再判断每条记录是否满足异常行为定义(单日登录超 5 次且间隔<30 秒)→
3. 最后输出 JSON 格式结果,仅含 {"abnormal_user_ids": [...], "total_count": N} 两个键。
第二种是用符号分隔替代编号,更轻量:
● 输入:CSV 文件,含列名 user_id, event_time, action_type
● 处理:过滤出 action_type="login" 的记录,按 user_id 聚合 event_time,计算相邻登录最小间隔
● 输出:纯 JSON,无任何解释文字,字段名大小写严格匹配要求
操作细节:步骤之间不要空行,否则部分 API 会误判为段落分隔而截断上下文。
注入约束:用硬性条件限制 AI 的自由发挥
在任务描述末尾,单独起一行写“约束条件:”,后面跟上 3~4 条不可协商的要求。
必须写明输出格式,例如“必须输出为 Markdown 表格,表头为 |参数名|类型|必填|默认值|说明|”。
必须禁用模型惯用套路,例如“禁止使用‘可能’‘通常’‘建议’等模糊表述,所有结论需有代码/日志/标准依据”。
【当出现“请说明原因”类需求时,必须同步限定解释长度,否则模型会自动展开成 500 字小作文】
嵌入示例:用真实样本教会 AI 你要的“样子”
在提示词靠后位置插入一段「输入-输出」对照样例,格式直接写成:
【示例】
输入:{"product_id": "P9283", "price": 299, "stock": 0}
输出:{"status": "out_of_stock", "alert_level": "high", "next_check_hour": 14}
需要注意,这段示例要真实、简洁、无注释,且与你当前任务的数据结构完全一致。AI 会优先模仿这个格式,而不是自行发明新结构。
控制温度与长度:用参数收敛不可控变量
在调用 API 时,显式设置 temperature=0.3~0.5。数值高于 0.6 时,模型会主动补充背景、类比和延伸建议,很容易干扰核心输出。
同时必须指定 max_tokens 值,例如 max_tokens=384。如果不设上限,响应会拖沓,尤其在生成 JSON 或代码时容易在末尾多出换行或未闭合括号。
这一步操作很简单,在 Python 代码的 openai.ChatCompletion.create() 参数里加上这两项就行。
