# 数字人脚本 LLM 模型可选 设计 日期:2026-06-18 分支:`feat/comfy-cloud-adapter` 状态:已通过 brainstorming,待用户复审 ## 背景 数字人脚本生成的 LLM 模型现在写死在 Pixelle config(`llm.model = gpt-5.5`),用户无法在 数字人页面选用别的模型。本功能加一个「脚本模型(可选)」下拉,让用户自选生成脚本的 LLM。 生图模型已可通过现有「图片工作流」下拉选择,不在本范围。 ## 已确认决策 1. 只做脚本 LLM 模型可选;生图模型已由「图片工作流」下拉覆盖,不动。 2. 下拉只列文本/对话模型(过滤掉生图/视频模型,避免选错导致生成失败)。 3. 默认空 = 用 Pixelle config 的默认模型(`deepseek-v4-flash`),向后兼容。实现时把 Pixelle `config.yaml` 的 `llm.model` 设为 `deepseek-v4-flash`。 4. 三层改动(前端选择器 + 后端转发 + Pixelle 传 model)。 ## 集成点(调查结论) - Pixelle `llm_service.py`:`llm(prompt=, model=...)` **已支持按调用传 model 覆盖** (优先级:参数 > config)。 - Pixelle `asset_based.py` 脚本生成调用 `self.core.llm(prompt=, response_type=VideoScript, ...)` **当前未传 model** → 需补 `model=context.request.get("llm_model")`。 - BoosAPI `digital_human.rs` `pixelle_request_body` 转发字段(媒体/tts 工作流等), **未转发 llm_model** → 需补。 - 前端模型列表:`api.getModelsMarketplace()`(`/api/models/marketplace`)已有,可作下拉数据源。 - `/v1/models` 需鉴权(401 直取不行),故用 marketplace 接口。 ## 三层改动设计 ### 层1 前端 `src/web/pages/DigitalHuman.tsx` - 加 state `llmModel`(默认空)+ draft 持久化。 - 加载时调 `api.getModelsMarketplace()` 取模型,过滤掉生图/视频模型(名称含 image/video/dall/flux/sd/wan/seedance/kling/banana 等,或按 marketplace 项的类型字段), 得文本模型列表 state `llmModels`。 - 加「脚本模型(可选)」`