OLLAMA+FASTGPT+M3E 大模型本地化部署手记

目录

1.安装ollama 0.5.1

2.下载大模型 qwen2.5 3b

3.开启WSL

4.更新wsl

5.安装ubuntu

6.docker下载

6.1 修改docker镜像源

6.2 开启WSL integration

7.安装fastgpt 

7.1 创建fastgpt文件夹

7.2 下载fastgpt配置文件

8.启动容器

9.M3E下载

9.1 下载运行命令

9.2 开机自动运行

10.oneapi配置

10.1 配置ollama渠道

10.2 配置渠道m3e

10.3 创建令牌 

10. 4 将创建的fastGPT令牌放置docker-compose.yml文件中

10.5 修改config.json

10.5 重启容器

11. FastGTP配置与使用

11.0 登录

11.1 创建知识库

11.2 添加知识库内容

12.创建应用

13. 知识问答


1.安装ollama 0.5.1

官网地址 ollama.com  

直接下载速度太慢,使用加速:

  • https://mirror.ghproxy.com/https://github.com/ollama/ollama/releases/download/v0.5.1/OllamaSetup.exeGitHub Proxy 代理加速【实测速度超快】

2.下载大模型 qwen2.5 3b

ollama run qwen2.5:3b

3.开启WSL

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

4.更新wsl

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

5.安装ubuntu

wsl --install -d Ubuntu

 反馈:

解决办法:ip138.com 查询 域名对应的IP地址,然后修改host,添加对上面地址的解析。

用户名 密码 wf

6.docker下载


官网下载:  docker官网

然后安装即可

安装好后,启动docker desktop

6.1 修改docker镜像源


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

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

6.2 开启WSL integration

7.安装fastgpt 

7.1 创建fastgpt文件夹

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

mkdir fastgpt
cd fastgpt

7.2 下载fastgpt配置文件

用命令下载fastgpt配置文件

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

curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json 下载不下来的话,重新配置host:185.199.108.133 raw.githubusercontent.com

或者镜像: curl -o docker-compose.yml https://raw.fastgit.org/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml

raw.fastgit.org 地址无法解析的话,ip138.com 查询解析,然后配host:

 

用命令下载docker的部署文件

# pgvector 版本(测试推荐,简单快捷)
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.ymlcurl -O https://raw.gitmirror.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

8.启动容器

docker-compose up -d

9.M3E下载

9.1 下载运行命令

#查看网络 
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

9.2 m3e 开机自动运行,自动重启设置

docker run -d --restart always -p 6008:6008 --name m3e --network fastgpt_fastgpt stawky/m3e-large-api

10.oneapi配置

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

本机地址:http://localhost:3001/     oneapi登录账号:root 默认密码:123456   登录后立即修改密码为 baxcy516193@z1k3t7w

10.1 配置ollama渠道

或者选择 ollama 类型 但要配置代理,代理地址与上面的BASE URL 一致。

通过测试发现,ollama 类型方式,测试的响应时间要慢。

ollama响应时间普遍在一秒以上:

而自定义渠道方式测试响应时间在一秒以内:

另外就是直接写本机局域网ip地址,会提示连接被拒绝, 

使用docker自动在hosts里面生成的域名host.docker.internal可以正常连接.

base url那里使用docker自动在hosts里面生成的域名host.docker.internal可以正常连接;选择的模型要选择你本地ollama下载的模型,并且要带上参数。比如:qwen2.5:3b

 密钥可以随便填

添加完渠道,记得要点一下测试,测试通过了才能正常使用.

10.2 配置渠道m3e

base url要像我这样填写才行,不然回出问题 模型要选m3e

密钥填:sk-aaabbbcccdddeeefffggghhhiiijjjkkk

提交之后也要点测试,看能不能通

10.3 创建令牌 

选无限额度和永不过期

10. 4 将创建的fastGPT令牌放置docker-compose.yml文件中

复制刚创建的fastGPT令牌放置docker-compose.yml文件中,

文件位置在 d:\fastgpt\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-8Nf0ICoXYi3MtyIJD499F97eFf434387A1D44e307a423291

10.5 修改config.json

首先是加入ollama的本地模型,像我用的是qwen2.5:3b,你们可以根据自己的模型进行填写

"llmModels": [{"model": "qwen2.5:3b", // 模型名(对应OneAPI中渠道的模型名)"name": "ollama", // 模型别名"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)},

然后加入向量模型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": {} // 参训时的额外参数},

10.5 重启容器

docker-compose down
docker-compose up -d

11. FastGTP配置与使用

11.0 登录

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

账号:root 密码:1234

11.1 创建知识库

选用通用知识库 索引模型也就是向量模型 文件处理模型就是用来做回答的模型

11.2 添加知识库内容

新建导入,选择   文本数据集,然后选择本地文件,从本地文件夹上传文件。然后上传

根据提示,点击下一步,下一步,确认文件上传。

最后 状态从索引中  变为  已就绪  表示索引创建完成。就可以使用这个知识库了。后续还可以不断添加文件到这个知识库。

12.创建应用

13. 知识问答

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/63574.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go的Gin比java的Springboot更加的开箱即用?

前言 隔壁组的云计算零零后女同事,后文简称 云女士 ,非说 Go 的 Gin 框架比 Springboot 更加的开箱即用,我心想在 Java 里面 Springboot 已经打遍天下无敌手,这份底蕴岂是 Gin 能比。 但是云女士突出一个执拗,非我要…

神经网络中的过拟合问题及其解决方案

目录 ​编辑 过拟合的定义与影响 过拟合的成因 1. 模型复杂度过高 2. 训练数据不足 3. 训练时间过长 4. 数据特征过多 解决方案 1. 数据增强 2. 正则化 3. Dropout 4. 提前停止 5. 减少模型复杂度 6. 集成学习 7. 交叉验证 8. 增加数据量 9. 特征选择 10. 使…

Pull down筛靶策略丨筛选药物与潜在靶蛋白之间相互作用的体外技术

小分子药靶筛选的Pull down实验是一种有效的筛选药物与潜在靶蛋白之间相互作用的体外技术。利用生物分子之间的亲和力原理,将生物素标记的小分子化合物固定在链霉亲和素的磁珠上,与蛋白裂解液进行孵育,孵育结束后与小分子结合的蛋白可以通过质…

文件上传下载性能优化

客户端与服务器之间数据交换的效率取决于文件传输的性能。通过数据压缩和断点续传可以实现文件传输和网络请求中的性能优化。这两种方式可以减少宽带占用,提高传输效率,从而达到提升数据交换性能。 上传下载接口 request模块主要给应用提供上传下载文件…

通过交叉相关性在大估计误差存在的情况下进行时间延迟估计

这篇论文的主要结论包括以下几点: 阈值效应:随着后向积分信噪比(SNR)的降低,互相关器在时间延迟估计中表现出阈值效应,即大估计误差(异常估计)的概率迅速增加。这表明在低信噪比条件…

PULSE测量系统——示波器结合matlab

由上篇文章可知PULSE测量系统原理,以及在双传声器法传递函数中的作用。但是当没有PULSE测量系统时,我们应该用什么硬件设备与软件进行替换呢? 示波器与MATLAB的功能对比 示波器的作用: 与传声器连接,用于实时显示传声器…

Certimate自动化SSL证书部署至IIS服务器

前言:笔者上一篇内容已经部署好了Certimate开源系统,于是开始搭建部署至Linux和Windows服务器,Linux服务器十分的顺利,申请证书-部署证书很快的完成了,但是部署至Windows Server的IIS服务时,遇到一些阻碍&a…

PTA 输出三角形字符阵列

本题要求编写程序&#xff0c;输出n行由大写字母A开始构成的三角形字符阵列。 输入格式&#xff1a; 输入在一行中给出一个正整数n&#xff08;1≤n<7&#xff09;。 输出格式&#xff1a; 输出n行由大写字母A开始构成的三角形字符阵列。格式见输出样例&#xff0c;其中…

UnityShaderLab 实现黑白着色器效果

实现思路&#xff1a;取屏幕像素的RGB值&#xff0c;将三个通道的值相加&#xff0c;除以一个大于值使颜色值在0-1内&#xff0c;再乘上一个强度值调节黑白强度。 在URP中实现需要开启Opaque Texture ShaderGraph实现&#xff1a; ShaderLab实现&#xff1a; Shader "Bl…

开发者如何使用GCC提升开发效率 Windows下Cmake + NDK 交叉编译 Libyuv

最近在导入其他项目的libyuv库,编译时发现如下问题,刚好想做一期libyuv编译与安装到AS中的文章,故记录集成的全过程 报错如下 error: no member named ABGRToNV21 in namespace libyuv; did you mean ARGBToNV21? error: no member named UYVYToY in namespace libyuv; d…

EDI系统与业务系统集成:选择中间数据库还是REST API方案?

EDI项目中&#xff0c;对外企业可以借助专业的EDI系统&#xff0c;基于AS2、OFTP等国际通用的EDI传输协议搭建传输通道&#xff0c;并基于这些传输通道实现安全、可靠地数据传输。对内企业如何实现业务系统和EDI系统之间的数据同步呢&#xff1f; 企业可以通过中间数据库、RES…

ASP.NET Core实现鉴权授权的几个库

System.IdentityModel.Tokens.Jwt 和 Microsoft.AspNetCore.Authentication.JwtBearer 是两个常用的库&#xff0c;分别用于处理 JWT&#xff08;JSON Web Token&#xff09;相关的任务。它们在功能上有一定重叠&#xff0c;但侧重点和使用场景有所不同。 1. System.IdentityM…

No.4 笔记 探索网络安全:揭开Web世界的隐秘防线

在这个数字时代&#xff0c;网络安全无处不在。了解Web安全的基本知识&#xff0c;不仅能保护我们自己&#xff0c;也能帮助我们在技术上更进一步。让我们一起深入探索Web安全的世界&#xff0c;掌握那些必备的安全知识&#xff01; 1. 客户端与WEB应用安全 前端漏洞&#xff1…

LeetCode 热题 100_环形链表(25_141_简单_C++)(哈希表;快慢指针)

LeetCode 热题 100_环形链表&#xff08;25_141&#xff09; 题目描述&#xff1a;输入输出样例&#xff1a;题解&#xff1a;解题思路&#xff1a;思路一&#xff08;哈希表&#xff09;&#xff1a;思路二&#xff08;快慢指针&#xff09;&#xff1a; 代码实现代码实现&…

GTC2024 回顾 | 优阅达携手 HubSpot 亮相上海,赋能企业数字营销与全球业务增长

从初创企业入门到成长型企业拓展&#xff0c;再到 AI 驱动智能化运营&#xff0c;HubSpot 为企业的每步成长提供了全方位支持。 2024 年 11 月下旬&#xff0c;备受瞩目的 GTC2024 全球流量大会&#xff08;上海&#xff09;成功举办。本次大会汇聚了全国内多家跨境出海领域企业…

在VSCode 的终端或虚拟环境中运行git --version 无法识别,但是在电脑上已经装了git

刚刚在我的电脑上安装了 Git&#xff0c;装完最后有个报错弹窗&#xff0c;之后在 VSCode 的终端或虚拟环境中无法识别 git&#xff0c;上网查阅了资料&#xff0c;发现通常是由于以下原因引起的: 一. Git 未添加到系统的 PATH 环境变量 问题描述 安装 Git 后&#xff0c;系…

Text2SQL(NL2sql)对话数据库:设计、实现细节与挑战

Text2SQL&#xff08;NL2sql&#xff09;对话数据库&#xff1a;设计、实现细节与挑战 前言1.何为Text2SQL&#xff08;NL2sql&#xff09;2.Text2SQL结构与挑战3.金融领域实际业务场景4.注意事项5.总结 前言 随着信息技术的迅猛发展&#xff0c;人机交互的方式也在不断演进。…

Tongweb7049M4有关SSL/TLS 服务器瞬时 Diffie-Hellman 公共密钥过弱的处理方案(by lqw)

前提条件&#xff1a;Tongweb7049M4已在http通道里配置了https&#xff08;如何配置https可以参考这个帖子&#xff1a;东方通TongWEB添加Https证书&#xff0c;开启SSL&#xff09; 遇到客户在配置了https后&#xff0c;扫描漏洞提示&#xff1a; 有关SSL/TLS 服务器瞬时 Dif…

Jenkins部署svn项目

下载 Jenkins 的安装和设置 加载插件太慢&#xff0c;更换镜像地址 http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json 安装svn插件 安装Deploy to container Plugin 工具配置jdk和maven 后端部署 源码管理添加svn地址和认证 增加构建步骤 Invoke to…

嵌入式入门Day27

IO day3 文件IO文件描述符分配过程 相关函数 作业 文件IO 文件IO&#xff1a;基于系统调用的API函数接口特点&#xff1a;每一次调用文件IO&#xff0c;系统都会从用户态到内核态之间切换&#xff0c;效率很低作用&#xff1a;后期学习进程间通信&#xff0c;管道&#xff0c;…