Files
zhuangxiu/docs/settings.md
T

73 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 可视化系统设置
## 为什么不再把所有内容放进 `.env`
`.env` 只负责应用启动前必须存在的 PostgreSQL、Redis、监听地址和运行期设置目录。数据库和 Redis 必须先启动,网页设置才有机会打开,因此它们不能完全由已运行后的网页管理。
`scripts/bootstrap.ps1` 使用操作系统的加密随机数一次性生成数据库和 Redis 密码,不依赖 OpenSSL,也不会在终端打印密码。普通用户不需要打开 `.env`
以下内容改为网页配置并加密保存:
- NAS MinIO 与三个 bucket。
- 百度 OCR。
- 可扩展模型池,以及总调度、空间理解和生图路由。
- 本地或局域网 GPU Worker。
- Langfuse 与 Sentry。
## 分类与门禁
工作流必备分类为:
1. 基础运行:PostgreSQL、Redis、配置加密。
2. 文件存储:MinIO 地址、服务账号和三个 bucket。
3. AI 模型:至少一个大语言模型、空间理解候选和生图候选,并完成路由选择。
必备分类既要填写完整,也要通过对应连接测试。未完成时,上传和工作流命令接口返回 `SETTINGS_INCOMPLETE`,前端“开始设计”按钮保持锁定。
百度 OCR、GPU、Langfuse 和 Sentry 是条件必填:关闭时不影响工作流;开启后应填写完整并测试。
## 模型池与路由
模型池分为大语言模型和多模态模型。每个模型条目独立保存以下内容:
- 显示名称与平台模型 ID。
- API 来源、Base URL 和 API Key。
- 空间理解、图像生成、局部编辑等能力标签。
- 图像调用协议、模型专属参数预设及高级接口路径。
同一个聚合账号可以添加多个模型,也可以把不同平台的模型放进同一个池。聚合引擎 AIGC 已内置 GPT Image 2、Nano Banana Pro、即梦 5.0 Pro 三个接入预设,选择后会自动填写模型 ID、`/v1/media/generate``/v1/media/status` 及各模型不同的参数名。
每个模型提供两种测试:
- “验证连接”只检查地址、API Key、模型列表、协议和路径,不生图、不扣费。部分聚合平台不会在 `/v1/models` 中公开媒体模型 ID,此时不能据此判定模型不可用。
- “试生成”会在用户确认后真实生成一张低成本测试图并消耗一次调用额度。只有结果文件可以实际下载、通过图片格式与有效字节校验后才算成功,设置页会显示图片缩略图;成功结果会自动将该模型标记为已通过测试。
总调度模型必须由用户从大语言模型池中指定。空间理解和生图各自支持两种方式:
- 总调度自动选择:只在已启用且测试通过的能力候选中路由。
- 用户手动指定:固定使用选中的多模态模型。
旧版统一 API 配置在第一次读取时会自动迁移成三个模型池条目。出于安全考虑,迁移后的模型必须逐个重新测试。
自定义平台的 Base URL 仍需从其开发者文档复制;三个内置聚合引擎预设固定使用文档提供的 `https://api.lk888.ai`
## 为什么本地 GPU 仍然需要 Worker
网页和 Docker 容器不能安全、稳定地直接执行宿主机 CUDA。把 GPU 推理拆成 Worker 可以隔离模型依赖、显存崩溃和长任务,并允许未来迁移到独立 GPU 服务器。
设置页提供三种自然语意选项:
- 暂不使用:全部调用云 API。
- 本机 GPU Worker:无需输入地址。原生运行 API 时自动访问 `127.0.0.1:8100`Docker 中自动访问 `host.docker.internal:8100`
- 局域网 GPU 服务器:仅此模式需要填写内网地址。
GPU 主要用于户型分割、深度估计、几何校验和可选本地视觉模型。云端生图 API 本身不需要本地 GPU。
## 密钥安全
- 运行期配置加密写入 `.runtime/settings.enc`
- 主密钥保存在 `.runtime/.master-key` 或 Docker 的 `settings-data` 私有卷。
- 密钥接口只返回是否已配置;保存成功后浏览器会清空输入值。
- 测试请求由后端发出,密钥不会直接交给第三方网页脚本。
- 当前版本应部署在可信内网;正式开放公网前还需给设置接口增加所有者登录和权限控制。