速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

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 后期还有望支持多模态输入,希望大家持续关注。



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

发布了 81 篇内容, 共 42.4 次阅读, 收获喜欢 53 次。

关注

评论 1 条评论

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

Vue进阶(幺玖肆):JavaScript解决浮点数精度丢失问题

No Silver Bullet

jquery Vue 浮点数 7月日更

首个SSRF漏洞开篇学习

网络安全学海

网络安全 信息安全 渗透测试 漏洞分析 SSRF

我乃平常客,本持平常心| 2021 年中总结

编程三昧

程序人生 大前端 代码人生

fil矿机怎么选择?用什么fil矿机比较好?

FIL矿机怎么买 fil挖矿

懂了!时间复杂度O(1),O(logn) ,O(n),O(nlogn)...

Ayue、

数据结构

重温历史 致敬百年 “复兴大道100号”线上VR展馆正式开馆

百度大脑

百度 虚拟现实

数据仓库的基本概念

大数据技术指南

7月日更

7.24 杭州站 | 阿里云 Serverless Developer Meetup 开放报名!

Serverless Devs

云计算 阿里云 Serverless 云原生

从零开始学习3D可视化之摄像机自由飞行

ThingJS数字孪生引擎

大前端 可视化 3D 数字孪生

了不起的开发者 丨 有奖征文活动来啦!

百度开发者中心

百度 开发者 征文

【redis前传】自己手写一个LRU策略

zxhtom

Java redis 原理 造轮子 jdk运用

架构实战营1期第二模块作业

五只羊

架构实战营

火爆 GitHub!这个图像分割神器开源了

百度大脑

百度 算法

黔唐百宜软件系统开发内容

优米心选软件系统开发资料

2021世界人工智能大会召开,百度飞桨人工智能产业赋能中心于上海浦东启动运营

百度大脑

人工智能 大数据 百度 物联网

hadoop 1.0 和 hadoop 2.0 的区别

五分钟学大数据

hadoop 7月日更

算法大赛报名 | OMG!这些名企的真实数据竟用来battle

工赋开发者社区

算法 工业互联网

物联网安全难题还需行业标杆来解

熵核科技

物联网安全

国内报价-APP时间加速

Qunar技术沙龙

优化逻辑 优化 优化技巧 优化业务 报价

Vue进阶(幺叁捌):vue路由传参的几种基本方式

No Silver Bullet

Vue 路由 7月日更

性能测试软启动初探

FunTester

性能测试 接口测试 测试框架 压力测试 测试开发

熵核科技,自主研发虚拟机赋能安全操作系统

熵核科技

支付安全 安全操作系统 物联网安全 eSIM安全

JVM锁bug导致G1 GC挂起问题分析和解决

毕昇JDK社区

CGPay Pro钱包APP系统开发需求

Axie Infinity区块链游戏系统开发技术

薇電13242772558

区块链

疫情下的在线教育行业未来发展

anyRTC开发者

音视频 WebRTC 在线教育 视频直播 双师课堂

了解腾讯京东字节等面试风格,掌握财富钥匙,大厂前端面试稳啦!

前端依依

程序员 面试 大前端 经验分享

加电软件系统开发详情

VGC挖矿APP系统开发内容

容器安全最佳实践入门

百度开发者中心

容器

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