六弦五指 發表於 2025-9-5 11:03:00

你的ChatBI(问数)准确率不到50%?带你深度拆解90%准确率的高德ChatBI案例

<p><span style="font-family: &quot;Microsoft YaHei&quot;">"我们的ChatBI上线半个月,准确率不到50%,老板问我们是不是在做假demo..."</span></p>
<p><span class="js_darkmode__0" style="font-family: &quot;Microsoft YaHei&quot;">如果你在做ChatBI,或正在评估要不要上ChatBI,相信你遇到过类似问题。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__1">很多团队以为</span>"<span class="js_darkmode__2">ChatBI就是用大模型做自然语言到SQL的转换</span>"<span class="js_darkmode__3">。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__4">有时还会被</span><span class="js_darkmode__5">领导质疑:</span>"<span class="js_darkmode__6">找个开源项目3天就能搞定,你们怎么用了这么久?</span>"</span></p>
<p><span class="js_darkmode__7" style="font-family: &quot;Microsoft YaHei&quot;">几度陷入自我怀疑…</span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__8">要知道,单纯依赖开源项目做ChatBI,就像指望买辆车就能参加F1比赛。</span></strong></span></p>
<p><span class="js_darkmode__9" style="font-family: &quot;Microsoft YaHei&quot;">前不久我研究了高德准确率接近90%的ChatBI方案,和他们对另外10%的完整兜底方案。</span></p>
<p><span class="js_darkmode__10" style="font-family: &quot;Microsoft YaHei&quot;">这篇文章不仅带你扫盲ChatBI的基础,还会带你深度拆解高德案例。</span></p>
<p><span class="js_darkmode__11" style="font-family: &quot;Microsoft YaHei&quot;">告诉你为什么只靠text2sql注定走不通,以及如何构建真正可用的ChatBI系统。</span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__12">看完你就会明白,那些准确率90%的ChatBI产品,背后到底做对了什么。</span></strong></span></p>
<p>&nbsp;</p>
<p><span class="js_darkmode__14" style="font-family: &quot;Microsoft YaHei&quot;">做了这么多ChatBI项目,我发现:很多人对ChatBI的理解有偏差。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__15">ChatBI分为Chat和BI。</span></strong></span></p>
<p><span class="js_darkmode__16" style="font-family: &quot;Microsoft YaHei&quot;">BI,Business Intelligence。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__17">大家第一反应都是</span>"<span class="js_darkmode__18">商业智能</span>"<span class="js_darkmode__19">,高大上,但太抽象。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__20">Business,除了</span>"<span class="js_darkmode__21">商业</span>"<span class="js_darkmode__22">,也指</span>"<span class="js_darkmode__23">业务</span>"<span class="js_darkmode__24">。</span></span></p>
<p><span class="js_darkmode__25" style="font-family: &quot;Microsoft YaHei&quot;">学校有学校的业务,政府有政府的业务,都算Business。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__26">Intelligence除了</span>"<span class="js_darkmode__27">智能</span>"<span class="js_darkmode__28">,还有</span>"<span class="js_darkmode__29">情报</span>"<span class="js_darkmode__30">的意思。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__31">比如</span><span class="js_darkmode__32">C.I.A</span><span class="js_darkmode__33">,</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__34">所以</span><span class="js_darkmode__35">我更倾向</span><span class="js_darkmode__36">于把BI理解为</span>"<span class="js_darkmode__37">业务情报</span>"<span class="js_darkmode__38">。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__39">情报的本质是提供</span>"<span class="js_darkmode__40">洞察</span>"<span class="js_darkmode__41">,那业务情报的本质就是提供</span>"<span class="js_darkmode__42">业务洞察</span>"<span class="js_darkmode__43">。比如:</span></span></p>
<p><span class="js_darkmode__44" style="font-family: &quot;Microsoft YaHei&quot;">电商平台的运营人员,每天面对海量的销售数据、用户行为数据。</span></p>
<p><span class="js_darkmode__45" style="font-family: &quot;Microsoft YaHei&quot;">如果只盯着这些原始数据看,很难发现什么规律。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__46">BI系统对这些数</span><span class="js_darkmode__47">据做</span><span class="js_darkmode__48" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__49">采集、存储、处理</span><span class="js_darkmode__50" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"等</span><span class="js_darkmode__51">一系列处理</span><span class="js_darkmode__52">,最后生成可视化图表。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__53">运营就</span><span class="js_darkmode__54">能发现</span><span class="js_darkmode__55">:哪个品类表现突出、哪个渠道转化率下滑、用户什么时间最活跃。</span></span></p>
<p><span class="js_darkmode__56" style="font-family: &quot;Microsoft YaHei&quot;">这些发现,就是业务洞察。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)"><strong><span class="js_darkmode__57">BI是</span><span class="js_darkmode__58" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__59">通过业务情报,辅助人获得业务洞察的系统</span><span class="js_darkmode__60" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__61">,Chat是</span><span class="js_darkmode__62" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__63">聊天</span><span class="js_darkmode__64" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__65">,</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)"><strong><span class="js_darkmode__66">因此,ChatBI是</span><span class="js_darkmode__67" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__68">通过聊天的方式来获取业务洞察的系统</span><span class="js_darkmode__69" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;line-height: 1.6em;margin-bottom: 16px;text-align: justify;margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__70">。</span></strong></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__71">传统</span><span class="js_darkmode__72">BI只能看图表,ChatBI可以直接聊。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__73">以往,使用传统</span><span class="js_darkmode__74">BI,业务部门想了解数据,得找技术部门:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__75">业务:</span><span class="js_darkmode__76">"</span><span class="js_darkmode__77">帮我做个报表,看看上月各品类销售情况。</span><span class="js_darkmode__78">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__79">技术:</span><span class="js_darkmode__80">"</span><span class="js_darkmode__81">好,明天给你。</span><span class="js_darkmode__82">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__83">业务:</span><span class="js_darkmode__84">"</span><span class="js_darkmode__85">我很急</span><span class="js_darkmode__86">…</span><span class="js_darkmode__87">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__88">技术:</span><span class="js_darkmode__89">"</span><span class="js_darkmode__90">大家都很急</span><span class="js_darkmode__91">…你们pk看谁更急…</span><span class="js_darkmode__92">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__93">业务:</span><span class="js_darkmode__94">"</span><span class="js_darkmode__95">…</span><span class="js_darkmode__96">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__97">现在通过</span><span class="js_darkmode__98">ChatBI,业务直接问系统:</span><span class="js_darkmode__99">"</span><span class="js_darkmode__100">上月哪个品类卖得最好?</span><span class="js_darkmode__101">"</span><span class="js_darkmode__102">,系统立即给出答案和相关图表。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__103">但关键在这里:别把</span><span class="js_darkmode__104">ChatBI简单理解为</span></strong><strong><span class="js_darkmode__105">"</span></strong><strong><span class="js_darkmode__106">自然语言查数据库</span></strong><strong><span class="js_darkmode__107">"</span></strong><strong><span class="js_darkmode__108">或者</span></strong><strong><span class="js_darkmode__109">"</span></strong><strong><span class="js_darkmode__110">text2sql</span></strong><strong><span class="js_darkmode__111">"</span></strong><strong><span class="js_darkmode__112">。</span></strong></span></p>
<p><span class="js_darkmode__113" style="font-family: &quot;Microsoft YaHei&quot;">Chat是使用BI成果的交互方式,真正决定业务洞察效果的,还是背后的BI能力。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__114">数据治理做得怎么样?指标体系建得是否合理?这些基础工作才是关键。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__115">与其把精力都放在</span><span class="js_darkmode__116">text2sql的技术实现上,不如多花点时间在数据基础建设上。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__117">毕竟,再智能的对话交互,也无法从混乱的基础数据中,给出你满意的答案。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)"><strong><span class="js_darkmode__118">ChatBI从来不只text2sql,真正的挑战在BI。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__119">每年年初,公司各部门都会提数据分析需求。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__120">市场部:</span><span class="js_darkmode__121">"</span><span class="js_darkmode__122">我要看每个省份门店销售排行、同比增长、客流变化。</span><span class="js_darkmode__123">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__124">运营部:</span><span class="js_darkmode__125">"</span><span class="js_darkmode__126">做个库存预警仪表盘,超</span><span class="js_darkmode__127">7天未动销要提醒。</span><span class="js_darkmode__128">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__129">听起来合理,但这些需求通过邮件、</span><span class="js_darkmode__130">OA、例会,零散汇集到IT部门后,问题就来了。BI项目经理要和数据分析师开需求评审会:梳理优先级、指标定义、可行性...光是怎么算</span><span class="js_darkmode__131">"</span><span class="js_darkmode__132">同比增长</span><span class="js_darkmode__133">"</span><span class="js_darkmode__134">,就能讨论半天。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__135">需求讨论后,数据工程师要去各系统找数据。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__136">"</span><span class="js_darkmode__137">订单、销售明细</span><span class="js_darkmode__138">→ POS系统</span><span class="js_darkmode__139">"</span><span class="js_darkmode__140"><br></span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__141">"</span><span class="js_darkmode__142">门店、商品信息</span><span class="js_darkmode__143">→ ERP系统</span><span class="js_darkmode__144">"</span><span class="js_darkmode__145"><br></span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__146">"</span><span class="js_darkmode__147">会员活跃度</span><span class="js_darkmode__148">→ CRM系统</span><span class="js_darkmode__149">"</span><span class="js_darkmode__150"><br></span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__151">"</span><span class="js_darkmode__152">库存变动</span><span class="js_darkmode__153">→ WMS系统</span><span class="js_darkmode__154">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__155">这里稍微微解释一下这几个系统的作用:</span></span></p>
<p><span class="js_darkmode__156" style="font-family: &quot;Microsoft YaHei&quot;">POS系统:处理门店收银和销售交易,记录每笔买卖</span></p>
<p><span class="js_darkmode__157" style="font-family: &quot;Microsoft YaHei&quot;">ERP系统:统一管理企业核心资源,如商品、门店、财务、采购等基础信息</span></p>
<p><span class="js_darkmode__158" style="font-family: &quot;Microsoft YaHei&quot;">CRM系统:管理客户资料、消费行为、会员等级和营销活动,提升客户忠诚度</span></p>
<p><span class="js_darkmode__159" style="font-family: &quot;Microsoft YaHei&quot;">WMS系统:管理商品入库、出库、库存和仓库作业,确保库存准确高效</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__160">每个系统数据库结构不同,接口文档也不都齐全。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__161">数据工程师要一个个对接,整理表名、字段含义。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__162">然后开发</span><span class="js_darkmode__163">ETL脚本:凌晨4点定时任务,从源系统抽取数据,第一次全量,后续增量,存入数据仓库。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__164">然后,真正的问题才刚刚开始。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__165">数据搬过来发现:订单表有重复,产品编码历史上</span><span class="js_darkmode__166">变更过,时间格式不统一,</span><span class="js_darkmode__167">某些字段为空</span><span class="js_darkmode__168">...脏数据层出不穷。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__169">数据开发团队要用</span><span class="js_darkmode__170">SQL脚本清洗:去重、补全、类型统一、逻辑校验。每步都要小心,生怕出错。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__171">还要分层管理,</span><span class="js_darkmode__172">ODS、DWD、DWS、ADS...光记住这些缩写就够头疼。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><img alt="图片" class="rich_pages wxw-img lazyload" data-ratio="0.5398428731762065" data-s="300,640" data-type="png" data-w="891" data-backw="578" data-backh="312" data-imgfileid="100001092" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905103851512-1871494676.webp" data-original-style="width: 305px;height: auto !important;" data-index="1" data-report-img-idx="0" data-fail="0"></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__173">改一个字段,影响十几个下游表是常事。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__174">BI建模师要设计主题数据模型</span></strong><span class="js_darkmode__175">。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__176">比如</span><span class="js_darkmode__177">"</span><span class="js_darkmode__178">地区</span><span class="js_darkmode__179">-门店-商品-日期</span><span class="js_darkmode__180">"</span><span class="js_darkmode__181">四维度销售事实表,配上商品、门店、员工维表。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__182">还要定义指标口径:</span><span class="js_darkmode__183">"</span><span class="js_darkmode__184">销售额</span><span class="js_darkmode__185">=售价×数量-折扣</span><span class="js_darkmode__186">"</span><span class="js_darkmode__187">。别小看这个公式,光</span><span class="js_darkmode__188">"</span><span class="js_darkmode__189">折扣</span><span class="js_darkmode__190">"</span><span class="js_darkmode__191">怎么计算,业务方就能争论好几轮。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__192">有经验的建模师会预留扩展字段,因为他们知道:业务需求永远在变。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__193">BI工程师开发可视化报表</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__194">比如,销售排行</span><span class="js_darkmode__195">TOP10、品类趋势、库存预警...</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__196">设计初版后收集业务反馈,然后反复改:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__197">"</span><span class="js_darkmode__198">这个颜色不好看</span><span class="js_darkmode__199">"</span><span class="js_darkmode__200">、</span><span class="js_darkmode__201">"</span><span class="js_darkmode__202">能加个筛选条件吗</span><span class="js_darkmode__203">"</span><span class="js_darkmode__204">、</span><span class="js_darkmode__205">"</span><span class="js_darkmode__206">响应能快点吗</span><span class="js_darkmode__207">"</span><span class="js_darkmode__208">...</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__209">每次修改都要重新测试,确保不影响其他功能。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__210">上线后还要设置定时任务:每日凌晨跑脚本生成日报,月初汇总推送管理层</span><span class="js_darkmode__211">...</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__212">你以为这就结束了?这只是开始。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__213">比如,区域经理:</span><span class="js_darkmode__214">"</span><span class="js_darkmode__215">报表数据异常,销售额平时几万今天只有几十。</span><span class="js_darkmode__216">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__217">数据团队排查发现:</span><span class="js_darkmode__218" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;class&quot;:&quot;MsoNormal&quot;,&quot;style&quot;:&quot;line-height: 1.6em; margin-bottom: 8px; text-align: justify; margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;font&quot;,&quot;attributes&quot;:{&quot;face&quot;:&quot;宋体&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span><span class="js_darkmode__219">业务系统同步延迟,统计时数据不完整。</span><span class="js_darkmode__220" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;class&quot;:&quot;MsoNormal&quot;,&quot;style&quot;:&quot;line-height: 1.6em; margin-bottom: 8px; text-align: justify; margin-top: 0px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;font&quot;,&quot;attributes&quot;:{&quot;face&quot;:&quot;宋体&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__221">然后和业务</span><span class="js_darkmode__222">IT调整同步策略。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__223">比如,业务部门又有新需求,</span><span class="js_darkmode__224">BI团队评估排期,然后整个流程重新再走一遍。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__225">以上,总结出</span><span class="js_darkmode__226">BI本身的主要流程如下:</span></strong></span></p>
<p><span class="js_darkmode__227" style="font-family: &quot;Microsoft YaHei&quot;">1、业务部门提出数据分析需求。</span></p>
<p><span class="js_darkmode__228" style="font-family: &quot;Microsoft YaHei&quot;">2、数据工程团队定期或实时采集业务系统数据,清洗后统一入数仓。</span></p>
<p><span class="js_darkmode__229" style="font-family: &quot;Microsoft YaHei&quot;">3、数据分析团队与业务部门反复沟通,基于实际业务场景定义标准的数据模型、指标及统计口径。</span></p>
<p><span class="js_darkmode__230" style="font-family: &quot;Microsoft YaHei&quot;">4、BI开发团队基于这些模型开发和迭代报表、仪表盘,过程中持续收集业务反馈。</span></p>
<p><span class="js_darkmode__231" style="font-family: &quot;Microsoft YaHei&quot;">5、最终,通过自动化调度实现报表数据的定期或实时更新,保障各层级数据使用人员及时掌握业务动态。</span></p>
<p><span class="js_darkmode__232" style="font-family: &quot;Microsoft YaHei&quot;">6、BI团队、数据团队继续接受随时提出的反馈,排查问题、评估新需求能否实现、排期…</span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__233">这就是传统</span><span class="js_darkmode__234">BI:责任分工清晰,流程规范,但严重依赖人工,自动化有限。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__235">很多时候,业务真正想要的是</span><span class="js_darkmode__236">"</span><span class="js_darkmode__237">告诉我销售为什么下降了?</span><span class="js_darkmode__238">"</span><span class="js_darkmode__239">,或者了解一下</span><span class="js_darkmode__240">"</span><span class="js_darkmode__241">某个指标是如何统计的?</span><span class="js_darkmode__242">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__243">但得到的却是一堆需要自己解读的图表,指标统计口径更是只有问技术人员才能知道,而技术人员不是那么有空的。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__244">而</span><span class="js_darkmode__245">ChatBI的出现,让我们终于可以用聊天的方式和数据交流。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__246">不用记术语、操作步骤,不需要等长开发周期,像和朋友聊天一样说出疑问,就能得到答案。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__247">这是从</span></strong><strong><span class="js_darkmode__248">"</span></strong><strong><span class="js_darkmode__249">人适应工具</span></strong><strong><span class="js_darkmode__250">"</span></strong><strong><span class="js_darkmode__251">到</span></strong><strong><span class="js_darkmode__252">"</span></strong><strong><span class="js_darkmode__253">工具理解人</span></strong><strong><span class="js_darkmode__254">"</span></strong><strong><span class="js_darkmode__255">的转变。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__256">ChatBI带来的新可能</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__257">以前:写需求邮件</span><span class="js_darkmode__258">→ 开例会解释 → 你说A我听成B → 再拉人解释</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__259">现在:直接问</span><span class="js_darkmode__260">"</span><span class="js_darkmode__261">本月库存报警最多的门店有哪些?</span><span class="js_darkmode__262">"</span><span class="js_darkmode__263">&nbsp;</span><span class="js_darkmode__264">→ 10秒内得到报表和分析</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__265">以前开发新报表要排队半个月,现在简单的数据探索、图表调整、指标变换,只要会打字就行。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__266">想换个角度?随时切换:</span><span class="js_darkmode__267">"</span><span class="js_darkmode__268">去年和今年差异最大的省份是哪个?</span><span class="js_darkmode__269">"</span><span class="js_darkmode__270">AI立即帮你做趋势对比。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__271">以前</span><span class="js_darkmode__272">BI报表满屏专业词汇缩写,业务同事经常问</span><span class="js_darkmode__273">"</span><span class="js_darkmode__274">这活跃用户到底怎么算的?</span><span class="js_darkmode__275">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__276">现在</span><span class="js_darkmode__277">ChatBI能把复杂指标翻译成人话,业务小白也能看懂。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__278">遇到临时想法,不用写需求文档排队,提出来立马有反馈。这对业务效率的提升是肉眼可见的。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__279">ChatBI让我们终于能用</span></strong><strong><span class="js_darkmode__280">"</span></strong><strong><span class="js_darkmode__281">人话</span></strong><strong><span class="js_darkmode__282">"</span></strong><strong><span class="js_darkmode__283">和数据对话了。</span></strong></span></p>
<h3><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__284">ChatBI还做不了什么?</span></strong></span></h3>
<h3><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__285">数据基础设施仍需人工。比如,后台数据接口对接、源头数据质量治理、</span></strong><span class="js_darkmode__286">表字段历史变更梳理、</span><span class="js_darkmode__287">源系统更新适配。</span></span></h3>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span style="color: rgba(53, 152, 219, 1)"><span class="js_darkmode__288">AI不可能凭空变出你想要的数据,底层的硬活脏活,还得有人干。</span></span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__289">企业级建模需要专家。比如,复杂的数据仓库建模、</span></strong><span class="js_darkmode__290">跨部门数据定义标准、</span><span class="js_darkmode__291">业务规则的最终拍板。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__292">每家企业业务都不同,</span><span class="js_darkmode__293">AI能建议,但最终决策还得人来做。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__294">权限安全必须人工把控。</span><span class="js_darkmode__295">比如,</span></strong><span class="js_darkmode__296"><span class="js_darkmode__297">数据访问权限设计、</span></span><span class="js_darkmode__298"><span class="js_darkmode__299">不同用户可见范围控制、</span></span><span class="js_darkmode__300"><span class="js_darkmode__301">数据安全策略制定。</span></span><span class="js_darkmode__302"><span class="js_darkmode__303"><br></span></span></span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__304"><span class="js_darkmode__305">数据绝不能</span></span><span class="js_darkmode__306"><span class="js_darkmode__307">"</span></span><span class="js_darkmode__308"><span class="js_darkmode__309">放飞自我</span></span><span class="js_darkmode__310"><span class="js_darkmode__311">"</span></span><span class="js_darkmode__312"><span class="js_darkmode__313">,这块</span><span class="js_darkmode__314">AI帮不上忙。</span></span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__315">ChatBI让数据分析变得</span><span class="js_darkmode__316">"</span><span class="js_darkmode__317">接地气</span><span class="js_darkmode__318">"</span><span class="js_darkmode__319">了,每个人都能随手问、天天用,探索的主动权回到业务手里。但基础设施和数据治理这些</span><span class="js_darkmode__320">"</span><span class="js_darkmode__321">水电煤</span><span class="js_darkmode__322">"</span><span class="js_darkmode__323">,还得靠专业团队。只有两边配合,企业才能真正享受到聊天式分析的敏捷体验。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__324">ChatBI不是替代数据团队,而是他们数据治理成果的价值放大器。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__325">ChatBI自身面临的挑战</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__326">即使</span><span class="js_darkmode__327">BI基础已经做得很好,想实现ChatBI,仍然要解决这些技术难题:</span></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__328">数据规模</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__329">企业级</span><span class="js_darkmode__330">BI</span><span class="js_darkmode__331">系统动辄几</span><span class="js_darkmode__332">百上千张表,每张表几十上百个字段。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__333">这些信息全塞</span><span class="js_darkmode__334">给大模</span><span class="js_darkmode__335">型?就算最新的长上下文模型也会消化不良。</span></strong></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__336">时间语义</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__337">用户说</span><span class="js_darkmode__338">"</span><span class="js_darkmode__339">近三年</span><span class="js_darkmode__340">"</span><span class="js_darkmode__341">、</span><span class="js_darkmode__342">"</span><span class="js_darkmode__343">去年同期</span><span class="js_darkmode__344">"</span><span class="js_darkmode__345">、</span><span class="js_darkmode__346">"</span><span class="js_darkmode__347">今年</span><span class="js_darkmode__348">Q1</span><span class="js_darkmode__349">"</span><span class="js_darkmode__350">,人类很容易理解,但让系统准确解析就复杂了。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1); font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__351">时间基准点、业务日历、财务年度</span><span class="js_darkmode__352">...这些都需要准确建模。</span></strong></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__353">专业术语</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__354">每个行业、每家公司都有自己的</span><span class="js_darkmode__355">"</span><span class="js_darkmode__356">黑话</span><span class="js_darkmode__357">"</span><span class="js_darkmode__358">:财务说</span><span class="js_darkmode__359">"</span><span class="js_darkmode__360">应收账款周转率</span><span class="js_darkmode__361">"</span><span class="js_darkmode__362">、销售说</span><span class="js_darkmode__363">"</span><span class="js_darkmode__364">漏斗转化</span><span class="js_darkmode__365">"</span><span class="js_darkmode__366">、运营说</span><span class="js_darkmode__367">"</span><span class="js_darkmode__368">留存曲线</span><span class="js_darkmode__369">"</span><span class="js_darkmode__370">。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__371">这些概念背后往往有复杂的计算逻辑和业务规则。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span style="color: rgba(53, 152, 219, 1)"><span class="js_darkmode__372">我见过一个零售企业,光</span><span class="js_darkmode__373">"</span><span class="js_darkmode__374">有效客户</span><span class="js_darkmode__375">"</span><span class="js_darkmode__376">就有三套不同定义,分别用于不同业务场景。</span></span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__377">实体对齐</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__378">用户说</span><span class="js_darkmode__379">"</span><span class="js_darkmode__380">北京地区</span><span class="js_darkmode__381">"</span><span class="js_darkmode__382">,数据库里存的可能是:</span><span class="js_darkmode__383">"</span><span class="js_darkmode__384">110000</span><span class="js_darkmode__385">"</span><span class="js_darkmode__386">(行政编码)、</span><span class="js_darkmode__387">"</span><span class="js_darkmode__388">Beijing</span><span class="js_darkmode__389">"</span><span class="js_darkmode__390">(英文)、</span><span class="js_darkmode__391">"</span><span class="js_darkmode__392">BJ</span><span class="js_darkmode__393">"</span><span class="js_darkmode__394">(简称)。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__395">用户说</span><span class="js_darkmode__396">"</span><span class="js_darkmode__397">小米手机</span><span class="js_darkmode__398">"</span><span class="js_darkmode__399">,系统里可能是</span><span class="js_darkmode__400">"</span><span class="js_darkmode__401">MI_PHONE</span><span class="js_darkmode__402">"</span><span class="js_darkmode__403">或品牌编码</span><span class="js_darkmode__404">"</span><span class="js_darkmode__405">1001</span><span class="js_darkmode__406">"</span><span class="js_darkmode__407">。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1)"><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__408">多系统集成环境下,同一概念在不同系统中表示方式完全不同。</span></span></strong></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__409">复</span><span class="js_darkmode__410">杂推理</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__411">最难的是复杂查询推理。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__412">用户问</span><span class="js_darkmode__413">"</span><span class="js_darkmode__414">哪个地区的高价值客户增长最快</span><span class="js_darkmode__415">"</span><span class="js_darkmode__416">,系统需要:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__417">-</span><span class="js_darkmode__418">定义</span><span class="js_darkmode__419">"</span><span class="js_darkmode__420">高价值客户</span><span class="js_darkmode__421">"</span><span class="js_darkmode__422">标准</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__424">-跨客户表、订单表、地区表关联查询</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__426">-计算不同时间段增长率</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__428">-排序筛选结果</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1)"><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__429">这种多步推理对模型逻辑能力要求很高,每一步出错都影响最终结果。</span></span></strong></span></p>
<p><span class="js_darkmode__430" style="font-family: &quot;Microsoft YaHei&quot;">ChatBI的核心难点不在Chat,而在于如何让机器真正理解业务。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__431">技术栈可以选择,算法可以优化,但业务理解需要时间积累和不断调试。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__432">这也是为什么很多团队选择先从简单查询开始,逐步扩展到复杂分析。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1)"><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__433">不要指望一上来就做到</span><span class="js_darkmode__434">100%准确率,先解决60%的常见查询,剩下的再找方案,但必须找方案。</span></span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__435">以上,科普部分就这么多。我终于可以开始聊高德是如何做到</span><span class="js_darkmode__436">90%的准确率了。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__437">高德团队认为:</span><span class="js_darkmode__438">"</span><span class="js_darkmode__439">没有一步到位的完美方案,不</span><span class="js_darkmode__440">要想着一上来就解决所有问题。</span><span class="js_darkmode__441">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__442">他们用</span><span class="js_darkmode__443">"</span><span class="js_darkmode__444">灵活性</span><span class="js_darkmode__445">"</span><span class="js_darkmode__446">和</span><span class="js_darkmode__447">"</span><span class="js_darkmode__448">复杂度</span><span class="js_darkmode__449">"</span><span class="js_darkmode__450">两个维度,将业务场景分成四个象限:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104205725-2092352440.png" class="lazyload"></span></p>
<p data-pm-slice="0 0 []"><strong><span style="font-family: &quot;Microsoft YaHei&quot;">固定场景<span class="js_darkmode__451">(第二、三象限)用Chat2API</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__452">Chat2SQL在复杂的指标统计下,会涉及</span><span class="js_darkmode__453">"</span><span class="js_darkmode__454">多表关联</span><span class="js_darkmode__455">"</span><span class="js_darkmode__456">,</span><span class="js_darkmode__457">"</span><span class="js_darkmode__458">嵌套查询</span><span class="js_darkmode__459">"</span><span class="js_darkmode__460">,</span><span class="js_darkmode__461">"</span><span class="js_darkmode__462">复杂计算公式</span><span class="js_darkmode__463">"</span><span class="js_darkmode__464">,导致生成正确</span><span class="js_darkmode__465">sql的概率很低。</span></span></p>
<p><span class="js_darkmode__466" style="font-family: &quot;Microsoft YaHei&quot;">Chat2API将复杂逻辑封装在后端服务中,还可通过缓存提高响应速度,对外接口往简单去设计,提高生成正确接口参数的概率。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)"><strong><span class="js_darkmode__467">不管简单还是复杂,业务稳定的场景都用</span><span class="js_darkmode__468">Chat2API。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__469">灵活简单场景</span><span class="js_darkmode__470">(第四象限)用Chat2SQL&nbsp;</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__471">比如,临时增加的指标,虽然没有提前存储,但可简单统计得出,则使用</span><span class="js_darkmode__472">Chat2SQL。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__473">如果用</span><span class="js_darkmode__474">Chat2API,则每次需求变化都要开发新接口:</span></span></p>
<p>查看代码</p>
<pre class="language-python highlighter-hljs"><code># 今天的需求:按地区查询销售额
@app.route('/sales/by-region')
def sales_by_region(region):
return db.query(f
"
SELECT SUM(amount) FROM sales WHERE region='{region}'
"
)
# 明天的需求:按时间+地区查询
@app.route('/sales/by-region-time') # 又要新增API
def sales_by_region_time(region, start_date, end_date):
return db.query(f
"
SELECT SUM(amount) FROM sales WHERE region='{region}' AND date BETWEEN '{start_date}' AND '{end_date}'
"
)
# 后天的需求:还要加上产品类型...
# API数量爆炸!</code></pre>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;<span class="js_darkmode__475">而采用</span><span class="js_darkmode__476">Chat2SQL可灵活应对:</span></span></p>
<p>查看代码</p>
<pre class="language-sql highlighter-hljs"><code>-- 今天:按地区查询
SELECT SUM(amount) FROM sales WHERE region = '华东';
-- 明天:按时间+地区查询
SELECT SUM(amount) FROM sales
WHERE region = '华东' AND date &gt;= '2024-07-01';
-- 后天:再加产品类型
SELECT SUM(amount) FROM sales
WHERE region = '华东'
AND date &gt;= '2024-07-01'
AND product_type = '电子产品';</code></pre>
<p><span style="color: rgba(53, 152, 219, 1)"><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__477">临时查询、简单统计场景用</span><span class="js_darkmode__478">Chat2SQL。</span></span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__479">灵活且复杂的场景</span><span class="js_darkmode__480">(第一象限),用Agent</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__481">对于复杂逻辑的,比如问一些为什么、怎么做、怎么选类似的场景,通常需要多步骤推理。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__482">这不是</span><span class="js_darkmode__483">Chat2API、Chat2SQL这种一次调用/查询,一次生成能搞定的事情。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__484">通过</span><span class="js_darkmode__485">Agent可以在Chat2API、Chat2SQL以及其它tools基础上,灵活组合、多轮调用,然后综合所有结果,得到最终答案。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__486">用户问:</span><span class="js_darkmode__487">"</span><span class="js_darkmode__488">为什么</span><span class="js_darkmode__489">A产品的销量下降了?</span><span class="js_darkmode__490">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__491">仅用</span><span class="js_darkmode__492">Chat2API或Chat2SQL,无法实现。</span></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__493">举个例子:</span></span></strong></p>
<p>查看代码</p>
<pre class="language-python highlighter-hljs"><code>
# 用Chat2API,需要预设所有可能的API组合
# 但用户的需求可能是这些的任意组合!
# 且只能调用预设的API,无法进行下一步执行
{
"apis": [
    "sales-trend-analysis",
    "competitor-analysis",
    "market-factor-analysis",
    "recommendation-engine",
]
}
# 用Chat2SQL,只能查到数据,然后呢?SQL无法进行下一步分析...
SELECT sales FROM products WHERE name='A'</code></pre>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__494">再看看如果用</span><span class="js_darkmode__495">Agent:</span></span></strong></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__496">为了简化Agent过程,这里把问题收窄,加入时间维度“6月比5月”。</span></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__497">用户问:"为什么A产品6月比5月销量下降了?"</span></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__498" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;data-pm-slice&quot;:&quot;0 0 []&quot;,&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">首先,</span><span class="js_darkmode__499">Agent会思考到需要搞清楚具体下降了多少;</span></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__500">然后,</span><span class="js_darkmode__501" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;data-pm-slice&quot;:&quot;0 0 []&quot;,&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">Agent会</span><span class="js_darkmode__502">调</span><span class="js_darkmode__503">用SQL查询工具获取5月和6月的销量数据;</span></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__504">接着,</span><span class="js_darkmode__505" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;data-pm-slice&quot;:&quot;0 0 []&quot;,&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">Agent</span><span class="js_darkmode__506">发现5月1000件,6月800件,下降了20</span><span class="js_darkmode__507">%;</span></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__508" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;data-pm-slice&quot;:&quot;0 0 []&quot;,&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">然后,</span><span class="js_darkmode__509">Agent判断20%的下降已经超出正常波动范围,需要深</span><span class="js_darkmode__510">入分析。</span></span></p>
<p><span style="color: rgba(52, 73, 94, 1)"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__511" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;data-pm-slice&quot;:&quot;0 0 []&quot;,&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">接着,Agent思考:这个下降是我们独有的问题,还是整</span><span class="js_darkmode__512">个市场都在下降?</span></span> <span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__513" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;data-pm-slice&quot;:&quot;0 0 []&quot;,&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">然后,</span><span class="js_darkmode__514" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;section&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">Agent</span><span class="js_darkmode__515">先调用年同比分析工具,发现去年6月是950件,今年确</span><span class="js_darkmode__516">实下降了。</span></span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__517">但这还不够,Agent又调用市场趋势分析工具,发现整个</span><span class="js_darkmode__518">行业实际上增长了2%。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__519">为了进一步确认,</span><span class="js_darkmode__520" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">Agent</span><span class="js_darkmode__521">还查了竞品数据,发现竞品B增长8%,</span><span class="js_darkmode__522">竞品C持平,竞品D增长3%。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__523">这下Agent明白了:市场整体向好,竞品表现不错,问题</span><span class="js_darkmode__524">确实出在自己身上。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__525">然后,Agent开始拆解问题。</span></span></p>
<p><span style="color: rgba(52, 73, 94, 1)"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__526" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">Agent知</span><span class="js_darkmode__527">道"销量=访客数×转化率</span><span class="js_darkmode__528" data-pm-slice="1 1 [&quot;para&quot;,null,&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">×</span><span class="js_darkmode__529">客单价",于是调用销售漏斗分析工具。</span></span> <span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__530">结果显示访客数从10000降到8</span><span class="js_darkmode__531">500(下降15%),转化率从5%降到4.7%(下降6%),客单价没变。</span></span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__532">Agent分析这些数据后推理:访</span><span class="js_darkmode__533">客大幅下降但转化率相对稳定,说明来的人还是愿意买的,产品本身没问题,主要是来的人少了。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__534">这通常是流量获取的问题。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__535">于是,Agent调用流量来源分析工</span><span class="js_darkmode__536">具,发现付费广告流量下降了35%,而自然搜索和社交媒体流量都在增长5%。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__537">问题锁定了:是广告流量出了问题。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__538">Agent继续深挖,调用广告投放分析工具,发现6月的广告预算从50万减少到35万,下降了30%,但广告的点击率和转化</span><span class="js_darkmode__539">率都保持稳定。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__540">最后,Agent验证整个逻辑链:广告预算削减30%导致广告曝光减少,进而使付费流量下降35%,总访客减少15%,最终销量下降20%。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)" data-slate-node="text"><span class="js_darkmode__541">Agent得出结论:根本原因是广告预算被削减,解决方案就是恢复广告预算,预计恢复后7月销量可以回升到950件。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__542">&nbsp;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__543">以上只是</span><span class="js_darkmode__544">示例,具体什</span><span class="js_darkmode__545">么效果,取决我们在</span><span class="js_darkmode__546">Agent上的各种选型和改进策略,以及业务规则、基础数据的完善程度。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__547">具体到</span><span class="js_darkmode__548">Agent策略、机制、主流框架的使用等,后面会专门写文章讲。</span></span></p>
<p><span style="color: rgba(53, 152, 219, 1)"><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__549">这就是高德</span><span class="js_darkmode__550">90%准</span><span class="js_darkmode__551">确率的</span><span class="js_darkmode__552">第一个思路:</span><span class="js_darkmode__553">"</span><span class="js_darkmode__554">不同场景用不同策略,而不是一套算法解决所有问题。</span><span class="js_darkmode__555">"</span></span></strong></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__556">高德数据分</span><span class="js_darkmode__557">析场景中</span><span class="js_darkmode__558">面临的ChatBI挑战</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104415173-264052970.png" class="lazyload"></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__559">1. Chat2S</span></strong><strong><span class="js_darkmode__560">QL目前仅达到"小学生"水平,但用户总会问"高考题"。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__561">用户不管你能力如何</span><span class="js_darkmode__562">,该问的还是会问。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__563">这就是为什么要用四</span><span class="js_darkmode__564">象限策略,让Chat2SQL只处理它能处理好的简单场景。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__565">2. 元数据质量参</span></strong><strong><span class="js_darkmode__566">差不齐</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__567">现实中的数据表结构</span><span class="js_darkmode__568">有很多历史遗留问题。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__569">不同表或业务线的字</span><span class="js_darkmode__570">段定义规范不一致。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__571">有的描述清晰、口径</span><span class="js_darkmode__572">统一,有的描述模糊、计算规则不明确。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__573">同名字段在不同场景</span><span class="js_darkmode__574">下含义可能完全不同。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__575">3. 相似字段的语</span></strong><strong><span class="js_darkmode__576">义陷阱</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__577">"驾车完成率":完</span><span class="js_darkmode__578">整用完一次导航的占比;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__579">"驾车成功率":成</span><span class="js_darkmode__580">功到达目的地的占比。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__581">听起来差不多,但统</span><span class="js_darkmode__582">计口径完全不同,业务含义差异很大。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__583">4. 专业术语的理</span></strong><strong><span class="js_darkmode__584">解困难</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__585">像"导航完成度"、</span><span class="js_darkmode__586">"路线覆盖率"、"实走覆盖率"这些专业术语,模型缺乏足够上下文时很容易理解错误。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__587">5. 模型幻觉问题</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__588">生成稍微复杂的SQ</span><span class="js_darkmode__589">L时,可能出现:自己造字段、造表别名、造查询条件。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__590">6. 结果一致性问</span></strong><strong><span class="js_darkmode__591">题</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__592">同一个问题,模型可</span><span class="js_darkmode__593">能生成不同SQL,导致结果不同,甚至完全矛盾。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__594">7.错误率10%,</span></strong><strong><span class="js_darkmode__595">依然影响用户使用</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__596">理论上90%准确率</span><span class="js_darkmode__597">听起来不错,但实际业务中:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__598">每100个查询就有</span><span class="js_darkmode__599">10个是错的,用户往往不知道哪个是错的。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__600">8.用户发现问题后</span></strong><strong><span class="js_darkmode__601">,往往希望能立即解决</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__602">为了不被动响应,需</span><span class="js_darkmode__603">要主动监控查询质量,收集用户反馈,持续迭代优化。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__604">面对这些挑战,高德</span></strong><strong><span class="js_darkmode__605">团队的思路很清晰:</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__606">用户输入无法控制,</span><span class="js_darkmode__607">通过路由分发来使用不同象限的策略;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__608">模型能力有天花板,</span><span class="js_darkmode__609">交给大模型厂商迭代,模型只会越来越强;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__610">剩下的关键战场,就</span><span class="js_darkmode__611">是“元数据质量”和“反馈迭代”。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__612">这就是高德90%准</span></strong><strong><span class="js_darkmode__613">确率的第二个思路:“把有限的精力投入到能控制的关键环节。”</span></strong></span></p>
<p><strong><span class="js_darkmode__614" style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__615">那高德怎么做元数据的?</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__616">刚做ChatBI的</span><span class="js_darkmode__617">团队,往往认为只要把表结构这种元数据喂给大模型,就能生成各种想要的查询sql。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__618">而传统表结构信息对</span><span class="js_darkmode__619">ChatBI远远不够。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__620">就像让新同事直接上</span><span class="js_darkmode__621">手复杂业务查询,只给一份表结构说明,他也是一头雾水。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__622">以"上周用户导航U</span><span class="js_darkmode__623">V是多少"为例,模型需要理解:</span></span></p>
<ul class="list-paddingleft-1 js_darkmode__624">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__625">导航UV是什么?对</span><span class="js_darkmode__626">应哪个字段?</span></span></li>
</ul>
<ul class="list-paddingleft-1 js_darkmode__627">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__628">时间范围如何定义?</span></span></li>
</ul>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104437008-36562350.png" class="lazyload"></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__629">高德团队设计了四层元数据:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__630">1. 业务域层,快速定位场景</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__631">识别这是导航业务、搜索业务还是路况业务。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__632">2. 表结构层,提供数据基础</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__633">表业务含义、字段取值范围、关联关系(决定多表查询</span><span class="js_darkmode__634">准确性)。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__635">3. 业务知识层,处理专业术语和"黑话"</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__636">像"导航UV"这种导航业务特有概念,没有专门解释</span><span class="js_darkmode__637">,模型可能理解成网站导航。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__638">4. 通用知识层、标准化常用概念</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__639">数据分析常用概念、时间格式定义。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__640">用户提问后,大致会经过下面5步,来得到生成sql</span></strong><strong><span class="js_darkmode__641">需要的上下文:</span></strong></span></p>
<ol class="list-paddingleft-1 js_darkmode__642" start="1">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__643">分析指标项,识别所属业务域</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__644" start="2">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__645">分析查询对象和筛选条件,在业务域范围内确定需要的</span><span class="js_darkmode__646">表和字段</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__647" start="3">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__648">匹配业务知识,根据指标项找到对应的业务解释</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__649" start="4">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__650">标准化通用概念,如时间条件的标准取值</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__651" start="5">
<li><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__652">上下文生成,将以上信息与用户问题一起给模型生成S</span><span class="js_darkmode__653">QL</span><span class="js_darkmode__654"><br></span></span></li>
</ol>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__655">做个简单总结:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__656">一般方式:只提供表结构 + 用户问题 → 模型生</span></strong><strong><span class="js_darkmode__657">成SQL</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__658">高德方式:业务域 + 表结构 + 业务知识 +&nbsp;</span></strong><strong><span class="js_darkmode__659">通用知识 + 用户问题 → 模型生成SQL</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__660">模型本身能力有限,但通过精心设计的多层元数据,可</span><span class="js_darkmode__661">大幅提升它对业务的理解能力。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__662">这是高德90%准确率的第三个思路:“比起让模型</span></strong><strong><span class="js_darkmode__663">更聪明,不如给更多上下文。”</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__664">尝试过</span></strong><strong><span class="js_darkmode__665">Chat2SQL</span></strong><strong><span class="js_darkmode__666">的应该都有感触:</span></strong><strong><span class="js_darkmode__667">在生成多表关联的sql方面,准确率很</span></strong><strong><span class="js_darkmode__668">低。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__669">因此,为了降低查询复杂度,通常把多张相关表的字段,构建成一</span><span class="js_darkmode__670">张物理宽表,查询时直接查单表,避免复杂关联。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__671">而物理宽表的问题在于:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__672">存储成本高:字段多、数据量大</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__673">维护成本高:底表变化或宽表更改都要重新刷全表</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__674">针对这个问题,高德团队提出了“虚拟宽表”的思路。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104449698-286163262.png" class="lazyload"></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__675">把"多张底表怎么拼、口径怎么取、权限怎么控"预先写成可查询的</span><span class="js_darkmode__676">"视图"。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__677">虚拟宽表带来的优势很明显:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__678">1.&nbsp;</span></strong><span class="js_darkmode__679">不用自己写复杂join、最新分区、去重逻辑</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__680">2.&nbsp;</span></strong><span class="js_darkmode__681">口径统一,大家都用同一套视图,统计标准一致</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__682">3.&nbsp;</span></strong><span class="js_darkmode__683">行列权限与脱敏内置到视图中,统一控制</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__684">4.&nbsp;</span></strong><span class="js_darkmode__685">底表变更或接入自定义特征,只改视图即可</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__686">5.&nbsp;</span></strong><span class="js_darkmode__687">需要时,仍可对热点查询进行物化提速</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__688">比如,用户问:</span><span class="js_darkmode__689">“最近7天各导航策略的活跃用户数?”</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__690">数据工程师一次性创建虚拟宽表</span></strong><span class="js_darkmode__691">:</span></span></p>
<p>查看代码</p>
<pre class="language-sql highlighter-hljs"><code>CREATE VIEW vw_nav_virtual_wide AS
SELECT   
a.user_id, a.strategy, a.ds,
p.activity,         -- 从用户画像取活跃度
b.select_path,      -- 从用户行为取选择路径
c.custom_label      -- 预留自定义特征挂接点
FROM nav_detail a      
LEFT JOIN user_profile p ON a.user_id = p.user_id   
LEFT JOIN user_behavior b ON a.user_id = b.user_id
LEFT JOIN custom_features c ON a.user_id =c.user_id;--灵活扩展点 </code></pre>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;那么,AI只需要生成下面这个简单的单表查询sql</span></p>
<p>查看代码</p>
<pre class="language-sql highlighter-hljs"><code>SELECT strategy, custom_label, COUNT(DISTINCT user_id) AS dau
FROM vw_nav_virtual_wide
WHERE ds &gt;= current_date - 7 AND custom_label IS NOT NULL
GROUP BY strategy, custom_label;</code></pre>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__693">如果要对宽表添加新业务</span><span class="js_darkmode__694">字段,单独更新</span><strong><span class="js_darkmode__695">custom_features</span></strong><span class="js_darkmode__696">&nbsp;表即可,</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__697">视图会自动</span><span class="js_darkmode__698">包含新字段</span><span class="js_darkmode__699">,无需改底表或重新建模。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__700">相比物理宽表,虚拟宽表避免了:大规模冗余存储、变更响应慢</span><span class="js_darkmode__701">、数据治理困难。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__702">这就是高德90%准确率的第四个思路:“一个完美平衡'物理宽表简</span></strong><strong><span class="js_darkmode__703">单但同步困难'和'关联查询灵活但生成困难'的方案。”</span></strong></span></p>
<h3 data-slate-node="element" data-block-id="IKTDYovSV0">&nbsp;</h3>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__704">元数据、虚拟宽表等基础设施就绪后,高德开始了ChatBI的三</span></strong><strong><span class="js_darkmode__705">阶段演化之路。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__706">第一阶段:人怎么写SQL,就用COT(思维链)教大模型怎么写</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104622124-2080985250.png" class="lazyload"></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__707">把所有信息(同义词映射、时间规则、表结构信息</span><span class="js_darkmode__708">、业务口径定义),塞进一个巨大的prompt,期望模型一步到位写出SQL。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__709">就像让一个人同时做翻译、建模、写代码,任何环</span><span class="js_darkmode__710">节出错都会影响最终结果,规则越加越容易产生冲突。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__711">比如,用户</span><span class="js_darkmode__712">问:”帝都昨儿订单多少?“</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__713">模型需同时完成:</span></span></p>
<ul class="list-paddingleft-1 js_darkmode__714">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__715">"帝都" → "Beijing"</span></span></li>
</ul>
<ul class="list-paddingleft-1">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__716">"昨儿" → 日期</span></span></li>
</ul>
<ul class="list-paddingleft-1 js_darkmode__717">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__718">选表、聚合、过滤</span></span></li>
</ul>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__719">任一步掉链子就失败。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)"><strong><span class="js_darkmode__720">这个阶段的准确率一般能达到60%就很不错了。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__721">而且维护困难</span></strong><strong><span class="js_darkmode__722">、对提示词敏感,经常改动提示词后原来正常的地方又出错了。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__723">但好处是,可</span><span class="js_darkmode__724">以快速跑</span><span class="js_darkmode__725">通系统。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__726">第二阶段:引入单Agent + 设计原子工具</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104640035-734308098.png" class="lazyload"></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__727">给模型设计一箱工具,模型只负责任务理解、规</span><span class="js_darkmode__728">划和工具选择,具体执行逻辑由各个工具负责。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__729">不过仍有痛点:</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__730">复杂问题导致工具调用链路变长,准确率峰值波</span><span class="js_darkmode__731">动;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__732">原子工具的提示词依然会膨胀;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__733">对规划与参数一致性要求上升,稳定性需要继续</span><span class="js_darkmode__734">优化。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__735">这个阶段每个工具只负责自己的逻辑,且工具错</span></strong><strong><span class="js_darkmode__736">误在工具间被隔离,端到端准确率峰值突破到90%,但也常有波动。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__737">第三阶段:设计分子化工具+引入多Agent</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104649613-1854257231.png" class="lazyload"></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__738">将多个相关的原子级工具(元数据检索、语法检查、示例检索等)与特定提示词组合,封装成专门的</span><span class="js_darkmode__739">SQL生成Agent。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__740">这种方式的优势在于:</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__741">保持了调用多种工具的灵活性;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__742">通过专门提示词降低单个Agent认知复杂度;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__743">不再需要一个Agent掌握几十上百个工具;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__744">让每个Agent专注使用相关的几个工具,分工更明确、出错率更低</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__745">同时,这个阶段设计了</span></strong><strong><span class="js_darkmode__746">三种不同策略的SQL生成Agent,通过一个独立的SQL仲裁Agent选择最佳方案执行。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104657933-1677662164.png" class="lazyload"></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__747">策略1:Query Plan CoT(查询计划)</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__748">按人的习惯将任务分解成三个关键步骤:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__749">”确定要使用的表”、”在表上做计数、过滤或匹配操作“</span><span class="js_darkmode__750">、”通过选择适当的列返回最终结果”。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__751">策略2:Divide and Conquer CoT</span></strong><strong><span class="js_darkmode__752">(分治)</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__753">将复杂问题分解成较小的子问题,先分别生成伪SQL查询</span><span class="js_darkmode__754">(强调逻辑正确而非语义正确),然后组装起来生成最终可执行的SQL。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__755">策略3:Example Generation(示例生</span></strong><strong><span class="js_darkmode__756">成)</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__757">将用户需求、相关表字段、筛选逻辑,以及与用户需求相似</span><span class="js_darkmode__758">的SQL示例给模型(去除特定业务信息)。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__759">举个例子,用户问:"找出2023年北京客户的平均订单金额</span><span class="js_darkmode__760" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;text-align: justify; margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;class&quot;:&quot;qb-para-p1&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;class&quot;:&quot;slate-para qb-para-p1&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">"</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__761">策略1:Query Plan CoT(查询计划)</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__762">1. 分析出</span><span class="js_darkmode__763">需要 ord</span><span class="js_darkmode__764">ers 表和 customers 表,通</span><span class="js_darkmode__765">过 customer_id 关联;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__766">2. 分析出需要过滤:city = '北京'、ord</span><span class="js_darkmode__767" data-slate-leaf="true"><span class="js_darkmode__768">er_date 在2023年;</span></span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__769" data-slate-leaf="true"><span class="js_darkmode__770" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;text-align: justify; margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;class&quot;:&quot;qb-para-p1&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;class&quot;:&quot;slate-para qb-para-p1&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">3.&nbsp;</span><span class="js_darkmode__771" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;p&quot;,&quot;attributes&quot;:{&quot;style&quot;:&quot;text-align: justify; margin-bottom: 8px;&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;class&quot;:&quot;qb-para-p1&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;class&quot;:&quot;slate-para qb-para-p1&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">分析出需要</span><span class="js_darkmode__772">聚合:计算 total_amount 的平均值;</span></span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__773">4. 分析出需要返回“平均订单金额”;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__774">5. 生成SQL:</span>&nbsp;</span></p>
<p>查看代码</p>
<pre class="language-sql highlighter-hljs"><code>SELECT AVG(o.total_amount) as avg_amount
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
WHERE c.city = '北京' AND YEAR(o.order_date) = 2023;</code></pre>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">策略2:Divide and Conquer CoT(分治)</span></p>
<p>查看代码</p>
<pre class="language-sql highlighter-hljs"><code>
一、分解成子问题,用伪SQL表达

-- 子问题1:获取北京客户,伪SQL1:
SELECT 客户编号 FROM 客户表 WHERE 城市 ='北京'

--子问题2:获取2023年订单,伪SQL2:
SELECT 订单编号, 客户编号, 订单金额 FROM 订单表
WHEREYEAR(订单日期) =2023

--子问题3:合并并计算平均值,伪SQL3:
SELECTAVG(订单金额)
FROM 订单表
WHERE 客户编号 IN (SELECT 客户编号 FROM 客户表 WHERE 城市 ='北京')
ANDYEAR(订单日期) =2023


二、汇总生成最终SQL
SELECTAVG(o.total_amount) as avg_amount
FROM orders o
WHERE o.customer_id IN (
    SELECT customer_id FROM customers WHERE city ='北京')
ANDYEAR(o.order_date) = 2023;</code></pre>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span class="js_darkmode__776" style="font-family: &quot;Microsoft YaHei&quot;">策略3:Example Generation(根据上下文+sql示例生成)</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__777">提供给模型</span><span class="js_darkmode__778">的信息</span><span class="js_darkmode__779">:</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><span class="js_darkmode__780">(1)用户的需求是要“</span><span class="js_darkmode__781">计算</span><span class="js_darkmode__782">特定城市</span><span class="js_darkmode__783">特定年份的平均订单金额”</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__784">(2)相似SQL示例(去除具体业务信息)</span></span></p>
<p>查看代码</p>
<pre class="language-sql highlighter-hljs"><code>-- 示例: 地区+时间筛选的聚合查询
SELECTAVG(订单表.金额字段) FROM 订单表
JOIN 客户表 ON 订单表.客户ID = 客户表.客户ID
WHERE 客户表.地区字段 ='某城市' ANDYEAR(订单表.日期字段) = 某年份;</code></pre>
<p>模型基于示例生成最终SQL:</p>
<p>查看代码</p>
<pre class="language-sql highlighter-hljs"><code>SELECT AVG(o.total_amount) as avg_amount
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
WHERE c.city ='北京'
ANDYEAR(o.order_date) = 2023;</code></pre>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">最后,由一个仲裁Agent从三个不同策略的Agent分别生成的SQL<span class="js_darkmode__785">中,选出一个最合适的来执行,而且这个独立的仲裁Agent只会选择一条最合理的sql,不会对这条sql做任何</span><span class="js_darkmode__786">修改。</span></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><span class="js_darkmode__787">这就是高德90%准确率的第五个思路:“通过多个不同S</span><span class="js_darkmode__788">QL生成Agent之间相互补充,将准确率峰值稳定在接近90%的状态。”</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong>回顾一下高德ChatBI演化的三个阶段:</strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__789">第一阶段:通过prompt + 数据基础设施建设,快</span><span class="js_darkmode__790">速达到60分水平的ChatBI;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__791">第二阶段:通过引入Agent和原子工具,拆解复杂pr</span><span class="js_darkmode__792">ompt,降低错误率,达到90分峰值水平;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__793">第三阶段:通过引入多Agent和分子工具,增加流程稳</span><span class="js_darkmode__794">定性,降低Agent认知复杂度,将准确率稳定在峰值水平。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__795">以上,就是高德90%准确率的思路。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__796">那剩下的10%的错误率可以不管吗?答案是不能。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__797">在生产环境,90%准确率意味着每10个查询就有1</span><span class="js_darkmode__798">个出错,用户体验仍不够理想。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__799">高德的理念是:“与其让AI攻克这10%,不如用人机协同</span></strong><strong><span class="js_darkmode__800">。”</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__801">通过有限合理地提高人的参与度,来弥补这10%的问题。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104845900-36656506.png" class="lazyload"></span></p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__802">首先,在用户输入前,提供“提问助手引导”,从源头减少奇怪的问题输入;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__803">然后,在回答过程中,给出SQL的逻辑解释,让用户明白SQL是在干什么;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__804">最后,在产出结果后,提供人工介入通道,用户无法判断SQL准确性或对结算结果有疑义时,可以申请人工介</span><span class="js_darkmode__805">入,确保用户总是能走完需求闭环,同时收集用户反馈数据,为系统持续优化提供素材。</span></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104855284-5351802.png" class="lazyload"></span><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)">这是高德90%准确率的第六个思路:“不是让AI做到100%完美,而是让整个系统达到100%可用。”</span></strong></p>
<p><span class="js_darkmode__807" style="font-family: &quot;Microsoft YaHei&quot;">基于元数据、Agent等构建ChatBI的核心技术思路拆解完毕。</span></p>
<p><strong><span class="js_darkmode__811" style="font-family: &quot;Microsoft YaHei&quot;">持续优化迭代方面,除了收集用户反馈,高德也提出了ChatBI的主动评测原则。</span></strong></p>
<h3 data-slate-node="element" data-block-id="KVGQbjRyPQ" data-dir-key="KVGQbjRyPQ"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__812">1)重视评测集的构建</span></span></h3>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__813">用真实用户的问法 + 基础能力模块(例如时间解析类、地理范围类、业务口径类)测试案</span><span class="js_darkmode__814">例来搭建评测数据集。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__815">注意保持鲜度(定期更新)、做难度划分(简单/中等/困难分类)。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__816">就像考试要有标准答案一样,我们需要收集各种真实问题和标准SQL,这样才能客观衡量系</span><span class="js_darkmode__817">统好不好用。</span></span></p>
<h3 data-slate-node="element" data-block-id="S1h7G_jBXg" data-dir-key="S1h7G_jBXg"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__818" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;h3&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;element&quot;,&quot;style&quot;:&quot;text-align: justify; margin-bottom: 8px;&quot;,&quot;data-block-id&quot;:&quot;KVGQbjRyPQ&quot;,&quot;data-dir-key&quot;:&quot;KVGQbjRyPQ&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">2)</span><span class="js_darkmode__819">自动化冒烟测试</span></span></h3>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__820">模拟真实环境,让系统自己跑一遍,看结果对不对;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__821">特别关注大模型生成SQL的准确性和稳</span><span class="js_darkmode__822">定性。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__823">人工测试太慢,自动化能快速发现问题,确保每次改动都不会把系统搞坏。</span></span></p>
<h3 data-slate-node="element" data-block-id="EG-IFJx7Y5" data-dir-key="EG-IFJx7Y5"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__824" data-pm-slice="1 1 [&quot;para&quot;,{&quot;tagName&quot;:&quot;h3&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;element&quot;,&quot;style&quot;:&quot;text-align: justify; margin-bottom: 8px;&quot;,&quot;data-block-id&quot;:&quot;KVGQbjRyPQ&quot;,&quot;data-dir-key&quot;:&quot;KVGQbjRyPQ&quot;},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-node&quot;:&quot;text&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-leaf&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;},&quot;node&quot;,{&quot;tagName&quot;:&quot;span&quot;,&quot;attributes&quot;:{&quot;data-slate-string&quot;:&quot;true&quot;,&quot;style&quot;:null},&quot;namespaceURI&quot;:&quot;http://www.w3.org/1999/xhtml&quot;}]">3)</span><span class="js_darkmode__825">自动化归因分析</span></span></h3>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__826">SQL生成出错时,自动分析是哪个环节的问题(召回、生成、还是中途某个步骤)</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__827">不用人工一个个排查,系统告诉你"问题出在第几步",Bug修复效率显著提升。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)"><strong><span class="js_darkmode__828">想要持续达到高准确率,就要建立持续优化的机制。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;"><strong><span class="js_darkmode__829">到此,高德目前的所有思路都拆解完了,回顾一下:</span></strong></span></p>
<ol class="list-paddingleft-1 js_darkmode__830">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__831">四象限策略:不同复杂度问题用不同方案解决</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__832" start="2">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__833">多层元数据:让AI理解业务而不只是数据</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__834" start="3">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__835">虚拟宽表:降低多表关联查询复杂度的同时控制数据更新的复杂度</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__836" start="4">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__837">三阶段演化:从60%到90%的渐进式优化路径</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__838" start="5">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__839">多Agent协作:三种策略并行+仲裁选择最优方案</span></span></li>
</ol>
<ol class="list-paddingleft-1 js_darkmode__840" start="6">
<li><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__841">人机协同:用有限人工介入补齐最后10%</span></span></li>
</ol>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__842">高德90%准确率的本质:不是单一技术突破,而是系统工程的胜利。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__843">最后,是高德数据团队下一步优化方向。</span></strong></span></p>
<h3 data-slate-node="element" data-block-id="QALtgSBTGH" data-dir-key="QALtgSBTGH"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__844">方向一:Graph-RAG + NER,优化召回精准度</span></span></h3>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104907255-296906995.png" class="lazyload"></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;">首先,在系统建设阶段,需要用NER(命名实体识别)对所有的知识文档进行信息要素抽取<span class="js_darkmode__845">。</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__846">包括数据库表结构、字段说明、业务文档、SQL示例等等,从中提取出各种实体,比如表名</span><span class="js_darkmode__847">、字段名、指标名、业务概念这些。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__848">然后,基于这些实体之间的关系来构建知识图谱。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__849">比如,某个字段属于哪张表、某个指标需要哪些字段来计算、不同业务术语之间是同义词关</span><span class="js_darkmode__850">系等等,这样就把原本分散的知识片段通过实体和关系连接成一个网络。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__851">当用户提问的时候,系统再次使用NER从问题中识别出关键实体。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__852">比如,用户说"北京近7天新用户复购率",就能识别出"北京"、"近7天"、"新用户"</span><span class="js_darkmode__853">、"复购率"这些关键实体。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__854">接着,就是在已经构建好的知识图谱中,以这些问题实体为起点进行搜索。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__855">这个搜索过程是分轮进行的。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__856">第一轮:先找到这些实体在图中对应的节点;</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__857">第二轮:从这些节点向外扩展一跳,找到直接相关的其他实体。比如"新用户"会连接到"用</span><span class="js_darkmode__858">户注册表"、"复购率"会连接到"订单表"等等。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__859">第三轮:继续扩展,这时候可能会加入关系强度的过滤,只保留那些与用户问题强相关的知识</span><span class="js_darkmode__860">片段。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__861">第四轮:主要做质量控制,确保召回的知识既完整又干净。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(53, 152, 219, 1)" data-slate-node="text"><strong><span class="js_darkmode__862">最终形成一个知识图,喂给模型作为上下文信息。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__863">方向二:预训练、微调、强化学习</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104917890-1235702113.png" class="lazyload"></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;<img alt="image" data-src="https://img2024.cnblogs.com/blog/706195/202509/706195-20250905104921017-1745820598.png" class="lazyload"></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span><span style="font-family: &quot;Microsoft YaHei&quot;">这块做起来成本就非常高了,感兴趣、有实力的朋友可以进一步了解相关论文。</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">以上,这篇文章已经写了近11000字。</span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;">能看到这里,你对ChatBI的理解,已经超<span class="js_darkmode__864">过90%的人。</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__865">当再有人跟你说找个开源项目三天就能搞出来ChatBI,就把这篇文章怼他脸上。</span></strong></span></p>
<p data-pm-slice="0 0 []">&nbsp;</p>
<p data-pm-slice="0 0 []"><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__867">写在最后</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__868">写完后我自己的感觉是,ChatBI这个赛道确实有前景,但坑也确实不少。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__869">技术能解决大部分问题,但剩下那10%往往决定了产品的生死。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__870">AI再强,也永远是辅助人类,承认这一点,才能做出真正好用的东西。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__871">概念可以炒,PPT可以做得很漂亮,但产品得实打实地解决问题。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__872">ChatBI也好,什么AGI也好,最终还是要回到用户价值这个原点。</span></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__873">用户不会为了你的技术有多牛逼而买单,他们只关心自己的问题有没有被解决。</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__874">这个行业变化太快,今天的最佳实践可能明天就过时了,今天的独角兽可能下个月就倒了。但有些东西不会变,比如对业务的理解,对用户的敬畏,还有那份工程师的较真劲儿。</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><strong><span class="js_darkmode__875">ChatBI也好,其他AI应用也好,都不是银弹,但也不是骗局。</span></strong></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__876">它们是我们手中的工具,用得好能创造价值,用不好就是在浪费时间和金钱。</span></span></p>
<p><strong><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__877">关键是要知道自己在做什么,为什么要做,以及怎么做得更好。</span></span></strong></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;" data-slate-node="text"><span class="js_darkmode__878">愿每一个在AI路上前行的朋友,都能找到属于自己的那个90%,也都能优雅地处理好剩下的10%。</span></span></p>
<h5 data-pm-slice="3 3 []">&nbsp;</h5>
<h5 data-pm-slice="3 3 []"><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1); font-size: 12px"><strong><span style="color: rgba(52, 73, 94, 1)">以</span>上,既然看到这里了,如果觉得不错,随手点个赞、分享、推荐三连吧,我们,下次再见。</strong></span></h5>
<p data-pm-slice="3 3 []"><span style="font-size: 12px"><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)">作者:秋水,</span><span style="font-family: &quot;Microsoft YaHei&quot;; color: rgba(52, 73, 94, 1)">互动交流,请联系邮箱:fennenqiushui@qq.com</span></span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span></p>
<p><span style="font-family: &quot;Microsoft YaHei&quot;">&nbsp;</span></p>

</div>
<div id="MySignature" role="contentinfo">
    <p>本文来自博客园,作者:AI粉嫩特攻队,转载请注明原文链接:https://www.cnblogs.com/anai/p/19075045</p><br><br>
来源:https://www.cnblogs.com/anai/p/19075045
頁: [1]
查看完整版本: 你的ChatBI(问数)准确率不到50%?带你深度拆解90%准确率的高德ChatBI案例