Fastgpt 无法启动或启动后无法正常使用的讨论(启动失败、用户未注册等问题这里)

file

FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景!

FastGPT是非常实用并且相当厉害的个人知识库AI项目,项目是非常厉害的,更新的方法也必须得厉害和复杂到配得上这个项目!

经历过多次升级失败重新部署项目再重新导入知识库后,龚老师也多了个心眼:创建快照!
——不行就回滚!

所以每次最期待却又担心的事就是FastGPT又更新啦!

这不?

github 的 Issues里,很多高手都卡在了升级4.6.8上,龚老师一开始当然也没能幸免。

不过好在,经过10几个小时的昼夜奋斗摸索,终于搞定了。

注意:以下教程适用于从4.6.7升级到4.6.8。如果你是从低版本升级上来的,记得去官方教程上看看相应的升级教程,写了要初始化的就一定要从低版本开始逐步初始化,千万不要自作聪明直接跳过。

注意:以下教程基于linux系统。

第一步:修改docker-compose.yml 代码

修改docker-compose.yml 里mongo部分的代码,补上command和mongodb.key

mongo:image: mongo:5.0.18# image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 # 阿里云container_name: mongo# 端口号 可以保持默认的'27017',如果要修改,就修改前面的'27018'ports:- 27018:27017networks:- fastgptcommand: mongod --keyFile /data/mongodb.key --replSet rs0environment:# 下面的用户名和密码如果你之前用的username/password,就仍然用之前的。- MONGO_INITDB_ROOT_USERNAME=myname- MONGO_INITDB_ROOT_PASSWORD=mypasswordvolumes:- ./mongo/data:/data/db- ./mongodb.key:/data/mongodb.key
COPY
windows下不能修改权限的问题,有网友说修改 docker-compose.yml 可解决,将内容替换为:mongo:image: mongo:5.0.18# image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 # 阿里云container_name: mongoports:- 27017:27017networks:- fastgptcommand: mongod --keyFile /data/mongodb.key --replSet rs0environment:# 默认的用户名和密码,只有首次允许有效- MONGO_INITDB_ROOT_USERNAME=myname- MONGO_INITDB_ROOT_PASSWORD=mypasswordvolumes:- ./mongo/data:/data/db- ./mongodb.key:/data/mongodb.keyentrypoint:- bash- -c- |chmod 400 /data/mongodb.keychown 999:999 /data/mongodb.keyexec docker-entrypoint.sh $$@

第二步:修改config.json代码:

直接复制以下代码替换掉原来的:


{"systemEnv": {"openapiPrefix": "fastgpt","vectorMaxProcess": 15,"qaMaxProcess": 15,"pgHNSWEfSearch": 100},"llmModels": [{"model": "gpt-3.5-turbo-1106","name": "gpt-3.5-turbo","maxContext": 16000,"maxResponse": 4000,"quoteMaxToken": 13000,"maxTemperature": 1.2,"inputPrice": 0,"outputPrice": 0,"censor": false,"vision": false,"datasetProcess": false,"toolChoice": true,"functionCall": false,"customCQPrompt": "","customExtractPrompt": "","defaultSystemChatPrompt": "","defaultConfig": {}},{"model": "gpt-3.5-turbo-16k","name": "gpt-3.5-turbo-16k","maxContext": 16000,"maxResponse": 16000,"quoteMaxToken": 13000,"maxTemperature": 1.2,"inputPrice": 0,"outputPrice": 0,"censor": false,"vision": false,"datasetProcess": true,"toolChoice": true,"functionCall": false,"customCQPrompt": "","customExtractPrompt": "","defaultSystemChatPrompt": "","defaultConfig": {}},{"model": "gpt-4-0125-preview","name": "gpt-4-turbo","maxContext": 125000,"maxResponse": 4000,"quoteMaxToken": 100000,"maxTemperature": 1.2,"inputPrice": 0,"outputPrice": 0,"censor": false,"vision": false,"datasetProcess": false,"toolChoice": true,"functionCall": false,"customCQPrompt": "","customExtractPrompt": "","defaultSystemChatPrompt": "","defaultConfig": {}},{"model": "gpt-4-vision-preview","name": "gpt-4-vision","maxContext": 128000,"maxResponse": 4000,"quoteMaxToken": 100000,"maxTemperature": 1.2,"inputPrice": 0,"outputPrice": 0,"censor": false,"vision": false,"datasetProcess": false,"toolChoice": true,"functionCall": false,"customCQPrompt": "","customExtractPrompt": "","defaultSystemChatPrompt": "","defaultConfig": {}}],"vectorModels": [{"model": "text-embedding-ada-002","name": "Embedding-2","inputPrice": 0,"outputPrice": 0,"defaultToken": 700,"maxToken": 3000,"weight": 100,"defaultConfig": {}}],"reRankModels": [],"audioSpeechModels": [{"model": "tts-1","name": "OpenAI TTS1","inputPrice": 0,"outputPrice": 0,"voices": [{ "label": "Alloy", "value": "alloy", "bufferId": "openai-Alloy" },{ "label": "Echo", "value": "echo", "bufferId": "openai-Echo" },{ "label": "Fable", "value": "fable", "bufferId": "openai-Fable" },{ "label": "Onyx", "value": "onyx", "bufferId": "openai-Onyx" },{ "label": "Nova", "value": "nova", "bufferId": "openai-Nova" },{ "label": "Shimmer", "value": "shimmer", "bufferId": "openai-Shimmer" }]}],"whisperModel": {"model": "whisper-1","name": "Whisper1","inputPrice": 0,"outputPrice": 0}
}

第三步:创建 mongo 密钥,赋予密钥文件权限:

打开终端, CD 进项目的目录,如果安装了宝塔,直接在项目的目录界面点击终端。

在终端输入代码:

openssl rand -base64 756 > ./mongodb.key
chmod 600 ./mongodb.key
chown 999:root ./mongodb.key

(!!!这一步很关键,如果不输入这一步,就无法启动Mongo容器,后面就会出现一系列令人抓狂的错误)

第四步:重启所有容器。

依次在终端输入以下代码:

# 重启 Mongo
docker-compose down
docker-compose up -d

此时,可以去Docker界面看看mongo是否正常启动,如果没有启动,就手动启动一下。

第五步:进入容器初始化部分集合

FastGPT 4.6.8 后使用了 MongoDB 的事务,需要运行在副本集上。副本集没法自动化初始化,需手动操作。

# 查看 mongo 容器是否正常运行
docker ps
# 进入容器
docker exec -it mongo bash# 连接数据库(这里要填Mongo的用户名和密码)
mongo -u myusername -p mypassword --authenticationDatabase admin# 初始化副本集。如果需要外网访问,mongo:27017 可以改成 ip:27017。但是需要同时修改 FastGPT 连接的参数(MONGODB_URI=mongodb://myname:mypassword@mongo:27017/fastgpt?authSource=admin => MONGODB_URI=mongodb://myname:mypassword@ip:27017/fastgpt?authSource=admin)
rs.initiate({_id: "rs0",members: [{ _id: 0, host: "mongo:27017" }]
})
# 检查状态。如果提示 rs0 状态,则代表运行成功
rs.status()

第六步:更新容器

在终端输入以下代码:

docker-compose down && docker-compose pull && docker-compose up -d

此时刷新一下自己的FastGPT网站,应该就能显示4.6.8了。

file

可能会出现的问题:

  • 导入知识库时提示null value in column “tmb_id” of relation “modeldata” violates not-null constraint
    这可能是因为没有初始化4.6.7,或初始化4.6.7出现了某首错误,比如rootkey不正确;

  • 已经显示4.6.8,但对话或导入模型时提示没有模型。
    需要重新拉取最新的容器:

docker-compose down && docker-compose pull && docker-compose up -d
  • 初始化mongo副本集提示This node was not started with the replSet option
    这是因为mongodb.key的权限不够,需要再在终端输入:
chown 999:root ./mongodb.key

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

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

相关文章

Python:文档注释、类型标注和注释宏# type:

目录 1、增加文档注释2、增加类型标注3、增加注释宏 看一段简单的代码 def add(x, y):return x y如下代码调用函数,可以正常执行 print(add(1, 2)) # 3 print(add(1, 2)) # 121、增加文档注释 def add(x, y):"""sum x and y:param x: int:param y…

DVWA-CSRF通关教程-完结

DVWA-CSRF通关教程-完结 文章目录 DVWA-CSRF通关教程-完结Low页面使用源码分析漏洞利用 Medium源码分析漏洞利用 High源码分析漏洞利用 impossible源码分析 Low 页面使用 当前页面上,是一个修改admin密码的页面,只需要输入新密码和重复新密码&#xff…

github项目名称变更sourcetree如何同步

github项目名称变更sourcetree如何同步 方法1:删除本地仓库 重新从URL克隆 方法2:修改远程地址链接 1.打开项目所在文件夹的终端 2.删除本地关联的这个远程仓库origin git remote rm origin 3.关联修改名字后的远程仓库地址 git remote add origin <新的远程仓库地址&…

详解TCP的三次握手和四次挥手

文章目录 1. TCP报文的头部结构2. 三次握手的原理与过程三次握手连接建立过程解析 3. 四次挥手的原理与过程四次挥手连接关闭过程的解析 4. 常见面试题 深入理解TCP连接&#xff1a;三次握手和四次挥手 在网络通信中&#xff0c;TCP&#xff08;传输控制协议&#xff09;扮演着…

Linux-进程控制

&#x1f30e;进程控制【上】 文章目录&#xff1a; 进程控制 为什么要有地址空间和页表 程序的内存       程序申请内存使用问题 写时拷贝与缺页中断 父子进程代码共享       为什么需要写时拷贝       页表的权限位       缺页中断 退出码和错误码…

【ENSP】交换机和交换机之间实现静态路由

1.概念 三层交换机只能在Vlanif逻辑口配置iP地址 2.实现方法 交换机允许对应vlan通行&#xff0c;配置vlanif的ip地址&#xff0c;做静态路由 3.静态路由配置方法 ip route-static 目的网段 子网掩码 下一跳设备 LSW1三层交换机配置 u t m sys vlan batch 10 20 …

HarmonyOS 应用开发之UIAbility组件生命周期

概述 当用户打开、切换和返回到对应应用时&#xff0c;应用中的UIAbility实例会在其生命周期的不同状态之间转换。UIAbility类提供了一系列回调&#xff0c;通过这些回调可以知道当前UIAbility实例的某个状态发生改变&#xff0c;会经过UIAbility实例的创建和销毁&#xff0c;…

LeetCode_1.两数之和

一、题目描述 二、方法 1.方法1&#xff08;暴力枚举法&#xff09; 利用两个for循环&#xff0c;对数组进行逐一的遍历&#xff0c;直到找到两个数的和为目标值时返回这两个数的下标。以下为c实现的完整代码。 # include<iostream> using namespace std; #include<…

【Linux】nmcli命令详解(文末送书)

目录 一、概述 二、常用参数使用 2.1 nmcli networking 1.显示NM是否接管网络 2.查看网络连接状态 3.开/关网络连接 2.2 general ​编辑 1.显示系统网络状态 2.显示主机名 3.更改主机名 2.3 nmcli connection ​编辑1.显示所有网络连接 2.显示某个网卡的详细信息…

Linux文件IO(2):使用标准IO进行文件的打开、关闭、读写、流定位等相关操作

目录 前言 文件的打开和关闭的概念 文件的打开 文件的打开函数 文件打开的模式 文件的关闭 文件的关闭函数 注意事项 字符的输入&#xff08;读单个字符&#xff09; 字符输入的函数 注意事项 字符的输出&#xff08;写单个字符&#xff09; 字符输出的函数 注意…

探索海外应用加速的作用与优势

随着互联网的快速发展&#xff0c;海外应用加速作为一种提高网络连接速度和性能的技术手段越来越受到关注。那么&#xff0c;海外应用加速究竟有什么作用呢&#xff1f;以下是这种加速技术的主要作用&#xff1a; 降低延迟&#xff1a; 海外应用加速在降低数据传输延迟方面发挥…

项目模块—实现抑郁测评(小程序)

script <script setup> import { ref } from "vue";//控制轮播图页码 let current ref(0);//答题逻辑 const add (value) > {if (current.value < 9) {current.value current.value 1;} else {uni.switchTab({url: "/pages/my/my",});} }…

双端队列deque和vector以及list的优缺点比较

参考:https://blog.csdn.net/TWRenHao/article/details/123483085 一、vector vector具体用法详情点这里 优点&#xff1a; 支持随机访问 CPU高速环缓存命中率很高 缺点&#xff1a; 空间不够&#xff0c;便需要增容。而增容代价很大&#xff0c;还存在一定的空间浪费。 头部…

redis在docker安装并启动流程

1、启动server docker run -d -p 6379:6379 --name redis01 redis:7.2.4以上命令&#xff0c;每次启动新的Redis容器&#xff0c;数据会丢失。 我们需要挂载数据文件&#xff0c;在宿主机上面&#xff0c;这样就可以持久化数据. 2、挂载数据文件&#xff08;可根据需求选择…

Git相关命令(一)

一、简介 Git 是一个开源的分布式版本控制系统。 当然&#xff0c; git 不会傻傻的把你的每一个版本完整的存储下来&#xff0c;他仅仅会存储每次修改的位置和内容&#xff08;可持久化&#xff09;&#xff0c;每一次 commit 可以理解为产生一个版本&#xff0c;接下来的版本…

vivado 生成比特流或器件镜像

在生成比特流或器件镜像之前 &#xff0c; 请复查其设置 &#xff0c; 确保这些设置对于您的设计都正确无误 &#xff0c; 这一点至关重要。 Vivado IDE 中的比特流和器件镜像设置分为 2 种类型 &#xff1a; 1. 比特流或器件镜像文件格式设置。 2. 器件配置设置。 在 V…

数据结构刷题篇 之 【力扣二叉树基础OJ】详细讲解(含每道题链接及递归图解)

有没有一起拼用银行卡的&#xff0c;取钱的时候我用&#xff0c;存钱的时候你用 1、相同的树 难度等级&#xff1a;⭐ 直达链接&#xff1a;相同的树 2、单值二叉树 难度等级&#xff1a;⭐ 直达链接&#xff1a;单值二叉树 3、对称二叉树 难度等级&#xff1a;⭐⭐ 直达…

【Godot4自学手册】第三十一节使用WorldEnvironment为地宫入口粒子系统添加辉光

本节&#xff0c;首先我将使用WorldEnvironment节点为地宫入口的例子系统添加辉光&#xff0c;让游戏看上去效果更加灿烂。其次加入相应提示信息&#xff0c;白天到达地宫附近、未杀死怪物进入地宫&#xff0c;都有提示信息&#xff0c;达到条件后地宫方可进入。先看一下效果&a…

CSS之动画

一&#xff0c;动画的制作 实现盒子绕圈走 二&#xff0c; 动画的常用属性 三&#xff0c;动画简写属性 前面两个属性一定要写&#xff0c;第三个linear是指匀速的意思&#xff08;默认是ease&#xff09;

Machine Learning机器学习之数据可视化

目录 前言 一、 数据预处理与清洗 二、常见可视化技术 三、可视化工具和平台 博主介绍&#xff1a;✌专注于前后端、机器学习、人工智能应用领域开发的优质创作者、秉着互联网精神开源贡献精神&#xff0c;答疑解惑、坚持优质作品共享。本人是掘金/腾讯云/阿里云等平台优质作者…