prem-1B-SQL

prem-1B-SQL

本地Text-to-SQL模型保护数据不受第三方干扰

Prem-1B-SQL是由Prem AI研发的本地化Text-to-SQL模型。拥有10亿参数,适合低GPU和量化后的CPU设备,强调数据本地储存以防数据外泄。模型在BirdBench和Spider基准数据集上的准确率分别为51.54%和85%。通过PremSQL开源库,用户可定制数据集、强化执行和评估,支持错误处理和自动修正,实现数据分析流程一体化。Prem-1B-SQL具备出色的集成和微调能力,适用于多种数据分析场景,保障查询转换的安全、准确和高效。

数据库开源项目模型GithubHuggingface文本生成本地化Prem-1B-SQL数据安全

Prem-1B-SQL项目介绍

Prem-1B-SQL是由Prem AI开发的一款先进的本地化文本到SQL模型。它在数据安全方面秉持“本地优先”的理念,避免了将数据库暴露给第三方封闭源模型的潜在风险。这款模型拥有10亿个参数,适合在低GPU甚至CPU设备上运行,并支持量化处理。未来,官方计划持续优化其表现,这一切使得Prem-1B-SQL在数据分析领域展现出强大的应用潜力。

项目背景

Prem AI坚信,AI辅助的数据分析应当以本地化为核心,因为将数据库暴露给第三方封闭源模型可能导致数据安全问题。基于此理念,他们推出了Prem-1B-SQL,一款适合在本地设备上高效运行的文本到SQL模型。

项目成果

Prem-1B-SQL在两个常用的数据集上进行了评估:BirdBench和Spider。具体结果如下:

数据集执行准确率
BirdBench(验证集)46%
BirdBench(测试集)51.54%
Spider85%

其中,BirdBench数据集根据难度分为三个等级,私密测试结果如下:

难度等级测试数执行准确率软F1分数
简单94960.70%61.48%
适中55547.39%49.06%
挑战28529.12%31.83%
总计178951.54%52.90%

此外,通过与其他流行的模型进行对比,可以看出Prem-1B-SQL在保持紧凑的参数量的同时,能达到相当不错的测试分数:

模型参数量(亿)BirdBench 测试分数
AskData + GPT-4o(当前冠军)NA72.39
DeepSeek coder 236B23656.68
GPT-4(2023)NA54.89
PremSQL 1B(我们的)151.4
Qwen 2.5 7B Instruct751.1
Claude 2 Base(2023)NA49.02

如何使用Prem-1B-SQL

Prem-1B-SQL构建在transformers库上,因此可以直接与transformers库结合使用。也正因为如此,它与数据库中输入提示的形成紧密关联。为了简化使用,Prem AI开发了PremSQL库,这是一款完全开源的软件库,它具有以下特性:

  • 本地优先:避免使用第三方封闭来源提供商,确保数据安全。
  • 可定制数据集:能够创建、微调和评估内置或自定义的数据集。
  • 坚固的执行器和评估器:轻松连接数据库并评估模型性能。
  • 高级生成器:将自然语言提示转换为可执行的SQL查询。
  • 错误处理和自我纠正:在推理过程中自动纠正SQL查询。
  • 微调支持:支持通过LoRA、QLoRA或全微调策略进行模型微调。
  • 端到端管道:无缝集成所有组件,实现自主数据分析。

Prem-1B-SQL可以通过PremSQL管道或生成器进行部署。以下是一些使用示例:

通过PremSQL管道运行Prem-1B-SQL

最简单的方式就是通过PremSQL管道,只需提供数据库路径或连接URI即可。以下是示例代码:

from premsql.pipelines import SimpleText2SQLAgent from premsql.generators import Text2SQLGeneratorHF from premsql.executors import SQLiteExecutor dsn_or_db_path = "./data/db/california_schools.sqlite" agent = SimpleText2SQLAgent( dsn_or_db_path=dsn_or_db_path, generator=Text2SQLGeneratorHF( model_or_name_or_path="premai-io/prem-1B-SQL", experiment_name="simple_pipeline", device="cuda:0", type="test" ), ) question = "please list the phone numbers of the direct charter-funded schools that are opened after 2000/1/1" response = agent.query(question) response["table"]

通过PremSQL生成器运行Prem-1B-SQL

当需要在某个数据集上进行批量生成时,可以使用PremSQL生成器:

from premsql.generators import Text2SQLGeneratorHF from premsql.datasets import Text2SQLDataset dataset = bird_dataset = Text2SQLDataset( dataset_name='bird', split="validation", force_download=False, dataset_folder="/path/to/dataset" ).setup_dataset(num_rows=10, num_fewshot=3) generator = Text2SQLGeneratorHF( model_or_name_or_path="premai-io/prem-1B-SQL", experiment_name="test_generators", device="cuda:0", type="test" ) responses = generator.generate_and_save_results( dataset=bird_dataset, temperature=0.1, max_new_tokens=256 ) print(responses)

使用执行引导解码

该策略在生成的SQL失败时使用错误信息进行修正,直到获得有效结果或重试次数用完为止。

from premsql.executors import SQLiteExecutor executor = SQLiteExecutor() response = generator.generate_and_save_results( dataset=bird_dataset, temperature=0.1, max_new_tokens=256, force=True, executor=executor, max_retries=5 )

模型训练使用的数据集

Prem-1B-SQL的训练使用了以下数据集:

  1. BirdBench训练数据集:可在此处找到。
  2. Spider数据集:可在此处找到。
  3. 域专属数据集:由PremAI收集并上传。
  4. Gretel AI合成数据集:可在此处找到。

此外,开发团队通过结合上述数据集创建了错误处理数据集,将模型的学习扩展到自我纠正能力上。

未来,Prem AI计划在公共基准上发布更多的评估结果,以展示Prem-1B-SQL的能力。有关更多的详细信息,请参阅文档

编辑推荐精选

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

扣子-AI办公

扣子-AI办公

AI办公助手,复杂任务高效处理

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
蛙蛙写作

蛙蛙写作

AI小说写作助手,一站式润色、改写、扩写

蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。

AI助手AI工具AI写作工具AI辅助写作蛙蛙写作学术助手办公助手营销助手
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

聊天机器人AI助手热门AI工具AI对话
Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

热门AI工具AI办公办公工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

模型训练热门AI工具内容创作智能问答AI开发讯飞星火大模型多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

下拉加载更多