Github 9 个惊艳的开源 NL2SQL 项目

你好,我是一宿君。

NL2SQL------自然语言转 SQL ,也称为 Text2SQL,已经成为大模型落地最常见的场景之一。

今天介绍 GitHub 上 9 个值得关注的开源项目,按照星标核心能力依次展开介绍,方便大家参考、借鉴。

  1. SuperSonic
  2. Chat2DB
  3. SQL Chat
  4. Vanna
  5. Dataherald
  6. WrenAI
  7. Awesome-Text2SQL
  8. LangChain SQL
  9. Langchain-Chatchat

SuperSonic

GitHub Star ⭐ 4.1k github.com/tencentmusi...

腾讯音乐开源,SuperSonic 融合 Chat BI(powered by LLM)和Headless BI(powered by 语义层)打造新一代的BI平台。这种融合确保了Chat BI能够与传统BI一样访问统一化治理的语义数据模型。

主要特点

  • 自然语言转 SQL(Text-to-SQL)

    用户可以通过自然语言提问,平台将自动生成 SQL 查询并执行,返回分析结果。

  • ChatBI 与 Headless BI 融合

    ChatBI 提供自然语言交互界面,Headless BI 屏蔽底层数据结构,提供统一的指标和维度定义,支持多种数据源的接入。

  • 支持多种数据库和 LLM

    支持 PostgreSQL、MySQL、ClickHouse、Doris 等数据库,以及 OpenAI、Vertex AI、Anthropic 等大语言模型。

整体架构

  • 模型知识库(Knowledge Base): 定期从语义模型中提取相关的模式信息,构建词典和索引,以便后续的模式映射。
  • 模式映射器(Schema Mapper): 将自然语言文本在知识库中进行匹配,为后续的语义解析提供相关信息。
  • 语义解析器(Semantic Parser): 理解用户查询并抽取语义信息,生成语义查询语句S2SQL。
  • 语义修正器(Semantic Corrector): 检查语义查询语句的合法性,对不合法的信息做修正和优化处理。
  • 语义翻译器(Semantic Translator): 将语义查询语句翻译成可在物理数据模型上执行的SQL语句。
  • 问答插件(Chat Plugin): 通过第三方工具扩展功能。给定所有配置的插件及其功能描述和示例问题,大语言模型将选择最合适的插件。
  • 问答记忆(Chat Memory): 将历史的查询轨迹进行封装,可被召回作为few-shot样例嵌入提示词。

一句话总结:ChatBI + Headless BI 二合一,用自然语言问数、系统自动选可视化,语义层可插拔,对 Java 生态很友好 。

Chat2DB

GitHub Star ⭐ 24k github.com/chat2db/cha...

Chat2DB 是一个智能的通用SQL客户端和数据报表工具,它集成了AI的能力。Chat2DB可以帮助您更快地编写SQL查询、管理数据库、生成报告、探索数据、并且可以与多种数据库进行交互。

主要特点

  • 智能生成SQL: Chat2DB Pro支持AI驱动的智能SQL开发,可以帮助您更快地编写SQL查询,另外,Chat2DB 还支持 SQL 转自然语言,可以快速轻松理解复杂 SQL 的含义。
  • 数据库管理: 支持多种10+数据库,包括主流的 MySQL、PostgreSQL、H2、Oracle、MongoDB、Redis等。
  • 智能生成报表: Chat2DB Pro支持AI驱动的智能数据报表,可以快速生成看板。
  • 数据结构同步: Chat2DB Pro支持数据库表结构同步,可以快速同步数据库表结构。
  • 夸平台:Chat2DB 是一个跨平台的应用程序,支持Windows、MacOS和Linux。

SQL Chat

GitHub Star ⭐ 5.4k github.com/sqlchat/sql...

SQL Chat 是一个基于聊天的 SQL 客户端,使用自然语言与数据库以沟通的方式,实现对数据库的查询、修改、新增、删除等操作。

主要特点

  • 畅聊式界面:不再被复杂界面卡住,只需一句话,就能驱动数据库操作,顺滑又高效。
  • 多库支持:目前兼容 MySQL、PostgreSQL、MSSQL 以及 TiDB Cloud 等主流数据库。
  • 技术栈现代:基于 Next.js 构建,可以快速部署到 Vercel,也可选择自托管方案。
  • 开源免费:完全开源,没有门槛,有兴趣可以自己搭建或二次开发。

Vanna

GitHub Star ⭐ 19.9k github.com/vanna-ai/va...

Vanna 是一个获得麻省理工学院许可的开源 Python RAG(检索增强生成)框架,用于 SQL 生成和相关功能。

主要特点

  • 动态微调:可训练 RAG 模型,将你的数据库 schema、历史查询等信息构建成检索基础;
  • 智能生成SQL:自然语言提问,自动生成可执行 SQL 查询。

Vanna 只需两个简单的步骤即可工作 - 在您的数据上训练 RAG"模型",然后提出问题,这些问题将返回可以设置为在您的数据库上自动运行的 SQL 查询。

工作原理

Dataherald

GitHub Star ⭐ 3.1k
github.com/Dataherald/...

Dataherald 是一个自然语言到 SQL 的引擎,专为关系数据的企业级问答而构建。它允许您从数据库中设置一个 API,可以用简单的英语回答问题。

主要功能

  • 允许业务用户无需通过数据分析师即可从数据仓库中获取见解
  • 从 SaaS 应用程序中的生产数据库启用 Q+A
  • 从您的专有数据创建 ChatGPT 插件

WrenAI

GitHub Star ⭐ 9.8k github.com/Canner/Wren...

WrenAI 是一款开源的 Generative BI(GenBI)Agent,能让你直接对数据库"聊天"------生成 SQL、图表(Text-to-Chart),并且输出 AI 驱动的数据洞察,一通话就搞定

主要特点

  • 数据对话:用任何语言提问→精确的 SQL 和答案
  • 智能总结:人工智能编写的摘要、图表和报告
  • 语义解析:MDL 模型对架构、指标、联接进行编码
  • API接入:在应用内生成查询和图表
  • 多库兼容:支持 PostgreSQL、MySQL、SQL Server、ClickHouse、Oracle、Snowflake 等主流数据库
  • 兼容主流 LLM 平台:支持 OpenAI(及 Azure)、Google Gemini / Vertex AI、Anthropic、Ollama、Databricks、Groq 等多种模型

工作原理

Awesome-Text2SQL

GitHub Star ⭐ 3k github.com/eosphoros-a...

Awesome-Text2SQL 是由 DB-GPT 社区发起的开源项目,旨在汇总和整理 Text-to-SQL 领域的优质教程、模型、数据集和工具,帮助研究人员和开发者快速入门并深入了解该领域。

一句话总结:Awesome-Text2SQL 不是工具,是"导航站"------把论文、数据集、评测基准、开源项目一网打尽的 NL2SQL 百科全书 。

LangChain SQL

GitHub Star ⭐ 114k (随 LangChain 主库) python.langchain.com/v0.1/docs/u...

LangChain 带有许多内置链和代理,LangChain SQL就是其中之一的 SQL 链代理,与 SQLAlchemy 支持的任何 SQL 方言(例如 MySQL、PostgreSQL、Oracle SQL、Databricks、SQLite等)均兼容。

支持功能用例

  • 生成将基于自然语言问题运行的查询
  • 创建可以根据数据库数据回答问题的聊天机器人
  • 根据用户想要分析的见解构建自定义仪表板

核心指南:

  • 代理:生成可以与 SQL DB 交互的代理。
  • 提示策略 :改进 SQL 查询生成的策略。
  • 查询验证 :如何验证 SQL 查询。
  • 大型数据库 :如何与具有许多表和高基数列的数据库进行交互。

一句话总结:官方 SQL 链代理,能自动纠错、回滚并重跑 SQL,把任何 LangChain 项目升级成"会聊数据库"的智能体 。

Langchain-Chatchat

GitHub Star ⭐ 35.9k github.com/chatchat-sp...

LangChain-Chatchat (原 Langchain-ChatGLM) 基于 ChatGLM 等大语言模型与 Langchain 等应用框架实现,开源、可离线部署的 RAG 与 Agent 应用项目。

主要特点

  • 支持多种主流数据库
  • 支持多种主流 LLM
  • 支持数据库对话(NL2SQL)
  • 支持多模态图像对话

LangChain-Chatchat 是一个完善的 Agent 搭建框架,NL2SQL 是其中对接数据的一个功能,基于其强大的工作原理,为 LLM 提供与 SQL 数据库交互的工具集,支持更复杂的查询和多轮交互。

工作原理

功能概览


总结

从个人提效到企业级 BI,这 9 个开源项目基本覆盖了 NL2SQL 的全部主流玩法。

如果你恰好有 NL2SQL 的需求,这些项目或许可以给到你一些启发和灵感。

感兴趣的同学可以拉个代码,跑个 demo,总有一款适合你的。

风险提示

很多业务场景都得益于 LLM 能力的提升得到了显著提效,NL2SQL 是显而易见的提效模式。值得注意的一点, LLM 能力虽然很强,但是仍然无法避免产生幻觉,NL2SQL 是与数据库直接打交道,必然存在一定的风险,所以在应用的过程中,需要格外谨慎,严格把控 LLM 边界能力和数据库风险管控。

都看到这了,点个赞吧!!!

相关推荐
这周也會开心3 小时前
SQL-窗口函数
数据库·sql
小马哥编程9 小时前
DNS解析中的服务器协作机制
服务器·git·github
stein_java9 小时前
Mybatis-7 XML映射器
数据库·sql·mybatis
CoderJia程序员甲9 小时前
GitHub 热榜项目 - 日榜(2025-09-06)
ai·开源·github·ai编程·github热榜
IT曙光10 小时前
Connecting to github.com (github.com)|20.205.243.166|:44
github
草梅友仁12 小时前
草梅 Auth 1.6.0 发布密码强度组件 Twilio 短信支持 | 2025 年第 36 周草梅周报
前端·开源·github
CoderJia程序员甲13 小时前
GitHub 热榜项目 - 日榜(2025-09-03)
ai·开源·github·开源项目·github热榜
ST.J14 小时前
SQL与数据库笔记
数据库·笔记·sql
老马啸西风14 小时前
sensitive-word 敏感词性能提升14倍优化全过程 v0.28.0
安全·开源·nlp·word·敏感词·sensitive-word
我是哪吒14 小时前
分布式微服务系统架构第170集:Kafka消费者并发-多节点消费-可扩展性
后端·面试·github