LLM理论:Prompt基础

目录

什么是Prompt?

Prompt如何写?

举例:

常用提示技巧

角色扮演

[思维链(Chain-of -Thought,CoT)](#思维链(Chain-of -Thought,CoT))

小样本学习

任务分解

Prompt分类


什么是Prompt?

Prompt:是提供给大语言模型(LLM)的输入指令,可以包含任务、背景、约束和输出格式. LLM 会根据当前上下文生成后续 Token,输入没有说明任务边界、所需信息和结果形式时,模型会自行补全条件,输出易偏离。

Prompt如何写?

一个Prompt包括Role、Task、Context、Format. (代码评审、方案设计、复杂分析)应用场景

要素 作用 常见表述
Role(角色) 告诉模型该用哪个领域的知识和语气 "你是一位 10 年经验的 Java 架构师"
Task(任务) 说明要完成什么动作 "请评审以下代码的性能问题"
Context(上下文) 补充和任务相关的背景 "当前线上 QPS 2000,响应时间超 500ms"
Format(格式) 规定输出长什么样 "输出 JSON,包含 bottleneck、solution 两个字段"

举例:

java 复制代码
差 Prompt:
分析这段代码的性能问题,给出优化建议。

好 Prompt:
你是一位有 10 年经验的 Java 架构师(Role),擅长性能优化与代码评审。
请评审以下 Java 接口代码的性能问题(Task):
- 代码功能:用户订单查询
- 当前状况:线上 QPS 2000,响应时间超 500ms(Context)

输出需包含:
1. 性能瓶颈点(标注代码行号 + 问题描述)
2. 优化方案(附具体修改代码片段)
3. 优化后预期性能指标(输出 Format)

注:角色定义和格式要求分别放在输入两端,可以减少关键约束落在长上下文中部的风险。

常用提示技巧

角色扮演

角色设定用于约束模型采用的专业视角和表达方式。例如,"你是一位专注于性能优化的 Java 架构师"比"你是 AI"多出了领域和任务倾向。

思维链(Chain-of -Thought,CoT)

CoT 适用于数学计算、逻辑推理和多步骤分析等需要显式检查过程的任务

如:

ero-shot CoT 最简单,直接加一句"请给出关键步骤后再回答"。

复制代码
请分析这道数学题。80 的 15% 是多少?
请给出关键步骤后再回答。

复杂一点,可以用引导式 CoT,让模型在回答前先检查几个问题。

复制代码
在回答之前,先检查以下三个问题:
1. 这个问题涉及哪些关键变量?
2. 这些变量之间是什么关系?
3. 最终答案如何验证?

如果格式要求更严格,可以用 XML 标签把检查过程和最终答案分开。

复制代码
在 <checks> 标签中列出关键检查点:
<checks>
1. 关键变量:80 和 15%
2. 计算关系:80 × 0.15
3. 校验方式:结果 / 80 应等于 0.15
</checks>

在 <answer> 标签中给出最终答案:
<answer>12</answer>

小样本学习

当复杂任务或者格式严格的任务时,给 1-3 个示例,示例会告诉模型"输出应该长什么样"。

例如:

java 复制代码
请从文本中提取人名、年龄、职业,输出 JSON 格式。

示例:
输入:张三今年 25 岁,是一名软件工程师。
输出:{"name": "张三", "age": 25, "occupation": "软件工程师"}

现在处理:
输入:王芳 28 岁,是一名数据分析师。
输出:

任务分解

复杂任务可以拆成多个输入、输出都能单独检查的子任务。这样某一步出错时,可以定位到对应步骤,而不必重写整条任务链。

流程固定时,在任务开始前确定步骤即可;探索性任务则要根据当前结果决定后续动作。这两种方式分别对应静态分解和动态分解。

Prompt分类

对比维度 System Prompt User Prompt
用途 设定模型的长期行为规则、角色和输出边界 提交本轮要完成的具体任务和输入内容
内容 角色定义、语气风格、禁止事项、通用约束 任务目标、背景信息、待处理数据、输出要求
示例 "你是一位专注于性能优化的 Java 架构师,回答要简洁、给出可落地的建议。" "请评审以下代码的性能问题,输出 JSON,包含 bottleneck 和 solution 两个字段。"
注意事项 只放长期稳定的规则,避免把临时任务塞进来 只放本轮任务输入,避免把行为约束写进这里

简单来说,System Prompt 像"规矩",User Prompt 像"活儿"。把两者边界分清楚,模型才能既稳定地遵守规则,又准确地完成本轮任务。

相关推荐
一起学安全技术1 小时前
拆大模型 06|Prompt 工程不靠玄学:上下文要当程序写
人工智能·语言模型·prompt·aigc
Java后端的Ai之路2 天前
RAG 还是 Agent 自主检索?Claude Code 删掉向量库之后,我把选型讲透了
开发语言·人工智能·prompt·agent·rag
叼烟扛炮3 天前
[LangChain] 学习笔记(05):提示词模板(Prompt)与少样本注入(Few-Shot)实战
linux·人工智能·笔记·学习·langchain·prompt
积流成海4 天前
Agent演化史(九):多智能体的暗面,当一次 prompt 注入可以横向移动
prompt·agent·智能体·大模型应用
源于花海6 天前
LangChain学习:理解构建模块与核心组件
langchain·prompt·api·agent·模块与核心组件
AI技术新视界6 天前
LLM 提示词缓存(Prompt Caching)的秘密
人工智能·缓存·llm·prompt
XLYcmy6 天前
信息检索报告数字经济赋能城市低碳治理的路径研究——基于“传统数据库 + 生成式人工智能”双轮驱动的检索实践 检索实施与结果分析 Web of Science
数据库·ai·llm·prompt·ssci·deepseek·wos
看浪的路人7 天前
第3讲:Prompt 实验——如何科学地测试 Prompt 改动
prompt
前进的李工8 天前
Agent 学习笔记 05:系统提示词应该怎么写
笔记·学习·prompt·agent·个人开发·few-shot·ai应用开发