DB-GPT是一个开源项目,它使用本地化的GPT大型模型与您的数据和环境进行交互。这个项目的目的是为了解决在使用大型模型时面临的数据安全和隐私的挑战,确保敏感数据和环境完全受控,避免任何数据隐私泄露或安全风险。DB-GPT提供了一个完整的私有大型模型解决方案,适用于所有基于数据库的场景,支持本地部署,可以应用在独立的私有环境中,也可以根据业务模块独立部署和隔离,确保大型模型的能力是绝对私有、安全和可控的。
DB-GPT的主要功能包括:
- SQL语言能力:包括SQL生成和SQL诊断。
- 私有领域的问答和数据处理。
- 数据库知识的问答。
- 数据处理。
- 插件:支持自定义插件执行任务,原生支持Auto-GPT插件,例如自动执行SQL和检索查询结果,自动爬取和学习知识等。
- 知识库的统一向量存储/索引:支持非结构化数据,如PDF,Markdown,CSV,和WebURL等。
- 多个大型语言模型的支持:目前支持Vicuna (7b, 13b),ChatGLM-6b (int4, int8)等多个大型语言模型。
DB-GPT使用FastChat创建了一个庞大的模型操作系统,并提供了由Vicuna提供支持的大型语言模型。此外,我们还通过LangChain提供私有领域知识库问答能力。我们还提供对其他插件的支持,我们的设计原生支持Auto-GPT插件。
DB-GPT的核心能力主要包括以下部分:
- 知识库能力:支持私有领域知识库问答能力。
- 大规模模型管理能力:提供基于FastChat的大模型操作环境。
- 统一的数据向量存储和索引:提供一种统一的方式来存储和索引各种数据类型。
- 连接模块:用于连接不同的模块和数据源以实现数据流和交互。
- Agent和插件:提供Agent和插件机制,允许用户自定义和增强系统的行为。
- 提示生成和优化:自动生成高质量的提示并优化它们以提高系统响应效率。
- 多平台产品接口:支持各种客户端产品,如网络,移动应用和桌面应用DB-GPT的知识库能力是目前用户需求最大的场景,我们原生支持知识库的建设和处理。同时,我们在这个项目中提供了多种知识库管理策略,例如:
- 默认的内置知识库
- 自定义添加知识库
- 通过插件能力和网络爬取构建知识库等各种使用场景。用户只需要组织知识文档,就可以使用我们现有的能力来构建大型模型所需的知识库。
在大型模型集成的底层,我们设计了一个开放接口,支持与各种大型模型的集成。同时,我们对集成模型的有效性有非常严格的控制和评估机制。在准确性方面,集成模型需要与ChatGPT的能力对齐,达到85%或更高的水平。我们使用更高的标准来选择模型,希望在使用过程中为用户节省繁琐的测试和评估过程。
为了便于对向量化后的知识进行管理,我们内置了多个向量存储引擎,从基于内存的Chroma到分布式的Milvus。用户可以根据自己的场景需求选择不同的存储引擎。知识向量的存储是AI能力增强的基石。作为人类与大型语言模型互动的中间语言,向量在这个项目中起着非常重要的作用。
为了更方便地与用户的私有环境交互,该项目设计了一个连接模块,可以支持连接到数据库、Excel、知识库和其他环境,实现信息和数据的交换。
DB-GPT的Agent和Plugin的能力是大型模型能否被自动化的核心。在这个项目中,我们原生支持自定义Agent和Plugin的使用,可以用于增加新的能力。此外,我们也提供了一种简单的方式来实现这些功能,用户只需要按照我们的规范和API,就可以有效地使用这些能力。