跳过正文
金融研究语料上的企业 RAG:向量库、Agent 与 eval 的工程取舍
  1. 文章/

金融研究语料上的企业 RAG:向量库、Agent 与 eval 的工程取舍

·4412 字·9 分钟
NeatGuyCoding
作者
NeatGuyCoding

金融研究语料上的企业 RAG:向量库、Agent 与 eval 的工程取舍
#

金融机构把分析师笔记、基金/股票研究、社论等半结构化文本做成可查询的 GenAI 能力时,瓶颈往往不在「能不能接一个大模型」,而在 摄入吞吐、检索粒度、权限边界、以及 agent 引入后的延迟与可测性。Morningstar 内部平台 Morningstar Intelligence Engine(MIE) 的公开产品规格几乎查不到;下文把可核对的一手文档与 演讲者观点 分开写,供你在同类场景里做架构对照,而非当作 Morningstar 官方白皮书。


问题空间:API 平台,而不只是聊天窗
#

为什么:内部产品团队与外部客户都需要同一套 RAG / agent 能力,但技能栈差异大;若每个应用自建管线,embedding、分块、eval 会重复且不可比。

机制/约束:演讲者将 MIE 描述为 API 驱动、偏低/无代码 的平台:可配置 RAG 管线、GenAI agent、自带工具,并在路线中扩展 text-to-SQL演讲者观点Morningstar Developer 门户存在,但未载明 MIE 能力清单)。首条生产语料域为 研究/社论/分析师笔记演讲者观点),典型链路与 Weaviate 文档中的 RAG 叙述一致:嵌入 → 向量库语义检索 → 上下文送入 LLM。

怎么做(最小示意)

文档事件 → 队列 worker → chunk + embed → Weaviate upsert
用户问题 → filter(entitlement) → hybrid/semantic search → rerank → LLM

常见误区:把「平台」等同于单一 Chat UI;忽略 Deploy 后统一 API 与多租户 eval 的需求(工具市场、eval UI 为 演讲者观点,无公开文档)。

分屏访谈:左侧 Weaviate podcast 标识与波形装饰,右侧嘉宾夹克红色 MORNINGSTAR 字样——本期无架构幻灯片,技术主张均来自口述。


向量库选型:FAISS 验证,Weaviate 扛复制与运维边界
#

为什么FAISS 适合 POC 级稠密检索(“efficient similarity search … of dense vectors”),但 HA、复制、跨 AZ 扩缩若自建,团队时间会从 内容质量 漂移到基础设施(演讲者观点)。

机制/约束Weaviate Replication 文档写明复制可 “improve availability” 并支持 replicationFactor;这与「用托管/成熟向量库换工程焦点」的叙述同向。演讲者观点:GPT 出现后先 FAISS,后在容器内 数日 试验开源 Weaviate 并进入合作——时间线无公开案例可核。

怎么做:POC 用本地/文件索引;生产前明确 RPO/RTO、只读副本读扩展、升级策略,再决定是否自建 FAISS 集群还是向量库。

常见误区:默认「FAISS 不能上生产」——FAISS README 未否定生产,缺的是 复制与多副本语义;选型是成本曲线,不是道德判断。

画面 OCR 可见片段:Weaviate ap Niantic Mn, \dcas . =? ap, —— 品牌噪点帧,无技术图表。


摄入:SNS/SQS/Celery 削峰,而非 Kafka 叙事
#

为什么:分析师内容经 CMS 等多源涌入,embedding 调用(录制时点为 Azure 上的 text-embedding-ada-0021536 维、8192 token 上限)在高峰会成为瓶颈。

机制/约束Amazon SNS 做 topic fan-out,SQS 缓冲,Celery worker 在 K8s 上弹性伸缩——演讲者观点 明确 未采用 Kafka(与「大规模摄入必 Kafka」的默认剧本相反)。组件能力有一手文档;MIE 是否仅此组合 无法核实。

怎么做(示意)

# 伪代码:事件驱动摄入,与访谈栈对齐的方向性示例
sns.publish(TopicArn=DOC_TOPIC, Message=json.dumps({"doc_id": id}))
# SQS → Celery task: fetch → chunk → embed → weaviate batch import

常见误区:为「看起来更大数据」强上 Kafka,却缺少跨团队流处理运维;Python 栈下 队列 + worker 往往足够(演讲者观点)。

约 10 分钟段:嘉宾着 MORNINGSTAR 夹克讨论 pipeline;背景仍为分屏访谈,未见 AWS 架构图。


分块、合成问句与「小 embed、大 retrieve」
#

为什么:页界/固定长度初版块常切断语义;用户问的是 问题,块却是 陈述,向量空间不对齐会降低召回。

机制/约束

  • 演讲者观点:块间重叠、多次 全量 re-ingest、检索后 rerank;CMS pub/sub 处理 PDF/文本/JSON,部分需外部映射。
  • 合成问句嵌入:用 LLM 为块生成假设问题再 embed,因 question–question 相似度优于 question–document演讲者观点,无 Morningstar 论文)。
  • 文献侧:Anthropic Contextual Retrieval 用块附上下文再嵌入,宣称与 rerank 组合可降低失败检索(其内部评测,≠ MIE 数字);LlamaIndex Auto Merging Retriever 体现 小块检索、合并父块 的「小索引、大上下文」模式,与嘉宾口述同构,但 「embed small, retrieve big」字面口号未在 LlamaIndex 官方命中

怎么做

chunk → LLM(synthetic_questions[]) → embed each → store metadata: parent_doc_id, offsets
query → retrieve top-k synthetic hits → expand to parent span → rerank → prompt

常见误区:把摄入阶段合成问句 直接当 golden eval 或微调集——演讲者观点 称合成题主要用于检索,不默认进入 eval;若未来做合成 eval,需换模型/加噪声防 同源偏差

OCR 片段:Weaviate— podcas . go Nias May, —— 讨论 contextual chunk 时段的品牌帧。*

OCR 片段:SaAdcCoct podcast > as Nilantte Nay, —— 合成问句与 eval 边界讨论附近。

分屏:主持人侧 Weaviate podcast 墙牌与 FAU 证书,嘉宾侧 MORNINGSTAR 标识——嵌入与分块策略为口述内容。


生产 RAG 保留 ReAct:用延迟换答案质量
#

为什么:单轮 retrieve-augment-generate 在复杂金融问题上易漏工具步骤或误选语料库。

机制/约束ReAct(Yao et al., 2022)要求 “reasoning traces and task-specific actions in an interleaved manner”,每轮多一次 LLM 调用 → 延迟上升 可预期。演讲者观点:MIE 由无 agent 起步,为质量 在生产保留 ReAct;平台内 RAG 管线本身是 ReAct,而 function calling / programmatic action calling 主要服务 消费 MIE API 的下游——下游的一个 function 可再调平台 ReAct,形成嵌套。

Mermaid diagram 1

怎么做:为 ReAct 设 max_steps、超时、工具白名单;对延迟敏感路径保留 vanilla RAG 降级开关(访谈未称已实现,属工程建议)。

常见误区:因 benchmark 上 agent 更炫就全量 agent 化;忽视 逐步 eval 成本 随步骤数爆炸(嘉宾对比 LangGraph 式工作流的 StateGraph 可观测性,自身更偏 工具描述 + ReAct 选型演讲者观点)。

约 20 分钟:嘉宾讨论 agent 与延迟;画面仍为双主持人分屏,无延迟曲线图。

分屏访谈帧:左侧 Weaviate podcast 标识,右侧 MORNINGSTAR 夹克——多 agent / AutoGen 讨论时段。

延伸(未上线边界)Microsoft AutoGen 仅 POC,适合 后台多轮 + 缓存 insightReflexion 论文在 HumanEval 报 pass@1 提升——与嘉宾口述 SQL「约 80–83%」不同任务、不同指标,不可混用


工具市场与「多 Agent」:路由优于组织隐喻
#

为什么:金融场景工具多(RAG、SQL、自定义 API),需要 discoverability 与隔离,而非给 LLM 编「CEO/市场部」角色剧。

机制/约束演讲者观点——Tool marketplace 发布容器内运行的自定义 API;ReAct 读 工具描述 + prompt 选工具;Deploy 后统一 API 暴露。上线形态更像 共享 Morningstar RAG tool + 按 agent 附加 SQL 等工具的路由,而非 multi-agent 组织隐喻(演讲者观点)。

常见误区:用 AutoGen 多角色直接扛终端用户请求——嘉宾称 延迟与 eval 难度 使其更适合批处理(演讲者观点)。

OCR:Weaviate DOC 1 oa Ailantir Unt, —— tool marketplace 讨论段的品牌帧。


Eval:golden Q&A 与 meta-evaluation,而非摄入合成题
#

为什么:换模型、temperature 或灌入大批量新文档时,需要可重复对比,否则无法向业务方证明「变好了」。

机制/约束演讲者观点——内置 golden Q&A;指标含 accuracy、conciseness、groundednessmeta-evaluation;非工程师可用 UI 上传 eval。无法核实 MIE 指标公式与是否实现 pass@k。公开 RAG eval 常配合 LLM-as-judge,但 与 Spider/BIRD 等 SQL leaderboard 不是同一套度量

怎么做:固定 问题集版本 + 检索快照 + 模型版本 三维;变更 embedding 模型时按 Azure 文档 对 ada-002 → text-embedding-3-* 全量重嵌

常见误区:用摄入合成问句当 eval——易 过拟合检索器 且与真实用户问法分布脱节(演讲者观点)。

约 14 分钟 eval 讨论:分屏画面,无指标仪表盘截图。


text-to-SQL:schema 工程与口述准确率的上限
#

为什么:结构化持仓、评级、指标查询若全靠向量检索,成本高且难保证聚合正确。

机制/约束演讲者观点——早期即有 text-to-SQL POC;在 少量表(<10)且列名自解释 时口述 约 80–83%无 benchmark 名、无 pass@1/execution accuracy 定义,无法核实)。工程手段:为列提供 rating_id 整数 避免对文本 rating 误 AVG;用 数据库视图 减 join;只读 SQL 角色LIMIT、聚合尽量下推 SQL;错误时 SQL agent 重试。公开对照仅能用 Spider 2.0 等社区套件说明行业基准存在,不能证实或反驳 80–83%。

怎么做

-- 只读角色 + 行数上限(示意)
SET ROLE mie_readonly;
SELECT rating_id, AVG(metric) FROM v_fund_ratings GROUP BY 1 LIMIT 100;

常见误区:表一多、列名缩写就期待通用模型「接近可用」;或把 Reflexion 论文 91% pass@1 HumanEval 误读为 SQL 成绩。

约 36 分钟 text-to-SQL 段:嘉宾 MORNINGSTAR 夹克、分屏访谈,无 SQL 准确率图表。


权限与合规:源头不 ingest,检索前 filter
#

为什么:生成后屏蔽单句无法挽回已泄露的向量;金融数据还有 domicile、entitlement 维度。

机制/约束演讲者观点——非公开敏感内容 尽量不进入向量库;已入库对象带 metadata,在请求到达 Weaviate/LLM 之前 按 entitlement 收窄或拒绝。库侧能力:Weaviate Filters 支持属性过滤;Weaviate v1.28.0 引入 RBAC Preview“roles and permissions … Isolation is at the collection level”preview API 可能变更)——主持人提及,可与业务 entitlement 叠加强度未知

Mermaid diagram 2

常见误区:只靠 RAG 后处理 redact;忽视 Python 工具必须沙箱,否则退回 限定 function 集演讲者观点:SQL 默认可用只读角色,Python 风险更高)。


Guardrails 与模型栈:外购 vs 自建、微调 vs prompt
#

为什么:模板化合规(免责声明、禁止投资建议措辞)与输入输出双侧检查,外包服务在金融场景常不够用。

机制/约束演讲者观点——试过多家 guardrails-as-a-service 后倾向 in-house;平台将支持客户 自带 guardrail(规则/小模型/LLM prompt)。文风上小规模 Llama 微调「response was okay」,短文章 GPT-4o + prompt 已够用(gpt-4o 在 Azure 模型表可查);大规模研报仍靠分析师。演讲者观点

常见误区:认为金融文风必须微调;或 overnight 自动生成研报可无人值守——嘉宾称仍属 研究产物、需人工审阅,多模态图表风险更高(演讲者观点)。

嘉宾红色 MORNINGSTAR 字样与左侧 Weaviate podcast 墙牌——收尾段身份标识帧。


若你要落地
#

  1. 先画权限与数据分级:敏感未公开材料默认不进向量库;检索链路上 filter 早于 embed 查询,并对照向量库 复制/RBAC 能力做威胁建模。
  2. 摄入与 eval 解耦:合成问句服务召回;golden Q&A 单独维护,换 embedding 模型时计划 全量重嵌 + eval 重跑
  3. Agent 分层:终端路径控制 ReAct 步数;批处理/insights 缓存可考虑 AutoGen 类框架,但别与前台抢同一 eval 矩阵。
  4. text-to-SQL 先缩 schema:视图 + 只读角色 + LIMIT;口述准确率区间需 自建 benchmark,勿引用无关论文指标。
  5. 录制时点模型已老化:ada-002 与 GPT-4 系列在 2025+ 部署前查 Azure/OpenAI deprecations,避免维度变化导致静默检索退化。

参考与延伸阅读
#

相关文章