项目

AI 智能投研问答系统

面向研究员和投顾的企业投研 RAG 问答系统,支持多轮追问、混合检索、流式回答和来源追溯。

  • Python
  • TypeScript
  • RAG
  • LLM
  • BM25
  • Vector Search
  • SSE
接入数万份内部研报与千万级新闻,问答约 3–5 秒首字、十余秒成稿,支持十余轮连续追问将内部研报、新闻和标签体系统一到可追溯的问答链路通过问题重写、时间抽取和实体识别处理口语化投研问题回答基于检索证据生成,支持点击查看来源片段

这个项目不是公开 SaaS,而是一个面向企业内部研究与投顾场景的投研问答系统。目标很直接:让研究、顾问和相关业务用户用自然语言提问,系统从内部研报、金融新闻和结构化标签里检索证据,再生成可追溯的回答。

我在这里主要关注工程链路,而不是把它包装成一个客户案例。项目的核心价值不在于“接了大模型”,而在于把非结构化投研资料、金融标签、上下文追问和证据引用做成一条可交付、可维护的 RAG 流程。

问题定义

投研问答和通用知识库问答不太一样。用户经常不会把问题说完整,比如“它最近怎么看”“换成美联储口径呢”“有没有相反观点”。如果系统只拿当前这一句话去向量检索,很容易找错主体、错过时间范围,或者把无关新闻拼成一个看似合理的答案。

另一个麻烦是可信度。金融场景里,模型不能凭印象补全数据,也不能把没有检索到的信息说得很确定。因此这套系统的约束是:回答必须基于检索材料,来源要能回点,证据不足时要明确说明。

技术栈

  • 后端:Python 服务,负责任务编排、检索、上下文处理和回答生成
  • 前端:TypeScript 页面,支持对话、流式输出和证据展开
  • 检索:BM25、向量相似度、标签过滤和混合召回
  • 生成:LLM 问题理解 + LLM 回答生成的两段式链路
  • 传输:SSE 流式返回,减少用户等待感
  • 数据:脱敏后的内部研报、新闻、元数据、标签和引用片段

架构与模块

系统按“理解问题 - 检索证据 - 生成回答 - 追溯来源”的链路拆分。

第一步是问题理解。模型会结合最近若干轮上下文,把口语问题重写成可检索的问题,同时抽取实体、关键词和时间范围。这里不会假设“最近”永远是同一个跨度,而是根据问题类型和上下文转成更明确的检索条件。

第二步是并发检索。系统会根据问题类型选择不同策略:有明确实体和标签时优先走精确过滤;需要扩展观点时再补充 BM25 和向量召回;对时效性强的问题会提升近期材料权重。这样做比单纯依赖向量召回更可解释,也更符合金融资料已有标签体系的特点。

第三步是回答生成。生成模型只接收检索到的片段、用户问题和必要的上下文,前端通过 SSE 展示流式输出。回答完成后,用户可以展开来源,查看引用对应的研报或新闻片段。

投研问答的流式回答界面

我的负责部分

我负责把投研问答从“能演示”推进到“能在真实业务里使用”的工程链路,包括:

  • 设计问题重写、实体抽取、时间范围抽取和检索参数生成流程
  • 组合 BM25、向量检索、标签过滤和时间权重,形成混合检索策略
  • 约束回答生成只基于检索证据,并在无充分材料时降级为“不确定/未找到”
  • 设计多轮对话上下文的保留和压缩策略,处理指代消解和主题延续
  • 对接前端流式输出与证据展示,让用户可以边看回答边回查来源
  • 参与调试典型失败样本,例如主体错配、时间范围错判、来源不足和观点混杂

难点与处理

最容易低估的是“问题理解”。投研用户不会按检索语法提问,他们会沿着上一轮对话继续问。处理方式是先把用户问题转成独立问题,再生成检索参数,而不是直接把原句丢进检索器。

第二个难点是召回策略。金融资料本身有成熟标签体系,如果完全依赖向量检索,结果有时看起来语义相近,但业务标签并不匹配。项目里采用标签优先、关键词和向量补充的方式,在召回覆盖率和可解释性之间取平衡。

第三个难点是回答边界。模型生成能力越强,越容易在证据不足时补话。这里通过提示词约束、证据片段输入限制和前端引用展示,把“能不能回答”变成系统行为的一部分,而不是只靠模型自觉。

回答证据来源展示

运行与交付形态

项目以企业内网应用形态交付,包含后端问答服务、检索服务对接、前端对话界面、数据接入脚本和基础运维配置。系统接入数万份内部研报与千万级新闻,提问后约 3–5 秒开始流式输出、十余秒给出带来源的完整回答,并支持十余轮连续追问。由于涉及非公开研报、新闻源、业务标签和内部部署环境,没有公开仓库或在线演示。

可公开展示的是脱敏后的交互截图和架构描述。页面中所有业务规模、客户身份、模型细节和内部数据结构都已泛化处理,避免通过组合信息还原具体客户。

链接

如果你正在做企业 RAG、知识库、AI 客服或 Agent 工作流,可以通过页面下方微信二维码或邮件沟通,邮箱:contact@aildnc.com

联系

预约一次 30 分钟技术诊断

正在评估企业知识库、AI 客服或 Agent 工作流时,可以先发问题背景。我会先帮你判断是否值得做、怎么做,以及主要风险在哪里。

微信二维码 优先加微信沟通