NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

16 年等待,再见 SQL Boy,这一次数据库交互形态彻底被颠覆了!

  • 2023-05-10
    北京
  • 本文字数:1965 字

    阅读完需:约 6 分钟

16年等待,再见 SQL Boy,这一次数据库交互形态彻底被颠覆了!

对于程序员来说,通过 SQL 操作数据库是日常工作中经常会遇到的任务,算得上是一项基本技能。但即便是专业人员面对 SQL 编写任务也往往会头疼不已,更不要说在这一领域经验不足的初学者了。ChatGPT 大火之后,其辅助程序员编写代码的能力受到了很大关注。那么,类似 ChatGPT 这种能力能否用在数据库操作上,帮助程序员甚至是缺乏代码经验的普通业务人员,使用自然语言来完成过去需要 SQL 才能做的事情呢?在近日举办的亚马逊云开发者 Tech Talk 上,Bytebase 联合创始⼈/CEO 陈天舟就介绍了这样一款产品——基于亚马逊云科技的云服务架构,可以用自然语言与数据库交互的 SQL Chat。InfoQ 将本场演讲内容整理成文,希望对大家有所帮助。


软件交互范式的演进:从命令行到 CUI


回顾软件行业的交互范式演进史,大致上是从桌面到 Web 端,再到移动端。在上世纪 70 年代,用户一般通过命令后界面(CLI)与计算机交互。发展到 1979 年出现了 VisiCalc, VisiCalc 首次引入了表格布局交互界面,具有革命性的意义。



这款软件还带火了 Apple 2 电脑,让很多个人用户开始采购这款 PC 来制作表格。之后到了 1984 年,苹果发布了 Macintosh,搭配键盘、鼠标并采用了 GUI 界面,这也是现代 PC 所采用的标准界面的起源。再到 1993 年,第一款网页浏览器 Mosaic 诞生。



这款浏览器开启了 Web 端的时代。继续向前来到 2007 年,iPhone 的发布则开启了现代智能手机时代。这样来看,命令行 CLI 交互大概从 70 年代流行到 1984 年,GUI 的发展则分了三个阶段,首先是 1984-1993 年是桌面端,1993-2007 年是 Web 端,2007 年到现在则是移动端,每一次换代间隔大约 13 年左右。


而到了 2023 年的今天,ChatGPT 横空出世。ChatGPT 的交互方式可以称为 Chat User Interface(CUI)。从 2007 年到 2023 年,历经 16 年的等待,软件行业终于迎来了交互范式的又一场革新。

数据库交互与 CUI 革命


软件交互范式的进化自然也会影响数据库的操作方式。以 SQL 客户端这个具体场景来为例,今天的 SQL 客户端还有很多命令行的交互工具,但业内也存在很多起源于 Windows 的 GUI 工具,比如 Navicat 等。



如今,基于 CUI 的全新交互方式就完全不一样了。CUI 没有大量控件组合,只有一个简单直接的输入框。用户用自然语言问数据库问题,它会神奇地写出对应的 SQL 语句同数据库交互。这种进化能让人想到谷歌诞生之前的雅虎。彼时雅虎在做黄页目录,用户通过线上黄页查找信息;之后谷歌直接推出了搜索框,一个搜索框就能找到互联网的所有内容。现在的数据库交互软件有众多复杂的控件、树、表单,而到了 CUI 时代,所有这些元素都消失了,用户只需一个对话框来输入问题,机器人就能给出回答。



SQL Chat:用自然语言和数据库交互的全新工具


所谓 SQL Chat,顾名思义就是用聊天的方式写 SQL,跟数据库打交道。下图是整个产品的界面。



例如向 SQL Chat 提问,问用户组织里面哪个部门有最多的员工,这个工具就能直接给出对应的 SQL 语句,还会解释这个语句的含义。



如果用户对结果不满意还能纠正它,可以说这个语句不是自己想要的,给出理由让它重新尝试,它会根据用户的反馈再做调整。




它的交互方式是很自然的,就像用户在和人类对话一样。例如,用户可以创建一个 Amazon Aurora 的 HR 数据库,之后先问一些基本的问题,让它回答数据库有哪些表。SQL Chat 会知道用户对员工的薪资和职称是最感兴趣的,又知道部门和员工之间是生产关系,知道员工个人信息是个人隐私。


如果提问哪个部门的员工平均薪水最高,它不仅会给出 SQL 语句,还会解释这条 SQL 是什么操作。再来问它哪个经理手下人员最多,列出 SQL 代码,它会给出查询语句查到手下员工最多的经理。如果用户对这条查询不是那么满意,还想看一下这位经理到底有多少个员工,请机器人把他的员工数也包含在内,它就会给出修正的查询。


但目前 SQL Chat 涉及子查询的时候还是会出现一些问题,可能会报错,提示内容未指定等。这反映出它使用的模型还是有一些局限性,陈天舟表示,这类问题在未来随着调优是可以解决的。



未来,开发团队会收集一些交互数据,把这些数据进行脱敏匿名化处理后放到 Amazon S3 上,再把它灌到 Amazon SageMaker,在 Amazon SageMaker 里做整个模型的训练调优。陈天舟预计,半年后再演示新版 SQL Chat 时就能比较好地解决子查询的问题了。


SQL Chat 背后的公司叫做 Bytebase,主要做数据库管理工具。如果企业需要 Schema 的数据结构变更、数据查询,或者团队之间需要有一套标准的审批流,做数据安全治理,Bytebase 的主产品都可以满足。它主要面向团队和企业级,是开源的。下图左边的二维码是亚马逊云开发者社区,右边是 SQL Chat 自己的用户群。SQL Chat 在 GitHub 上是完全开源的 (https://github.com/sqlchat/sqlchat),接下来也会有很快的迭代速度。最后,SQL Chat 后期还有望支持多模态输入,希望大家持续关注。



公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2023-05-10 19:085680
用户头像

发布了 56 篇内容, 共 26.3 次阅读, 收获喜欢 43 次。

关注

评论 1 条评论

发布
用户头像
很不错的ai+数据库落地场景
2023-05-12 16:44 · 北京
回复
没有更多了
发现更多内容

通证经济,一个正在狂奔的互联网数字经济时代

CECBC

(序)【Spring源码专题】展开Spring源码构建之旅(利用IDEA和Gradle)

洛神灬殇

spring 6月日更 源码搭建

网络攻防学习笔记 Day56

穿过生命散发芬芳

网络攻防 6月日更

gitlab服务端hook,拦截糟糕的提交到仓库

阿呆

gitlab hook

因子分解机(十九)

数据与智能

因子 分解机

JAVA 面向对象 (十二)-- 关键字 super

加百利

Java 关键字 super 6月日更

迷惘的六月份

卢卡多多

生活状态 6月日更

可编程网关 Pipy 第三弹:事件模型设计

张晓辉

给几位粉丝做完面试辅导后,我发现了一些问题!(Java岗)

Java架构师迁哥

抖音电商发布创作者管理总则:如何明确带货主播和平台的责任

石头IT视角

JavaScript学习(十)---正则表达式

空城机

JavaScript 大前端 6月日更

「SQL数据分析系列」9. SQL子查询

数据与智能

数据库 sql 子查询

[译] D8 优化

Antway

6月日更

计算机组成原理 寄存器实验详解(含工程文件)

若尘

计算机组成原理 6月日更

JavaScript 实现:输出斐波那契数列

编程三昧

JavaScript 大前端 数组 递归

Linux之cat命令

入门小站

Linux

创业者需要知道的13种思维模型

俞凡

创业 认知

sftp的使用

Hello

深入了解java线程篇之ThreadPoolExecutor

邱学喆

线程池状态 任务提交 任务执行 动态调整线程池参数

阿里架构师通过“58个基于知识的实例+2个项目”来讲解Spring Boot

Java架构师迁哥

区块链使能的供应链金融——区块链信息治理

CECBC

我的书要出版啦~

石璞东

深度学习 tensorflow 大前端 计算机视觉 卷积神经网络

通俗易懂 !Kafka 开发快速入门看这篇就够了

云祁

Bigdata Kafk

前端面试 | 18个常见HTML问题与答案

devpoint

html xml 6月日更

「SQL数据分析系列」10. 重谈连接

数据与智能

数据库 sql 连接

基于机器学习的自动化测试弹窗处理实践

bilibili游戏技术

手机 自动化测试 yolo 弹窗

Spring事件发布与监听机制

陈皮的JavaLib

Java spring 事件监听

Linux学习经验分享:搞定这六点,Linux命令So easy!

学无止境的阿奔

Linux 分布式 运维 C/C++

A16z创始人马克·安德森:加密货币代表了技术运作方式以及世界运作方式的架构转变

CECBC

浏览器设备信息UserAgent查询

入门小站

工具

架构实践营模块7作业

Geek_649372

架构训练营

16年等待,再见 SQL Boy,这一次数据库交互形态彻底被颠覆了!_数据库_王强_InfoQ精选文章