随笔-当ChatGPT遇见SpreadJS

作为互联网史上一个新的里程碑式的存在,ChatGPT做到了上线五天用户数突破一百万,两个月破亿的神话。作为一个对话时的大型语言模型,它能够模拟人类的语言行为,与用户进行自然交互。一晃ChatGPT已经火了大半年,有人用它来写文章,有人用它来写代码,有人用它来规划行程,还有人用来写作业写论文,甚至国外还有一位小哥,把ChatGPT挂上开源的视觉识别算法,给自己搭建了一个家庭管家。真可谓是五花八门。那么这么一个大火的语言处理对话工具,能跟toB的组件擦出什么样的火花,比如说,作为前端Excel表单处理最强的SpreadJS组件,如何能通过引入ChatGPT,给前端数据分析带来质的飞跃?本文将通过几个示例,展示前端Excel报表组件SpreadJS和ChatGPT结合的用法。

发布于 2023/06/21 14:32

作为互联网史上一个新的里程碑式的存在,ChatGPT做到了上线五天用户数突破一百万,两个月破亿的神话。作为一个对话时的大型语言模型,它能够模拟人类的语言行为,与用户进行自然交互。一晃ChatGPT已经火了大半年,有人用它来写文章,有人用它来写代码,有人用它来规划行程,还有人用来写作业写论文,甚至国外还有一位小哥,把ChatGPT挂上开源的视觉识别算法,给自己搭建了一个家庭管家。真可谓是五花八门。那么这么一个大火的语言处理对话工具,能跟toB的组件擦出什么样的火花,比如说,作为前端Excel表单处理最强的SpreadJS组件,如何能通过引入ChatGPT,给前端数据分析带来质的飞跃?

就这个话题,我思索良久,想到了以下几点:

  • 一、使用助手:根据需求提供操作指南、按照描述生成公式

  • 二、数据分析:对表格中的数据提供数据分析建议,按照描述分析数据

  • 三、工作助手:结合SpreadJS数据内容,生成分析报告、邮件,做出预测

话不多说,先跑去整理案例,写写Demo。一切都如火如荼的展开,我突然想起,为什么不问问ChatGPT本尊??ChatGPT给的回复如下:

IMG_256

由衷的赞叹,写的真棒,比我想的全面多了。在开始正篇之前,也许有还不熟悉的同学会问,SpreadJS到底是什么?我们来看看ChatGPT是怎么回答的:

1685693816288

没错,SpreadJS是一款基于JavaScript的电子表格控件,通过以表格形式显示数据、高速的计算引擎以及数百种统计和财务函数及公式,提供类似于Excel的电子表格体验。 它易于实现,可扩展并且灵活。尤其可以帮助增强您的应用程序,并将内容从一组简单的数据转换为更加有用、易懂的类似于Excel的仪表板。

言归正传,开始我们这次的正篇,一起来看看当ChatGPT遇到SpreadJS会迸发出什么样的火花。

一.ChatGPT公式

1. 过滤数据:

通过扩展的GPT.FILTER公式,可以方便地进行数据过滤。只需要选择数据,添加描述,GPT.FILTER就会返回动态数组填充到单元格。

1.1.GPT.FILTER

2. 生成描述

使用GPT.QUERY公式,向GPT提问获取问题结果。在问题中可以引用表格中的单元格数据,根据单元格内容生成描述相关的描述信息。

1.2.GPT.QUERY

二. 公式生成、分析及优化

1. 公式生成

通过使用自然语言描述,生成可执行的Excel公式,检查后插入单元格。对于电子表格初学者十分友好。

2.1.生成

2. 公式分析

单元格中的复杂嵌套公式,通过GPT分析后返回描述,帮用户快速理解表格中公式含义

2.2.分析

3. 公式优化

对于复杂公式,可以给出多种优化方案,减少公式长度,或者提升公式运算效率。


2.3.优化

三.数据分析

1. 数据透视表建议

选择包含标题的表格数据,给出数据透视表分析的建议,包含如何设置行、里和数组,同时说明分析数据的意义。

3.1.分析建议

2. 数据分析

对于选择的区域数据,直接根据描述获取分析结果,免去繁琐的筛选排序过程。也可以让ChatGPT给出具体的分析过程来参考。

3.2.数据分析

四. 报告、邮件内容生成

除了单纯的问题回复,ChatGPT可以进行对话,根据上下文的内容修正问题的回复,或者获取进一步的分析。在下面的示例中,ChatGPT给出了多个维度的数据分析结果,我们选择了其中一个选项,让他生成了一封给Ted分析邮件。

ChatGPT插件为SpreadJS用户提供了智能的自然语言交互体验。用户可以使用自然语言查询和指令与电子表格进行交互,而无需手动编写复杂的公式,配置数据透表等功能;通过ChatGPT解析和执行用户的数据操作请求更加快捷简单,提高了工作效率;同时ChatGPT也可以给出一些分析建议和错误检测,改善了电子表格内容的质量。当然ChatGPT插件目前也还有两点明显的问题:

  1. 模型语言的限制,ChatGPT是基于语言模型的,其性能受模型训练和数据集的限制。对于复杂的问题可能并不能准确返回结果,同时返回的结果格式可能插件也无法分析使用。

  2. 依赖外部服务,插件的使用需要调用ChatGPT服务,在使用时要保证可靠的网络连接。同时SpreadJS中的表格数据要发送到ChatGPT服务器,数据的安全性和隐私性也是要考虑的问题。

总体而言,ChatGPT插件可以为用户提供智能的自然语言交互和数据操作能力,但也需要注意数据安全性和语言模型的限制。期待有针对于数据分析更加强大的AI工具。

如果您对SpreadJS感兴趣,也可以访问葡萄城官网了解SpreadJS的相关特性。

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

活字格低代码二维码

关注“活字格低代码”

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态