当前位置: 首页 > news >正文

ollama + fastgpt+m3e本地部署

ollama + fastgpt+m3e本地部署

    • 开启WSL
      • 更新wsl
      • 安装ubuntu
    • docker下载
      • 修改docker镜像源
      • 开启WSL integration
    • 安装fastgpt
      • 先创建一个文件夹来放置一些配置文件
      • 用命令下载fastgpt配置文件
      • 用命令下载docker的部署文件
    • 启动容器
    • M3E下载
    • ollama下载
    • oneapi配置
      • 登录oneapi
      • 配置ollama渠道
      • 配置渠道m3e
      • 创建令牌
    • 修改config.json
    • 重启容器
    • FastGTP配置与使用
      • 登录
      • 新建知识库
      • 训练模型
            • 因为我这里使用的是本地文件去训练,所以要选择 文本数据集
            • 这样就是训练好了,这里之前我踩过一个坑,就是一直在训练然后一条数据都没有,这个一般都是向量模型的问题,向量模型选错了,或者是向量模型没办法访问,所以上面配置渠道的时候一定要测试的原因就是这样的
      • 创建应用
  • 注意:以上只是最初级的玩法,要知识库好用的话,还得慢慢研究

开启WSL

因为这里使用的win部署,所以要安装wsl,如果是linux系统就没那么麻烦
控制面板->程序->程序和功能
在这里插入图片描述
在这里插入图片描述

更新wsl

wsl --set-default-version 2
wsl --update --web-download

安装ubuntu

wsl --install -d Ubuntu

docker下载

官网下载:docker官网

修改docker镜像源

因为docker下载的镜像源默认是国外的地址,所以下载比较慢,换成国内的镜像源下载会比较快一点

{"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.1panel.live","https://hub.rat.dev"]
}

在这里插入图片描述

开启WSL integration

在这里插入图片描述

安装fastgpt

先创建一个文件夹来放置一些配置文件

mkdir fastgpt
cd fastgpt

用命令下载fastgpt配置文件

curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json

用命令下载docker的部署文件

# pgvector 版本(测试推荐,简单快捷)
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml
# milvus 版本
# curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-milvus.yml
# zilliz 版本
# curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-zilliz.yml

这里如果是测试的话就用简单模型就好了,其他的高级玩法后面再慢慢摸索

启动容器

docker-compose up -d

M3E下载

#查看网络 
docker network ls
# GPU模式启动,并把m3e加载到fastgpt同一个网络
docker run -d -p 6008:6008 --gpus all --name m3e --network fastgpt_fastgpt(这里你们的网络名称可能不是这个,如果不是这个就按照你们查到的网络去填) stawky/m3e-large-api
# CPU模式启动,并把m3e加载到fastgpt同一个网络
docker run -d -p 6008:6008 --name m3e --network fastgpt_fastgpt stawky/m3e-large-api

ollama下载

ollama下载这里就不做说明了,因为现在ollama下载比较简单,需要的话,我再出博客讲解

oneapi配置

模型的处理我们只要用的是oneapi来处理模型

登录oneapi

本机地址:http://localhost:3001/

oneapi登录账号:root 默认密码:123456或者1234

配置ollama渠道

在这里插入图片描述
base url那里的ip要换成本地ip
模型那里选择的模型要选择你本地ollama下载的模型
密钥可以随便填
添加完渠道,记得要点一下测试,测试通过了才能正常使用

配置渠道m3e

在这里插入图片描述
base url要像我这样填写才行,不然回出问题
模型要选m3e
密钥填:sk-aaabbbcccdddeeefffggghhhiiijjjkkk
这里提交之后也要点测试,看能不能通

创建令牌

在这里插入图片描述
这里记得选无限额度和永不过期

在这里插入图片描述
这里复制令牌放置docker-compose.yml文件中

# root 密码,用户名为: root。如果需要修改 root 密码,直接修改这个环境变量,并重启即可。- DEFAULT_ROOT_PSW=1234# AI模型的API地址哦。务必加 /v1。这里默认填写了OneApi的访问地址。- OPENAI_BASE_URL=http://oneapi:3000/v1# AI模型的API Key。(这里默认填写了OneAPI的快速默认key,测试通后,务必及时修改)- CHAT_API_KEY=sk-apETi4q0ohZoqLynBfA5CcAc716b44CcB9E7F3B0716d8c5f

在这里插入图片描述

修改config.json

首先是加入ollama的本地模型

"llmModels": [{"model": "qwen2.5:7b", // 模型名(对应OneAPI中渠道的模型名)"name": "qwen2.5:7b", // 模型别名"avatar": "/imgs/model/openai.svg", // 模型的logo"maxContext": 125000, // 最大上下文"maxResponse": 16000, // 最大回复"quoteMaxToken": 120000, // 最大引用内容"maxTemperature": 1.2, // 最大温度"charsPointsPrice": 0, // n积分/1k token(商业版)"censor": false, // 是否开启敏感校验(商业版)"vision": true, // 是否支持图片输入"datasetProcess": true, // 是否设置为文本理解模型(QA),务必保证至少有一个为true,否则知识库会报错"usedInClassify": true, // 是否用于问题分类(务必保证至少有一个为true)"usedInExtractFields": true, // 是否用于内容提取(务必保证至少有一个为true)"usedInToolCall": true, // 是否用于工具调用(务必保证至少有一个为true)"usedInQueryExtension": true, // 是否用于问题优化(务必保证至少有一个为true)"toolChoice": true, // 是否支持工具选择(分类,内容提取,工具调用会用到。目前只有gpt支持)"functionCall": false, // 是否支持函数调用(分类,内容提取,工具调用会用到。会优先使用 toolChoice,如果为false,则使用 functionCall,如果仍为 false,则使用提示词模式)"customCQPrompt": "", // 自定义文本分类提示词(不支持工具和函数调用的模型"customExtractPrompt": "", // 自定义内容提取提示词"defaultSystemChatPrompt": "", // 对话默认携带的系统提示词"defaultConfig": {}, // 请求API时,挟带一些默认配置(比如 GLM4 的 top_p)"fieldMap": {} // 字段映射(o1 模型需要把 max_tokens 映射为 max_completion_tokens)},

像我用的是qwen2.5,你们可以根据自己的模型进行选择

然后加入向量模型vectorModels

"vectorModels": [{"model": "m3e", // 模型名(与OneAPI对应)"name": "m3e", // 模型展示名"avatar": "/imgs/model/openai.svg", // logo"charsPointsPrice": 0, // n积分/1k token"defaultToken": 700, // 默认文本分割时候的 token"maxToken": 3000, // 最大 token"weight": 100, // 优先训练权重"defaultConfig":{},  // 自定义额外参数。例如,如果希望使用 embedding3-large 的话,可以传入 dimensions:1024,来返回1024维度的向量。(目前必须小于1536维度)"dbConfig": {}, // 存储时的额外参数(非对称向量模型时候需要用到)"queryConfig": {} // 参训时的额外参数},

重启容器

docker-compose down
docker-compose up -d

FastGTP配置与使用

登录

本机地址:http://localhost:3000

账号:root 密码:1234

在这里插入图片描述

新建知识库

在这里插入图片描述
在这里插入图片描述
这里选用通用知识库
索引模型也就是向量模型
文件处理模型就是用来做回答的模型

训练模型

在这里插入图片描述

因为我这里使用的是本地文件去训练,所以要选择 文本数据集

在这里插入图片描述
这里是分割数据的模型,用自动模式就好了

在这里插入图片描述

这样就是训练好了,这里之前我踩过一个坑,就是一直在训练然后一条数据都没有,这个一般都是向量模型的问题,向量模型选错了,或者是向量模型没办法访问,所以上面配置渠道的时候一定要测试的原因就是这样的

创建应用

在这里插入图片描述
这里测试的话就用简单应用就好了

在这里插入图片描述
这里选择模型,选择完之后就可以用了
在这里插入图片描述

注意:以上只是最初级的玩法,要知识库好用的话,还得慢慢研究

http://www.lryc.cn/news/462015.html

相关文章:

  • Linux执行source /etc/profile命令报错:权限不够问(已解决)
  • Windows 11开发全解析
  • 如何进行数学家式的学习思考?
  • 自定义类型--结构体
  • 笔试练习day7
  • python 爬虫 入门 一、基础工具
  • 金融衍生品中的风险对冲策略分析
  • linux下建立软链接
  • MySql数据库left join中添加子查询
  • redis--过期策略和内存淘汰策略
  • qt QTableview 左侧 序号 倒序
  • 隧道代理IP如何帮助企业采集数据?
  • Spring Boot知识管理系统:技术与方法论
  • SpringBoot1~~~
  • 兼容多家品牌手机的多协议取电快充芯片
  • Java和Python的不同
  • Moshang摩熵医药数据库
  • 基于web的酒店客房管理系统【附源码】
  • 潜水定位通信系统的功能和使用方法_鼎跃安全
  • Golang | Leetcode Golang题解之第477题汉明距离总和
  • JavaWeb——Maven(1/8):整体介绍(什么是Maven、Maven的作用、小结)
  • Vivado 跟Xilinx SAE学HLS系列-高亚军(复合数据类型)
  • 【mysql】WITH AS 语法详解
  • Rocky linux SSD安装
  • 在 Linux 系统中设置 Service 服务开机自启的详细指南
  • Flythings学习(四)串口通信
  • [数据结构]带头双向循环链表的实现与应用
  • 商品详情数据API接口开发系列(属性规格详情图sku等)
  • 在 Ubuntu 上安装 clang-format-14
  • 【优选算法篇】双指针的华丽探戈:深入C++算法殿堂的优雅追寻