From 337a4c6f909237c81aafe4aa7e560ea132b7c568 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Sun, 30 Aug 2026 09:49:38 +0800 Subject: [PATCH] =?UTF-8?q?fix(model-select):=20=E4=B8=8B=E6=8B=89?= =?UTF-8?q?=E5=80=BC=E6=94=B9llm.id=E6=98=BE=E7=A4=BAllm.name=E2=80=94?= =?UTF-8?q?=E2=80=94=E5=90=8C=E5=90=8D=E4=B8=8D=E5=90=8C=E4=BE=9B=E5=BA=94?= =?UTF-8?q?=E5=95=86=E4=B8=8D=E5=86=8D=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- wwwroot/api/agent_model_options.dspy | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/wwwroot/api/agent_model_options.dspy b/wwwroot/api/agent_model_options.dspy index f0e1aab..ee5c357 100644 --- a/wwwroot/api/agent_model_options.dspy +++ b/wwwroot/api/agent_model_options.dspy @@ -1,6 +1,10 @@ # agent_model_options.dspy - 返回 active 模型列表(供 AgentIO 模型选择下拉) # llm 表是 pipeline 库的通用配置,产线无关 # org_id 多租户隔离:非系统级机构只看到本机构的模型(不含系统级兜底) +# 下拉值 = llm.id(唯一主键);显示 = llm.name。不同供应商可有相同 model_id +# (API 模型名),但 name 必须唯一,用 id 做值才能区分供应商、避免解析漂移。 +# 前端 agent_input.js 读 valueField:'model_id' / textField:'model_id_text', +# 故这里 model_id 字段放 llm.id、model_id_text 放 llm.name(字段名是历史遗留)。 # selected 标记 = 当前项目的已设模型(sd_projects.default_model,产线通用、跨会话持久); # 项目未设模型时回退个人全局选择(default_llm_id)。前端 UiCode 按 selected 恢复选中项, # 不再每次重建都回退第一项。 @@ -48,7 +52,8 @@ for r in recs: 'value': r.id, 'text': f"{r.name} ({r.provider})", 'provider': r.provider, - 'model_id': r.model_id, + 'model_id': r.id, # 下拉值:llm.id(唯一,区分同名不同供应商) + 'model_id_text': r.name, # 下拉显示:llm.name 'capabilities': r.capabilities or 'text', 'selected': (r.name == project_model) if project_model else (r.id == current_llm_id), })