私有化知识库本地部署打造专属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可参看这个官方文档.

部署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第一次总是要重启几次才能连上Mysql
sleep 10
# 重启一次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
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 -p 6100: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助理

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

在这里插入图片描述

在这里插入图片描述

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

  • 19
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值