本教程专注在怎么使用已经开源的模型和项目,构建一个可以私有化部署的问答知识库,而且整体效果要有所保障。
主要工作包括:
- 选择基础模型,openAI,claude 这些商用的,或者其他的开源的,这次我们选择 Vicuna-13B;
- 开源有很多的知识库问答系统,这次我们选择DB-GPT,优点是支持多端的访问;
- 根据项目的整体的要求,尤其是基础模型的要求选择适合的硬件设备,可以选用云服务,这次我们选择阿里云的云服务
- 根据项目说明部署
- 该架构主要由五部分组成,依次为知识库、Embedding、向量存储、大模型(如Vicuna-13B)以及生成(Generate)。整体流程是:知识库经过Embedding处理转化为向量形式,然后这些向量存储到数据库中,大模型通过吸收这些向量化的知识,实现推理和总结的能力,最后进行生成。
- 该架构分为四个步骤:知识库准备、Embedding、向量存储和利用大模型的能力。这是一个面向数据库领域的GPT,它准备了主流数据库的文档,并对其进行分类。Embedding阶段将文本转换成向量进行存储,存储媒介是向量数据库。Embedding后的知识会存储在向量数据库中,以备后续检索。最后,利用大模型的能力,通过In-Context-Learning(ICL),使大模型实现基于现有知识的推理、总结。
- 通过这种架构,可以实现一个基于现有知识库的问答(QA)项目。
LangChain是当前最受欢迎的大型语言模型(LLM)框架,它是一个基于LLM的应用开发框架。为了使应用更强大且独特,仅依赖大模型的API是不足的。LangChain的设计理念强调数据思维,即将大模型与其他元数据连接,以及代理思维,让语言模型能与环境互动。这个简单但符合自然法则的设计理念深深吸引了我们,因此我们选择了LangChain。