Files
infinite-canvas/docs/system-settings.md
T
HouYunFei 6f1e0d347b refactor(config): 将AI配置逻辑迁移至统一的状态管理store
- 移除独立的ai-config.ts文件,将其功能整合到use-config-store
- 更新所有组件导入路径从 "@/lib/ai-config" 到 "@/stores/use-config-store"
- 实现云端渠道和本地直连两种配置模式的支持
- 添加模型渠道配置管理和API请求代理转发功能
- 统一配置验证逻辑和有效配置获取方法
- 更新组件中使用的配置状态钩子和API调用方式
2026-05-21 13:36:30 +08:00

2.5 KiB

系统配置数据结构

系统配置保存在 settings 表中,目前只使用两行:

key 说明
public 公开配置,前端可以读取
private 私有配置,只给后端和管理员使用

public.value

{
  "modelChannel": {
    "availableModels": ["gpt-5.5", "gpt-image-2"],
    "defaultModel": "gpt-image-2",
    "defaultImageModel": "gpt-image-2",
    "defaultTextModel": "gpt-5.5",
    "systemPrompt": "",
    "allowCustomChannel": false
  }
}
字段 类型 说明
modelChannel object 模型渠道公开配置组

modelChannel 字段:

字段 类型 说明
availableModels string[] 系统可用模型,由管理员手动选择;页面下拉选项可来自私有渠道模型
defaultModel string 默认模型,从 availableModels 中选择
defaultImageModel string 默认图片模型,从 availableModels 中选择
defaultTextModel string 默认文本模型,从 availableModels 中选择
systemPrompt string 系统提示词
allowCustomChannel boolean 是否允许用户在配置弹窗中切换为本地直连渠道

用户侧请求模式:

模式 说明
云端渠道 使用后端 /api/ai/* 代理接口,请求会按模型名匹配 private.value.channels 中的可用渠道
本地直连 allowCustomChanneltrue 时可选,用户在浏览器本地配置 baseUrlapiKey 和模型列表后直接请求模型接口

private.value

{
  "channels": [
    {
      "protocol": "openai",
      "name": "默认渠道",
      "baseUrl": "https://api.example.com",
      "apiKey": "sk-xxx",
      "models": ["gpt-5.5", "gpt-image-2"],
      "weight": 1,
      "enabled": true,
      "remark": ""
    }
  ]
}
字段 类型 说明
channels object[] 模型渠道列表

channels 每项字段:

字段 类型 说明
protocol string 协议,当前为 openai
name string 渠道名称
baseUrl string OpenAI 兼容接口地址
apiKey string 渠道密钥
models string[] 该渠道可用模型
weight number 渠道权重;同一模型有多个可用渠道时按权重随机
enabled boolean 是否启用
remark string 备注

后端调用模型时,会从已启用、已配置 baseUrlapiKey、且 models 包含目标模型的渠道中选择一个。