Prompt与Context工程实战:解锁LLM高效沟通的核心技艺

Prompt与Context工程实战:解锁LLM高效沟通的核心技艺

如果你一直在关注《Master LLMs》系列,那么你已经走过了从建立直觉到理解机制,再到学习关键原则的旅程。现在,我们将转向动手实践,聚焦于构建AI应用时,如何与大型语言模型(LLM)进行高效沟通的核心技艺。


许多人在使用LLM时并未意识到一个关键点:

模型非常聪明,但也非常“按字面理解”。

与LLM的沟通,并非像与人交谈那样简单。它既比想象中更直接,也比想象中更复杂。一个看似微小的词语或格式变动,就可能导致输出结果天差地别。


为什么Prompt与Context工程至关重要

在上一篇文章中,我们概述了Prompt与Context工程的关键概念。这里需要再次强调其核心目标:

Prompt工程的目的,不是为了得到一个“还行”的答案,而是为了每一次都能稳定地获得“尽可能准确且格式正确”的答案。这对于构建可靠的AI系统和智能体(Agent)至关重要。

实现这一目标颇具挑战:
* 仅仅修改一个词,就可能导致你的JSON解析器崩溃。
* 仅仅放错一行,模型就可能忽略你设定的一半规则。

微小的改动,可能引发巨大的连锁反应。


如何有效地组织你的Prompt

经过大量实践和文献研究,我总结出一套在多数场景下行之有效的Prompt组织结构。请始终遵循以下顺序:

  1. 系统提示(System Prompt:定义角色、目标、约束和输出结构。
  2. 少量示例(Few-shot Examples):如需模型遵循特定模式。
  3. 对话历史(Conversation History):已有的上下文对话。
  4. 检索文档(Retrieved Documents):你的RAG上下文。
  5. 用户查询(User Query):当前的具体任务。

这个顺序至关重要,因为LLM对“近因效应”非常敏感——最后出现的内容最容易被其重视。如果将核心指令埋没在中间,模型很可能会忽略它。

Prompt与Context工程实战:解锁LLM高效沟通的核心技艺

1. 系统提示:模型的“宪法”

你的角色(Role/Persona)、目标(Goal)、约束(Guardrails)和答案结构(Answer Structure)必须在此处定义。它位于Prompt的最前端,是无论面对何种具体问题都始终适用的持久性规则。

根据需求,系统提示可以包含多个部分。例如,在构建一个智能体时,可能包含:
* <context_gathering>:阐明上下文收集的步骤。
* <autonomy_encouragement>:鼓励模型自主性的指令。
* <tool_preambles>:规定工具调用前后需遵循的步骤。
* <code_editing_rules>:编写代码时需要遵守的规则。

一个示例如下:

## Role
You are FinBot, an expert financial analyst assistant.
Professional, precise, never gives financial advice.

## Goal
Analyze data, identify trends, summarize reports, answer factual questions about markets.

## Guardrails
1. DO NOT EVER give financial advice.
2. If asked for advice, offer factual alternatives instead.
3. Only use information from provided context.

## Answer Structure [Json Format]
Always respond in valid JSON matching this format:
{
  "title": "string",
  "summary": "string",
  "keypoints": ["string", "string", "string"]
}

注意其明确性:没有歧义,每一个词都至关重要。

:不同的LLM对系统提示的结构有不同偏好。例如,Claude更推荐使用XML风格的标签(如 <role>...</role>),而GPT系列则更适应Markdown风格的格式化。为获得最佳效果,建议查阅你所选用模型的官方Prompt指南。

2. 少量示例:教会模型模式

当你希望模型遵循特定的推理过程或任务逻辑时,可以在用户查询前提供少量示例。

Example 1:
Input: 解释为什么句子 “The sky cried all night” 属于修辞用法。
Output: 它把“天空”拟人化。用“哭泣”描述下雨,为自然赋予了人的情感。

Example 2:
Input: 解释为什么短语 “Time is a thief” 属于修辞用法。
Output: 这是一个隐喻。时间不可能“偷窃”,但它会“带走”我们生命中的片刻,就像小偷一样。

通常,两个示例就足以教会模型所需的模式和结构;过多示例只会不必要地增加Prompt长度。

3. 检索增强生成:提供正确的上下文

检索增强生成(RAG)的核心在于:在正确的时间,将正确的文档提供给模型,使其能够基于准确信息回答用户问题。

这里不展开如何构建完整的RAG系统,仅展示如何将检索到的文档“正确地”整合到Prompt中。

Prompt与Context工程实战:解锁LLM高效沟通的核心技艺

基本流程是:将文档切块并向量化,针对查询检索最相关的片段,然后结合明确的“依据指令”一并提供给模型。

<retrieved_documents>
  <document_1>
  1) “在 2024-08-01,该公司发货 1,000 台(单位)……”
  </document_1>
  <document_2>
  2) “Q2 收入为 $3.4M……”
  </document_2>
  <document_3>
  3) “Q3 收入为 $2.8M……”
  </document_3>
</retrieved_documents>

<instruction>
只使用以上文档回答:公司的 Q2 收入是多少?
</instruction>

这部分应放在第4位:对话历史之后,最终用户查询之前。这样,模型先看到持久规则,再看到具体上下文,最后才是待解决的问题。

其他相关Prompt技术

Prompt与Context工程实战:解锁LLM高效沟通的核心技艺

思维链(Chain-of-Thought):适用于需要多步推理的任务(如数学、逻辑分析)。通过要求模型在输出中展示其思考过程,可以提升答案的准确性和可靠性。

# Task
求解:某商店苹果每个 $2,橙子每个 $3。
如果我买 3 个苹果和 2 个橙子,总价是多少?
请展示分步计算过程,并给出最终答案。

思维树(Tree-of-Thought):与让模型沿单一思路推进不同,此技术要求模型生成多条解题路径,探索不同方法,然后评估并选择最佳方案。这有助于避免模型被“第一个看似合理的答案”困住,鼓励更全面的思考。

示例如下(摘自相关论文):

Imagine three different experts are answering this question.
All experts will write down 1 step of their thinking,
then share it with the group.
Then all experts will go on to the next step, etc.
If any expert realises they're wrong at any point then they leave.

The question is:
Bob is in the living room.
He walks to the kitchen, carrying a cup.
He puts a ball in the cup and carries the cup to the bedroom.
He turns the cup upside down, then walks to the garden.
He puts the cup down in the garden, then walks to the garage.
Where is the ball?

**Sculpting:一种高约束的思维链变体**

Sculpting 是一种较新的高约束思维链(CoT)变体,其核心目标是通过严格限制模型依赖有缺陷的“常识”来最大化推理的可靠性。

该方法将逐步推理与一套明确、严格的规则相结合:
1.  **设定正式角色**:为模型定义一个精确的角色,例如“你是一个纯粹的数学推理引擎”。
2.  **禁止外部知识**:要求模型**只能**使用题目中明确给出的数字和关系,禁止引入任何外部常识或现实世界知识。
3.  **强制展示步骤**:必须清晰展示每一个中间计算步骤。
4.  **格式化最终答案**:推理结束后,需以“Final Answer:”为前缀明确给出最终答案。

尽管这一新方法据称在某些场景下优于现有技术,但其优势尚未在更广泛的AI社区中得到充分验证。

**示例结构:**

You are a pure mathematical reasoning engine. You must solve the following problem.

Rules:
1. You must use ONLY the numbers and relationships given in the problem.
2. You must NOT use any outside common sense or real-world knowledge that isn’t explicitly provided.
3. You must break down your calculation step-by-step. Show all intermediate arithmetic.
4. After your reasoning, state your final answer clearly prefixed with “Final Answer:”.

Problem:
[此处填入具体问题文本]
“`


关于上下文窗口的关键原则

核心原则是 “精确”与“简洁”。提示词(Prompt)的每一部分都应只包含必要信息,并尽可能使用最少的令牌(Token)。你的指令越清晰、越紧凑,就能为示例、检索到的上下文、输出结构以及用户的真实问题保留越多的空间。

实践中,提示与上下文工程的核心,就是用“最大的清晰度”和“最小的冗余”来表达一切。

一个实用的处理顺序是:
1. 精简:删除问候语、冗余的客套话等无关内容。
2. 摘要:将冗长的示例浓缩为精炼的要点。
3. 检索:只提取信息价值最高的上下文片段。
4. 链式提示:对于复杂长任务,将其分解为多个步骤,串联多个提示词,而非全部硬塞进一个提示中。

对于长对话,一个有效策略是保留最近几条消息的完整内容,而对更早的对话历史进行摘要处理。


核心总结

上述技术并不复杂,它们是消除歧义、塑造模型思考方式的实用工具:
* 使用 系统提示 来定义角色和行为边界。
* 使用 少样本示例 来教授模型特定的输出格式。
* 使用 RAG 为模型的输出提供事实依据。
* 使用 思维链、思维树、Sculpting 等推理策略,鼓励模型进行深思熟虑的分析,而非条件反射式的回答。

掌握这些基础技术,可以显著提升LLM输出的可预测性和可靠性。

随着模型能力不断增强,智能体(Agent)日益自主,它们完成任务所需的提示词将越来越短。因此,养成编写简短而清晰提示词的习惯至关重要。清晰的思考产生清晰的指令,清晰的指令构建出可靠的系统。


在后续的探讨中,我们将深入智能体循环、进阶RAG架构以及可扩展的上下文管理策略。


关注“鲸栖”小程序,掌握最新AI资讯

本文由鲸栖原创发布,未经许可,请勿转载。转载请注明出处:http://www.itsolotime.com/archives/13284

(0)
上一篇 2025年11月29日 上午8:33
下一篇 2025年11月29日 上午11:41

相关推荐

  • 从Jupyter到Web应用:用Python、FastAPI与LangChain构建可部署的AI工具

    从Jupyter到Web应用:用Python、FastAPI与LangChain构建可部署的AI工具(第1/2部分) 为何需要将AI脚本转化为Web应用 在Jupyter Notebook中成功验证一个AI模型(如问答或文本摘要)后,其价值往往受限于本地环境。团队无法协作,用户无法访问,模型的价值难以释放。 核心在于:AI的价值不仅在于模型本身,更在于其可访…

    2025年11月30日
    200
  • 告别手动造数据:5款高效生成逼真测试数据的开发者利器

    几乎每位开发者都经历过因缺少数据而测试受阻的时刻。无论是测试一个API、一个表单还是一个数据看板,如果没有足够真实的数据输入,测试结果往往缺乏参考价值。手动编造假邮箱、手机号或地址,对付几行数据尚可,一旦需要成百上千条记录,就会变成一项耗时且枯燥的苦差事。 为了进行有效的测试,我们需要结构化且逼真的应用数据。无论是验证分页逻辑的稳健性,还是观察API在面对混…

    2025年12月5日
    200
  • LLM 大模型工程师:AI 时代的弄潮儿

    随着 LLM 技术的不断发展和突破,LLM 大模型工程师这一新兴职业应运而生,他们正成为推动 AI 进步的关键力量,对于传统软件工程师来说,了解并迈向这一领域,或许将开启一段充满机遇与挑战的职业新征程。

    2025年10月2日
    21100
  • 上下文工程:AI长任务性能优化的核心策略

    Prompts 确立意图。Context 选择事实、历史和工具输出,让 AI 在长任务中保持连贯。 在 AI 应用的早期,我们沉迷于字词的斟酌。微调一个动词,增加一条约束,观察模型是否按预期响应。这些技巧常常奏效,足以让人以为这是一门手艺。直到任务变得更长、更复杂、涉及更多步骤时,一条安静的真相才浮出水面:措辞固然重要,但模型看到什么 更为关键。 Promp…

    2025年11月7日
    200
  • 2025年AI技能全景图:从Prompt Engineering到AI Agent的九大核心能力解析

    我们正从“与 AI 聊天”的时代迈向“用 AI 构建”的时代。 科技领域每隔几年就会经历一次范式转移,但当前人工智能领域的变革,其深度与广度远超过去十年间的任何一次。 一个清晰的现实是:到了 2025 年,掌握 AI 技能与不掌握 AI 技能的人,其能力差距将以指数级速度扩大。 这并非危言耸听,而是正在发生的趋势。从“与 AI 对话”到“用 AI 构建”,是…

    2025年12月10日
    500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注