滴滴ChatBI技術(shù)實(shí)踐:智能數(shù)據(jù)分析的前沿探索與應(yīng)用
一、ABI 方向的演進(jìn)及 ChatBI 領(lǐng)域現(xiàn)狀
1. BI 產(chǎn)品的演進(jìn)方向
BI 產(chǎn)品的發(fā)展經(jīng)歷了從報(bào)表式 BI 到自助式 BI 的演變,而當(dāng)前智能 BI 則吸引了大家的廣泛關(guān)注與大量投入。無論是早期的增強(qiáng)分析技術(shù),還是如今新興的 ChatBI 產(chǎn)品形態(tài),其核心目的都在于降低用戶利用數(shù)據(jù)的門檻與成本。我們期望通過融入 AI 的洞察力,使用戶能夠更加便捷地訪問并應(yīng)用數(shù)據(jù)資源,從而實(shí)現(xiàn)數(shù)據(jù)普惠。
2. 智能 BI 背后的技術(shù)演進(jìn)
在 23 年之前,或許有些同學(xué)已經(jīng)聽說過增強(qiáng)分析這一領(lǐng)域。增強(qiáng)分析技術(shù)涵蓋了智能圖表、數(shù)據(jù)解讀、數(shù)據(jù)預(yù)測、異動(dòng)分析、智能歸因等多個(gè)方面,這些功能的實(shí)現(xiàn)依賴于機(jī)器學(xué)習(xí)和規(guī)則引擎等底層技術(shù)。然而,那時(shí)這一領(lǐng)域似乎并未引起廣泛的熱潮,處于一種相對(duì)平穩(wěn)的發(fā)展?fàn)顟B(tài)。盡管我們擁有了這些技術(shù)能力,但在幫助用戶獲得深刻的數(shù)據(jù)洞察和滿足期望的結(jié)果方面,似乎還有所欠缺。
自 23 年起,業(yè)內(nèi)眾多公司在傳統(tǒng) BI 基礎(chǔ)上進(jìn)行了大量探索,技術(shù)上涵蓋了智能問答、意圖識(shí)別等領(lǐng)域。有趣的是,在 ChatGPT 時(shí)代,我們通過 LLM 大模型的意圖識(shí)別能力,將以往的增強(qiáng)分析功能都串聯(lián)了起來,用戶現(xiàn)在可以通過自然語言進(jìn)行數(shù)據(jù)的解讀、預(yù)測和異動(dòng)分析。事實(shí)上,我們團(tuán)隊(duì)在 22 年之前已經(jīng)開發(fā)了許多增強(qiáng)分析的功能,現(xiàn)在開發(fā) ChatBI 時(shí),發(fā)現(xiàn)這些功能被完美地整合在了一起,形成了 ChatBI 的堅(jiān)實(shí)基礎(chǔ)。
3. 當(dāng)前 ChatBI 的兩種探索路徑
目前,業(yè)內(nèi)對(duì)于 ChatBI 的探索呈現(xiàn)出百花齊放的態(tài)勢。無論是創(chuàng)業(yè)公司還是傳統(tǒng)BI 優(yōu)勢企業(yè),都在這一領(lǐng)域投入了大量精力,顯然對(duì)此抱有極高的期望。這一領(lǐng)域的發(fā)展主要有兩條路徑。
一條路徑是以 BI 平臺(tái)為核心,許多擁有傳統(tǒng) BI 優(yōu)勢的企業(yè)傾向于采用這種方式。他們側(cè)重 Copilot,以 BI 平臺(tái)為起點(diǎn),構(gòu)建和運(yùn)用 ChatBI。這一路徑的啟動(dòng)成本相對(duì)較低,BI 平臺(tái)背后已有成型的數(shù)據(jù)集,這些數(shù)據(jù)集可直接用于提問和初步分析。然而,這一路徑也面臨著一定的歷史遺留問題。因?yàn)檫@些數(shù)據(jù)集并非專為提問和終端消費(fèi)者而構(gòu)建,而是主要服務(wù)于報(bào)表制作人員。因此,數(shù)據(jù)集的非標(biāo)準(zhǔn)化可能導(dǎo)致問答的準(zhǔn)確率相對(duì)較低。
另一種路徑則是以指標(biāo)平臺(tái)為中心,我們可以看到許多新興的 BI 創(chuàng)業(yè)公司傾向于采用這種方式,他們更注重 AI-Native,即先建立指標(biāo)平臺(tái),再在此基礎(chǔ)上搭建 BI 產(chǎn)品。這一路徑被視為實(shí)現(xiàn) ChatBI 的理想方式,因?yàn)橹笜?biāo)是標(biāo)準(zhǔn)化的,問答口徑也相對(duì)清晰,可以有效避免重名、同義或模糊字義等問題。然而,這一路徑對(duì)基礎(chǔ)設(shè)施建設(shè)的要求相對(duì)較高。在大型企業(yè)或公司中,要實(shí)現(xiàn)指標(biāo)的全面標(biāo)準(zhǔn)化,需要付出一定的成本。這些公司的產(chǎn)品在形態(tài)上大同小異,都是基于數(shù)據(jù)集的問答形態(tài),相似度很高。
4. 個(gè)人觀察到的 ChatBI 行業(yè)發(fā)展現(xiàn)狀
總體而言,ChatBI 似乎仍處于行業(yè)探索的早期。
從技術(shù)現(xiàn)狀來看:
- 用戶意圖理解的準(zhǔn)確性已得到驗(yàn)證。
- NL2SQL 取數(shù)的準(zhǔn)確性有待進(jìn)一步突破。
- 深度數(shù)據(jù)分析所依賴的模型基座能力還有待大幅提升。
從應(yīng)用現(xiàn)狀來看:
- 垂直標(biāo)準(zhǔn)場景(標(biāo)準(zhǔn)數(shù)據(jù)源)落地速度較快。
- 通用非標(biāo)場景(非標(biāo)數(shù)據(jù)源)落地挑戰(zhàn)較大。
二、滴滴 ChatBI 的探索和實(shí)踐
1. 滴滴 BI 平臺(tái)發(fā)展
滴滴 BI 平臺(tái)的發(fā)展和業(yè)內(nèi)相似,從可視化報(bào)表平臺(tái),到一站式報(bào)表平臺(tái),再到自助分析平臺(tái),最后到今天的智能分析平臺(tái)。
2. 滴滴 ChatBI 產(chǎn)品功能及落地情況
數(shù)小智是我們內(nèi)部 ChatBI 的落地產(chǎn)品,產(chǎn)品形態(tài)包含 Copilot、PC 站點(diǎn)、IM 移動(dòng)端,核心功能包括找數(shù)、分析、SQL 輔助 ALL In One,其中絕大部分流量是在 Copilot 這個(gè)形態(tài)下貢獻(xiàn)的。
3. 滴滴 ChatBI 實(shí)踐中的關(guān)鍵思考
(1)技術(shù)關(guān)鍵思考-NL2SQL 的準(zhǔn)確率如何提升
分析技術(shù):LLM 升級(jí) + 規(guī)?;?xùn)練集
- LLM:LLM1 10B>LLM2 33B->LLM3 72B
- NL2SQL 微調(diào)數(shù)據(jù):數(shù)萬量級(jí) + 半自動(dòng)標(biāo)注平臺(tái)
- 每周線上巡檢:快速修復(fù)用戶提問的 badcase
分析對(duì)象:指標(biāo)標(biāo)準(zhǔn)化建設(shè)
- 滴滴統(tǒng)一指標(biāo)平臺(tái)建設(shè):1w+服務(wù)化標(biāo)準(zhǔn)業(yè)務(wù)指標(biāo)
- 數(shù)據(jù)口徑清晰唯一,指標(biāo)加工邏輯封裝在指標(biāo)平臺(tái)內(nèi)
- 通過 API 對(duì)外直接服務(wù)指標(biāo)
分析產(chǎn)品:可信度增強(qiáng)設(shè)計(jì)
- 模型拒答、反問機(jī)制
- 提問可視化為篩選項(xiàng)
- 生成 SQL 的可視化
- 行業(yè)黑話支持傳入 prompt
在 NL2SQL 的流程上,存在許多節(jié)點(diǎn)會(huì)影響準(zhǔn)確率。首先,關(guān)于用戶提問的處理,會(huì)經(jīng)過多輪問題的合并,整合成一個(gè)問題進(jìn)行輸出,這一環(huán)節(jié)的準(zhǔn)確率高達(dá)約 98%。接下來,整合后的問題會(huì)進(jìn)入意圖識(shí)別的小模型,該模型負(fù)責(zé)將問題的意圖歸類。這一環(huán)節(jié)的模型準(zhǔn)確率大約維持在 96% 左右。隨后,如果是一個(gè)數(shù)據(jù)分析任務(wù),會(huì)遇到 LLM 72B 模型,這是一個(gè)經(jīng)過高質(zhì)量微調(diào)數(shù)據(jù)精心調(diào)校的自研模型。當(dāng)面對(duì)異動(dòng)分析、數(shù)據(jù)解讀或數(shù)據(jù)預(yù)測等類型的問題時(shí),通常會(huì)直接調(diào)用 NL2API 功能。普遍情況下會(huì)進(jìn)入 NL2SQL 取數(shù)環(huán)節(jié),在這一環(huán)節(jié),我們首先利用模型生成一個(gè) SQL 的結(jié)果,隨后將其轉(zhuǎn)化為 DSL。最后通過 SQL 或者調(diào)用 API 生成智能圖表。
在整個(gè)流程中都會(huì)有所損耗,綜合來看,數(shù)據(jù)分析類的問題,目前端到端的解決率為 85% 左右,端到端是指從用戶提問到最終渲染出圖表。
要實(shí)現(xiàn)理想態(tài)的 ChatBI 對(duì)數(shù)據(jù)資產(chǎn)標(biāo)準(zhǔn)化建設(shè)不足的企業(yè)而言,會(huì)是一個(gè)長期工程。報(bào)表數(shù)據(jù)集和底層 Hive 表,指標(biāo)維度定義不規(guī)范,并非面向終端分析人員建設(shè),靈活問答準(zhǔn)確率低。需要推動(dòng)標(biāo)準(zhǔn)指標(biāo)集,快速覆蓋公司內(nèi)各種關(guān)鍵用數(shù)場景,并逐步替代其它分析源。
(2)產(chǎn)品關(guān)鍵思考-如何培養(yǎng)用戶使用 ChatBI 的習(xí)慣
雖然對(duì) ChatBI 的產(chǎn)品探索如火如荼,但用戶層面尚未到深度依賴的程度。準(zhǔn)確性固然有影響,但用戶習(xí)慣也是很大的因素。
基于 Copilot 形態(tài),設(shè)計(jì)面向靈活分析場景的產(chǎn)品觸點(diǎn)。例如充當(dāng)報(bào)表組件的靈活篩選器、報(bào)表上任意波動(dòng)字段的歸因分析、數(shù)據(jù)集/Hive 表的字段靈活探查。
(3)業(yè)務(wù)關(guān)鍵思考—如何提供深度價(jià)值
ChatBI 產(chǎn)品要能夠提供靈活的異動(dòng)分析和歸因能力。異動(dòng)分析是用戶邁入深度分析的剛需,也是智能BI 的典型產(chǎn)品功能,ChatBI 產(chǎn)品形態(tài)對(duì)該功能起到靈活放大的作用。
生成業(yè)務(wù)數(shù)據(jù)分析日?qǐng)?bào):借助 ChatBI + LLM 在特定的業(yè)務(wù)分析場景下每日自動(dòng)生成類似上圖的業(yè)務(wù)數(shù)據(jù)分析日?qǐng)?bào)。
4. 滴滴數(shù)小智產(chǎn)品架構(gòu)
最終,我們的產(chǎn)品架構(gòu)涵蓋了 Copilot、PC 站點(diǎn)、IM 移動(dòng)端的三種主要產(chǎn)品形態(tài)。從分析到 SQL 再到找數(shù),都已實(shí)現(xiàn)了全面的落地實(shí)施。就今年而言,在公司內(nèi)部的整體落地情況符合預(yù)期。
三、走向 ChatBI 的未來
1. ChatBI 提供的產(chǎn)品價(jià)值分層
NL2SQL 問答取數(shù)只是 ChatBI 實(shí)現(xiàn)深度分析價(jià)值的基礎(chǔ),行業(yè)的期待遠(yuǎn)高于此。而深度分析價(jià)值的實(shí)現(xiàn)是要基于業(yè)務(wù)場景的,非通用性分析。
2. ChatBI 深度價(jià)值的實(shí)現(xiàn)有賴于 Agent 架構(gòu)的場景化落地
在分析深度增強(qiáng)的過程中,業(yè)務(wù)場景和背景知識(shí)的融入至關(guān)重要。這包括了解特定行業(yè)(如能源業(yè)務(wù))的關(guān)鍵指標(biāo)和趨勢,以提供針對(duì)性的分析建議,為決策提供有力支持。
四、問答環(huán)節(jié)
Q1:如果要快速搭建 Chat BI,有哪些基礎(chǔ)設(shè)施可以用?
A1:我們內(nèi)部一些基礎(chǔ)模型也是基于開源模型去做的,包括這塊 LLM 72B 的開源模型,然后在這個(gè)模型的基礎(chǔ)上進(jìn)行微調(diào)。但是微調(diào)數(shù)據(jù)的過程相當(dāng)耗時(shí),并且需要大量積累資源。盡管存在一些現(xiàn)成的開源訓(xùn)練數(shù)據(jù)集可供使用,但在應(yīng)對(duì)我們真實(shí)的業(yè)務(wù)場景和用戶提問時(shí),這些開源數(shù)據(jù)集所能提供的幫助只是一個(gè)基礎(chǔ)起點(diǎn),遠(yuǎn)不能滿足我們的全部需求,仍需我們自己補(bǔ)充大量內(nèi)容。
除此之外,很大程度上依賴于原先 BI 的基礎(chǔ)設(shè)施,如果 BI 的基礎(chǔ)設(shè)施原本就建設(shè)得相對(duì)完善,那么今天開發(fā) Chat BI 就會(huì)省力很多。
Q2:指標(biāo)解讀是指什么?
A2:指標(biāo)解讀指的是指標(biāo)的極值、均值、趨勢以及指標(biāo)間的相關(guān)性等基本信息。目前,我們尚未發(fā)現(xiàn)除了提升語義潤色效果之外的其他深度價(jià)值。因此,我們還需要思考如何更好地利用大模型,結(jié)合真正的業(yè)務(wù)背景知識(shí)進(jìn)行數(shù)據(jù)解讀,發(fā)揮出更好的效果。
Q3:為什么要先做一次 NL2SQL 再轉(zhuǎn) DSL?
A3:NL2SQL 的過程中靈活度過高,包含了一些子查詢,甚至可能涉及多表查詢,這些都對(duì)底層支持提出了很高的要求。如果底層支持不夠完善,就可能會(huì)遇到解析困難的問題。相對(duì)而言,DSL 至少能夠?qū)@些復(fù)雜的查詢進(jìn)行較好的解析和處理,此外,對(duì)于模糊指標(biāo)的處理,也有部分可以在此階段進(jìn)行一定程度的優(yōu)化。
還有一個(gè)歷史原因,因?yàn)樵?Chat BI 系統(tǒng)建立之前,BI 平臺(tái)就已經(jīng)存在這一層,并且承擔(dān)了一些權(quán)限相關(guān)的校驗(yàn)任務(wù),以及與其他系統(tǒng)的關(guān)聯(lián)工作。因此,在 Chat BI 的架構(gòu)中,我們依然保留了這一層,因?yàn)樗_實(shí)為我們提供了一些必要的幫助和支持。