湖北网站建设公司排名,南宁网站制作平台,wordpress更新 无法创建目录,桂林官网FastGPT 是一个基于 LLM 大语言模型的知识库问答系统#xff0c;提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排#xff0c;从而实现复杂的问答场景#xff01;
FastGPT是非常实用并且相当厉害的个人知识库AI项目#xff0c;项目是非常…
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如果要修改就修改前面的27018ports:- 27018:27017networks:- fastgptcommand: mongod --keyFile /data/mongodb.key --replSet rs0environment:# 下面的用户名和密码如果你之前用的username/password就仍然用之前的。- MONGO_INITDB_ROOT_USERNAMEmyname- MONGO_INITDB_ROOT_PASSWORDmypasswordvolumes:- ./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_USERNAMEmyname- MONGO_INITDB_ROOT_PASSWORDmypasswordvolumes:- ./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_URImongodb://myname:mypasswordmongo:27017/fastgpt?authSourceadmin MONGODB_URImongodb://myname:mypasswordip:27017/fastgpt?authSourceadmin
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了。 可能会出现的问题 导入知识库时提示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