[Feature]: 模型服务表单缺少「图像生成」分类入口 —— 后端已支持 default_models.image_generation
維護者通常 1 天內回覆
評估
- 難度
- 2/5
- 預估耗時
- 半天
- 新手友好度
- 74/100
- Issue 類型
- 功能
- 描述清晰度
- 描述清楚
- 活躍度
- 活躍
- 技術堆疊
- react, rust, typescript
研究方向
從 src/web-ui/src/app/scenes/settings/pages/ai/ModelSettingsPage.tsx 開始,閱讀 categoryOptions 清單以及 issue 中提到的類別回退邏輯。追蹤所選類別如何影響預設模型選項,接著檢查 issue 中 Rust 設定型別和驗證相關的參照。完成標準是:表單提供影像生成功能,其模型可以選作該預設欄位的模型,而且儲存操作通過啟動驗證。
由索引模型根據 Issue 內容生成。
描述
Problem / opportunity
桌面版 1.0.3(Windows)的「设置 → AI 与模型 → 模型服务」中,新增/编辑模型时的「模型分类」下拉仅有三个选项:general_chat(文本生成)、multimodal(多模态)、speech_recognition(语音识别)。
因此用户无法在 UI 中创建「图像生成」类模型,也无法为 ai.default_models.image_generation 槽位指派模型——全新配置中该槽位始终为 null,UI 的「默认模型 → 扩展能力模型配置」里对应槽位无法生效。
而配置层(Rust 后端)其实已经为图像生成预留了完整支持:
ModelCategory::ImageGeneration与ModelCapability::ImageGeneration枚举均已定义(src/crates/contracts/config-contracts/src/types.rsL780-821)DefaultModelsConfig.image_generation槽位存在(同文件 L837)- 配置规范化对该槽位执行
reconcile_slot(..., ModelCapability::ImageGeneration, MissingSlotPolicy::Preserve)(src/crates/contracts/config-contracts/src/normalization.rsL418-423) - 全局校验已包含
default_models.image_generation的能力校验,要求指向 enabled 且具备ImageGeneration能力的模型(src/crates/assembly/core/src/service/config/providers.rsL296-306) - 分类到能力的映射已就绪:
ModelCategory::ImageGeneration => vec
Proposed behavior
希望在「模型服务」的模型表单「模型分类」下拉中增加「图像生成」(image_generation)选项,使「默认模型 → 扩展能力模型配置」中的「图像生成」槽位可正常指派;或在官方文档中说明图像生成模型的受支持配置方式。
Product surface
Desktop app · AI provider / model adapter · Agent runtime / core
Details, examples, or constraints
- 环境核对:OpenBitFun Desktop 1.0.3(Windows);源码核对基于 main 分支 commit
18aa544。 - 前端证据:
src/web-ui/src/app/scenes/settings/pages/ai/ModelSettingsPage.tsxL499-506,categoryOptions硬编码仅含general_chat/multimodal/speech_recognition三项;同文件 L833 的分类回落逻辑也只产生这两类。 - 已安装 1.0.3 的前端产物中
ModelSettingsPagechunk 内image_generation字符串出现 0 次,与最新源码一致(非回归,属功能入口未开放)。 - 验收标准:模型表单可选「图像生成」分类 → 该模型出现在「默认模型 → 扩展能力模型配置 → 图像生成」可选项中 → 保存后
app.json的ai.default_models.image_generation正确写入且通过启动校验。 - 附带疑问:手动在
app.json的ai.models[]中添加"category": "image_generation"、"capabilities": ["image_generation"]的条目并指派default_models.image_generation,是否为受支持的用法?若可行,建议文档补充说明。
- 主要語言
- Rust
- 星號
- 2.3k
- 分支
- 236
- 平均合併
- 12 小時 24 分鐘
- 30 天內合併 PR
- 370
環境準備
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
GCWing/OpenBitFun 的其他 Issue
-
難度 5/5 一週以上 新手友好度 35/100
GCWing/OpenBitFun#3784 ·
維護者通常 1 天內回覆
-
難度 5/5 一週以上 新手友好度 25/100
GCWing/OpenBitFun#3782 ·
維護者通常 1 天內回覆
-
難度 3/5 1-2 天 新手友好度 52/100
GCWing/OpenBitFun#3777 ·
維護者通常 1 天內回覆
-
[Bug]: v1.0.9 GLIBC_2.43 not found可能已有人在做 @kev1n77 於 1 天前認領。 未關閉
GCWing/OpenBitFun#3767 · 已指派 1 人 ·
維護者通常 1 天內回覆
-
難度 4/5 3-5 天 新手友好度 48/100
GCWing/OpenBitFun#3761 ·
維護者通常 1 天內回覆
查看 GCWing/OpenBitFun 的全部 Issue
相似的 Issue
-
bug priority: low
難度 2/5 1-3 小時 新手友好度 78/100
storytold/photocraft#12183 · 1 則留言 ·
維護者通常 2 天內回覆
-
area:render needs-triage
難度 2/5 1-3 小時 新手友好度 78/100
bherbruck/solvecraft#13138 ·
-
testing
難度 2/5 1-3 小時 新手友好度 65/100
-
難度 2/5 1-3 小時 新手友好度 86/100
ratatui/ratatui-textarea#39 ·
-
bug
難度 2/5 1-3 小時 新手友好度 68/100
transit-audio/transit#369 ·