一、项目背景
🌍 在当今快速发展的技术环境中,数据库管理成为了企业运营中至关重要的一环。传统的数据库管理系统(DBMS)虽然功能强大,但往往需要专业的技术知识和复杂的查询语言(如SQL),这不仅增加了企业的技术门槛,也限制了快速响应市场变化的能力。随着业务复杂度的增加,企业对数据库管理的便捷性和灵活性需求日益增长。在这样的背景下,DB-GPT项目应运而生,旨在通过最新的自然语言处理(NLP)技术,简化数据库的操作流程,使非技术人员也能轻松管理和查询数据库,从而提升企业的运营效率。
二、项目介绍
🤖 DB-GPT是一个开源的数据应用程序开发框架,旨在利用大型语言模型(LLM)技术通过自然语言与数据库进行交互,取代了传统的网络管理头部。
🌐 目前我们只开放了查询权限,为了满足更复杂的业务需求,包括创建、读取、更新和删除(CRUD)功能,我们目前开启内部测试,并期待在未来能给大家带来更多的惊喜。
🚀 在数据3.0时代,我们的产品利用致力于模型和数据库技术,使企业和开发人员能够用更少的代码构建自定义应用程序。让开发人员更专注于复杂的C端业务从而取代传统的web管理后台系统。
三、 项目演示
1、项目地址:
https://github.com/sql-agi/DB-GPT
2、快速上手:
找到一个项目存储的目录,然后执行以下命令
git clone https://github.com/sql-agi/DB-GPT cd DB-GPT conda create --name db-gpt python=3.9 conda activate db-gpt
然后将环境切换到db-gpt并执行以下命令
pip install -r requirements.txt
配置.env文件,可以参考templates.env_tample
主要配置包括三个属性:OPENAI_API_KEY、OPENAI_API_BASE、MYSQL_URL
强烈大家建议用官方的API_KEY经过测试一些中转的key支持的效果并不好
3、使用演示:
Web Demo
我们提供了一种基于 [Gradio]( https://gradio.app )网络版演示和命令行演示如下:web demo
然后在存储库中运行[web_demo.py]:
python web_demo.py
程序会运行一个Web服务器,并输出地址。在浏览器中打开输出的地址即可使用。最新版本的Demo实现了打字机效果,速度最大的体验提升。注意,由于国内Gradio的网络访问很快,启用演示。 queue().launch(share=True, inbrowser=True) 时所有网络都会经过Gradio服务器转发,导致打字机体验急剧下降,现在默认启动方式已经改为share=False,如果需要公网访问的需求,可以重新修改为share=True启动。
cli demo
在存储库中运行[cli_demo.py](cli_demo.py):
python cli_demo.py
API部署
运行存储库中的api.py:
python api.py
默认情况下在端口8000上本地部署,通过POST方法调用:
curl -X POST "http://127.0.0.1:8000/chat/db" \ -H "Content-Type: application/json" \ -d '{"input": "你好"}'
得到的返回值:
{ "reply": "你好!请问有什么可以帮助您的?" }
四、未来计划
🔥🔥🔥 前端:我们致力于开发更优秀的前端UI界面,进一步支持更多类型的数据库以及LLM(其中包含开源大模型),以提升用户体验和系统灵活性。
🔥🔥🔥 后端:我们将进一步深度测试更复杂的CRUD场景,增加区分(切换)环境、设置角色权限等功能从而保证LLM操作的准确性和稳定性。
🔥🔥🔥 总结:希望更多的用户体验并提供反馈,我们会根据用户的反馈进一步优化我们的产品,并希望感兴趣的小伙伴加入我们的开源团队。
五、作者简介:
家源:卷过大厂、贡献过开源、曾多次参与大模型比赛并🏆 多次参加AIGC交流会(微软AIGC等)、一直走在AIGC最前沿! 如果你对AIGC|AI大模型技术感兴趣,咱们一块进群交流吧~
六、联系我们:
项目交流群
公众号