PingCAP 唐刘:一个咨询顾问对 TiDB Chat2Query Demo 提出的脑洞

news/2024/5/19 13:34:54 标签: tidb, 数据库

导读

近日,TiDB Cloud 发布了 Chat2Query 功能,在 TiDB Cloud 上通过自然语言提问,即可生成相应的 SQL,通过 TiDB Cloud 对上传的任意数据集进行分析。Gartner 也在一份有关 ChatGPT 对数据分析影响研究的报告中提及了 PingCAP 的 Chat2Query 产品。

本文分享了唐刘在展示 Chat2Query demo 过程中的一些思考。探讨了想打造一款好的产品,从用户角度出发的思考方式以及与用户交流的重要性:当我们向用户展示产品能力时,我们往往习惯站在技术的角度出发,然而当用户并不具备完备的相关技术背景时,我们需要换位思考,了解用户的工作流程和思维方式,才能真正让用户理解和接受我们的产品。

最近一段时间,一件非常让我自豪的事情就是我们在 TiDB Cloud 上面发布了基于 OpenAI 的智能数据探索功能 - Chat2Query。见到朋友,我都会非常开心地跟他们去推荐这个功能,跟他们现场演示如何使用,每当看到他们 「aha」 的表情,这个成就感还是挺强的。

在这里插入图片描述

但是,我推荐的朋友几乎全是有技术背景的人,所以当我跟一位不懂技术的朋友进行推荐的时候,我才突然意识到,我们的这款产品离好看以及好用,还有很长的路要走。

因为我的朋友是一位咨询顾问,她对于世界 500 强的财务表报数据非常感兴趣。刚好,我手上有一份今年的财务数据,于是就开始给她演示如何在 Chat2Query 里面,智能对数据进行洞察。

/ 啥,什么是 Database? /

于是,我先开始上传数据,到了导入数据的面板,我上传完成文件之后,我突然意识到一个很好玩的事情,而恰恰在同时,我的朋友问了一个问题也印证了这个事情。

在这里插入图片描述

因为我的朋友不太懂技术,更别提懂数据库了,于是她问了我一个看起来很傻的问题 - 「什么是 Database?」

对的,这个问题看起来非常的低级,什么是 Database?对于一个做了这么多年,用了这么多年数据库的我来说,这问题貌似很简单。但在那个时候,我突然明白,在我看来非常显然的一个单词,对于很多用户来说是完全不可理解的。也许有人会说,我的朋友压根不是我们产品的目标客户,没准是的,但从另一方面来说,有多少人会立刻理解我们在上图那个操作?或者我们能不能将上面那个设置的步骤变得更加的简单和好用?

/ 用户的心智模型 /

于是我就跟我朋友讨论:“你期望如何来使用 Chat2Query?”我朋友回答道:“我是一个重度 Excel 用户,对我来说,我要做的就是上传 Excel 文件,然后我就能对这个 Excel 进行分析了。”

这里可以看到,我的朋友不知道什么是 Database,但其实她日常工作的 Excel,其实跟 Database 的概念是能联系上的,一个 Excel 就是一个 Database,而 Excel 里面的 Sheet 就是 Table。所以如果我朋友要用这个产品,一个更直观的方式就是她上传好一个 Excel 文件之后,我们默认的就按照这个文件名给她建立一个 Database,为 Excel 文件里面的每个 Sheet 建立对应的 Table,根本不需要暴露任何的 Database 和 Table 的概念。

所以一开始,如果我跟我朋友先从 Excel 探讨,用她之前的知识体系来做映射,没准她会更容易理解我们产品。如果一开始,我们就能很好的支持 Excel 相关的概念和操作,没准对我朋友就是一个替换 Excel 的首选了。

/ 好看又要好用 /

数据导入成功之后,我们进入到 Chat2Query,自然我知道,我的朋友不会使用,即使 get started page 里面已经说了可以使用 -- 然后再带上指令,触发 AI 的功能,自动生成 SQL,但这个仍然是不直观。于是我就问我的朋友,你期望如何分析你上传的数据,我的朋友说的很直观,给我打开了 Google 的主页。朋友说到,一个产品,能打动她,一个很重要的事情就是好看以及简单,Chat2Query 整个的界面交互,让她是没有太多的意愿使用的,上手难度太高,也不好看。

对我朋友来说,她需要更加简单易用的交互界面,在她的认知里面,我们这个智能数据洞察的功能就应该跟 Google 一样,一个搜索框,问问题,得到答案,然后生成 Excel 给她做后面的分析。

/ 用户多层需求 /

我两继续讨论如何才能让她更好的使用 Chat2Query,毕竟我朋友是重度 Excel 用户,我们如何能给她更大的价值。我朋友想了想,如果 Chat2Query 能做到三层,那么将会很吸引她:

  • 第一层 - 处理她上传的私有数据,例如多个 Excel 文件。相比于简单的 Excel 处理,Chat2Query 可以在成百上千的 sheet 中帮助她获得一些洞察。
  • 第二层 - 对她在 TiDB cloud 上的私有数据以及能与 PingCAP 在 TiDB cloud 上托管的公开数据集进行查询分析。
  • 第三层 - 她可以将她在其他服务商的账号密码给我们,让 Chat2Query 能在第二层的基础上对她在其他服务商的数据进行联合查询分析。

当我朋友跟我说这些的时候,我其实内心是很惊讶的。我最近在规划 TiDB Cloud 未来的技术架构方向,就是在思考通过构建一个弹性的计算引擎,以及数据 meta 的服务,来让用户非常方便的做到上面 3 层的操作。我非常高兴看到用户有类似的需求。

然后我的朋友又继续说到,你这个能不能有历史记录的功能,能将我之前的洞察结果保存下来,甚至有没有对比功能,对不同时间的查询结果进行对比分析。不过后来我们讨论到,这个没准在外面的工具做可能更好,所以 Chat2Query 最好要提供一个 API 服务出去。实话,我这个不懂技术的朋友能想到 API,以及对 API 收费,以及对接其他的 BI 工具,还是挺让我吃惊的 😃

/ 写在最后 /

这次与我的朋友的演示让我意识到了几点重要的事情:

  • 真正试着站在用户的角度思考问题是很重要的。我们需要了解用户平常使用的工具和完成的工作,并理解他们的思维方式。
  • 产品不仅要好看,也要好用。这对研发工程师来说是一个巨大的挑战,但幸运的是,这个世界上有很多这样的产品,我们可以学习借鉴。
  • 用户是最好的老师,与用户交流能获得非常不同的对产品的洞察。

最后,我希望我的朋友能成为我们的标杆用户,她非常愿意接受这个角色。

BTW, 本文有一些文本使用了 ChatGPT 进行了润色。

最后,如果你想体验 TiDB Cloud + AI 的能力,欢迎点击尝试 TiDB Cloud,也希望收到更多来自大家的反馈。


http://www.niftyadmin.cn/n/106043.html

相关文章

19- 手动实现TensorFlow模型 (TensorFlow系列) (深度学习)

知识要点 tensorflow 中的代码做了优化, 速度会快一些.np.where(condition,x,y): 当where内有三个参数时,第一个参数表示条件,当条件成立时where方法返回x,当条件不成立时where返回y.判断是否相等: tf.greater_equal(a, b) # 求导: tf…

一年前端面试打怪升级之路

对 rest 参数的理解 扩展运算符被用在函数形参上时,它还可以把一个分离的参数序列整合成一个数组: function mutiple(...args) {let result 1;for (var val of args) {result * val;}return result; } mutiple(1, 2, 3, 4) // 24这里,传入…

蒸汽波风格图不会画?AI作画帮你秒级出图

在最近几年,AI图像生成技术在视觉艺术领域得到了广泛应用,可以通过数据和机器学习技术来创作出非常有趣的艺术品。今天我就带来的图片风格是:蒸汽波混搭二次元。 蒸汽波混搭二次元图像的创作,大都是以现有的二次元图像作为基础&a…

如何使用ArcGIS生成高程点

1、概述高程点即标有高程数值的信息点,通常与等高线配合表达地貌特征的高程信息,高程点分布表达上具有丰富的上下文特征,除个体高程属性上的差异外,一方面与重要地形特征单元(如山峰、鞍部及山谷等)、河流、…

ubuntu服务器创建多用户及用户管理

1. 安装ssh服务 安装openssh-server: sudo apt install openssh-server查看是否已经启动(如果输出中有sshd,则表示已经启动): ps -e | grep ssh 如果没有启动,则可以运行如下命令启动: /etc/…

【机器学习】机器学习实验三:集成算法1(详细代码展示)

文章目录一、实验介绍1.1 简单介绍1.2 Breast Cancer 数据实验1.3 Boston 数据实验二、项目地址三、算法结果展示一、实验介绍 1.1 简单介绍 AdaBoost 和 Random Forest 算法的原理 1.2 Breast Cancer 数据实验 对 Breast Cancer 数据进行探索性数据分析; 数据预…

ChatGPT核心技术奠基者,在中国开放平台

ChatGPT 横空出世,在全球科技圈掀起一场巨浪,随之而来的是无数蜂拥而至的“掘金者”。而在全球为 ChatGPT“狂飙”的背后,是单样本学习 NLP 技术在质疑声中,超过 7 年的技术深耕。一条饱受争议的创新之路早在 2015 年,…

Redis源码---如何实现一个性能优异的Hash表

目录 前言 Redis 如何实现链式哈希? 什么是哈希冲突? 链式哈希如何设计与实现? Redis 如何实现 rehash? 什么时候触发 rehash? rehash 扩容扩多大? 渐进式 rehash 如何实现? 前言 Hash …