SLS Copilot 實踐:基于 SLS 靈活構建 LLM 應用的數(shù)據基礎設施
"紙上得來終覺淺,絕知此事要躬行。" —— 陸游
在 LLM 應用快速發(fā)展的今天,我們往往專注于模型調優(yōu)和功能實現(xiàn),卻忽略了一個關鍵問題:
如何有效地監(jiān)控、診斷和優(yōu)化線上運行的 LLM 應用?
本文將分享我們在構建 SLS SQL Copilot 過程中的工程實踐,展示如何基于阿里云 SLS 打造一套完整的 LLM 應用數(shù)據基礎設施。
1.背景:LLM 應用開發(fā)的可觀測性挑戰(zhàn)
1.1 Dify 平臺的崛起與局限
Dify 作為目前最受歡迎的 LLM 應用開發(fā)平臺之一,以其可視化的工作流設計和豐富的組件生態(tài),大大降低了 LLM 應用的開發(fā)門檻。我們團隊也選擇在 Dify 平臺上構建 SQL Copilot 應用,旨在為用戶提供智能化的 SQL 查詢生成和分析服務。
然而,在實際生產環(huán)境中,我們逐步發(fā)現(xiàn)一個嚴重的問題:Dify 平臺的可觀測能力嚴重不足。作為一個提供可觀測性解決方案的團隊,我們深知良好的監(jiān)控和診斷能力對于保障服務質量的重要性。這種"自己的狗糧都吃不香"的尷尬處境,促使我們開始思考如何構建一套適合 LLM 應用的數(shù)據基礎設施。
1.2 SQL Copilot 的業(yè)務復雜性
我們的 SQL Copilot 應用具有以下特點:
- 多子系統(tǒng)協(xié)作:包含需求理解、SQL 生成、質量校驗、SQL 診斷等多個子系統(tǒng)
- 復雜工作流:涉及多層嵌套的 Dify workflow,單個用戶請求可能觸發(fā)多個子流程
- 動態(tài)內容嵌入:大量使用上下文嵌入和 RAG 技術,系統(tǒng)提示詞包含大量嵌入的動態(tài)上下文信息和知識庫召回內容
- 高并發(fā)場景:需要支持大量用戶的實時查詢生成請求
這些特點在 Dify 平臺現(xiàn)有的監(jiān)控和觀測能力下,難以滿足我們的生產實踐需求。
2..痛點分析:Dify 平臺可觀測性的三大短板
2.1 查詢能力嚴重不足
現(xiàn)狀描述:Dify 平臺僅提供基礎的賬號查詢功能,用戶只能通過用戶 ID 或會話 ID 進行簡單的歷史記錄查找。
圖片
實際需求:
- 關鍵詞檢索:當用戶反饋"我問了關于訂單分析的問題,但結果不對"時,我們需要能夠通過"訂單"等關鍵詞快速定位相關會話
- 多維度查詢:按時間范圍、錯誤類型、用戶 ID、會話 ID、功能模塊等多個維度進行組合查詢
- 模糊匹配:支持 SQL 語句片段、錯誤信息片段的模糊搜索
痛點:線上問題排查效率低下,用戶反饋的問題往往需要數(shù)分鐘才能定位到具體的執(zhí)行記錄。
2.2 鏈路追蹤能力缺失
現(xiàn)狀描述:Dify 的執(zhí)行日志以平鋪的方式展示,缺乏層次化的鏈路追蹤能力。
圖片
實際痛點:
- 嵌套工作流追蹤困難:當主工作流嵌套子工作流時,很難下探追蹤子工作流的具體執(zhí)行明細
- 上下游數(shù)據追溯麻煩:當需要查看和比對上下游數(shù)據時,往往需要重新查詢,整個追溯過程非常繁瑣,嚴重影響排查效率
案例:當用戶提交 SQL 生成請求時,系統(tǒng)會依次執(zhí)行會話記憶→智能路由→需求理解→SQL 生成→語法校驗等多個步驟。若最終結果不符合預期,我們需要逐個檢查每個步驟的詳細執(zhí)行過程以定位具體原因,尤其是當問題復雜時,需要多次切換上下文,整個排查過程往往需要 30 分鐘以上。
2.3 內容展示能力不足
現(xiàn)狀描述:Dify 的日志展示界面對于大段文本內容的可讀性很差,特別是包含大量動態(tài)內容嵌入的系統(tǒng)提示詞。
圖片
實際問題:
- 提示詞可讀性差:包含上下文嵌入和 RAG 召回內容的提示詞往往長達幾千字,在 Dify 界面中顯示為一大段沒有格式的文本
- 數(shù)據格式解析能力不足:輸入和輸出的數(shù)據往往包含多種格式,如 Markdown、JSON、SQL、Text 等,Dify 在界面中只能看到原始字符串,不支持智能格式解析和友好閱讀展示
痛點:當需要排查 SQL 生成問題時,很難快速閱讀和理解完整的上下文,也無法快速跳轉至關鍵章節(jié),降低了問題診斷的效率。
3.深層思考:從可觀測痛點到基礎設施的三重挑戰(zhàn)
在深入分析上述可觀測性痛點的過程中,我們逐漸意識到,這些表面的可觀測性問題背后,實際上反映了更深層次的架構挑戰(zhàn)。
3.1 第一重挑戰(zhàn):架構擴展性
當我們試圖解決查詢能力問題時,深入調研發(fā)現(xiàn)問題的根源在于 Dify 底層架構的擴展性限制:Dify 采用 PostgreSQL 作為底層數(shù)據存儲,雖然 PG 在 OLTP 場景表現(xiàn)優(yōu)秀,但面對大規(guī)模日志數(shù)據的存儲和復雜查詢分析時,在存儲容量、計算資源、寫入和查詢性能等方面,系統(tǒng)的擴展性正面臨著嚴峻挑戰(zhàn)。
數(shù)據規(guī)模持續(xù)增長的挑戰(zhàn):隨著用戶量和使用頻次增長,海量的執(zhí)行日志、交互數(shù)據、模型調用記錄快速積累。即便使用云上 PostgreSQL,仍受實例規(guī)格束縛,面臨規(guī)劃和擴容難題。真正需要的是無限彈性、按需擴展、按量計費的底層數(shù)據基礎設施。
突發(fā)流量的資源彈性不足:高并發(fā)時 PG 受限于連接數(shù)和處理能力,若資源不夠常會導致服務延遲甚至超時。而 LLM 應用的人機交互特性決定了流量波峰波谷明顯,持續(xù)高配實例將導致資源利用率低,甚至可能造成 2-3 倍的成本浪費。
升級和擴容的復雜性與風險:云上 PG 雖支持在線擴容,但仍需人工規(guī)劃和評估,且可能涉及服務重啟或性能波動風險。我們的 Copilot 服務親身經歷過多次線上擴容的"驚險"時刻。
3.2 第二重挑戰(zhàn):數(shù)據處理能力
當我們試圖分析和診斷線上問題時,發(fā)現(xiàn)底層基礎設施在 LLM 應用數(shù)據的查詢能力上(特別是可觀測方面)存在局限:
多維查詢性能瓶頸:LLM 應用產生大量的自然語言文本(用戶問題、系統(tǒng)提示詞、模型回復等),雖然 PG 支持全文檢索,但在處理海量長文本數(shù)據的關鍵詞檢索、模糊匹配等方面性能有限,也難以支撐前面提到的"多維度查詢"等需求。
實時分析能力不足:當我們需要即席查詢"相同問題影響了多少用戶"、"不同錯誤類型的分布情況"等多維度分析時,Dify 并未提供相應的分析能力,無法滿足復雜多變的即席查詢和分析需求。
數(shù)據結構復雜多變:LLM 應用數(shù)據包含復雜嵌套的多種格式(如:JSON、Markdown 等,涉及提示詞、參數(shù)配置、生成結果等),并且數(shù)據結構常隨開發(fā)迭代動態(tài)變化,PG 在復雜日志數(shù)據的查詢、提取、分析方面遠不如專業(yè)的日志分析引擎靈活高效。
3.3 第三重挑戰(zhàn):數(shù)據多樣化需求
當我們試圖優(yōu)化問題診斷流程和內容展示時,意識到了一個更深層次的問題:
需求場景日趨多樣化:LLM 應用百花齊放,不同領域需求呈現(xiàn)多樣化趨勢。質量團隊需要質量評估和回歸測試,產品團隊需要用戶分析和需求挖掘,算法團隊需要模型訓練和效果評估,運維團隊需要鏈路診斷和性能分析。這些需求遠超 Dify 平臺功能邊界。
數(shù)據開放性需求凸顯:作為 LLM 應用開發(fā)平臺,Dify 接觸到最完整的第一手數(shù)據,但難以滿足各行業(yè)、各角色的多樣化需求。用戶希望獲取這些數(shù)據資源,結合業(yè)務特點進行深度分析或定制開發(fā),對數(shù)據開放性提出更高要求。
數(shù)據基礎設施能力不足:PG 在企業(yè)級數(shù)據開放需求面前存在明顯不足:連接數(shù)和并發(fā)能力受限,缺乏靈活的訪問控制和安全管理機制(如數(shù)據過濾、脫敏等),數(shù)據消費方式單一,缺乏多樣化的數(shù)據處理和消費能力(非不可實現(xiàn),但需投入額外建設成本)。
4.能力重構:基于 SLS 的數(shù)據基礎設施實現(xiàn)能力躍升
正是基于上述三重挑戰(zhàn)的深入思考,我們意識到:單純的功能修補無法解決根本問題,我們需要徹底重構底層數(shù)據基礎設施,以在能力上滿足多重挑戰(zhàn)的需求。 而作為一個提供可觀測性解決方案的團隊,我們深知 SLS 的能力所在與無限潛力,面對這些挑戰(zhàn),內心不禁自信地喊出:“正是在下!”
SLS 在應對這些難題時具備天然優(yōu)勢:
架構擴展性方面:SLS 作為完全托管的云原生服務,在規(guī)模、性能、彈性、成本等方面,實現(xiàn)了真正的在線無縫、彈性擴展、按需付費,能夠動態(tài)調整資源而不影響業(yè)務連續(xù)性,無需人工規(guī)劃或擔心擴容風險,從根本上解決了 PG 面臨的擴展性瓶頸。
數(shù)據處理能力方面:LLM 應用數(shù)據天然具有日志屬性,而 SLS 專門服務于日志場景,原生支持全文檢索、多維查詢、靈活聚合分析,并且數(shù)據處理能力隨數(shù)據規(guī)模線性擴展,在處理 LLM 應用產生的海量文本和 JSON 數(shù)據方面表現(xiàn)卓越。
多樣化需求方面:SLS 提供豐富的數(shù)據查詢、處理和消費方式(查詢、SQL、API 接口、流式加工、投遞等),支持細粒度的訪問控制和數(shù)據分發(fā)管理(通過 storeview 控制行粒度甚至字段粒度的數(shù)據可見性和安全性),支持松散 Schema 甚至完全無結構化數(shù)據,能夠靈活滿足不同團隊的數(shù)據需求。
4.1 架構重構:從雙寫到能力重構
基于這樣的技術優(yōu)勢,我們選擇了 SLS 作為新的數(shù)據基礎設施,考慮到線上業(yè)務的穩(wěn)定性和風險控制,我們制定了漸進式的架構重構策略:保持原有 PG 寫入鏈路不變,同時新增 SLS 異步寫入鏈路。
圖片
這樣做的好處是:
業(yè)務安全優(yōu)先:保持 PG 作為主要的在線業(yè)務數(shù)據存儲,確保 Dify 核心功能不受影響,所有原有的查詢、統(tǒng)計、業(yè)務邏輯繼續(xù)基于 PG 運行。
數(shù)據面解耦:通過異步寫入 SLS,實現(xiàn)數(shù)據層面的解耦,將可觀測、分析、監(jiān)控等需求從主業(yè)務庫中分離出來,既避免了對在線服務造成性能影響,又增強了數(shù)據查詢和處理能力。
功能負載分離:PG 專注提供在線執(zhí)行負載(用戶管理、會話管理、實時查詢等),SLS 承載所有離線分析負載(日志查詢、統(tǒng)計分析、監(jiān)控告警等)。
架構漸進式演進:為未來底層數(shù)據基礎設施的進一步演進預留空間,可以根據業(yè)務發(fā)展需要,逐步將更多功能遷移到基于 SLS 的新數(shù)據基礎設施上。
4.2 能力升級:SLS 核心能力展示
現(xiàn)在,有了全新的數(shù)據基礎設施,基于 SLS 強大的數(shù)據處理引擎,我們在全文檢索、多維查詢、即席分析等方面實現(xiàn)了質的飛躍。面向多樣化場景的數(shù)據擴展能力得到極大增強,可以輕松支撐質量團隊的回歸測試、產品團隊的用戶分析、算法團隊的模型優(yōu)化、運維團隊的問題診斷等多樣化場景需求。
多元數(shù)據支持
無論你的數(shù)據是 Json、Markdown、Text、SQL 還是數(shù)值參數(shù),SLS 都兼容并蓄,并且還貼心地為用戶提供了如 Markdown、JSON 等常用數(shù)據格式的可讀性格式渲染,助力輕松閱讀并理解數(shù)據。
日志原文
Markdown 數(shù)據格式化展示
Json 數(shù)據格式化展示
快速全文檢索
比如,我們在面對第二章中提到的用戶反饋問題時,現(xiàn)在可以輕松根據“訂單”字樣快速檢索出相關問題的請求。

多維組合查詢
我們還可以通過組合多個維度的查詢條件(如 uid、會話 ID、動作、錯誤類型等) 實現(xiàn)對某種特征請求的精準檢索。
圖片
實時洞察分析
更進一步,我們還可以通過 SQL 針對某種特征數(shù)據進行靈活的聚合統(tǒng)計和分析,如下例:我們按天統(tǒng)計用戶提問中有“包含”字眼的請求趨勢變化。
圖片
基于 SLS 的 SQL 分析和可視化能力,我們還可以為業(yè)務輕松構建黃金指標,定制運營大盤,深入洞察并分析交互留存轉化、每日請求趨勢變化、錯誤分布情況、SQL 質量監(jiān)控(可執(zhí)行率和有效數(shù)據率)、用戶滿意度監(jiān)控等。
圖片
圖片
圖片
得益于 SLS 強大且靈活的查詢和分析能力,我們還可以進一步根據具體業(yè)務場景對用戶行為進行更深度的分析和洞察,比如:
- 相同問題影響了多少用戶?
- 不同用戶群體的問題特征分布如何?
- 哪些 SQL 模式最容易出錯?
- 用戶的操作行為模式是什么?
4.3 場景落地:基于 SLS + OneDay 構建輕量級鏈路追蹤與問題診斷系統(tǒng)
在第二章中,我們提到 Dify 本身的鏈路追蹤和內容展示的不足,在實際排查問題時非常費力。當下正值 AICoding 盛行,在有了 SLS 強大的數(shù)據基礎設施加持之下,于是我決定親自動手,打造一個輕量級的鏈路追蹤和問題診斷系統(tǒng),順便也體驗一下 AI 驅動的新研發(fā)模式。
在實踐中,我使用到了集團的 AICoding 平臺 OneDay(阿里巴巴內部的一個基于AI的創(chuàng)意應用生成平臺)構建前端系統(tǒng),后端則直接基于 SLS 強大的數(shù)據存儲、查詢和處理能力。
圖片
圖片
于是我們便有了這樣一個輕量但功能完整的診斷系統(tǒng):
它有著不錯的顏值和風格,具備簡潔清晰的頁面布局,甚至還集成了公司的用戶身份認證。
只需要用戶提問的請求 ID,它就會追蹤串聯(lián)整個鏈路和拓撲,你可以看到任一請求、任一階段、任一節(jié)點的執(zhí)行明細情況,包括輸入、處理和輸出。
它支持多元數(shù)據類型的智能識別,無論是 Markdown、Json、SQL,還是純文本,都支持智能高亮并完美格式化展示。
它還支持系統(tǒng)提示詞和用戶提問等動態(tài)內容的完整展示,并支持提示詞的格式排版、分段展示、內容導航和文字縮放,這對于具體問題的診斷,尤其是細節(jié)處的定位,非常有用。(在 Dify 中,系統(tǒng)提示詞本質上是一個內容模板,系統(tǒng)會從多處獲取或召回片段內容并嵌入其中,每個請求的提示詞內容都不一樣,閱讀完整的提示詞內容,快速定位細節(jié)問題,非常關鍵。)
|
而這一切,我們僅花費了一天時間,從代碼實現(xiàn)→數(shù)據→服務,實現(xiàn)了全托管,OneDay 果然名不虛傳!
而這背后,基于 SLS 的底層數(shù)據基礎設施所提供的強大能力,才是實現(xiàn)極簡風架構的基石:
- 數(shù)據層:SLS 提供一站式的數(shù)據存儲、查詢、分析能力
- 應用層:輕量代理僅處理權限安全和必要的業(yè)務邏輯
- 展示層:OneDay 根據需求描述快速生成可視化界面
在此不得不提一嘴:AICoding 真的在重塑整個軟件行業(yè)!
現(xiàn)在,一個想法 + 一個可靠且靈活的數(shù)據基礎設施 就足夠了,剩下的事情交給 AI,就這么簡單!
OneDay+SLS 的配合簡直是天作之合,它們共同構成了極簡風的架構設計,幾句話 OneDay 便幫你實現(xiàn)了精美頁面,而 SLS 強大的數(shù)據基礎設施能力助你輕松搞定數(shù)據查詢、處理和分析工作,無需配置笨重的數(shù)據庫,無需開發(fā)冗長繁瑣的服務端處理邏輯(若對安全性有要求,最多僅需一層代理),也無需擔心容量、性能、實例規(guī)格等瑣碎之事。
圖片
基于 SLS 強大的數(shù)據基礎設施,我們快速構建了一套完整的鏈路追蹤和問題診斷系統(tǒng),驗證了 SLS 在實際業(yè)務場景中的應用價值。
5.生產實踐:數(shù)據驅動的質量優(yōu)化閉環(huán)
5.1 問題診斷與質量優(yōu)化流程
我們最終還是要回到生產實踐中來,為 SQL Copilot 產品建設而服務,我們建立了一套完整的質量優(yōu)化閉環(huán):
圖片
這里值得一提的是,在 AI 應用的構建和迭代過程中,我們應該充分利用手頭一切可用的資源,并且全面面向 AI。
比如這里,我們將 SLS 和釘釘 AI 表格結合:利用 SLS SQL 分析能力處理海量的請求數(shù)據,整理出錯誤問題并有效識別錯誤特征(通過正則模式匹配識別,比如 case when msg like '%cannot be resolved%' then '列引用錯誤' ...),然后通過下載將結果數(shù)據導出,并導入釘釘 AI 表格(前身是釘釘多維表格),于是我們便可以利用 AI 表格中的諸多特性(如分組、篩選等),還可以通過表單形式進行人工審閱和標注,診斷具體問題時則直接跳轉到上章所述的診斷系統(tǒng)中,實現(xiàn)請求→問題→數(shù)據的串聯(lián)。
而“全面面向 AI”并不是空喊口號,釘釘已在很多 AI 平臺中做了集成,包括 AI 表格本身后續(xù)也會開放 AI 助理的能力(PS:已申請內測,期待能力開放。),我們不斷沉淀的數(shù)據(包括人工標注)后續(xù)能否被高效地作為 AI 的生產資料和知識使用,這是我們選擇工具的邏輯和策略標準。
圖片
圖片
圖片
5.2 關鍵指標與評估體系
Copilot 的質量評估,是衡量和反饋版本迭代好壞,指引優(yōu)化方向的關鍵工具,我們經歷了反復摸索和多輪迭代,最終確定了如下。
核心質量指標:
- SQL 可執(zhí)行率:生成的查詢 SQL 語句語法正確且能夠執(zhí)行的比例
- 數(shù)據有效率:SQL 執(zhí)行后返回有意義結果數(shù)據的比例
- 響應時間:從用戶提問到返回結果的完整耗時
- 用戶滿意度:基于用戶反饋和利用 LLM 反向評估生成質量的綜合評分
這套質量評估體系簡單、明確、具體、可執(zhí)行,也將指導我們后續(xù)的迭代和優(yōu)化工作。
5.3 實際效果提升
我們在最近 3 個月內,將這套基礎設施逐步建設起來并投入使用,目前正在持續(xù)優(yōu)化 Copilot 質量,也取得了階段性的效果提升:
問題診斷效率提升:
- 問題定位時間:從平均 30 分鐘降低到 5 分鐘內,提升 83%
- 根因分析準確率:從 60% 提升到 90%,提升 50%
- 問題修復周期:從平均 3 天縮短到 1 天,提升 67%
服務質量改善:
- SQL 可執(zhí)行率:從 75% 提升到 85%,提升 10 個百分點
- 用戶滿意度:從 3.2 分提升到 4.3 分(5 分制),提升 34%
- 問題追蹤覆蓋率:從人工抽查的 10% 提升到全量監(jiān)控的 100%
6.經驗總結與未來展望
6.1 AI 時代新趨勢
架構輕量簡潔化:
- 全托管的數(shù)據基礎設施,使系統(tǒng)架構輕量簡潔,讓團隊專注于核心業(yè)務創(chuàng)新
- "想法+數(shù)據+AI"的研發(fā)模式,簡潔、高效,釋放無限創(chuàng)造力
工具鏈融合趨勢:
- SLS + OneDay + 釘釘 AI 表格,展現(xiàn)了 AI 時代多工具鏈協(xié)同的巨大潛力
- 從想法→實現(xiàn)→流程的路徑,在 AI 加持下被極大簡化,開發(fā)效率實現(xiàn)躍升
數(shù)據驅動的質量閉環(huán):
- 回歸業(yè)務本身,建立清晰可靠的評估指標是 LLM 應用開發(fā)的首要任務
- 從數(shù)據收集、分析、洞察、到優(yōu)化的完整反饋閉環(huán)保障持續(xù)改進
6.2 未來展望
智能升級:
- 基于歷史數(shù)據沉淀用戶語義和偏好,智能推測用戶真實意圖
- 基于數(shù)據基礎設施,利用 LLM 技術自動生成問題診斷報告和優(yōu)化建議
- 構建智能化的根因分析系統(tǒng),減少人工判斷的工作量
生態(tài)合作:
- Dify 雙寫實現(xiàn)已計劃貢獻給開源社區(qū)(由言合實現(xiàn)),阿里云可觀測能力也已集成到 Dify 官方平臺
- 不僅限于 Dify 平臺,我們期待與更多優(yōu)秀的 LLM 應用平臺深度合作,推動云原生可觀測能力建設
結語
LLM 應用的快速發(fā)展正在改變著我們的工作和生活方式,但與此同時,如何保障這些應用的穩(wěn)定性和質量成為了一個重要挑戰(zhàn)。正如我們在 SQL Copilot 項目中的實踐所示,完備且能力強大的底層數(shù)據基礎設施和可觀測能力是 LLM 應用成功的重要保障。
通過本文分享的基于 SLS 構建 LLM 應用的數(shù)據基礎設施的實踐經驗,我們希望能夠為更多的開發(fā)者和團隊提供參考和啟發(fā)。在 AI 技術日新月異的今天,讓我們不僅要追求功能的創(chuàng)新,更要注重基礎設施的建設,只有把基礎打牢,才能在智能化的道路上走得更遠、更穩(wěn)。
"工欲善其事,必先利其器。" 愿每一個 LLM 應用都能擁有完善的可觀測能力,在智能化的征程中行穩(wěn)致遠。
作者:執(zhí)少 | 阿里云 SLS 團隊出品































