以下文章来源于PaperWeekly :
金融、气象、能源等各行各业每天都会生成大量的异构数据。人们急切需要一个对象来有效地管理、处置惩罚和揭示这些数据。
近日,浙江大学提出 DataCopilot,通过部署大语言模型 (LLMs) 来自决地管理和处置惩罚海量数据,即它连接不同领域(股票、基金、公司、经济和及时新闻)的丰富数据,满足多样化的用户查询,计算,预测,可视化等需要。
Repo: https://github.com/zwq2018/Data-Copilot
Arxiv: https://arxiv.org/abs/2306.07209
Demo: https://huggingface.co/spaces/zwq2018/Data-Copilot
只需要输入文字告诉 DataCopilot 你想看啥数据,无需繁琐的操作,无需自己编写代码,DataCopilot 自决地将原始数据转化为最符合用户企图的可视化结果,因为它可以自决地帮你找数据,处置惩罚数据,分析数据,画图,无需人类协助。
许多研讨已经探索了 LLMs 的潜力。例如 Sheet-Copilot、Visual ChatGPT、Audio GPT 利用 LLMs 挪用视觉,语音等领域对象进行数据分析、视频编辑和语音转换。从数据科学的角度来看,表格、可视化和音频都可以被视为一种形式的数据,所有这些使命都可以被看作是与数据有关的使命。因此,一个新的问题出现了:在通用数据的背景下,LLMs 能否构建自动化的数据科学处事流来处置惩罚各种与数据有关的使命?为了兑现这一目标,需要解决几个挑战:
从数据角度看:直接使用 LLMs 读取和处置惩罚海量数据不仅不切实际,而且存在数据泄露的潜在风险。
从模型角度看:LLMs 不擅长处置惩罚数值计算,可能没有合适的可挪用外部对象来满足多样化的用户需要,从而限制了 LLMs 的利用率。
从使命角度看:尽管 LLMs 揭示了强大的少样本能力,但许多与数据有关的使命是复杂的,需要结合多个操作,如数据检索、计算和表格操作,并且结果需要以图像、表格和文本等多种格式呈现,这些都超出了当前 LLMs 的能力。
因此,为了兑现的囊括数据有关使命的通用框架,研讨提出 Data-Copilot:
Data-Copilot 是一个基于 LLM 的系统,用于处置惩罚与数据有关的使命,连接了数十亿条数据和多样化的用户需要。它独立安排接口对象,以高效地管理、挪用、处置惩罚和可视化数据。在接收到复杂恳求时,Data-Copilot 会自决挪用这些自安排的接口,构建一个处事流程来满足用户的企图。在没有人类协助的情况下,它能够熟练地将来自不同来源、不同格式的原始数据转化为人性化的输出,如图形、表格和文本。
主要贡献
安排了一个通用的处置惩罚数据有关数据的智能系统,将不同领域的数据源和多样化的用户需要连接起来,通过将 LLM 集成到整个流程中,减少了繁琐的劳动和专业知识。
Data-Copilot 兑现自决管理、处置惩罚、分析、预测和可视化数据。当接收到恳求时,它将原始数据转化为最符合用户企图的信息性结果。
Data-Copilot 作为安排者和调剂者,包括两个流程:接口对象的安排流程 (安排者) 和接口对象的调剂流程 (调剂者)。
基于中国金融市场数据构建了 Data-Copilot Demo。
主要方法
Data-Copilot 是一个通用的大语言模型系统,具有接口安排和接口调剂两个主要阶段。
接口安排:研讨安排了一个 self-request 的流程,使 LLM 能够自决地从少量种子恳求生成足够的恳求。然后,LLM 根据生成的恳求进行迭代式的安排和优化接口。这些接口使用自然语言描写,使它们易于扩展和在不同平台之间转移。
接口调剂:在接收到用户恳求后,LLM 根据自安排的接口描写和 in context demonstration 来规划和挪用接口对象,部署一个满足用户需要的处事流,并以多种形式呈现结果给用户。
Data-Copilot 通过自动生成恳求和自决安排接口的方式,兑现了高度自动化的数据处置惩罚和可视化,满足用户的需要并以多种形式向用户揭示结果。
接口安排
如上图所示,首先要兑现数据管理,第一步需要接口对象。
Data-Copilot 会自己安排了大量接口作为数据管理的对象,其中接口是由自然语言(功能描写)和代码(兑现)组成的模块,负责数据获取、处置惩罚等使命。
首先,LLM 通过少量的种子恳求并自决生成大量恳求 (explore data by self-request), 尽可能覆盖各种应用场景。
然后,LLM 为这些恳求安排相应的接口(interface definition: 只包括描写和参数),并在每次迭代中逐步优化接口安排 (interface merge)。
最后,研讨利用 LLM 强大的代码生成能力为接口库中的每一个接口生成具体的代码 (interface implementation)。这个流程将接口的安排与具体的兑现分离开来,创建了一套多功能的接口对象,可以满足大多数恳求。
如下图:Data-Copilot 自己安排的接口对象用于数据处置惩罚:
接口调剂
在前一个阶段,研讨获取了用于数据获取、处置惩罚和可视化的各种通用接口对象。每一个接口都有清晰明确的功能描写。如上图所示的两个查询请问,Data-Copilot 通过及时恳求中的规划和挪用不同的接口,形成了从数据到多种形式结果的处事流程。
Data-Copilot 首先进行企图分析来准确理解用户的恳求。
一旦准确理解了用户的企图,Data-Copilot 将规划一个合理的处事流程来处置惩罚用户的恳求。Data-Copilot 会生成一个固定格式的 JSON,代表调剂的每一个步骤,例如 step={"arg":"","function":"", "output":"","description":""}。
在接口描写和示例的指导下,Data-Copilot 在每一个步骤内以顺序或并行的方式精心安排接口的调剂。
如下图例子:
Data-Copilot 自决安排了处事流如下:
针对这个复杂的问题,Data-Copilot 采用了 loop_rank 这个接口来兑现多次循环查询。
最后该处事流并执行后结果如下:
横坐标是每只成分股的股票名字,纵坐标是一季度的净利润同比增长率
实验结果
预测处事流
部署处事流:获取历史 GDP 数据 —-> 采用线性回归模型预测未来 —–> 输出表格
并行处事流
结论
研讨提出了一个通用的框架,Data-Copilot,用于处置惩罚各种数据有关使命。它作为连接众多异构数据和人类之间的桥梁,根据人类的喜好有效地管理、处置惩罚和揭示数据。Data-Copilot 通过将 LLMs 整合到数据有关使命的每一个阶段中,根据用户的恳求将原始数据自动转化为用户友好的可视化结果,显著减少了对繁琐劳动和专业知识的依赖。
像一位经验丰富的专家一样,Data-Copilot 自决安排了适用于各种类型数据和潜在用户需要的通用接口对象,并在及时响应中挪用这些接口,为用户恳求部署清晰的处事流程。接口安排和调剂这两个流程完全由 Data-Copilot 控制,几乎不需要人的干预。
研讨提供了一个中国金融版的 Data-Copilot, 它可以灵活处置惩罚与股票、基金、经济、公司财务和及时新闻等方面的复杂恳求,是一个可靠的人工智能助手。