Commit 0591d183 by Archer Committed by GitHub

fix: default model (#6957)

parent 1cd865d0
{
"tags": {
"fastgpt": "v4.14.19",
"fastgpt-code-sandbox": "v4.14.19",
"fastgpt-mcp_server": "v4.14.19",
"fastgpt": "v4.14.20",
"fastgpt-code-sandbox": "v4.14.20",
"fastgpt-mcp_server": "v4.14.20",
"fastgpt-plugin": "v0.6.2",
"volume-manager": "v0.1",
"agent-sandbox-image": "v0.1",
......
......@@ -174,7 +174,7 @@ services:
retries: 3
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
ports:
- 3002:3000
networks:
......@@ -220,7 +220,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
ports:
- 3003:3000
networks:
......
......@@ -174,7 +174,7 @@ services:
retries: 3
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
ports:
- 3002:3000
networks:
......@@ -220,7 +220,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
ports:
- 3003:3000
networks:
......
......@@ -192,7 +192,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -271,7 +271,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -320,7 +320,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -170,7 +170,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -249,7 +249,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -298,7 +298,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -152,7 +152,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -231,7 +231,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -280,7 +280,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -151,7 +151,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -230,7 +230,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -279,7 +279,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -157,7 +157,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -236,7 +236,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -285,7 +285,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -134,7 +134,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -213,7 +213,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -262,7 +262,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -192,7 +192,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -271,7 +271,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -320,7 +320,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -170,7 +170,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -249,7 +249,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -298,7 +298,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -152,7 +152,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -231,7 +231,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -280,7 +280,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -151,7 +151,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -230,7 +230,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -279,7 +279,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -157,7 +157,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -236,7 +236,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -285,7 +285,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -134,7 +134,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -213,7 +213,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -262,7 +262,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
---
title: 'V4.14.20 (In Progress)'
title: 'V4.14.20'
description: 'FastGPT V4.14.20 release notes'
---
......
---
title: 'V4.14.21 (In Progress)'
description: 'FastGPT V4.14.21 release notes'
---
## Upgrade Guide
### 1. Update image tags
- Update the fastgpt-app image tag (FastGPT main service): v4.14.21
- Update the fastgpt-pro image tag (FastGPT commercial edition): v4.14.21
## 🐛 Fixes
1. Fixed an issue where the workflow's default selected model was not synced back to the form value, causing the displayed model to differ from the model used at runtime.
2. Fixed a risk where edges could be lost during workflow autosave.
3. Fixed an error that occurred when admins edited the system notification modal.
---
title: 'V4.14.21(进行中)'
description: 'FastGPT V4.14.21 更新说明'
---
## 升级指南
### 1. 更新镜像 tag
- 更新 fastgpt-app(fastgpt 主服务) 镜像 tag: v4.14.21
- 更新 fastgpt-pro(fastgpt 商业版) 镜像 tag: v4.14.21
## 🐛 修复
1. 工作流默认选中模型未回传表单值,导致看到的模型和实际运行模型不一致。
2. 工作流自动保存时,存在边丢失风险。
3. admin 修改系统通知弹窗时候报错。
......@@ -2,6 +2,7 @@
"title": "4.14.x",
"description": "",
"pages": [
"41421",
"41420",
"41419",
"41418",
......
......@@ -2,6 +2,7 @@
"title": "4.14.x",
"description": "",
"pages": [
"41421",
"41420",
"41419",
"41418",
......
......@@ -129,6 +129,7 @@ description: FastGPT Toc
- [/en/self-host/upgrading/4-14/41419](/en/self-host/upgrading/4-14/41419)
- [/en/self-host/upgrading/4-14/4142](/en/self-host/upgrading/4-14/4142)
- [/en/self-host/upgrading/4-14/41420](/en/self-host/upgrading/4-14/41420)
- [/en/self-host/upgrading/4-14/41421](/en/self-host/upgrading/4-14/41421)
- [/en/self-host/upgrading/4-14/4143](/en/self-host/upgrading/4-14/4143)
- [/en/self-host/upgrading/4-14/4144](/en/self-host/upgrading/4-14/4144)
- [/en/self-host/upgrading/4-14/4145](/en/self-host/upgrading/4-14/4145)
......
......@@ -131,6 +131,7 @@ description: FastGPT 文档目录
- [/self-host/upgrading/4-14/41419](/self-host/upgrading/4-14/41419)
- [/self-host/upgrading/4-14/4142](/self-host/upgrading/4-14/4142)
- [/self-host/upgrading/4-14/41420](/self-host/upgrading/4-14/41420)
- [/self-host/upgrading/4-14/41421](/self-host/upgrading/4-14/41421)
- [/self-host/upgrading/4-14/4143](/self-host/upgrading/4-14/4143)
- [/self-host/upgrading/4-14/4144](/self-host/upgrading/4-14/4144)
- [/self-host/upgrading/4-14/4145](/self-host/upgrading/4-14/4145)
......
......@@ -167,8 +167,8 @@
"content/self-host/config/model/minimax.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/config/model/siliconCloud.en.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/config/model/siliconCloud.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/config/object-storage.en.mdx": "2026-05-08T20:36:05+08:00",
"content/self-host/config/object-storage.mdx": "2026-05-08T20:36:05+08:00",
"content/self-host/config/object-storage.en.mdx": "2026-05-21T11:24:48+08:00",
"content/self-host/config/object-storage.mdx": "2026-05-21T11:24:48+08:00",
"content/self-host/config/signoz.en.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/config/signoz.mdx": "2026-04-26T21:08:47+08:00",
"content/self-host/custom-models/bge-rerank.en.mdx": "2026-04-26T21:08:47+08:00",
......
......@@ -192,7 +192,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -271,7 +271,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -320,7 +320,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -170,7 +170,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -249,7 +249,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -298,7 +298,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -152,7 +152,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -231,7 +231,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -280,7 +280,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -151,7 +151,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -230,7 +230,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -279,7 +279,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -157,7 +157,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -236,7 +236,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -285,7 +285,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -134,7 +134,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -213,7 +213,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -262,7 +262,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.19
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -192,7 +192,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -271,7 +271,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -320,7 +320,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -170,7 +170,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -249,7 +249,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -298,7 +298,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -152,7 +152,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -231,7 +231,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -280,7 +280,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -151,7 +151,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -230,7 +230,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -279,7 +279,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -157,7 +157,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -236,7 +236,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -285,7 +285,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
......@@ -134,7 +134,7 @@ services:
fastgpt-app:
container_name: fastgpt-app
image: ghcr.io/labring/fastgpt:v4.14.19
image: ghcr.io/labring/fastgpt:v4.14.20
ports:
- 3000:3000
networks:
......@@ -213,7 +213,7 @@ services:
- ./config.json:/app/data/config.json
fastgpt-code-sandbox:
container_name: fastgpt-code-sandbox
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.19
image: ghcr.io/labring/fastgpt-code-sandbox:v4.14.20
networks:
- codesandbox
restart: always
......@@ -262,7 +262,7 @@ services:
retries: 3
fastgpt-mcp-server:
container_name: fastgpt-mcp-server
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.19
image: ghcr.io/labring/fastgpt-mcp_server:v4.14.20
networks:
- app
ports:
......
Subproject commit 77d430d5b9223735d65a57e64f46224b2c68ff3f
Subproject commit 821e0d5d30280d6ed4ea5c42f8682d07a6f87bf6
import React, { useCallback } from 'react';
import React, { useCallback, useEffect } from 'react';
import type { RenderInputProps } from '../type';
import type { SettingAIDataType } from '@fastgpt/global/core/app/type';
import SettingLLMModel from '@/components/core/ai/SettingLLMModel';
......@@ -8,9 +8,11 @@ import { WorkflowActionsContext } from '@/pageComponents/app/detail/WorkflowComp
import { useMemoEnhance } from '@fastgpt/web/hooks/useMemoEnhance';
import { useLocalStorageState } from 'ahooks';
import { getWebDefaultLLMModel } from '@/web/common/system/utils';
import { useSystemStore } from '@/web/common/system/useSystemStore';
const SelectAiModelRender = ({ inputs = [], nodeId }: RenderInputProps) => {
const onChangeNode = useContextSelector(WorkflowActionsContext, (v) => v.onChangeNode);
const { llmModelList } = useSystemStore();
const [defaultModel, setDefaultModel] = useLocalStorageState<string>(
'workflow_default_llm_model',
......@@ -44,9 +46,43 @@ const SelectAiModelRender = ({ inputs = [], nodeId }: RenderInputProps) => {
[inputs, nodeId, onChangeNode, setDefaultModel]
);
const { aiModelInput, model } = useMemoEnhance(() => {
const aiModelInput = inputs.find((input) => input.key === NodeInputKeyEnum.aiModel);
const inputModel = aiModelInput?.value as string | undefined;
const modelSet = new Set(llmModelList.map((item) => item.model));
const defaultLLMModel = getWebDefaultLLMModel(llmModelList)?.model || '';
const validDefaultModel = defaultModel && modelSet.has(defaultModel) ? defaultModel : '';
const fallbackModel = validDefaultModel || defaultLLMModel;
return {
aiModelInput,
model: inputModel || fallbackModel
};
}, [defaultModel, inputs, llmModelList]);
/**
* settingLLMModel 会用本地缓存模型作为选择器展示值。
* 当节点本身还没有 model 时,需要把这个展示兜底值同步写回节点,
* 避免后端运行时收到空 model 后回退到系统默认模型。
*/
useEffect(() => {
if (!aiModelInput || aiModelInput.value || !model) return;
setDefaultModel(model);
onChangeNode({
nodeId,
type: 'updateInput',
key: aiModelInput.key,
value: {
...aiModelInput,
value: model
}
});
}, [aiModelInput, model, nodeId, onChangeNode, setDefaultModel]);
const llmModelData: SettingAIDataType = useMemoEnhance(
() => ({
model: inputs.find((input) => input.key === NodeInputKeyEnum.aiModel)?.value ?? defaultModel,
model,
maxToken: inputs.find((input) => input.key === NodeInputKeyEnum.aiChatMaxToken)?.value,
temperature: inputs.find((input) => input.key === NodeInputKeyEnum.aiChatTemperature)?.value,
isResponseAnswerText: inputs.find(
......@@ -67,7 +103,7 @@ const SelectAiModelRender = ({ inputs = [], nodeId }: RenderInputProps) => {
aiChatJsonSchema: inputs.find((input) => input.key === NodeInputKeyEnum.aiChatJsonSchema)
?.value
}),
[inputs, defaultModel]
[inputs, model]
);
return <SettingLLMModel defaultData={llmModelData} onChange={onChangeModel} />;
......
......@@ -39,14 +39,7 @@ export const uiWorkflow2StoreWorkflow = ({
catchError: item.data.catchError
}));
// get all handle
const reactFlowViewport = document.querySelector('.react-flow__viewport');
// Gets the value of data-handleid on all elements below it whose data-handleid is not empty
const handleList =
reactFlowViewport?.querySelectorAll('[data-handleid]:not([data-handleid=""])') || [];
const handleIdList = Array.from(handleList).map(
(item) => item.getAttribute('data-handleid') || ''
);
const nodeIdSet = new Set(nodes.map((node) => node.data.nodeId));
const formatEdges: StoreEdgeItemType[] = edges
.map((item) => ({
source: item.source,
......@@ -54,18 +47,13 @@ export const uiWorkflow2StoreWorkflow = ({
sourceHandle: item.sourceHandle || '',
targetHandle: item.targetHandle || ''
}))
.filter((item) => item.sourceHandle && item.targetHandle)
// 保存时不能依赖 DOM handle 是否已渲染,否则动态节点还未挂载时会把合法连线误删。
.filter(
// Filter out edges that do not have both sourceHandle and targetHandle
(item) => {
if (!reactFlowViewport) return true;
const currentSourceNode = nodes.find((node) => node.data.nodeId === item.source);
if (currentSourceNode?.data.isFolded) return true;
// Not in react flow page
return handleIdList.includes(item.sourceHandle) && handleIdList.includes(item.targetHandle);
}
(item) =>
item.sourceHandle !== '' &&
item.targetHandle !== '' &&
nodeIdSet.has(item.source) &&
nodeIdSet.has(item.target)
);
return {
......
......@@ -46,6 +46,19 @@ describe('WorkflowComponents utils', () => {
catchError: false
},
position: { x: 100, y: 100 }
},
{
data: {
nodeId: '2',
name: 'Node 2',
intro: 'Intro 2',
avatar: 'avatar2',
flowNodeType: FlowNodeTypeEnum.userInput,
showStatus: true,
inputs: [],
outputs: []
},
position: { x: 300, y: 100 }
}
];
......@@ -79,6 +92,129 @@ describe('WorkflowComponents utils', () => {
targetHandle: 'target1'
});
});
it('should keep valid edges when ReactFlow handles have not mounted yet', () => {
const mockQuerySelector = vi.fn().mockReturnValue({
querySelectorAll: () => []
});
global.document = {
querySelector: mockQuerySelector
} as any;
const nodes = [
{
data: {
nodeId: 'sourceNode',
name: 'Source',
intro: '',
avatar: '',
flowNodeType: FlowNodeTypeEnum.chatNode,
showStatus: true,
inputs: [],
outputs: [],
isFolded: false
},
position: { x: 0, y: 0 }
},
{
data: {
nodeId: 'targetNode',
name: 'Target',
intro: '',
avatar: '',
flowNodeType: FlowNodeTypeEnum.answerNode,
showStatus: true,
inputs: [],
outputs: []
},
position: { x: 300, y: 0 }
}
];
const edges = [
{
source: 'sourceNode',
target: 'targetNode',
sourceHandle: 'sourceNode-source-right',
targetHandle: 'targetNode-target-left'
}
];
const result = uiWorkflow2StoreWorkflow({ nodes, edges });
expect(result.edges).toEqual([
{
source: 'sourceNode',
target: 'targetNode',
sourceHandle: 'sourceNode-source-right',
targetHandle: 'targetNode-target-left'
}
]);
});
it('should filter malformed edges that cannot be restored', () => {
const nodes = [
{
data: {
nodeId: 'sourceNode',
name: 'Source',
intro: '',
avatar: '',
flowNodeType: FlowNodeTypeEnum.chatNode,
showStatus: true,
inputs: [],
outputs: []
},
position: { x: 0, y: 0 }
},
{
data: {
nodeId: 'targetNode',
name: 'Target',
intro: '',
avatar: '',
flowNodeType: FlowNodeTypeEnum.answerNode,
showStatus: true,
inputs: [],
outputs: []
},
position: { x: 300, y: 0 }
}
];
const edges = [
{
source: 'sourceNode',
target: 'targetNode',
sourceHandle: '',
targetHandle: 'targetNode-target-left'
},
{
source: 'sourceNode',
target: 'missingNode',
sourceHandle: 'sourceNode-source-right',
targetHandle: 'missingNode-target-left'
},
{
source: 'sourceNode',
target: 'targetNode',
sourceHandle: 'sourceNode-source-right',
targetHandle: 'targetNode-target-left'
}
];
const result = uiWorkflow2StoreWorkflow({ nodes, edges });
expect(result.edges).toEqual([
{
source: 'sourceNode',
target: 'targetNode',
sourceHandle: 'sourceNode-source-right',
targetHandle: 'targetNode-target-left'
}
]);
});
});
describe('filterExportModules', () => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment