手摇充电宝、太阳能转换器,这些“变态”的充电宝实用吗?
06-21
最近在github上发现了一个不错的项目:该项目使用Vicuna-13b等开源大语言模型创建数据库专家系统。上线一个半月了,已经获得star了。
1 什么是DB-GPT?一个基于开源数据库的GPT实验项目,使用本地化的GPT大模型与您的数据和环境进行交互,而不存在数据泄露的风险,使大模型的能力绝对私密、安全、可访问。控制。
2 DB-GPT 能力目前包括以下能力: SQL 语言能力 SQL 生成 SQL 诊断 私有领域问答与数据处理 数据库知识问答数据处理 插件模型 支持自定义插件执行任务,原生支持 Auto-GPT 插件。例如:SQL自动执行、获取查询结果、自动爬取学习知识、知识库、统一向量存储/索引、非结构化数据支持,包括PDF、MarkDown、CSV、WebURL、多模型支持、多种大型语言模型的支持,目前支持 Vicuna (7b ,13b), ChatGLM-6b(int4, int8)TODO: codet5p, codegen23 架构 DB-GPT 的架构如下图所示: 下面是各个模块的简单介绍: 3.1 知识库能力知识库作为当前用户在最苛刻的场景下,原生支持知识库的构建和处理。
同时,该项目还提供了多种知识库管理策略。例如:默认内置知识库、定制新知识库、通过插件能力自行抓取和构建知识库等使用场景。
用户只需要整理知识文档,然后利用现有能力构建大型模型所需的知识库能力。 3.2 大模型管理能力 在底层大模型接入上,设计了开放的接口,支持多个大模型的对接。
同时,对于准入模式的效果有非常严格的控制和审核机制。与ChatGPT在大模型能力方面相比,准确率需要满足85%以上的能力对齐。
该项目采用更高的标准来筛选模型,希望在用户使用过程中能够省去之前繁琐的测试和评估步骤。 3.3 统一数据向量化存储和索引为了方便知识向量化的管理,内置了多种向量化存储引擎,从基于内存的Chroma到分布式的Milvus。
您可以根据自己的场景需求选择不同的存储引擎。 ,整个知识向量存储是AI能力增强的基石。
作为人类与大型语言模型交互的中间语言,向量在这个项目中发挥着非常重要的作用。3.4 连接模块 为了更方便地与用户的私密环境进行交互,本项目设计了连接模块。
连接模块可支持连接数据库、Excel、知识库等各种环境,实现信息和数据交互。 3.5 Agent和插件 Agent和插件能力是大型模型能否实现自动化的核心。
本项目中原生支持插件模式,大模型可以自动完成目标。同时,为了充分发挥社区优势,本项目使用的插件原生支持Auto-GPT插件生态,即可以直接运行Auto-GPT插件在我们的项目中。
3.6 自动提示生成和优化 提示是与大型模型交互过程中非常重要的一部分。在一定程度上,Prompt决定了大模型生成答案的质量和准确性。
在这个项目中,我们将根据用户的输入和使用场景,自动优化相应的提示,让用户更轻松、更高效地使用大语言模型。 3.7 多终端产品界面 TODO:在终端展示上,我们将提供多终端产品界面。
包括PC、手机、命令行、Slack等多种模式。 3.8 依赖相关开源组件 FastChat 提供聊天服务 vicuna-13b 作为基础模型 langchain 工具链 Auto-GPT 通用插件模板 Hugging Face 大模型管理 Chroma 向量存储 Milvus 分布式向量存储 ChatGLM 基础模型 llama-index 基于现有知识库 进行情境学习以增强数据库相关知识。
4 安装部署 4.1 硬件要求 该项目从效果上来说具有ChatGPT 85%以上的能力,因此对硬件有一定的要求。但总的来说,项目的部署和使用都可以在消费级显卡上完成。
具体部署硬件指令如下:GPU型号、显存大小、性能,RTX24G可以流畅地进行会话推理,RTX24G可以流畅地进行会话推理,不卡顿。有延迟的感觉,但比VV6G好一些。
它可以进行会话推理,但存在明显的滞后。 4.2 购买云服务器并部署本项目,必须先购买GPU资源。
目前腾讯云有 GPU 云服务器 · 限时抢购活动: 安装依赖包 代码语言:javascript copy yum -y install git yum install git-lfs yum install g++ yum install docker4.4 下载模型 代码语言:javascript copy git clone git clone git clone 模型文件需要放在代码路径下: 代码语言:javascript copy cd DB-GPTmkdir modelscp all-MiniLM-L6-v2 models/cp vicuna-13b models/4.5 启动MySQL 代码语言:javascript copy docker run --name= mysql -p :-e MYSQL_ROOT_PASSWORD=aa-dit mysql:latest4.6 安装环境及依赖代码语言:javascript copy wget Miniconda3-py_23.3.1-0-Linux-x86_64.shsource /root/.bashrcconda create - n dbgpt_env python= 3.10conda activate dbgpt_envpip install -rrequirements.txt4.7 启动服务器代码语言:javascript copy nohup python Pilot/server/llmserver.py > server.log 2>&1 &4.8 启动客户端代码语言:javascript copy nohup python Pilot /server/webserver.py>logs/client.log 2>&1 &4.9 访问地址能力测试 5.1 一般对话测试常识: 逻辑: 与GPT3.5相比,差距明显: 与GPT4相比,差距更大: 5.2 数据库知识测试对比GPT3.5,差距很明显: 5.3 生成SQL并与DB交互能力测试 如上图所示,选择库名称后,用自然语言输入查询要求,可以生成相应的SQL并执行返回结果!但返回结果的速度很慢,有时甚至超过1分钟。我们测试一下组合查询,发现它执行的是表关联查询,这是没有必要的,而且关联查询引用了不存在的字段,这就很奇怪了。
5.4 知识库能力测试【MySQL FAQ】系列-在线环境下是否应该开启查询缓存?我们将老叶关于查询缓存的文章转换成PDF进行上传:生成了向量文件/data/download/DB-GPT/pilot/ data/.vectordb 在文档中提出相关问题,看看答案是否可以使用中的内容文档:总体效果还可以。 6 综上所述,这个开源项目功能全面,集成了大型开源模型、私有知识库能力、数据库SQL生成能力、与DB交互查询能力。
如果这些能力都能达到90分,那么这个项目就非常值得制作。环境,因为它解决了代码泄露的安全问题。
但它有几个问题: 1、速度比较慢,尤其是生成SQL和与DB交互时,有时需要1分钟以上。 2、推理能力较弱,达不到3.5的水平。
3.因为2,有时候生成的SQL并不是用户需要的。但方向是对的。
未来,大型车型将通过这种方式在公司生产环境的某一区域实施。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签:
相关文章
06-17
06-18
06-17
06-06
06-06
06-18
06-06
最新文章
【玩转GPU】ControlNet初学者生存指南
【实战】获取小程序中用户的城市信息(附源码)
包雪雪简单介绍Vue.js:开学
Go进阶:使用Gin框架简单实现服务端渲染
线程池介绍及实际案例分享
JMeter 注释 18 - JMeter 常用配置组件介绍
基于Sentry的大数据权限解决方案
【云+社区年度征文集】GPE监控介绍及使用