【智图译站】ARAG——一种创新的RAG框架及其在城市时空问答的应用

近年来,大型语言模型(LLMs)如 GPT 系列、ERNIE-Bot 系列、Gemini 取得突破性进展,显著推动了问答系统的发展,尤其在数据分析与信息检索领域形成两大核心研究方向:LLM 驱动的数据分析与检索增强生成(RAG)。在LLM能力持续发展之下,催生了大量以闲聊和简单工具调用问答为代表的语音助手产品形态。但是,我们不难看到,在专业领域的大量复杂问题的解答,仍然依赖人工的分析推理。这是因为社会经济领域的复杂任务(如 经济增长归因、指标动态解读、分析选址等)对技术提出了更高需求,这类任务既需要分析结构化的统计数据(如各行业产值变化),又需要检索非结构化的外部信息(如政策调整、公共卫生事件等新闻报道),现有独立方案无法满足此类 "结构化 + 非结构化" 协同推理的需求。

为此,我们提出了一种创新的检索增强生成(RAG)框架:ARAG,旨在解决RAG推理中的三大核心问题:

  • 技术分离局限:现有 LLM 数据分析与 RAG 方案独立部署,无法协同处理 "需结构化数据 + 非结构化信息" 的复杂任务(如社会经济指标解读);
  • 数据格式适配性差:LLM 数据分析仅支持结构化数据,RAG 仅支持文本检索,两者均无法覆盖多格式数据需求;
  • LLM 幻觉与事实准确性问题:现有系统在处理用户可能存在错误假设的查询时,易生成不符合事实的回答,缺乏有效的事实核查与抗幻觉机制。

应用该框架,我们提升了RAG的准确率,同时基于此孵化出了业内首个面向时空大数据的生产力问答产品------"小度想想"慧眼版。

在通用的RAG解决方案之上,本方案的创新点在于:

  • 框架创新:首次提出整合 "LLM 驱动的结构化数据分析" 与 "RAG 非结构化信息检索" 的 ARAG 框架,解决两者单独使用的局限性;
  • 模块设计:设计细节化的模块流程(如指标匹配、时间敏感检索、多标准过滤),确保系统精准性与可靠性;
  • 可扩展性:ARAG 虽针对社会经济数据设计,但可推广至所有需要 "结构化数据 + 非结构化信息" 协同推理的任务。

    ARAG 系统的整体流程分为 "预处理 - 双模块协同 - 结果整合" 三阶段,核心是数据分析模块与RAG 模块,预处理阶段为双模块提供精准输入。

PART1 预处理:实体提取

首先利用 LLM 从用户查询中提取关键实体,确保后续模块精准聚焦目标,提取的实体包括三类:

  • 地理实体(如 "北京")
  • 时间实体(如 "2023Q1")
  • 目标实体(如 "火锅店")

**PART2 核心模块一:**数据分析模块(Data Analysis Module)

该模块负责分析 "主指标(用户查询指定的指标)" 与 "影响指标(IF 指标,影响主指标的关联指标)" 的变化规律,输出量化分析结果,关键步骤如下:

**1.主指标匹配:**解决术语不一致问题。用户查询中的指标术语(如 "GDP")可能与数据库列名(如 "Gross Domestic Product")不匹配,系统通过两步解决:

  • Step1: 向量搜索

从数据库中检索与查询实体最相似的 Top3 列名;

  • Step2: LLM 筛选

利用 LLM 确定与查询实体最匹配的列名,确保指标定位准确。

**2.指标变化分析:**主指标与 IF 指标的量化计算

  • 主指标分析:针对用户指定的时间范围(如 2023Q1),分析主指标的变化(如 GDP 同比增长率);
  • IF 指标识别与分析:通过预定义知识图谱获取与主指标关联的 IF 指标(知识图谱由 LLM 从政府报告、经济新闻中提取指标关系);
  • 代码生成:利用 LLM 生成 Python 代码,自动计算 IF 指标在同一时间范围的变化。

**3.对齐检查:**减少幻觉与确保相关性

为避免基于错误假设生成回答,模块设计两步对齐流程:

  • Step1: 事实对齐

LLM 检查指标实际变化与用户查询描述是否一致(如用户问 "GDP 增长" 但分析显示 "下降",需在回答中明确告知差异,修正用户可能的错误假设);

  • Step2: 相关性对齐

LLM 梳理主指标与 IF 指标的变化关系,验证 IF 指标变化是否与用户查询相关,避免无关指标堆砌,确保分析聚焦核心问题。

PART3 核心模块二:RAG 模块(Retrieval-Augmented Generation Module)

该模块负责检索与用户查询相关的非结构化信息(如新闻、报告),为回答提供上下文支持,分三步实现 "精准检索 - 严格筛选 - 可靠总结":

  • Step1: 时间敏感检索(Time-Sensitive Retrieval)

考虑到社会经济问题的时间关联性(如 "2023Q1 GDP" 相关新闻多发布于当季或下季),系统先基于文档元数据(发布日期)过滤 "目标时间窗口内" 的文档块,再通过 "查询向量 - 文档块向量相似度计算" 检索相关内容,既提升检索效率,又避免无关时间的信息干扰。

  • Step2: 多标准过滤(Multi-Criteria Filter)

利用 LLM 对检索到的文档块进行三重严格筛选,仅保留满足所有标准的内容:

  • 指标相关性:文档内容是否与查询中的核心指标(如 GDP)相关;
  • 时间对齐:文档提及的时间范围是否与查询时间一致;
  • 地理相关性:文档提及的地点是否与查询地理实体匹配。
  • Step3: 源参考总结(Source-Referenced Summary)

LLM 基于过滤后的文档块生成总结,并强制纳入文档元数据(如来源标题、网站、URL),确保回答可追溯,同时限制总结内容不超出检索范围,进一步减少幻觉。

PART4 性能评估:对比与消融实验

1.与现有系统对比:ChatGPT-4o Search vs Perplexity。采用G-Eval 评估方法(用 ERNIE-Bot 4.0 作为评估器),从 4 个维度(0-5 分,分数越高越好)对 50 个查询的回答进行评估(每个查询评估 5 次以确保稳健性),结果如图 4 所示:ARAG 在 "领域相关性""时间相关性""信息丰富度""分析深度" 四个维度均显著优于 ChatGPT-4o Search 和 Perplexity,证明整合数据分析与 RAG 的优势。

2.消融实验:验证双模块的必要性。移除 ARAG 的 "RAG 组件(w/o RAG)" 或 "数据分析组件(w/o A)" 后,所有维度分数均下降:移除 RAG 组件导致 "分析深度" 显著下降,移除数据分析组件导致 "领域相关性" 与 "信息丰富度" 显著下降,证实双模块对系统性能的核心作用。

3.幻觉测试:对抗性事实核查。设计 20 个 "事实错误查询"(如 "为何北京GDP 下降?",实际北京GDP 增长),ARAG 成功检测所有错误(20/20),ChatGPT-4o Search 仅检测 8 个,Perplexity 未检测任何错误,证明 ARAG 的抗幻觉能力更优。

在城市时空大数据问答智能体领域,ARAG 框架凭借其 "结构化数据分析与非结构化信息检索深度整合" 的核心优势,能有效破解传统选址智能体信息碎片化、决策依据单一、易受错误信息干扰的痛点,释放显著潜在价值。

城市地理选址需同时依赖量化数据支撑与动态上下文信息 ------ 例如企业选址时,既需分析目标区域的人口密度、交通流量、产业集聚度、租金水平等结构化指标(如从城市统计数据库提取的商圈日均人流量、地铁站点覆盖率),也需获取该区域最新的政策规划(如政府发布的产业扶持政策)、配套建设动态(如学校、医院落地新闻)、市场反馈(如周边商户经营评价)等非结构化信息,而 ARAG 的双模块设计恰好精准匹配这一需求。

ARAG的数据分析模块可通过向量搜索解决选址指标术语不统一问题,再结合预定义知识图谱挖掘关联指标(如 写字楼空置率与周边餐饮配套完善度 的潜在关联),通过 LLM 生成代码量化分析指标变化;而 RAG 模块的时间敏感检索能聚焦选址决策窗口期内的关键信息(如近 6 个月的区域规划新闻),多标准过滤进一步确保信息与选址的地理、时间、指标维度强相关,源参考总结则让政策、新闻等信息可追溯,避免智能体因依赖过时或无关信息导致决策偏差。

此外,ARAG 突出的抗幻觉能力(在前文的测试中 100% 检测事实错误),能帮助智能体甄别虚假规划传闻、误传的交通建设周期等干扰信息,确保决策依据的真实性。

基于这套创新的RAG框架,结合多模态展示和海量地理大数据,百度地图推出了"小度想想"的慧眼版,服务于时空大数据分析、选址类场景的问答。对创业、区域规划和相关领域的研究人员,提供了强大的生产力工具。

当用户问:北京哪里开火锅店更赚钱?智能体结合百度地图海量地理大数据和大量相关互联网知识,给出了高置信、低幻觉的思考,还能够进一步给出行动计划。

ARAG 能为时空大数据智能体提供量化数据 + 动态上下文的双轮支撑,既提升了选址分析的精准度与全面性,也增强了决策的可靠性,尤其适用于商业网点布局、产业园区选址、公共服务设施(如学校、医院)落点等场景,助力智能体从单一数据驱动升级为数据与信息协同推理的高效决策工具。

相关推荐
NAGNIP5 小时前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
冬奇Lab6 小时前
一天一个开源项目(第36篇):EverMemOS - 跨 LLM 与平台的长时记忆 OS,让 Agent 会记忆更会推理
人工智能·开源·资讯
冬奇Lab6 小时前
OpenClaw 源码深度解析(一):Gateway——为什么需要一个"中枢"
人工智能·开源·源码阅读
AngelPP10 小时前
OpenClaw 架构深度解析:如何把 AI 助手搬到你的个人设备上
人工智能
宅小年10 小时前
Claude Code 换成了Kimi K2.5后,我再也回不去了
人工智能·ai编程·claude
九狼10 小时前
Flutter URL Scheme 跨平台跳转
人工智能·flutter·github
ZFSS11 小时前
Kimi Chat Completion API 申请及使用
前端·人工智能
天翼云开发者社区12 小时前
春节复工福利就位!天翼云息壤2500万Tokens免费送,全品类大模型一键畅玩!
人工智能·算力服务·息壤
知识浅谈12 小时前
教你如何用 Gemini 将课本图片一键转为精美 PPT
人工智能
Ray Liang12 小时前
被低估的量化版模型,小身材也能干大事
人工智能·ai·ai助手·mindx