从软件测试角度聊聊“Prompt / Context / Harness区别”

从软件测试角度聊聊"Prompt / Context / Harness区别"

  • [你可能在错误混用Prompt / Context / Harness](#你可能在错误混用Prompt / Context / Harness)
  • [Prompt Engineering ------ 「把话说好」](#Prompt Engineering —— 「把话说好」)
  • [Context Engineering ------ 「给对信息」](#Context Engineering —— 「给对信息」)
  • [Harness Engineering ------ 「把环境建好」](#Harness Engineering —— 「把环境建好」)
  • 用测试思维类比这三层

你可能在错误混用Prompt / Context / Harness

有这么一个真实且频发的场景:

Agent 在处理长任务时开始「遗忘」前面的步骤,把已经完成的事情重复执行了一遍。大多数团队的第一反应是:提示词问题。于是在 System Prompt 里加上「请注意不要重复执行已完成的步骤」。Agent 好了几天,又犯了。

再加一段更详细的指令,描述什么是「已完成」,什么是「待执行」。又好了一阵,又犯了,而且犯得越来越花样多。

最后提示词变成了一份 3000 字的规范,Agent 的实际表现却越来越混乱。

这种错误之所以如此普遍,是因为 Prompt Engineering、Context Engineering、Harness Engineering 这三层的边界给混用了。

Prompt Engineering ------ 「把话说好」

这是最基础的一层,也是大多数人接触 AI 的起点。它的核心工作是:用更好的措辞和结构,让模型在单次交互中给出更好的输出。

Few-shot 示例、Chain-of-Thought 引导、角色扮演、输出格式控制------这些都是 Prompt Engineering 的范畴。它的生效范围是一次请求,下一次请求它不认识你。

Prompt Engineering 能解决的问题:模型不理解你的意图、输出格式不对、推理步骤不够清晰。

Prompt Engineering 解决不了的问题:任务执行过程中的状态管理、错误恢复、跨步骤的一致性。

Context Engineering ------ 「给对信息」

当你意识到「给模型看什么」比「怎么问模型」更重要的时候,你就进入了 Context Engineering 的思维。

它的核心工作是:在有限的 Token 预算内,动态决定哪些信息应该进入上下文窗口,哪些应该被压缩或丢弃。RAG 检索、对话摘要压缩、相关记忆动态注入------这些都是 Context Engineering 的操作。

它的生效范围是一个上下文窗口。跨越了窗口边界,它就需要 Harness 来承接。

Harness Engineering ------ 「把环境建好」

这是最容易被忽视、也最容易被误解的一层。

Harness 不是「复杂的提示词」,也不是「高级的 RAG」。它是 Agent 的运行环境本身------工具的授权与执行、跨任务会话的持久化、任务失败的恢复逻辑、高风险操作的人工审批门、整个执行过程的可观测性。

如果说 Prompt 是「告诉 Agent 做什么」,Context 是「让 Agent 看到什么」,那么 Harness 就是 「确保 Agent 能在真实世界里可靠地把事情做完」。

用测试思维类比这三层

AI 工程层 测试工程对应 核心问题
PROMPT Prompt Engineering 指令优化层 测试用例设计 怎么写出一个好用例,清晰、完整、可执行 怎么把需求说清楚,让执行者准确理解意图?
CONTEXT Context Engineering 信息管理层 测试数据准备 前置条件、测试数据集、Mock 数据的准备与管理 执行前被测对象「喂」什么信息,才能让它做出正确的行为?
HARNESS Harness Engineering 运行环境层 测试框架 / 测试环境 JUnit、TestNG、CI 流水线、Mock Server、质量门控 用什么基础设施来保证测试能稳定、可重复、可追溯地运行?
相关推荐
VIP_CQCRE11 小时前
Claude 接入 Luma MCP:一句话让 AI 生成电影感短视频
ai·claude·mcp·luma·acedatacloud
Ai思想家11 小时前
私有化部署的服务器选型与容量规划
人工智能·安全·ai
aiqianji13 小时前
一键生成AI短篇小说的写作软件有哪些?
ai
鱼日先生15 小时前
Dify 中级实验(13):多 Agent 协作——如何编排多个智能体分工干活?
工作流·dify·ai agent·大模型应用·ai 训练
阿文和她的Key17 小时前
DeepSeek API 涨价背后的三层供给瓶颈
人工智能·ai
鬼手点金17 小时前
Hermes Agent vs OpenCode 异同
ai·ai agent·vibecoding·codingagent·opencode·hermes
xcLeigh17 小时前
编程语言的 AI 友好度排名:Python、JavaScript、TypeScript 谁更适合 AI 辅助
javascript·人工智能·python·ai·typescript·ai编程
wang_yb20 小时前
用递归消除法优化“特征子集”
ai·databook
维核科技20 小时前
Llama 3.3 vs Qwen2.5 vs DeepSeek-R1
ai·私有化部署·llama·大模型部署·私有化大模型部署
lifallen20 小时前
Emdash 拆解:多 Agent 并行开发桌面端的实现思路,兼谈 ACP 与 A2A
人工智能·学习·ai·ai编程