CHESS:高效SQL合成的上下文利用框架

【免费下载链接】CHESS Contextual Harnessing for Efficient SQL Synthesis 【免费下载链接】CHESS 项目地址: https://gitcode.com/gh_mirrors/chess5/CHESS

项目介绍

在现代数据库管理系统中,将自然语言问题转换为SQL查询(text-to-SQL)是一个长期以来研究的难题。CHESS项目正是针对这一挑战提供了一个高效的解决方案。CHESS是一种基于大型语言模型(LLM)的多Agent框架,它专门设计来解决自然语言问题转换成SQL查询过程中遇到的各种难题。

项目技术分析

CHESS框架包含四个专门化的Agent,分别针对以下四个挑战:

  1. 信息检索Agent (IR):负责提取相关信息。
  2. 模式选择Agent (SS):在大规模数据库模式中剪枝,以减少处理规模。
  3. 候选生成Agent (CG):生成高质量候选查询并迭代优化。
  4. 单元测试Agent (UT):通过基于LLM的自然语言单元测试来验证查询的正确性。

CHESS框架支持工业级数据库,能够处理大规模数据库模式,并通过特定的Agent优化查询生成过程。框架的核心是利用LLM和多个Agent协同工作,以提高SQL合成的效率和准确性。

项目及技术应用场景

CHESS框架的应用场景广泛,适用于任何需要自然语言到SQL转换的场景。例如,在复杂的企业数据库管理、数据分析、以及交互式查询生成等场合,CHESS能够大幅提高处理速度和查询质量。

关键技术特点

  • 工业级数据库支持:通过模式选择Agent,CHESS能够高效地处理大型数据库模式,将其简化为可管理的子模式,提高了系统准确性约2%,同时减少LLM令牌使用量5倍。
  • 隐私保护性能:在开源模型中,CHESS实现了最先进的性能,提供了一个适合工业部署的高性能、隐私保护的系统。
  • 可扩展性:在高计算预算的设置中,CHESS在BIRD测试集上达到71.10%的准确性,与最先进的私有方法相差不到2%,同时减少LLM调用约83%。

项目特点

CHESS的几个主要特点如下:

  1. 强大的查询生成能力:利用专门的Agent进行查询生成和验证,确保了查询的准确性和效率。
  2. 可配置性:框架提供多种配置选项,以适应不同的部署环境和需求。
  3. 高兼容性:支持多种大型语言模型,用户可以根据需要自行配置LLM。

以下是CHESS框架的架构图:

CHESS Framework

设置环境与运行

要使用CHESS,首先需要克隆代码库,创建配置文件,并安装必要的依赖项。之后,运行预处理脚本来准备数据库,然后根据配置选择运行主脚本。

环境设置

git clone https://github.com/yourusername/CHESS.git
cd CHESS
# 创建.env文件并添加配置

安装依赖

pip install -r requirements.txt

预处理

sh run/run_preprocess.sh

运行

sh run/run_main_ir_cg_ut.sh
# 或者
sh run/run_main_ir_ss_ch.sh

总之,CHESS为自然语言到SQL转换领域提供了一个强大的工具,不仅能够处理复杂的数据库模式,还能确保查询的高效和准确。对于需要处理大规模数据库和实现高效SQL合成的开发者和企业来说,CHESS无疑是一个值得尝试的开源项目。

【免费下载链接】CHESS Contextual Harnessing for Efficient SQL Synthesis 【免费下载链接】CHESS 项目地址: https://gitcode.com/gh_mirrors/chess5/CHESS

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐