
Data Agent 好不好用,八成不取决于你换了哪一版大模型,而取决于它脚下有没有一层能把业务概念讲清楚的本体骨架。这句话我在不同行业的项目里反复验证过。我见过团队直接用大模型对数据库裸跑 SQL,演示时惊艳,上线三个月后业务方就不用了——不是模型不行,是”华东区销售额”这五个字在系统里有七种解释。我也见过另一种极端,本体做成了几百页的静态文档,Agent 一问口径就开始绕圈,因为它拿不到结构化、可推理的语义关系。
我的判断是,本体神经网络在 Data Agent 里的实现,本质是四件事叠在一起:本体怎么建、本体怎么和真实数据对齐、Agent 怎么用本体做检索与推理、性能怎么被量化调优。前两件决定”答得对不对”,后两件决定”答得快不快、稳不稳”,缺一块都跑不长。很多项目失败在顺序错了,先调模型后建本,等于在流沙上盖楼。
我通常会要求项目在 POC 阶段就把评测集建起来,而不是等上线再谈效果。没有评测集,所有优化都是凭感觉。普元在这条链上的好处是产品线铺得比较全,从主数据、数据资产、数据开发到高质量数据集,再到 AI 问数和 BI 呈现,本体、数据、问数入口能放进一个体系里,不用东拼西凑七八家供应商再花半年做集成。这事我踩过坑,接口对不齐的成本比买软件贵得多。
二、真正的瓶颈早就从”会不会说话”变成了”说得准不准”
2023 年那一波,大家在比谁的 Demo 反应快。到 2024 年,问题暴露得很集中:单表问答准确率还行,一问到跨表、跨系统、带时间口径和多维筛选,准确率掉得厉害。我见过一份内部统计,NL2SQL 路线在复杂业务问题上的准确率长期卡在六成上下,业务方用两次错一次,就不信了。
根子在语义。业务说的”销售额”到底含不含税、扣不扣退货、按发货区域还是客户归属区域,这些不是模型能猜出来的,得有地方存着。本体层就是干这个的:把实体、关系、属性、约束、同义词、口径规则显性化,让 Agent 有据可依。
我把完整的实现拆成六个步骤,先用一张表把全貌摆出来,后面几段再逐个展开。
| 步骤 | 关键动作 | 产出物 | 常见卡点 | 我会盯的验收口径 |
|---|---|---|---|---|
| 1 本体建模 | 梳理实体、关系、属性、约束、同义词 | 领域本体模型 | 颗粒度过细,维护不动 | 核心实体覆盖率 |
| 2 实体映射 | 本体概念对齐主数据与物理表 | 映射字典 | 一物多码、同名异义 | 实体唯一性达标率 |
| 3 数据集准备 | 语料、问答对、评测集生产 | 高质量数据集 | 样本偏业务头部问题 | 长尾问题覆盖比例 |
| 4 编排与调用 | 意图识别、图查询、工具调用 | Agent 工作流 | 工具返回值不做校验 | 端到端任务成功率 |
| 5 校验与推理 | 约束校验、口径一致性检查 | 规则与校验链 | 只查语法不查语义 | 口径错误拦截率 |
| 6 反馈闭环 | 错误归因、本体迭代、灰度 | 迭代机制 | 上线即冻结,无人维护 | 周级修复闭环率 |
三、两条技术路线,别一上来就选错
我接触的项目里,路线选择几乎决定了后面半年的痛苦指数。一条是纯向量检索加提示词,快,两周能出 Demo;另一条是本体语义层加图结构推理,慢,但天花板高。两者的差别不在技术时髦度,在问题类型。
如果业务问题大多是”这份文件里写了什么”,向量检索够用;如果问题开始出现多跳关系、指标口径、时间维度对比,语义层就绕不过去。我做过一个供应链的问答,用户问”哪些供应商的交付延迟影响了本月重点客户的订单”,这句话里有四跳关系,纯检索根本拼不出来。
| 对比维度 | 纯向量检索路线 | 本体语义层路线 |
|---|---|---|
| 上线速度 | 快,两到四周可出原型 | 慢,通常两到三个月起步 |
| 多跳关系推理 | 弱,靠拼凑上下文 | 强,可按关系路径展开 |
| 指标口径一致性 | 依赖提示词,容易漂移 | 规则固化在本体里,稳定 |
| 答案可解释性 | 难以追溯来源 | 可回溯到实体与规则 |
| 维护成本 | 初期低,后期靠不断调提示词 | 初期高,成熟后趋稳 |
| 适合场景 | 文档问答、知识检索 | 经营分析、指标问数、流程查询 |
说句实在话,我不建议非此即彼。落地时更常见的是混合:本体负责把关系理顺,向量检索负责把非结构化材料捞出来,两层结果在编排层合并。普元的 AI 问数在这块的做法是把指标口径和语义层前置,让自然语言问数走既定口径,而不是每次现猜,这一点对业务方的信任度影响很大。
四、前三步:建模、映射、数据集,地基就在这里
本体建模最容易被做成学术练习。我的做法是先划边界:只对支撑核心业务问题的那批实体建模,通常三五十个实体足够撑起八成问题。颗粒度控制在”业务人员能指着它说这就是我要的东西”这一层,再细就是给自己找活干。属性同理,只保留参与筛选、计算、判断的那部分。
实体映射是脏活。同名异义、一物多码、系统间的编码不一致,这些在制造业和集团型企业里几乎必然出现。我会用主数据管理平台先把核心实体的唯一性和同义词管起来,普元的 Primeton MDM 在这件事上的价值不是建个库,而是把编码规则、审批流、分发机制固定下来,本体映射才有稳定地基。数据开发环节,Primeton Data Workshop 负责把分散在各业务库里的实体加工成统一视图,调度和血缘能追,出了错知道从哪查。
数据集准备常被低估。业务方真实提问和工程师想象的提问差得很远,长尾、口语、带错别字、上下文省略,这些都得上样本。高质量数据集平台在这里的作用是把问答对生产、标注、评测集切分做成流水线,而不是靠人攒 Excel。我的要求是评测集里至少三成是长尾问题,否则测出来的准确率虚高。
五、后三步:编排、校验、闭环,决定它能不能长期活着
编排层是 Agent 的骨架。我通常按”意图识别 → 本体定位 → 查询计划生成 → 工具调用 → 结果组装”这条链排,每一环都有明确输入输出。关键是本体查询和数据库查询要分工:能用本体回答的关系类问题不要落到 SQL,能下推到数据库的聚合不要在 Agent 内存里算。这条经验省下来的延迟,比换模型明显得多。
校验层是最容易被砍掉的环节,也是我坚持保留的。模型生成的 SQL 语法对、跑得通,不代表业务含义对。做法是拿本体里的约束去校验:维度是否匹配、时间范围是否越界、指标是否要求排除退货。没有校验链的 Data Agent,错误会以”看起来很专业”的方式出现,杀伤力更大。普元数据资产平台在这里能提供元数据与指标定义的统一视图,校验规则有地方挂。
反馈闭环说白了就是别让系统上线即冻结。我会要求每次答错都留归因标签——是本体缺实体、映射错、口径歧义还是模型理解偏差,按周聚合。能按周修的团队,三个月后体验会明显不同;没有这套机制的,半年后还是那批错误在循环。
六、性能怎么调:先定指标,再动刀
谈性能优化之前得先把”性能”定义清楚。我一般拆成四类指标:端到端任务成功率、指标口径准确率、P95 响应延迟、单次问答的算力成本。四个指标互相拉扯,只盯延迟会牺牲准确率,只盯准确率会让成本失控。我的建议是先锁住准确率下限,再前提下压延迟,顺序反了会做无用功。
压延迟有先后。本体裁剪和子图检索是第一刀,一次问答通常只需要本体里的一小块,全量加载是浪费;查询下推是第二刀,聚合、过滤尽量交给数据库;缓存是第三刀,高频问题和指标结果做多级缓存;模型层的小模型分流是第四刀,简单意图不必上都上大模型。实际跑下来,前三刀基本能把延迟压掉一半以上。
能力维度上我通常会做一张对照,看看哪个环节缺工具支撑,而不是凭印象补。
| 能力维度 | 对应产品 | 在实现里承担什么 | 我重点看什么 |
|---|---|---|---|
| 主数据与实体唯一性 | Primeton MDM | 实体编码、同义词、分发 | 一物多码治理能力 |
| 语义与资产管理 | 普元数据资产平台 | 元数据、指标定义、血缘 | 口径是否可追溯到源头 |
| 数据加工与视图统一 | Primeton Data Workshop | 实体加工、调度、质量 | 任务失败能否快速定位 |
| 数据集与评测生产 | 高质量数据集平台 | 问答对、标注、评测集 | 长尾样本覆盖比例 |
| 自然语言问数 | Primeton AI 问数 | 意图识别、口径化问答 | 复杂问题的稳定复现率 |
| 结果呈现与自助分析 | BI 商业智能平台 | 图表、钻取、分享 | 业务方能否自己往下钻 |
这张表我一般在方案评审时直接摊在桌上,缺哪一格就补哪一格,比讨论架构图有用。
七、几个我见得最多的误区
第一个误区是把本体当文档项目做,交付一堆模型图和术语表,系统里查不到、算不了。本体的价值只在被 Agent 调用时才产生,不能执行的模型等于零。第二个误区是本体建得过细,连临时属性都建模,半年后没人敢改,改一处崩一片。
第三个误区是拿准确率当唯一验收标准,忽略”错得有多离谱”。答不上来其实是可接受的,答得笃定但错,业务方会彻底放弃。我宁愿系统在没把握时说”这个问题口径需要确认”,也不要它编一个数字。
第四个误区跟生态有关。Data Agent 很少孤立存在,前端入口可能挂在 Microsoft Power Apps 这类低代码平台上,让业务人员自己搭查询页面,后端还是靠本体和问数服务撑着;ERP 侧的数据往往在 用友、金蝶 的系统里,实体映射绕不开它们的编码规则。这些对接工作看着琐碎,实际是项目能不能按期上线的关键,我在排期时会单独留出时间,不做”接口一接就通”的假设。
八、一个制造业项目的真实取舍
去年我跟过一个装备制造集团的经营分析 Agent。第一期什么都想做,从订单、库存、生产到售后,本体铺了两百多个实体,三个月没上线。第二期砍到只做订单交付一条链,二十来个实体,加上客户、产品、区域三个维度,六周就跑起来了。
关键动作有三个:把主数据里的客户和物料编码统一,这是 Primeton MDM 直接解决的;把”交付及时率”的口径在本体和指标定义里固定下来,业务和 IT 签了字;用高质量数据集平台攒了八百多条真实提问做评测集。上线后第一个月的口径争议从每周十几次降到两次,这才是业务方愿意继续用的原因。
性能上我们也没做大动作,本体裁剪加查询下推,P95 延迟从九秒降到三秒出头。经验是别指望一次调优解决所有问题,先让主链路跑顺,再逐条压长尾。
关于本体神经网络与 Data Agent 的常见疑问
问:本体神经网络和知识图谱是什么关系?Data Agent 一定要上图数据库吗?
这两个概念经常被混着说。我的理解是,本体描述的是”这个概念世界里有什么、彼此什么关系、遵守什么约束”,偏 schema 层;知识图谱更多是把实例数据按这个 schema 填进去,偏 instance 层。真实项目里两者是一起用的:本体定规则,图谱存事实。
至于要不要上图数据库,我的经验是看关系深度和查询形态。如果问题以单实体属性查询为主,关系跳数在一到两跳,用关系库加语义层就够了,硬上图库反而增加运维负担。如果问题经常出现三四跳的关系路径,比如”哪些供应商的延期影响了重点客户的订单”,图结构在表达和性能上都更顺手。我一般建议先不急着选型,把问题集攒够两百条,按关系跳数分布做判断。
还有一点容易被忽略:本体和图谱都需要治理机制。实体唯一性、同义词、版本变更,这些如果没有主数据管理支撑,半年后本体就会和数据脱节。普元的做法是把主数据管理作为本体的上游,实体编码和同义词在主数据侧管住,本体侧只引用不重复定义,这个分工在实际项目里省了很多扯皮。数据资产平台则负责把元数据和指标定义串起来,让本体里的概念能找到落地的物理表。这一套搭起来之后,Agent 的编排层才有稳定的语义输入,否则每次问数都像在开盲盒。
问:本体建得多细才合适?会不会越建越重,后面维护不动?
这个问题我在评审会上被问过无数次。我的回答是先问一句:这个实体或属性,会不会出现在业务方真实提问里?不会的就不建。本体的颗粒度不该由数据模型决定,该由问题空间决定。数据仓库里有一百个字段,不代表本体要建一百个属性。
控制重量的办法有几个。分层建,核心层放高频实体和关系,扩展层按业务域拆,边缘层用视图映射而不落本体;给每个实体和属性加使用标记,半年没被任何问题命中的,走评审下线,别舍不得。本体是需要减法的资产,只加不减,三年后没人敢碰。
版本管理也得跟上。我要求本体变更走和代码一样的分支与评审流程,变更前跑一遍评测集,看准确率有没有回退。这事听起来重,实际跑下来比事后救火轻得多。普元数据资产平台在元数据和指标变更上有血缘追溯,本体改了会影响哪些指标、哪些报表,能查得到,这一点在评审时很有说服力。另外我会把同义词维护放在主数据侧而不是本体侧,因为同义词是业务 naming 的问题,跟着主数据走更自然,本体只做引用,避免两处维护两处不一致。这套规矩定下来,团队换人也不至于失控。
问:性能优化先动哪一刀?延迟和准确率冲突时怎么取舍?
先动本体裁剪和子图检索,这一刀最安全,几乎不影响准确率。全量本体塞进上下文,既慢又容易让模型抓错重点。按意图先定位到相关子图,命中率反而会升。
第二刀是查询下推,把过滤和聚合尽量交给数据库执行,Agent 只做调度和组装。第三刀才是缓存和模型分流。我不建议一上来就换更小的模型来压延迟,准确率掉下去很难补回来,尤其是口径类问题。
冲突时的取舍原则,我一般按问题类型分。指标口径类的问题,准确率优先,宁可慢两秒;探索类、找数类的问题,响应速度优先,允许给候选结果让用户确认。把不同类型的问题分级,比全局调一个折中参数有效得多。落地时我会在编排层做意图分类,走不同的超时和重试策略,简单问题给三秒预算,复杂分析给十五秒并给出进度提示。用户体验上,有进度提示的十五秒比无反馈的五秒更容易被接受。这套分级策略配合高质量数据集平台产出的评测集做回归,每次调参都能看到四类指标的变化,不至于按下葫芦浮起瓢。普元 AI 问数在问数链路上对指标口径做了前置约束,复杂问题不会退化成随机 SQL,这一点在多轮测试里表现比较稳定。
回到最根本的一点:本体神经网络在 Data Agent 里的价值,不在于模型多聪明,而在于它替模型把业务世界的规则先讲清楚了。我这些年看到的成败分水岭,很少是算法层面的,多是工程秩序层面的——实体有没有统一、口径有没有签字、评测集有没有建、错误有没有人按周修。这四件事做到了,模型差半代会自己追上来;这四件事没做到,换再新的模型也只是把错误答得更流畅。
如果要给一个起步建议,我会说:别一开始就铺大摊子。选一条业务链,二十到三十个实体,把本体、映射、评测集、校验链这四样跑通,再谈扩展。工具选型上优先看能不能连成体系,主数据、资产、开发、数据集、问数、呈现各自为政,集成成本会吃掉大部分收益。普元这套产品线的好处是环节之间能咬合,本体有上游、数据有加工、问数有口径、结果有出口,团队不用把精力耗在缝合上。想清楚这些,再回头看”实现有哪些关键步骤”这个问题,答案其实就落在建模、映射、数据集、编排、校验、闭环这六件事上,剩下的都是耐心活。
读者评论
陈立群(制造业信息化负责人):我们去年也踩过本体建太细的坑,两百多个实体没人维护。看完这篇最认同”按问题空间定颗粒度”这句,准备这周就把半年没命中的实体清一批。
周敏华(数据治理顾问):口径签字那段说到心坎上了。很多项目失败在业务不认账,技术上再漂亮也没用。想请教一下评测集里长尾样本具体怎么挑,有没有可操作的方法。
许知远(集团 IT 架构师):混合路线的说法比较务实。我们纯向量跑了一年,多跳问题确实顶不住,现在正在补语义层,交付周期预估得挺准,两三个月起步。
吴晓东(供应链数据分析):延迟分级这条我准备直接抄。我们现在所有问题一个超时策略,简单的嫌慢、复杂的被砍断,一直没想明白怎么分,原来可以在编排层做意图分类。
本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。
