最近一段时间,AI 圈有一个词越来越值得关注:Harness。
如果说前两年大家讨论的是大模型,去年讨论的是 Agent,那么现在,一个新的问题正在浮现:
当我们真的让 AI 去完成一项复杂工作时,究竟应该用什么机制管理它?
举个例子。
你让 DeepSeek 帮你分析一家公司,它可以阅读财报、总结行业信息、分析竞争格局,甚至给出一份看起来非常专业的投资研究报告。
但如果把它放到一家券商的真实投研环境里,事情就没那么简单了。
它能不能访问公司的内部研究报告?
能不能调用 Wind、Choice 或内部行情数据库?
能不能识别数据的更新时间和来源?
如果财务数据不一致,它应该相信谁?
如果它引用了一份过期的研报,谁来发现?
如果它给出的估值计算存在错误,谁来负责?
如果它准备将一份研究报告发送给客户,是否需要合规审核?
你会发现,问题已经不再是模型够不够聪明。
而是我们有没有一套完整的机制,让 AI 在真实业务环境中安全、可靠、可控地完成工作。
这就是 Harness 要解决的问题。
一、什么是 Harness?为什么最近越来越重要?
先用一个简单的例子解释。
假设我们招聘了一位非常聪明的研究员。
他有很强的学习能力,能够快速理解财报、阅读行业报告、分析宏观经济,也能写出不错的研究报告。
但是,公司不能因为他聪明,就直接让他进入所有数据库、随意使用所有资金、向客户发送任何信息。
公司还需要给他配备:
办公场所和电脑;
数据权限和业务系统;
工作流程和操作规范;
研究资料和知识库;
审核制度和授权机制;
工作记录和绩效评价;
出错后的纠正与追责机制。
这些东西共同构成了一个让员工能够真正开展工作的环境。
AI 也是一样。
大模型相当于一个拥有认知和推理能力的员工,而 Harness 则是围绕它建立的一整套工作运行环境。
Harness 不是一个更聪明的模型,而是让模型能够可靠工作的基础设施。
从工程角度看,Harness 通常包含以下几个部分:
Context:上下文管理,让 AI 知道自己在做什么。
Tools:工具体系,让 AI 能够调用外部系统。
Workflow:任务编排,让复杂工作有明确的执行步骤。
Policy:权限和规则,让 AI 知道什么能做、什么不能做。
State & Memory:状态和记忆,让任务可以持续推进。
Evaluation:评估机制,判断任务是否真正完成。
Observability:监控与审计,记录整个执行过程。
Human-in-the-loop:人工干预,在关键节点保留人的决策权。
这里要特别说明,Harness 并没有一个所有厂商都统一采用的标准定义。不同技术体系对它的边界划分可能不同。上面是从企业级 Agent 工程落地角度进行的一种归纳。
二、Harness 和 Agent、Workflow、RAG 到底有什么区别?
这几个概念经常被放在一起讨论,容易混淆。
我们分别理解一下。
1. 大模型(LLM)
负责理解、推理、生成内容。
例如,分析一家公司为什么毛利率下降。
2. Agent
让大模型能够根据目标自主规划任务,并调用工具完成工作。
例如,让 AI 自己决定先阅读财报,再查询行业数据,最后分析毛利率变化。
3. Workflow
负责把一系列任务按照预设流程组织起来。
例如:
财报获取 → 数据清洗 → 财务指标计算 → 分析 → 报告生成。
4. RAG
负责从外部知识库中检索相关资料,给模型提供可靠的知识依据。
例如,检索公司过去三年的财报、内部研报和行业资料。
5. Harness
负责把上述能力组织成一个完整、可控、可运行、可验证的工作环境。
它不仅关心 AI 能不能完成任务,还关心:
使用了什么数据?
调用了什么工具?
有没有越权?
是否遵守业务流程?
结果是否可信?
出错后能否恢复?
整个过程能否追溯?
所以,我更愿意把 Harness 理解为:
Agent 的运行时环境 + 工具与流程管理 + 权限控制 + 质量保障体系。
它不是简单地给 Agent 套一层提示词,也不是把几个工作流拼在一起。
它解决的是 AI 如何进入真实生产系统的问题。
三、如果给一家券商设计 Harness,应该从哪里开始?
接下来进入实战部分。
假设我们要为一家券商设计一个 AI 投研工作台。
目标不是做一个能够回答金融问题的聊天机器人,而是构建一套能够辅助研究员完成完整研究任务的 Agent 平台。
例如,研究员提出:
「帮我分析一下某家上市公司最近三个季度的经营变化,结合行业景气度、竞争格局和估值水平,判断当前市场预期是否合理,并形成一份研究报告。」
这看起来是一句话。
但背后其实包含十几个不同的工作任务。
第一步:建立统一的 Agent 运行入口
不要让每个业务部门自己开发一套 Agent。
应该先建立统一的 Agent Runtime(运行时)。
它负责:
接收任务;
识别用户身份;
加载用户权限;
分配模型;
加载对应的 Agent;
管理工具调用;
保存任务状态;
记录执行日志;
处理异常和中断。
可以把它理解为所有 AI 员工共同使用的基础运行环境。
例如:
研究员登录系统后,系统识别其所属部门、研究权限、数据访问范围,再决定可以使用哪些 Agent 和工具。
这里有一个非常重要的原则:
不能让 Agent 自己决定自己拥有什么权限。
权限必须由外部统一的身份和授权系统决定,Agent 只能在被授权的范围内执行。
第二步:建立 Context Engineering(上下文工程)
这是投研 Harness 非常核心的一层。
很多人认为给模型提供更多资料,它就会更聪明。
实际上,资料越多,不一定效果越好。
关键在于:在正确的任务阶段,提供正确的信息。
例如,研究员让 AI 分析一家上市公司。
系统应该根据任务自动组织上下文:
用户上下文
用户是谁;
所属研究部门;
负责什么行业;
可以访问哪些资料。
公司上下文
股票代码;
公司基本资料;
所属行业;
历史财务数据;
重要公告。
任务上下文
本次研究目标;
研究时间范围;
重点关注的问题;
已完成的工作;
尚未完成的工作。
证据上下文
财报原文;
公司公告;
行业数据;
历史研究报告;
市场行情。
执行上下文
当前执行到哪个步骤;
已经调用哪些工具;
哪些数据已经验证;
哪些问题等待人工确认。
这里建议采用分层上下文,而不是把所有资料一次性塞进 Prompt。
例如:
特别需要注意:上下文不等于记忆。
任务状态、长期用户偏好、知识库资料和本轮临时证据应该分开管理,不能全部混在一个对话历史里。
第三步:建立专业 Tool Registry(工具注册中心)
这是 AI 真正开始干活的关键。
投研领域有大量现成的专业工具:
Wind 数据接口;
Choice 数据接口;
财务数据库;
行情数据库;
公告检索;
研报检索;
新闻资讯;
Python 计算环境;
Excel 处理工具;
估值模型;
内部知识库。
不建议把这些工具直接写死在某一个 Agent 里面。
而应该建立统一的工具注册中心。
每个工具都应该有明确的定义:
这里还有一个设计原则:
让模型负责选择工具,但不要让模型负责定义工具的权限。
工具注册中心必须掌握工具的真实调用权限、参数校验和执行边界。
例如,AI 可以查询某家公司的财务数据,但不代表它可以访问所有内部客户数据。
第四步:建立 Workflow Orchestration(工作流编排)
这是将一个复杂研究任务拆解成可执行步骤的地方。
我建议券商投研不要完全采用自由 Agent 模式。
更合理的是:
固定流程 + Agent 自主决策 + 关键节点人工确认。
例如,一份公司研究报告可以拆成以下阶段:
研究任务定义;
公司基础信息收集;
财务数据获取;
财务数据校验;
行业研究;
竞争格局分析;
盈利预测;
估值分析;
投资逻辑形成;
反方观点验证;
研究报告生成;
合规审核;
人工确认和发布。
其中,有些环节可以由 Agent 自主推进。
例如资料收集、公告检索、财务指标计算。
有些环节则需要设置人工检查点。
例如研究假设确认、重大数据差异处理、报告对外发布。
不要为了追求所谓的全自动化,把所有流程都交给大模型自由发挥。
在金融业务里,稳定性、可解释性和可追溯性往往比完全自主更重要。
第五步:建立 Policy & Guardrails(权限与控制体系)
这是券商投研 Harness 与普通 AI 创作平台最大的区别之一。
至少需要设计五类控制。
第一类:身份权限
谁可以使用什么 Agent,访问什么数据。
第二类:数据权限
不同研究部门、不同业务条线的数据访问范围。
第三类:工具权限
哪些工具允许调用,哪些操作需要额外授权。
第四类:流程权限
哪些步骤可以自动执行,哪些必须经过审批。
第五类:输出权限
哪些内容可以内部使用,哪些内容可以形成正式研究报告,哪些内容可以对外发布。
特别需要强调:
不能只在 Agent 的 Prompt 里面写一句「请勿访问无权限的数据」。
必须在工具调用层、数据服务层和业务系统层真正执行权限校验。
模型说自己遵守规则,不等于系统真的具备控制能力。
第六步:建立 State & Memory(状态与记忆)
复杂投研任务往往不是一次对话就能完成的。
研究员今天启动一项研究,可能需要几天甚至几周才能完成。
如果每次打开系统都重新开始,AI 就无法真正承担持续性的工作。
因此需要建立任务状态管理。
例如:
任务已创建;
资料收集中;
财务分析完成;
行业分析进行中;
等待人工确认;
报告生成中;
审核完成;
已归档。
同时,需要保存每个阶段的中间产物。
例如:
财务分析结果、行业研究结论、估值模型、待验证假设、引用证据。
这样,即使模型中断、工具调用失败或者研究员第二天重新进入系统,也能从上次的进度继续工作。
这里还需要区分三种不同的记忆:
用户记忆:研究员的研究偏好和工作习惯。
任务记忆:某项研究任务的进度、结论和中间产物。
知识记忆:公司、行业、历史研究和内部知识。
不要把这三类数据全部放在一个向量数据库里解决。
它们的数据结构、更新机制和权限要求完全不同。
第七步:建立 Evaluation(评估体系)
很多 AI 项目有一个问题:
只要模型生成了结果,就认为任务完成了。
这显然不够。
尤其是金融研究,报告写得漂亮,不代表结论正确。
我建议建立多层评估机制。
数据质量评估
数据是否来自可信来源?
数据是否过期?
是否存在缺失?
不同数据源是否存在冲突?
计算质量评估
财务指标计算是否正确?
估值公式是否正确?
单位和币种是否一致?
计算结果是否能够复现?
分析质量评估
结论是否有证据支持?
是否存在逻辑跳跃?
是否考虑反面因素?
是否存在选择性引用?
报告质量评估
是否符合研究报告规范?
引用是否完整?
是否存在未经证实的事实?
是否符合内部合规要求?
这里建议把评估结果转化成明确的通过条件。
例如,财务数据没有通过校验,就不能直接进入正式盈利预测环节。
重大结论缺乏证据,就不能标记为已验证。
评估不应该只是给报告打一个分数,而应该真正影响工作流能否继续推进。
第八步:建立 Observability(运行监控与审计)
这是很多企业做 Agent 时容易忽略的地方。
如果一个 Agent 最终生成了一份错误报告,我们需要知道:
当时使用了哪个模型?
使用了什么版本的 Prompt?
加载了哪些上下文?
查询了哪些数据库?
调用了哪些工具?
使用了哪一批数据?
哪一步出现了异常?
是否经过人工修改?
最终是谁确认并发布?
因此,每一次 Agent 执行,都应该有独立的任务 ID 和完整的执行轨迹。
我建议至少记录:
任务记录、模型调用、工具调用、数据来源、规则命中、人工干预、结果版本、审批记录。
同时支持任务回放。
所谓回放,就是能够还原某一次 AI 任务当时的执行环境和关键输入输出,帮助研究员和技术人员定位问题。
对于券商而言,这不仅是技术运维需求,更是业务审计和风险管理的重要基础。
四、给出一个完整的券商投研 Harness 架构
上面讲了八个核心模块。
现在把它们组合起来。

我建议采用分层架构:
1. 用户与应用层
面向不同角色提供不同的工作入口:
宏观研究工作台;
行业研究工作台;
公司研究工作台;
固收研究工作台;
策略研究工作台;
研究管理工作台。
不同工作台可以使用不同的 Agent,但共享底层运行能力。
2. Agent 层
建立专业 Agent:
宏观研究 Agent;
行业研究 Agent;
公司分析 Agent;
财务分析 Agent;
估值分析 Agent;
研报生成 Agent;
反方验证 Agent;
合规检查 Agent。
不要把所有能力都塞进一个超级 Agent。
专业分工有利于明确职责、独立评估和权限管理。
3. Harness Runtime 层
这是整个系统的核心:
Agent 生命周期管理;
Context 管理;
工具调用管理;
Workflow 编排;
状态与记忆管理;
权限和策略控制;
异常处理;
任务恢复;
人工审批。
4. 数据与工具层
对接:
Wind、Choice 等金融数据;
行情和财务数据库;
公告及资讯平台;
内部研究报告;
内部知识库;
Python 和估值计算引擎;
Excel、Word 等办公工具。
5. 治理与基础设施层
包括:
统一身份认证;
数据权限;
模型网关;
日志与审计;
质量评估;
运行监控;
成本管理;
密钥管理;
数据安全。
整体逻辑可以概括为:
用户提出任务 → Harness 接收并校验 → Agent 规划任务 → 调用专业工具 → 执行工作流 → 校验结果 → 人工确认 → 归档与审计。
五、一个真正值得落地的案例:AI 公司研究员
最后,我们通过一个具体案例看看 Harness 如何发挥作用。
假设研究员提出:
「分析某上市公司最近三年的经营情况,预测未来三年的收入和利润,并判断当前估值是否合理。」
传统 AI 应用可能直接搜索资料,然后生成一份报告。
但真正的投研 Harness 应该这样工作。
阶段一:任务拆解
AI 先识别任务类型,拆解为:
历史财务分析;
行业研究;
业务结构分析;
盈利预测;
估值分析;
投资逻辑验证。
阶段二:资料获取
自动调用财务数据库、公告检索、行业数据和内部研究知识库。
每份资料都记录来源、发布时间、获取时间和适用范围。
阶段三:数据验证
对财务数据进行交叉校验。
例如:
如果数据库中的营业收入与公司年报披露的数据不一致,系统不应该随意选择一个数字,而应该标记冲突,等待核实。
阶段四:模型计算
利用 Python 或专业计算引擎完成:
收入增长率;
毛利率变化;
净利润预测;
现金流预测;
DCF 估值;
PE、PB 等相对估值。
这里特别强调:
财务计算应该尽量由确定性的代码和专业模型完成,而不是让大模型直接心算。
阶段五:观点形成
Agent 根据数据形成研究假设。
例如:
公司未来三年收入增长主要来自哪里?
毛利率能否持续改善?
行业竞争是否会压缩利润?
当前市场估值是否已经反映未来增长?
阶段六:反方验证
再启动一个独立的反方研究 Agent。
它不负责支持原来的结论,而是专门寻找:
预测中最脆弱的假设;
尚未考虑的风险;
可能被忽略的负面信息;
与市场一致预期存在的差异;
估值模型的敏感性。
阶段七:报告生成
最终形成一份结构完整的研究报告。
每一个关键数据都能追溯来源,每一个核心观点都能找到对应证据,所有模型计算都可以重新运行。
阶段八:人工确认
研究员对核心假设、关键结论和报告内容进行审核。
如果涉及正式发布,还要经过相应的研究管理和合规流程。
这时候,我们得到的就不再是一个简单的聊天机器人,而是一个真正能够参与研究生产流程的 AI 研究员。
六、企业建设 Harness,最容易犯的三个错误
最后分享三个我认为非常重要的经验。
错误一:把 Harness 理解成 Prompt 工程。
Prompt 只是控制模型行为的一部分。
真正的 Harness 还包括权限、工具、流程、状态、评估和审计。
如果所有约束都写在 Prompt 里面,那么系统实际上并没有真正的控制能力。
错误二:过度追求 Agent 自主性。
并不是所有业务都适合让 AI 自己决定下一步做什么。
越是涉及资金、合规、重大经营决策的场景,越需要明确的流程边界和人工控制点。
能够自主规划,不等于应该拥有无限执行权。
错误三:只关注模型效果,不关注任务完成质量。
AI 输出一篇漂亮的报告,不代表它完成了研究任务。
真正应该关注的是:
数据是否准确、过程是否合规、计算是否可复现、证据是否充分、结论是否经过验证。
七、写在最后:未来企业竞争的重点,可能是 Harness 能力
回头看过去的软件发展。
最初,我们关注的是数据库和信息化系统。
后来,我们关注业务流程、ERP、CRM 和数据中台。
现在,随着大模型和 Agent 的发展,我们开始面对一个新的问题:
如何让 AI 真正进入企业的生产系统?
我认为,Harness 会成为企业 AI 基础设施中非常重要的一部分。
未来企业可能不再只是购买几个 AI 产品,而是建立自己的 Agent 运行平台。
不同部门可以创建专业 Agent,共享企业数据和工具,按照统一的权限和规则执行任务。
对券商来说,未来可能拥有一整套 AI 投研生产体系。
宏观研究员、行业研究员、公司研究员、财务分析师,都有对应的 AI 助手和专业 Agent。
它们能够持续收集信息、分析数据、验证观点、生成报告。
而人类研究员则把更多精力放在研究框架、关键假设、投资判断和风险决策上。
大模型让 AI 变得聪明,Agent 让 AI 能够行动,而 Harness 让 AI 的行动真正进入企业的管理体系。
这可能是企业从「使用 AI」走向「AI 原生组织」必须经历的一步。

研报速递