一句話搞定數(shù)據(jù)分析,浙大全新大模型數(shù)據(jù)助手,連搜集都省了
本文經(jīng)AI新媒體量子位(公眾號(hào)ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。
處理數(shù)據(jù),用這一個(gè)AI工具就夠了!
依靠背后的大語(yǔ)言模型(LLM),只需要用一句話描述自己想看的數(shù)據(jù),其他統(tǒng)統(tǒng)交給它!
處理、分析,甚至可視化,都能輕松搞定,甚至連搜集也不用自己動(dòng)手。
圖片
這款基于LLM的AI數(shù)據(jù)助手叫做Data-Copilot,由浙江大學(xué)團(tuán)隊(duì)研發(fā)。
相關(guān)論文預(yù)印本已經(jīng)發(fā)布。
以下內(nèi)容由投稿者提供
金融、氣象、能源等各行各業(yè)每天都會(huì)生成大量的異構(gòu)數(shù)據(jù)。人們急切需要一個(gè)工具來(lái)有效地管理、處理和展示這些數(shù)據(jù)。
DataCopilot通過(guò)部署大語(yǔ)言模型來(lái)自主地管理和處理海量數(shù)據(jù),滿足多樣化的用戶查詢、計(jì)算、預(yù)測(cè)、可視化等需求。
只需要輸入文字告訴DataCopilot你想看的數(shù)據(jù),無(wú)需繁瑣的操作,無(wú)需自己編寫代碼,DataCopilot自主地將原始數(shù)據(jù)轉(zhuǎn)化為最符合用戶意圖的可視化結(jié)果。
為了實(shí)現(xiàn)的囊括各種形式的數(shù)據(jù)相關(guān)任務(wù)的通用框架,研究團(tuán)隊(duì)提出了Data-Copilot。
這一模型解決了單純使用LLM存在的數(shù)據(jù)泄露風(fēng)險(xiǎn)、計(jì)算能力差、無(wú)法處理復(fù)雜任務(wù)等問(wèn)題。
圖片
在接收到復(fù)雜請(qǐng)求時(shí),Data-Copilot會(huì)自主設(shè)計(jì)并調(diào)度獨(dú)立的接口,構(gòu)建一個(gè)工作流程來(lái)滿足用戶的意圖。
在沒(méi)有人類協(xié)助的情況下,它能夠熟練地將來(lái)自不同來(lái)源、不同格式的原始數(shù)據(jù)轉(zhuǎn)化為人性化的輸出,如圖形、表格和文本。
圖片
Data-Copilot項(xiàng)目的主要貢獻(xiàn)包括:
- 連接了不同領(lǐng)域的數(shù)據(jù)源和多樣化的用戶需求,減少了繁瑣的勞動(dòng)和專業(yè)知識(shí)。
- 實(shí)現(xiàn)了自主管理、處理、分析、預(yù)測(cè)和可視化數(shù)據(jù),可將原始數(shù)據(jù)轉(zhuǎn)化為最符合用戶意圖的信息性結(jié)果。
- 具有設(shè)計(jì)者和調(diào)度者的雙重身份,包括兩個(gè)過(guò)程:接口工具的設(shè)計(jì)過(guò)程(設(shè)計(jì)者)和調(diào)度過(guò)程(調(diào)度者)。
- 基于中國(guó)金融市場(chǎng)數(shù)據(jù)構(gòu)建了Data-Copilot Demo。
自主設(shè)計(jì)并執(zhí)行工作流
不妨以下面這個(gè)例子來(lái)看看Data-Copilot的表現(xiàn):
今年一季度上證50指數(shù)的所有成分股的凈利潤(rùn)增長(zhǎng)率同比是多少
Data-Copilot自主設(shè)計(jì)了這樣的工作流:
圖片
針對(duì)這個(gè)復(fù)雜的問(wèn)題,Data-Copilot采用了loop_rank這個(gè)接口來(lái)實(shí)現(xiàn)多次循環(huán)查詢。
Data-Copilot執(zhí)行該工作流后得到了這樣的結(jié)果:
其中橫坐標(biāo)是每只成分股的名字,縱坐標(biāo)是一季度的凈利潤(rùn)同比增長(zhǎng)率
圖片
除了一般的數(shù)據(jù)處理過(guò)程之外,Data-Copilot還能生成種類豐富的工作流程。
研究團(tuán)隊(duì)以預(yù)測(cè)和并行兩種工作流模式分別對(duì)Data-Copilot進(jìn)行了測(cè)試。
預(yù)測(cè)工作流
對(duì)于已知數(shù)據(jù)之外的部分,Data-Copilot也可以進(jìn)行預(yù)測(cè),比如輸入下面這個(gè)問(wèn)題:
預(yù)測(cè)下面四個(gè)季度的中國(guó)季度GDP
Data-Copilot部署了這樣的工作流:
獲取歷史GDP數(shù)據(jù)→采用線性回歸模型預(yù)測(cè)未來(lái)→輸出表格
圖片
執(zhí)行之后的結(jié)果如下:
圖片
并行工作流
我想看看最近三年寧德時(shí)代和貴州茅臺(tái)的市盈率
對(duì)應(yīng)的工作流是:
獲取股價(jià)數(shù)據(jù)→計(jì)算相關(guān)指數(shù)→生成圖表
圖片
兩支股的相關(guān)工作是同時(shí)并行的,最后得到的如下的圖表:
圖片
主要方法
Data-Copilot是一個(gè)通用的大語(yǔ)言模型系統(tǒng),具有接口設(shè)計(jì)和接口調(diào)度兩個(gè)主要階段。
- 接口設(shè)計(jì):研究團(tuán)隊(duì)設(shè)計(jì)了一個(gè)self-request的過(guò)程,使LLM能夠自主地從少量種子請(qǐng)求生成足夠的請(qǐng)求。然后,LLM根據(jù)生成的請(qǐng)求進(jìn)行迭代式的設(shè)計(jì)和優(yōu)化接口。這些接口使用自然語(yǔ)言描述,使它們易于擴(kuò)展和在不同平臺(tái)之間轉(zhuǎn)移。
- 接口調(diào)度:在接收到用戶請(qǐng)求后,LLM根據(jù)自設(shè)計(jì)的接口描述和in context demonstration來(lái)規(guī)劃和調(diào)用接口工具,部署一個(gè)滿足用戶需求的工作流,并以多種形式呈現(xiàn)結(jié)果給用戶。
Data-Copilot通過(guò)自動(dòng)生成請(qǐng)求和自主設(shè)計(jì)接口的方式,實(shí)現(xiàn)了高度自動(dòng)化的數(shù)據(jù)處理和可視化,滿足用戶的需求并以多種形式向用戶展示結(jié)果。
圖片
接口設(shè)計(jì)
如上圖所示,首先要實(shí)現(xiàn)數(shù)據(jù)管理,第一步需要接口工具。
Data-Copilot會(huì)自己設(shè)計(jì)了大量接口作為數(shù)據(jù)管理的工具,其中接口是由自然語(yǔ)言(功能描述)和代碼(實(shí)現(xiàn))組成的模塊,負(fù)責(zé)數(shù)據(jù)獲取、處理等任務(wù)。
- 首先,LLM通過(guò)少量的種子請(qǐng)求并自主生成大量請(qǐng)求(explore data by self-request),盡可能覆蓋各種應(yīng)用場(chǎng)景。
- 然后,LLM為這些請(qǐng)求設(shè)計(jì)相應(yīng)的接口(interface definition:只包括描述和參數(shù)),并在每次迭代中逐步優(yōu)化接口設(shè)計(jì)(interface merge)。
- 最后,研究人員利用LLM強(qiáng)大的代碼生成能力為接口庫(kù)中的每個(gè)接口生成具體的代碼(interface implementation)。這個(gè)過(guò)程將接口的設(shè)計(jì)與具體的實(shí)現(xiàn)分離開來(lái),創(chuàng)建了一套多功能的接口工具,可以滿足大多數(shù)請(qǐng)求。
如下圖:Data-Copilot自己設(shè)計(jì)的接口工具用于數(shù)據(jù)處理
圖片
接口調(diào)度
在前一個(gè)階段,研究人員獲取了用于數(shù)據(jù)獲取、處理和可視化的各種通用接口工具。每個(gè)接口都有清晰明確的功能描述。如上圖所示的兩個(gè)查詢請(qǐng)問(wèn),Data-Copilot通過(guò)實(shí)時(shí)請(qǐng)求中的規(guī)劃和調(diào)用不同的接口,形成了從數(shù)據(jù)到多種形式結(jié)果的工作流程。
- Data-Copilot首先進(jìn)行意圖分析來(lái)準(zhǔn)確理解用戶的請(qǐng)求。
- 一旦準(zhǔn)確理解了用戶的意圖,Data-Copilot將規(guī)劃一個(gè)合理的工作流程來(lái)處理用戶的請(qǐng)求。Data-Copilot會(huì)生成一個(gè)固定格式的JSON,代表調(diào)度的每個(gè)步驟,例如step={“arg”:””, “function”:””, “output”:”” ,”description”:””}。
在接口描述和示例的指導(dǎo)下,Data-Copilot在每個(gè)步驟內(nèi)以順序或并行的方式精心安排接口的調(diào)度。
Data-Copilot通過(guò)將LLMs整合到數(shù)據(jù)相關(guān)任務(wù)的每個(gè)階段中,根據(jù)用戶的請(qǐng)求將原始數(shù)據(jù)自動(dòng)轉(zhuǎn)化為用戶友好的可視化結(jié)果,顯著減少了對(duì)繁瑣勞動(dòng)和專業(yè)知識(shí)的依賴。
GitHub項(xiàng)目頁(yè):https://github.com/zwq2018/Data-Copilot
論文地址:https://arxiv.org/abs/2306.07209
HuggingFace DEMO:https://huggingface.co/spaces/zwq2018/Data-Copilot