0


私有化知识库本地部署打造专属ai助理(FastGpt本地部署全过程及相关模型部署训练)

私有化知识库本地部署打造专属ai助理(FastGpt本地部署全过程及相关模型部署训练)

引言

在人工智能和机器学习领域,OneAPI是一个开放、统一的编程模型,旨在简化跨多种硬件架构的应用程序开发。FastGPT作为一个先进的知识库管理系统,结合OneAPI的强大功能,可以为用户提供一个高效、灵活且可扩展的解决方案。本文将探讨FastGPT与OneAPI之间的关系,以及它们如何协同工作来提升知识库管理的效率。

FastGPT简介

FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力,通过FastGp可以快速的进行搭建和训练一个AI助理。

OneAPI概述

OneApi的作用就是把这些API的调用进行了整合到了一起,使我们进行使用的时候完全的按照OneAPI的一套规范就能够进行调用和使用其他的大模型,无疑OneApi极大的进行提高了我们进行学习AI的效率,不用在不同的模型接口之间进行切换,也使得FastApi可以直接的通过这套规范进行训练.

FastGpt前置基础知识

5大模型类别

  • LLMModule(大型语言模型) : 大型语言模型(LLM)是设计用来处理和理解人类语言的AI模型。它们通常在大量的文本数据上进行训练,能够执行语言翻译、文本摘要、问答以及文本生成等任务。 - qwen-tubo(初代的通义千问文本模型,我们日常聊天的文本模型), chat-3.5-turbo(ChatGPT3.5)
  • vectorModels(向量模型) :向量模型用于将数据(通常是文本或图像)表示为高维空间中的向量。这些模型在机器学习和AI中是基础性的,用于执行相似性搜索、聚类和分类等任务LLM的模型训练就是基于向量模型.
  • reRankModels(重排模型): 重排模型通常用于在初步排序或筛选后,对结果进行进一步的精细排序, 这类模型的作用的是对于结果进行重新排列,提高回答的准确率. - 例如,在搜索引擎中,重排模型可能会根据用户的点击行为或反馈来调整搜索结果的顺序。
  • audioSpeechModels(音频语音模型): 音频语音模型专注于处理和分析音频数据,尤其是语音。这些模型可以用于语音识别、语音合成、情感分析等任务。
  • **whisperModel(音频处理模型) **: 用于执行如语音识别、音频分类或语音到文本的转换等任务。

环境准备

Docker

FastGpt的部署,极大的进行依赖Docker环境,所以需要在你的本地,获取的服务器进行安装Docker环境.Linux进行部署Docker的环境可以进行参考我这篇博客,Windows和MacOS可参看这个官方文档.

  • Linux :
  • Windows和MacOs : Docker Compose 快速部署 | FastGPT

部署FastGpt和OneApi

1.下载配置文件

# 下载config.json文件
wget https://gitee.com/sigmend/FastGPT/raw/main/projects/app/data/config.json -o config.json
# 下载docker-compose.yml
wget https://gitee.com/sigmend/FastGPT/raw/main/files/deploy/fastgpt/docker-compose.yml -o docker-compose.yml

2. 启动容器

在 docker-compose.yml 同级目录下执行。请确保

docker-compose

版本最好在2.17以上,否则可能无法执行自动化命令。

# 启动容器docker-compose up -d# 等待10s,OneAPI第一次总是要重启几次才能连上Mysqlsleep10# 重启一次oneapi(由于OneAPI的默认Key有点问题,不重启的话会提示找不到渠道,临时手动重启一次解决,等待作者修复)docker restart oneapi

3. 访问OneAPI

可以通过

ip:3001

访问OneAPI,默认账号为

root

密码为

123456

。本地访问: http://localhost:3001.

4. 访问 FastGPT

目前可以通过

ip:3000

直接访问(注意防火墙)。登录用户名为

root

,密码为

docker-compose.yml

环境变量里设置的

DEFAULT_ROOT_PSW

如果需要域名访问,请自行安装并配置 Nginx。本地访问: http://localhost:3000

首次运行,会自动初始化 root 用户,密码为

1234

(与环境变量中的

DEFAULT_ROOT_PSW

一致),日志里会提示一次

MongoServerError: Unable to read from a snapshot due to pending collection catalog changes;

可忽略。

通过api-key进行部署训练

因为fastgpt已经内置的进行调用的chatgpt的api所以我另外做一个模型.

使用qwen-turbo模型

1.获取api-key
  • ​ 模型服务灵积-API-KEY管理 (aliyun.com),创建获取一个key进行保存后续进行使用.在这里插入图片描述
2.oneApi添加渠道

在这里插入图片描述

说明: 这个语言模型,在在外面进行测试是能够进行通过的,但是如果是其他的模型,是无法进行通过的但是,不用在意显示的错误没有联通.

3.修改config.js文件

把刚刚进行在oneApi进行添加的模型渠道进行添加到配置文件的ImlModule中.

"llmModels":[{"model":"qwen-turbo","name":"通义千问chat","avatar":"/imgs/model/qwen.svg","maxContext":128000,"maxResponse":4000,"quoteMaxToken":100000,"maxTemperature":1.2,"charsPointsPrice":0,"censor":false,"vision":true,"datasetProcess":true,"usedInClassify":true,"usedInExtractFields":true,"usedInToolCall":true,"usedInQueryExtension":true,"toolChoice":true,"functionCall":true,"customCQPrompt":"","customExtractPrompt":"","defaultSystemChatPrompt":"","defaultConfig":{}}]

参数说明查看: 配置文件介绍 | FastGPT.

4.进行重启docker
docker compose down
docker compose up -d
5.fastgpt进行使用qwen-turbo
  • 应用 - -> 创建引用在这里插入图片描述
  • 选择刚刚创建的模型,我这里设置的是 通义千问chat和config.json配置的名字相同在这里插入图片描述
  • 点击发布开始聊天在这里插入图片描述

至此就基本的部署完成了一个大语言模型,进行聊天.

部署m3e向量索引模型搭建个人知识库

1.拉取镜像m3e镜像

docker pull registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api:latest

2.启动m3e的镜像

docker run -p6100:6008 -d registry.cn-hangzhou.aliyuncs.com/fastgpt_docker/m3e-large-api

3.接入 One API

添加一个渠道,参数如下:密钥默认设置为: sk-aaabbbcccdddeeefffggghhhiiijjjkkk,

  • Base URl: 本机的id地址:端口号

在这里插入图片描述

4.Fast创建个人知识库

我这里以训练一个柑橘的个人知识库为例进行训练.文件处理模型,选择前面进行部署的qwen-turbo模型即可,索引模型选择m3e.

在这里插入图片描述

5.导入文本数据集

在这里插入图片描述

后续上传数据等待,索引完成即可.

6.创建个人ai助理

应用点击创建个人知识库,进行关联柑橘知识库

在这里插入图片描述

在这里插入图片描述

注意: 记得点击发布以后再进行提问哦!


本文转载自: https://blog.csdn.net/m0_74205854/article/details/139376489
版权归原作者 枫斗. 所有, 如有侵权,请联系我们删除。

“私有化知识库本地部署打造专属ai助理(FastGpt本地部署全过程及相关模型部署训练)”的评论:

还没有评论