v4.15.0-beta5
Pre-release
Pre-release
📦 升级指南
1. 修改环境变量
fastgpt 和 fastgpt-pro 增加环境变量 CHAT_TITLE_MODEL,用于自动生成对话的标题,例如:
CHAT_TITLE_MODEL=deepseek-v4-flash2. 镜像变更
- 更新 fastgpt-app(fastgpt 主服务) 镜像 tag: v4.15.0-beta5
- 更新 fastgpt-pro(fastgpt 商业版) 镜像 tag: v4.15.0-beta5
- 更新 fastgpt-plugin 镜像 tag: v1.0.0-beta5
- 更新 aiproxy 镜像 tag: v0.6.2
3. 升级脚本
将所有旧的沙盒 workspace 归档到 s3 里,从而更彻底的释放不活跃的沙盒,旧的沙盒可能因为超时安装 zip 失败。因为旧的沙盒大部分关联的是旧的对话,不执行该脚本,直接把旧的沙盒全部移除也可以。该脚本仅影响旧的沙盒,不影响新生成沙盒。
curl --location --request POST 'https://{{host}}/api/admin/initSandboxArchive' \
--header 'rootkey: {{rootkey}}' \
--header 'Content-Type: application/json' \
-d '{"runArchive":true,"inactiveDays":0}'功能重大变化
- ApiKey 功能调整,不再区分应用 key 和系统 key,只保留系统 key,如需兼容 openai sdk 用法,可使用
apikey-appId的方式传递 Token。已有的 apikey 保持兼容,不影响使用。具体和查阅 FastGPT API 文档说明
🚀 新增内容
- HTTP 节点支持配置忽略 TLS 证书校验,适用于调用使用自签名证书或内部证书的 HTTPS 服务。
- 支持目录深度环境变量,避免无限嵌套目录。
- 对话框支持快速滚动到底部按键。
- 参考 Lobe UI 优化流输出动效。
- 支持通过模型生成对话标题,需配置
CHAT_TITLE_MODEL变量。 - 调整 Skill Edit 编辑交互。
- HTTP 节点支持返回完整错误对象。
- agent 模式知识库搜索,支持权限过滤。
- API 密钥逻辑优化,统一 APIKey 管理并由请求显式传入应用上下文。
- 优化 agent 上下文压缩逻辑。
- 支持快速回复的输出语法。
⚙️ 优化
- HTML 输出后自动切换为预览,减少手动打开预览的操作。
- 优化应用、知识库、文件和文件夹等长名称展示:超出宽度时自动省略,并在 hover 名称时展示完整内容。
- 移除所有内置 LLM 请求中的
temperature和max_tokens,避免部分模型不兼容。 - 知识库训练出现错误时的提示,同时支持一键全部重试。
- 过滤掉无效的知识库引用角标。
- 工具运行空响应时候,自动补充 "none",避免部分模型报错。
- 系统工具运行前,再次进行二次权限校验。
- 优化重定向后 SSRF 校验。
🐛 修复
- 修复 S3 私有对象 key 未绑定已鉴权资源时可能导致的跨资源文件访问风险。
- 工作流工具,array 和 object 类型,工具调用参数 schema 异常。
- 发布渠道 - 门户,UI 偏移。
代码优化
- 增加系统处理字符串时的长度保护,如果长度过大会停止继续同步替换,避免高 CPU 负载,可通过环境变量
SYSTEM_MAX_STRING_LENGTH_M调整上限。
What's Changed
- Update marketplace by @c121914yu in #7097
- fix: optimize top agent prompt by @YYH211 in #7095
- feat: improve code block rendering by @siiigure in #7066
- fix: align mobile chat headers by @xqvvu in #7100
- Codex/siigure http https by @siiigure in #7085
- debug: import compatibility issue by @shortlight5980 in #7099
- docs(workflow): loop run node user documentation by @DigHuang in #7098
- Add client IP proxy troubleshooting notes by @xqvvu in #7102
- feat: tooltip by @siiigure in #7087
- Fix login language synchronization by @YYH211 in #7101
- fix: optimize agent v2 tool labels by @YYH211 in #7096
- fix: bind S3 object keys to authorized resources by @c121914yu in #7104
- fix: normalize uploaded file extension to lowercase (#6996) by @DadaVinqi in #7105
- [codex] remove duplicate chat log error detail by @c121914yu in #7109
- perf: reduce workflow variable replacement CPU cost by @c121914yu in #7108
- Chat UI improvement by @xqvvu in #7118
- Use JSON extraction for content extract node by @YYH211 in #7117
- folder-depth-limit by @siiigure in #7103
- perf: node store by @c121914yu in #7112
- fix: include query extension selection time by @YYH211 in #7119
- feat: dataset error list by @shortlight5980 in #7084
- fix: update pro modal titles in multiple languages for consistency by @siiigure in #7107
- Fix/bug1 by @siiigure in #7115
- feat(sandbox): migrate to standalone Rust proxy and implement stateless WSS gateway with dynamic file sync by @DigHuang in #7034
- refactor(fastgpt): update default fastgpt-ide-agent image to ghcr.io by @DigHuang in #7124
- fix: 数据集更新接口不支持 API Key 鉴权 (#7006) by @DadaVinqi in #7123
- feat: chat title generate by @c121914yu in #7120
- refactor(app): optimize tool selector UI/UX by @FinleyGe in #7127
- fix: action by @c121914yu in #7128
- fix(sandbox): resolve inotify infinite loops & proxy loopback connection by @DigHuang in #7129
- fix: slider title by @c121914yu in #7130
- Fix chat by @c121914yu in #7131
- fix: make whisper config fields optional by @FinleyGe in #7133
- Fix/http nodes by @siiigure in #7111
- refactor: align system tool JSON schema codec by @FinleyGe in #7116
- feat(app): filter unavailable tools in system tool selector by @FinleyGe in #7138
- feat(openapi): refine API key auth proxy and app isolation by @FinleyGe in #7126
- refactor(skill): optimize publish flow & upgrade sandbox images by @DigHuang in #7132
- feat: route helper bot generation through pro by @YYH211 in #7137
- fix: strip admin plugin IO schemas by @FinleyGe in #7141
- perf: invalid quote filter by @c121914yu in #7139
- fix(agent): pass uploaded file urls to tools by @FinleyGe in #7091
- fix: 短代码块跟随代码长度显示 by @siiigure in #7142
- feat: add agent dataset auth entry by @FinleyGe in #7140
- fix: update private list permission count by @FinleyGe in #7143
- Fix/playground-visibility-config-layout by @siiigure in #7135
- perf(app): optimize tool selector performance by @FinleyGe in #7148
- fix(permission): optimize private resource check and deduplicate collaborators by @FinleyGe in #7147
- fix(skill): resolve debug chat state mismatch & simplify test container by @DigHuang in #7146
- fix: preserve system tool child icons by @FinleyGe in #7144
- fix(mcp): only fall back to legacy SSE transport on a 4xx Streamable HTTP error by @serhiizghama in #7154
- perf: http repalce by @c121914yu in #7156
- feat: optimize context compression algorithm by @YYH211 in #7052
- adapt old version config by @c121914yu in #7158
- feat(markdown): add quick replies feature and related styling by @siiigure in #7136
- extract log by @c121914yu in #7161
- feat(chat): improve chat feedback interactions by @xqvvu in #7160
- feat: gate app api keys by auth option by @FinleyGe in #7162
- debug: training count error by @shortlight5980 in #7169
- Handle Agent V2 helper Pro modal by @YYH211 in #7168
- fix(agent): normalize empty tool responses by @YYH211 in #7171
- feat: refine chat log feedback actions by @xqvvu in #7172
- fix: require invoke token secret configuration by @FinleyGe in #7170
- feat(sandbox): support sandbox and skill version entrypoint scripts by @DigHuang in #7145
- [codex] secure code sandbox secret isolation by @c121914yu in #7173
New Contributors
- @siiigure made their first contribution in #7066
- @DadaVinqi made their first contribution in #7105
- @serhiizghama made their first contribution in #7154
Full Changelog: v4.15.0-beta4...v4.15.0-beta5