硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

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:086212
用户头像

发布了 91 篇内容, 共 57.0 次阅读, 收获喜欢 57 次。

关注

评论 1 条评论

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

Macos音乐制作工具:Ableton Live 11 Suite 附 完整安装教程

繁星

音乐制作 Ableton Live 11

合成数据如何改变制造业

3D建模设计

机器学习 机器视觉 合成数据 人工自能 合成数据生成

什么是UV贴图?

3D建模设计

人工智能 UV贴图 AI纹理

Linux RPM包安装、卸载和升级

芯动大师

架构实战营-模块六作业

王朝阳

es笔记七之聚合操作之桶聚合和矩阵聚合

Hunter熊

elasticsearch 聚合操作 桶聚合 矩阵聚合

写在 Chappyz 即将上所之前:基于 AI 技术对 Web3 营销的重新定义

股市老人

超越服务器:VPS 在开发领域的崭新前景

E₀=mc²

AWS 虚拟化 亚马逊 Amazon Lightsail

合成数据加速机器视觉学习 合成数据即将改变人工智能。如今,机器学习被用于各种基于视觉的

3D建模设计

机器学习 机器视觉 合成数据 合成数据生成

如果有一款专门用于3D纹理贴图的工具,大家会愿意用吗?

3D建模设计

Stable Diffustion AI纹理 AI 贴图 稳定扩散模型

稳定扩散AI 纹理生成器

3D建模设计

AI Stable Diffusion AI自动纹理 AI 绘图 AI贴图

Macos数据备份工具:BeLight Get Backup Pro 3 附 注册机

繁星

数据备份 数据备份工具 Get Backup Pro 3

2023-11-11:用go语言,字符串哈希+二分的例题。 给定长为 n 的源串 s,以及长度为 m 的模式串 p, 要求查找源串中有多少子串与模式串匹配, s‘ 与 s 匹配,当且仅当 s‘ 与 s

福大大架构师每日一题

福大大架构师每日一题

MySQL 数据库查询与数据操作:使用 ORDER BY 排序和 DELETE 删除记录

小万哥

Python 程序员 软件 后端 开发

设计模式-责任链模式

VPS:搭建自己的私有云

薛定谔的皮皮虾

Nextcloud

开发者眼中的向量数据库应用领域

三掌柜

亚马逊云科技

Oracle的to_date()函数解决sql语句日期格式问题

知识浅谈

Java oracle

ZkSync是不可错的Layer 2 四大龙头之一

币离海

以太坊 layer2 zkSync

Java 面试题之 Logback 打印日志是如何获取当前方法名称的?

越长大越悲伤

Java spring Spring Boot

2023年10 种用于最佳稳定扩散最佳方案

3D建模设计

人工智能 Stable Diffusion Ai绘图 AI纹理 AI 贴图

设计模式-建造者模式

业务负债与身体负债

胖胖

MySQL-MDL

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