金融分析 Agent Harness:自动化研报生成
金融分析 Agent Harness:自动化研报生成
关键词:金融分析 Agent、Agent Harness、自动化研报、大语言模型、多模态金融数据、结构化分析框架、量化逻辑校验
摘要:本文从传统金融研报的痛点切入,通过“魔法报纸编辑部”的生动比喻,深入浅出地拆解了金融分析 Agent Harness 的核心概念、架构设计与工作原理;构建了包含“数据精灵→分析队长→写作总编→审核检察官”的完整工作流 Mermaid 流程图;结合 Python 代码实现了一个简化版的 Agent Harness 原型;同时给出了真实券商的落地案例、最佳实践建议、未来发展趋势与挑战;最后通过核心概念回顾与思考题,帮助读者彻底掌握这一革命性的金融科技工具。全文约 9800 字,适合金融从业者、AI 产品经理、Python 开发者以及对金融科技感兴趣的读者阅读。
背景介绍
目的和范围
金融研报是连接“金融市场数据→专业分析逻辑→投资决策支持”的核心桥梁,但传统研报的生产存在周期长、人力成本高、覆盖范围窄、格式不统一、逻辑依赖分析师主观经验等五大痛点。本文的目的是:
- 用通俗易懂的语言,解释什么是金融分析 Agent Harness
- 拆解 Agent Harness 的核心架构与自动化研报生成的完整工作流
- 结合实际案例与代码实现,帮助读者快速上手简化版的 Agent Harness
- 分析 Agent Harness 的最佳实践、未来趋势与挑战
本文的范围限定在股票/债券/基金等标准化金融资产的日常基础研报自动化生成(如公司季报解读、行业周报、宏观数据点评),暂不涉及复杂的深度策略研报(如并购重组分析、新股定价模型),后者需要更深度的领域知识与人工校验。
预期读者
- 金融从业者:券商分析师、基金经理、投资顾问,希望了解如何用 AI 工具提升研报生产效率
- AI 产品经理:负责金融科技产品的规划与设计,希望掌握 Agent Harness 的架构与交互逻辑
- Python 开发者:希望学习如何用 LangChain/LlamaIndex 等框架搭建金融分析 Agent
- 金融科技爱好者:对 AI 与金融的结合感兴趣,希望了解前沿应用
文档结构概述
本文采用“问题引入→概念拆解→架构设计→代码实现→案例实践→未来展望”的逻辑结构,共分为 12 个章节:
- 背景介绍:阐述传统研报的痛点、本文的目的和范围、预期读者
- 故事引入:用“魔法报纸编辑部”的比喻,引出金融分析 Agent Harness 的核心工作流
- 核心概念解释:拆解 Agent、金融分析 Agent、Agent Harness、多模态金融数据、结构化分析框架这五个核心概念
- 核心概念之间的关系:用表格对比核心概念的属性,用 Mermaid ER 图与交互图展示它们的联系
- 核心架构设计:给出 Agent Harness 的“四层级三通道”文本示意图与 Mermaid 流程图
- 核心算法原理与数学模型:介绍研报生成中的文本摘要算法、情感分析算法、财务指标计算模型、量化逻辑校验模型
- 简化版 Agent Harness 原型实现:结合 LangChain、LlamaIndex、yfinance、Matplotlib 等工具,用 Python 代码实现一个公司季报解读 Agent Harness
- 实际落地案例:介绍国内头部券商“中信建投”与“广发证券”的 Agent Harness 自动化研报平台
- 最佳实践 tips:从数据治理、Agent 设计、人工校验、合规风控四个维度给出建议
- 行业发展历史与未来趋势:用表格梳理金融研报自动化的发展历程,分析未来的五大趋势与三大挑战
- 总结与思考题:回顾核心概念与架构,提出 5 个思考题
- 附录与扩展阅读:列出常见问题解答、工具资源、参考资料
术语表
核心术语定义
- Agent(智能体):能够感知环境、做出决策、执行动作的自主软件程序,类似于一个“小助手”。
- 金融分析 Agent:专门用于金融领域的智能体,能够处理金融数据、进行专业分析、生成投资建议。
- Agent Harness(智能体 harness/缰绳/框架):用于管理、调度、协调多个金融分析 Agent 的底层平台,类似于“编辑部的运营系统”。
- 多模态金融数据:包含文本(财报、新闻、研报)、数值(股价、成交量、财务指标)、图表(K线图、资产负债表图)、语音(电话会议录音)等多种形式的金融数据。
- 结构化分析框架:金融分析师常用的标准化分析流程,例如股票分析的“PESTEL(宏观)→ Porter五力(行业)→ SWOT(公司)→ 财务指标(量化)→ 估值(定价)→ 投资建议”框架。
相关概念解释
- 大语言模型(LLM):例如 GPT-4、Claude 3、文心一言、通义千问,是 Agent 的“大脑”,负责理解语言、生成文本、进行逻辑推理。
- 向量数据库(Vector DB):例如 Pinecone、ChromaDB、Milvus,用于存储多模态金融数据的向量表示,方便 Agent 快速检索相关信息。
- RAG(检索增强生成):一种将“检索知识库”与“LLM 生成”结合的技术,能够让 Agent 生成更准确、更有依据的内容,避免“幻觉”。
- 量化逻辑校验:用程序代码验证研报中的量化结论是否正确,例如验证“净利润同比增长 20%”是否与财报数据一致。
缩略词列表
| 缩略词 | 全称 | 中文含义 |
|---|---|---|
| LLM | Large Language Model | 大语言模型 |
| RAG | Retrieval-Augmented Generation | 检索增强生成 |
| Agent Harness | Agent Management Framework | 智能体管理框架 |
| PESTEL | Political Economic Social Technological Environmental Legal | 宏观环境分析模型 |
| SWOT | Strengths Weaknesses Opportunities Threats | 公司优劣势分析模型 |
| EPS | Earnings Per Share | 每股收益 |
| PE | Price-to-Earnings Ratio | 市盈率 |
| ROE | Return on Equity | 净资产收益率 |
| yfinance | Yahoo Finance Python Library | 雅虎财经 Python 库 |
故事引入
魔法报纸编辑部的日常
从前,在一个遥远的“金融魔法小镇”上,有一家非常有名的报纸叫《魔法财富日报》,每天要给小镇上的居民提供“公司季报解读”“行业周报”“宏观数据点评”三种魔法报纸。
这家报纸的编辑部有四个核心角色:
- 数据精灵小松鼠:每天凌晨 4 点起床,去森林里的“数据树”上采集各种数据——有写在叶子上的财报、刻在树干上的股价、画在蘑菇上的K线图、藏在树洞中的电话会议录音……小松鼠会把这些数据整理成整齐的“数据文件夹”,交给下一个角色。
- 分析队长猫头鹰:是编辑部里最聪明的角色,拥有“结构化分析宝典”(股票分析用的PESTEL→Porter五力→SWOT→财务指标→估值→投资建议框架)。猫头鹰会先从“数据文件夹”里快速找到需要的信息(用的是“魔法放大镜检索法”),然后按照“结构化分析宝典”一步一步进行分析,生成一份“分析草稿”。
- 写作总编百灵鸟:是编辑部里最会说话的角色,能把枯燥的“分析草稿”写成生动有趣、符合小镇居民阅读习惯的“魔法报纸初稿”。百灵鸟会参考“往期优秀报纸库”,调整语言风格(专业版给巫师投资家,通俗版给普通居民),插入漂亮的图表,给报纸起吸引人的标题。
- 审核检察官啄木鸟:是编辑部里最严格的角色,专门负责检查“魔法报纸初稿”有没有错误——有没有“数据幻觉”(比如小松鼠漏采了数据,猫头鹰编了一个不存在的财务指标),有没有“逻辑错误”(比如猫头鹰说净利润同比增长,但实际数据是下降的),有没有“合规问题”(比如不能给小镇居民“保证赚钱”的承诺)。啄木鸟检查完后,会给初稿打上“修改意见”,让百灵鸟修改,直到没有错误为止。
最后,《魔法财富日报》会在早上 8 点准时送到小镇上的每一户居民家里,居民们拿着报纸,就能做出正确的投资决策啦!
传统编辑部的困境
但是,这家编辑部也遇到了很多问题:
- 周期太长:小松鼠采集数据需要 2 小时,猫头鹰分析需要 4 小时,百灵鸟写作需要 3 小时,啄木鸟审核需要 1 小时——一份日报需要 10 小时才能完成,有时候还赶不上早上 8 点的发行时间。
- 人力成本太高:编辑部需要雇佣 4 个专业角色,每个角色的工资都很高,小镇上的居民买报纸的钱都不够发工资的。
- 覆盖范围太窄:编辑部只有 1 只猫头鹰,每天只能分析 3 家公司的季报,3 个行业的周报,1 次宏观数据点评——小镇上有 1000 家公司,100 个行业,猫头鹰根本忙不过来。
- 格式不统一:有时候小松鼠整理的数据格式不对,猫头鹰看不懂;有时候百灵鸟写的报纸风格不一样,居民们读起来很费劲。
- 逻辑依赖主观经验:猫头鹰的分析水平取决于它的“结构化分析宝典”的熟练程度,有时候它会漏掉一些重要的信息,有时候它会做出错误的判断。
魔法编辑部的诞生
有一天,小镇上的“大巫师程序员”发明了一个“魔法编辑部系统”(也就是我们今天要讲的金融分析 Agent Harness),这个系统可以:
- 替代小松鼠:自动去“数据树”(也就是互联网上的金融数据库)采集多模态金融数据,整理成统一的格式——只需要 10 分钟。
- 替代猫头鹰:自动用“魔法放大镜检索法”(也就是 RAG 技术)找到需要的信息,按照“结构化分析宝典”(也就是预设的分析框架)一步一步进行分析——只需要 30 分钟。
- 替代百灵鸟:自动参考“往期优秀报纸库”(也就是向量数据库里的历史研报),调整语言风格,插入漂亮的图表,给报纸起吸引人的标题——只需要 20 分钟。
- 替代啄木鸟:自动检查“数据幻觉”“逻辑错误”“合规问题”——只需要 10 分钟。
最重要的是,这个“魔法编辑部系统”可以同时运行多个小松鼠、多个猫头鹰、多个百灵鸟、多个啄木鸟——每天可以分析 1000 家公司的季报,100 个行业的周报,100 次宏观数据点评!
从此,《魔法财富日报》每天早上 7 点就准时送到了小镇上的每一户居民家里,工资成本也降低了 90%,覆盖范围扩大了 300 倍,格式统一了,逻辑也更准确了!
核心概念解释
什么是 Agent?
在计算机科学中,Agent(智能体) 是一个非常古老但又非常热门的概念——它最早是在 1950 年代由图灵奖得主马文·明斯基提出的,当时他把 Agent 定义为“能够感知环境、做出决策、执行动作的自主软件程序”。
如果用生活中的比喻来解释,Agent 就像一个“专业的小助手”:
- 你的手机里的“ Siri”或“小爱同学”是一个“生活小助手 Agent”——它能感知你说的话(语音识别),做出决策(理解你的意图),执行动作(帮你订外卖、查天气、设闹钟)。
- 你的汽车里的“自动驾驶系统”是一个“驾驶小助手 Agent”——它能感知周围的环境(摄像头、雷达、激光雷达),做出决策(判断要不要加速、减速、变道),执行动作(控制油门、刹车、方向盘)。
- 我们今天要讲的“金融分析 Agent”是一个“金融小助手 Agent”——它能感知金融市场的环境(股价、财报、新闻、研报),做出决策(判断公司的投资价值),执行动作(生成研报、给出投资建议)。
什么是金融分析 Agent?
金融分析 Agent 是专门针对金融领域优化过的 Agent——它的“大脑”是一个“金融领域大语言模型(Fine-tuned LLM)”,它的“眼睛”是“多模态金融数据采集工具”,它的“手”是“金融分析工具(财务指标计算、图表绘制、量化逻辑校验)”,它的“知识库”是“向量数据库里的历史研报、金融教材、监管法规”。
如果用生活中的比喻来解释,金融分析 Agent 就像一个“专业的初级券商分析师”:
- 它能像初级分析师一样,每天采集大量的金融数据。
- 它能像初级分析师一样,按照结构化分析框架进行分析。
- 它能像初级分析师一样,写出生动有趣、符合格式要求的研报初稿。
- 但是,它不能像高级分析师一样,进行深度的策略分析、并购重组分析、新股定价模型分析——这些工作需要更深度的领域知识、更丰富的行业经验、更敏锐的市场嗅觉,目前还需要人工完成。
什么是 Agent Harness?
Agent Harness(智能体 harness/缰绳/框架) 是用于管理、调度、协调多个金融分析 Agent 的底层平台——它的核心作用是“让多个小助手 Agent 像一个团队一样高效合作”,而不是各自为政、互相冲突。
如果用生活中的比喻来解释,Agent Harness 就像“魔法财富日报的编辑部运营系统”:
- 它负责任务分配:比如今天有 1000 家公司的季报要解读,它会把任务分配给 100 个“数据精灵小松鼠 Agent”、100 个“分析队长猫头鹰 Agent”、100 个“写作总编百灵鸟 Agent”、100 个“审核检察官啄木鸟 Agent”。
- 它负责工作流调度:比如它会先让“数据精灵小松鼠 Agent”采集数据,等数据采集完成后,再让“分析队长猫头鹰 Agent”分析数据,等分析完成后,再让“写作总编百灵鸟 Agent”写作,等写作完成后,再让“审核检察官啄木鸟 Agent”审核。
- 它负责资源管理:比如它会监控每个 Agent 的运行状态(有没有崩溃、有没有超时),如果某个 Agent 崩溃了,它会立即重启它;如果某个 Agent 超时了,它会把任务分配给另一个 Agent。
- 它负责结果整合:比如它会把 1000 家公司的季报解读整合在一起,生成一份“全市场季报解读合集”。
什么是多模态金融数据?
多模态金融数据 是指包含多种形式的金融数据——传统的金融数据主要是“数值型数据”(股价、成交量、财务指标),但现在的金融数据越来越丰富,还包含“文本型数据”(财报、新闻、研报、电话会议录音转写文本)、“图表型数据”(K线图、资产负债表图、利润表图、现金流量表图)、“语音型数据”(电话会议录音)、“视频型数据”(公司发布会视频)。
如果用生活中的比喻来解释,多模态金融数据就像“一顿丰盛的大餐”:
- 数值型数据是“主食”(米饭、面条)——是基础,必不可少。
- 文本型数据是“主菜”(鱼、肉)——是核心,提供主要的营养。
- 图表型数据是“配菜”(蔬菜、水果)——是补充,让大餐更美味、更健康。
- 语音型数据和视频型数据是“甜点”(蛋糕、冰淇淋)——是加分项,让大餐更有吸引力。
什么是结构化分析框架?
结构化分析框架 是金融分析师常用的标准化分析流程——它的核心作用是“让分析过程有章可循,避免漏掉重要的信息,避免做出错误的判断”。
不同的金融资产有不同的结构化分析框架:
- 股票分析框架:PESTEL(宏观环境)→ Porter五力(行业竞争)→ SWOT(公司优劣势)→ 财务指标(盈利能力、偿债能力、营运能力、成长能力)→ 估值(PE、PB、DCF)→ 投资建议(买入、持有、卖出)。
- 债券分析框架:宏观经济(GDP、CPI、利率)→ 行业景气度→ 公司信用状况(财务指标、信用评级)→ 债券条款(票面利率、到期日、赎回条款、回售条款)→ 估值(YTM、久期、凸性)→ 投资建议。
- 基金分析框架:基金经理(从业年限、过往业绩、投资风格)→ 基金公司(规模、投研团队、历史表现)→ 基金产品(类型、规模、费率、持仓、过往业绩、风险指标)→ 投资建议。
如果用生活中的比喻来解释,结构化分析框架就像“做蛋糕的食谱”:
- 食谱会告诉你“第一步准备食材(鸡蛋、面粉、糖、牛奶)”——对应“第一步采集多模态金融数据”。
- 食谱会告诉你“第二步搅拌食材(先打鸡蛋,再加糖,再加面粉,再加牛奶)”——对应“第二步按照分析框架一步一步进行分析”。
- 食谱会告诉你“第三步烤蛋糕(温度180度,时间30分钟)”——对应“第三步生成研报初稿”。
- 食谱会告诉你“第四步装饰蛋糕(加奶油、加水果)”——对应“第四步调整语言风格、插入漂亮的图表”。
- 食谱会告诉你“第五步检查蛋糕(有没有烤焦、有没有熟透)”——对应“第五步审核研报初稿”。
核心概念之间的关系
核心属性维度对比
我们可以用一个表格来对比 Agent、金融分析 Agent、Agent Harness、多模态金融数据、结构化分析框架这五个核心概念的属性:
| 核心属性 | Agent | 金融分析 Agent | Agent Harness | 多模态金融数据 | 结构化分析框架 |
|---|---|---|---|---|---|
| 本质 | 自主软件程序 | 专门针对金融领域优化的自主软件程序 | 管理调度协调多个 Agent 的底层平台 | 多种形式的金融信息集合 | 金融分析的标准化流程 |
| 角色 | 执行任务的“小助手” | 执行金融分析任务的“专业小助手” | 管理“小助手团队”的“运营系统” | “小助手”的“工作材料” | “小助手”的“工作指南” |
| 核心能力 | 感知环境、做出决策、执行动作 | 采集多模态金融数据、按照框架分析、生成研报初稿 | 任务分配、工作流调度、资源管理、结果整合 | 提供准确、全面、及时的金融信息 | 让分析过程有章可循 |
| 依赖关系 | 依赖于硬件(服务器、手机、汽车)和软件(操作系统、LLM) | 依赖于 Agent Harness、多模态金融数据、结构化分析框架、金融领域 LLM | 不依赖于某个具体的 Agent,但需要多个 Agent 才能发挥作用 | 不依赖于其他概念,但需要 Agent 或 Agent Harness 来处理 | 不依赖于其他概念,但需要 Agent 或 Agent Harness 来执行 |
| 例子 | Siri、小爱同学、自动驾驶系统 | 公司季报解读 Agent、行业周报 Agent、宏观数据点评 Agent | LangChain Agent、LlamaIndex Workflow、中信建投“智能研报平台” | Yahoo Finance 的数据、Wind 的数据、同花顺的数据、公司财报 PDF、新闻网站的文章 | 股票分析的 PESTEL→Porter五力→SWOT→财务指标→估值→投资建议框架 |
核心概念的 ER 实体关系图
我们可以用 Mermaid ER 图来展示五个核心概念之间的实体关系:
从这个 ER 图中,我们可以看出:
- Agent Harness 是核心:它管理调度协调多个金融分析 Agent,存储管理多模态金融数据和结构化分析框架。
- 金融分析 Agent 是 Agent 的子类:它继承了 Agent 的核心能力(感知环境、做出决策、执行动作),但又专门针对金融领域进行了优化。
- 金融分析 Agent 依赖于 Agent Harness、多模态金融数据、结构化分析框架:它需要 Agent Harness 来管理它的运行,需要多模态金融数据作为工作材料,需要结构化分析框架作为工作指南。
核心概念的交互关系图
我们可以用 Mermaid 交互关系图来展示五个核心概念在自动化研报生成过程中的交互:
从这个交互关系图中,我们可以看出自动化研报生成的完整流程:
- 用户提交任务:券商分析师或基金经理向 Agent Harness 提交一个研报生成任务。
- Agent Harness 检索框架:Agent Harness 从结构化分析框架存储库中检索对应的分析框架。
- 数据采集 Agent 采集数据:Agent Harness 分配任务给数据采集 Agent,数据采集 Agent 从多模态金融数据存储库中采集数据,并整理成统一的格式。
- 分析 Agent 分析数据:Agent Harness 分配任务给分析 Agent,分析 Agent 遵循结构化分析框架,结合补充信息,生成分析草稿。
- 写作 Agent 写作初稿:Agent Harness 分配任务给写作 Agent,写作 Agent 参考往期优秀研报,调整语言风格,插入漂亮的图表,生成研报初稿。
- 审核 Agent 审核终稿:Agent Harness 分配任务给审核 Agent,审核 Agent 验证量化数据,检查分析逻辑,确保合规,生成审核意见和修改后的研报终稿。
- Agent Harness 返回终稿:Agent Harness 将研报终稿返回给用户。
核心架构设计
四层级三通道文本示意图
我们可以用一个“四层级三通道”的文本示意图来展示金融分析 Agent Harness 的核心架构:
┌─────────────────────────────────────────────────────────────────────────────┐
│ 用户交互层(第1层) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 任务提交界面 │ │ 任务监控界面 │ │ 结果展示界面 │ │ 人工修改界面 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────────────────┘
↓↑
┌─────────────────────────────────────────────────────────────────────────────┐
│ 核心调度层(第2层) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 任务管理模块 │ │ 工作流调度模块│ │ 资源管理模块 │ │ 结果整合模块 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────────────────────────┘
↓↑
┌─────────────────────────────────────────────────────────────────────────────┐
│ 智能体执行层(第3层) │
│ ┌─────────────────────────────────────────────────────────────────────────┐ │
│ │ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐ │ │
│ │ │ 数据处理 Agent 池 │ │ 分析推理 Agent 池 │ │ 内容生成 Agent 池 │ │ │
│ │ │ ┌──────────────┐│ │ ┌──────────────┐│ │ ┌──────────────┐│ │ │
│ │ │ │数据采集 Agent││ │ │宏观分析 Agent││ │ │专业版写作 Agent││ │ │
│ │ │ │数据清洗 Agent││ │ │行业分析 Agent││ │ │通俗版写作 Agent││ │ │
│ │ │ │数据标准化 Agent││ │ │公司分析 Agent││ │ │图表绘制 Agent││ │ │
│ │ │ │数据增强 Agent││ │ │财务分析 Agent││ │ │标题生成 Agent││ │ │
│ │ │ └──────────────┘│ │ │估值分析 Agent││ │ │摘要生成 Agent││ │ │
│ │ └──────────────────┘ │ └──────────────┘│ │ └──────────────┘│ │ │
│ │ └──────────────────┘ └──────────────────┘ │ │
│ │ ┌─────────────────────────────────────────────────────────────────┐ │ │
│ │ │ 审核校验 Agent 池 │ │ │
│ │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │
│ │ │ │数据幻觉检测 Agent││逻辑错误检测 Agent││合规风控检测 Agent│ │ │ │
│ │ │ └──────────────┘ └──────────────┘ └──────────────┘ │ │ │
│ │ └─────────────────────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────────────┘
↓↑
┌─────────────────────────────────────────────────────────────────────────────┐
│ 基础设施层(第4层) │
│ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐ │
│ │ 金融领域 LLM 池 │ │ 向量数据库存储池 │ │ 多模态金融数据源 │ │
│ │ GPT-4/Claude 3/文心一言/通义千问 │ │ Pinecone/ChromaDB/Milvus │ │ Yahoo Finance/Wind/同花顺/公司官网/新闻网站 │
│ └──────────────────┘ └──────────────────┘ └──────────────────┘ │
│ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐ │
│ │ 结构化分析框架库 │ │ 往期优秀研报库 │ │ 监管法规范畴库 │ │
│ └──────────────────┘ └──────────────────┘ └──────────────────┘ │
│ ┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐ │
│ │ 计算引擎池 │ │ 图表绘制引擎池 │ │ 服务器集群 │ │
│ │ Pandas/NumPy/SciPy │ │ Matplotlib/Plotly/Seaborn │ │ 阿里云/腾讯云/AWS │
│ └──────────────────┘ └──────────────────┘ └──────────────────┘ │
└─────────────────────────────────────────────────────────────────────────────┘
三通道
┌─────────────────────────────────────────────────────────────────────────────┐
│ 通道1:数据通道 → 从多模态金融数据源到数据处理 Agent 池到核心调度层 │
│ 通道2:分析通道 → 从核心调度层到分析推理 Agent 池到核心调度层 │
│ 通道3:内容通道 → 从核心调度层到内容生成 Agent 池到审核校验 Agent 池到用户交互层 │
└─────────────────────────────────────────────────────────────────────────────┘
四层级三通道架构详解
第1层:用户交互层
用户交互层是 Agent Harness 与用户(券商分析师、基金经理、投资顾问)直接交互的界面,主要包含四个模块:
- 任务提交界面:用户可以通过这个界面提交研报生成任务,比如“解读苹果公司2024年Q3季报”“生成半导体行业2024年第30周周报”“点评2024年9月中国CPI数据”。用户还可以设置任务的优先级、截止时间、语言风格(专业版/通俗版)、图表类型(K线图/柱状图/折线图/饼图)等参数。
- 任务监控界面:用户可以通过这个界面监控任务的运行状态,比如“数据采集中”“分析中”“写作中”“审核中”“已完成”“已失败”。如果任务失败了,用户还可以查看失败的原因,并重新提交任务。
- 结果展示界面:用户可以通过这个界面查看研报终稿,研报终稿会包含标题、摘要、正文、图表、参考文献等部分。用户还可以下载研报终稿(PDF/Word/Markdown格式),或者分享给其他用户。
- 人工修改界面:虽然 Agent Harness 可以生成非常优秀的研报终稿,但有时候还是需要人工进行修改——比如调整投资建议、补充一些深度的分析内容、修改一些语言风格。用户可以通过这个界面对研报终稿进行人工修改,修改后的内容会自动存储到往期优秀研报库中,用于未来的 RAG 生成。
第2层:核心调度层
核心调度层是 Agent Harness 的“大脑中枢”,主要包含四个模块:
- 任务管理模块:负责接收用户提交的任务,解析任务的参数(优先级、截止时间、语言风格、图表类型等),将任务拆解成多个子任务(数据采集、数据清洗、数据标准化、宏观分析、行业分析、公司分析、财务分析、估值分析、专业版写作、通俗版写作、图表绘制、标题生成、摘要生成、数据幻觉检测、逻辑错误检测、合规风控检测等)。
- 工作流调度模块:负责按照预设的工作流(比如数据采集→数据清洗→数据标准化→宏观分析→行业分析→公司分析→财务分析→估值分析→专业版写作→图表绘制→标题生成→摘要生成→数据幻觉检测→逻辑错误检测→合规风控检测→结果整合)调度子任务的执行顺序,确保子任务之间的依赖关系正确(比如必须先完成数据采集,才能进行数据清洗)。
- 资源管理模块:负责监控智能体执行层中每个 Agent 的运行状态(有没有崩溃、有没有超时、资源占用率如何),如果某个 Agent 崩溃了,它会立即重启它;如果某个 Agent 超时了,它会把任务分配给另一个空闲的 Agent;如果某个 Agent 的资源占用率太高了,它会限制它的资源使用。
- 结果整合模块:负责将多个子任务的结果整合在一起,生成一份完整的研报终稿——比如将标题、摘要、正文、图表、参考文献等部分整合在一起,调整格式(字体、字号、行距、页边距等),使其符合券商或基金公司的格式要求。
第3层:智能体执行层
智能体执行层是 Agent Harness 的“执行部队”,主要包含四个 Agent 池:
- 数据处理 Agent 池:负责处理多模态金融数据,包含四个 Agent:
- 数据采集 Agent:负责从多模态金融数据源(Yahoo Finance、Wind、同花顺、公司官网、新闻网站等)采集数据,支持采集文本型数据、数值型数据、图表型数据、语音型数据、视频型数据。
- 数据清洗 Agent:负责清洗采集到的数据,比如去除重复数据、去除错误数据、去除无关数据、填充缺失数据。
- 数据标准化 Agent:负责将清洗后的数据标准化,比如统一数值型数据的单位、统一文本型数据的格式、统一图表型数据的尺寸。
- 数据增强 Agent:负责增强数据,比如生成补充的文本型数据、生成补充的数值型数据、生成补充的图表型数据。
- 分析推理 Agent 池:负责按照结构化分析框架进行分析推理,包含五个 Agent:
- 宏观分析 Agent:负责分析宏观经济环境,使用 PESTEL 模型。
- 行业分析 Agent:负责分析行业竞争环境,使用 Porter五力模型。
- 公司分析 Agent:负责分析公司的优劣势,使用 SWOT 模型。
- 财务分析 Agent:负责分析公司的财务状况,计算盈利能力、偿债能力、营运能力、成长能力等财务指标。
- 估值分析 Agent:负责分析公司的估值水平,使用 PE、PB、DCF 等估值模型。
- 内容生成 Agent 池:负责生成研报的内容,包含五个 Agent:
- 专业版写作 Agent:负责生成专业版的研报正文,适合券商分析师、基金经理阅读。
- 通俗版写作 Agent:负责生成通俗版的研报正文,适合普通投资者阅读。
- 图表绘制 Agent:负责绘制研报中的图表,比如 K线图、柱状图、折线图、饼图。
- 标题生成 Agent:负责生成研报的标题,要求吸引人、准确、简洁。
- 摘要生成 Agent:负责生成研报的摘要,要求涵盖研报的核心内容。
- 审核校验 Agent 池:负责审核校验研报的内容,包含三个 Agent:
- 数据幻觉检测 Agent:负责检测研报中的数据幻觉,比如验证研报中的财务指标是否与财报数据一致、验证研报中的新闻事件是否真实存在。
- 逻辑错误检测 Agent:负责检测研报中的逻辑错误,比如验证分析逻辑是否符合结构化分析框架、验证结论是否与分析内容一致。
- 合规风控检测 Agent:负责检测研报中的合规问题,比如验证研报中是否有“保证赚钱”的承诺、验证研报中是否有违反监管法规的内容。
第4层:基础设施层
基础设施层是 Agent Harness 的“底层支撑”,主要包含六个部分:
- 金融领域 LLM 池:负责提供语言理解、文本生成、逻辑推理的能力,包含 GPT-4、Claude 3、文心一言、通义千问等大语言模型——为了提高分析的准确性,最好使用经过金融领域 Fine-tuned 的大语言模型。
- 向量数据库存储池:负责存储多模态金融数据的向量表示、往期优秀研报的向量表示、结构化分析框架的向量表示,方便 Agent 快速检索相关信息,包含 Pinecone、ChromaDB、Milvus 等向量数据库。
- 多模态金融数据源:负责提供多模态金融数据,包含 Yahoo Finance(免费)、Wind(付费)、同花顺(付费)、公司官网(免费)、新闻网站(免费/付费)、电话会议录音平台(付费)等。
- 知识库存储池:负责存储结构化分析框架、往期优秀研报、监管法规范畴,方便 Agent 遵循框架、参考历史、确保合规。
- 工具引擎池:负责提供计算、图表绘制的能力,包含 Pandas(数值计算)、NumPy(科学计算)、SciPy(统计计算)、Matplotlib(基础图表绘制)、Plotly(交互式图表绘制)、Seaborn(统计图表绘制)等工具。
- 服务器集群:负责提供计算资源和存储资源,包含阿里云、腾讯云、AWS 等云服务器集群——为了提高任务的执行效率,最好使用分布式服务器集群。
三通道
三通道是指自动化研报生成过程中的三个数据/内容流动通道:
- 数据通道:从多模态金融数据源到数据处理 Agent 池,再到核心调度层——负责数据的采集、清洗、标准化、增强。
- 分析通道:从核心调度层到分析推理 Agent 池,再到核心调度层——负责按照结构化分析框架进行分析推理。
- 内容通道:从核心调度层到内容生成 Agent 池,再到审核校验 Agent 池,最后到用户交互层——负责内容的生成、审核、整合、展示。
核心架构的 Mermaid 流程图
我们可以用一个 Mermaid 流程图来展示金融分析 Agent Harness 的核心工作流:
核心算法原理与数学模型
文本摘要算法:基于 Transformer 的抽取式摘要与生成式摘要
文本摘要算法是研报生成中的核心算法之一——它主要用于生成研报的摘要,以及从财报、新闻、研报等长文本中抽取关键信息。
文本摘要算法主要分为两种类型:
- 抽取式摘要(Extractive Summarization):从长文本中直接抽取关键句子,组合成摘要——优点是准确性高,不会产生幻觉;缺点是连贯性差,可能会出现句子不通顺的情况。
- 生成式摘要(Abstractive Summarization):基于长文本的内容,生成新的句子,组合成摘要——优点是连贯性好,语言通顺;缺点是可能会产生幻觉,准确性不如抽取式摘要。
现在的主流文本摘要算法是结合抽取式摘要与生成式摘要的混合式摘要——先从长文本中抽取关键句子,然后基于这些关键句子生成新的摘要,这样既保证了准确性,又保证了连贯性。
混合式摘要的核心算法是 Transformer 模型——比如 GPT-4、Claude 3、文心一言、通义千问等大语言模型都内置了混合式摘要的能力。
情感分析算法:基于 FinBERT 的金融文本情感分析
情感分析算法是研报生成中的另一个核心算法——它主要用于分析新闻、研报、电话会议录音转写文本等金融文本的情感倾向(正面/负面/中性),帮助判断公司的市场情绪。
普通的情感分析算法(比如基于 BERT 的情感分析)在金融领域的表现并不好,因为金融文本有很多专业术语,比如“净利润同比增长 20%”是正面情感,“净利润同比下降 20%”是负面情感,“公司召开股东大会”是中性情感——普通的情感分析算法可能无法正确理解这些专业术语的情感倾向。
现在的主流金融文本情感分析算法是 FinBERT——它是一个基于 BERT 模型经过金融领域 Fine-tuned 的情感分析模型,在金融文本情感分析任务中的表现非常出色。
FinBERT 的情感分类原理是 Softmax 回归——它会将输入的金融文本转换为一个向量,然后将这个向量输入到 Softmax 层,计算出正面、负面、中性三种情感的概率,最后选择概率最大的情感作为输出。
更多推荐



所有评论(0)