fix(model-select): 下拉值改llm.id显示llm.name+start_agent解析id→name
This commit is contained in:
parent
077de71d78
commit
496a0ca4c8
@ -25,6 +25,16 @@ if action == 'start_agent':
|
|||||||
model_id = (params_kw or {}).get('model_id', '')
|
model_id = (params_kw or {}).get('model_id', '')
|
||||||
role = (params_kw or {}).get('role', 'develop')
|
role = (params_kw or {}).get('role', 'develop')
|
||||||
|
|
||||||
|
# model_id 兼容 llm.id 与 llm.model_id 两种取值(下拉改为传 llm.id)→
|
||||||
|
# 统一解析为 llm.name 落库/传给引擎,保证同名不同供应商不漂移。
|
||||||
|
if model_id:
|
||||||
|
_r = await sor.sqlExe(
|
||||||
|
"SELECT name FROM llm WHERE status='active' AND (id=${m}$ OR model_id=${m}$) LIMIT 1",
|
||||||
|
{"m": model_id})
|
||||||
|
await sor.sqlExe("COMMIT", {})
|
||||||
|
if _r:
|
||||||
|
model_id = getattr(_r[0], 'name', '') or model_id
|
||||||
|
|
||||||
# Ensure agent config exists
|
# Ensure agent config exists
|
||||||
existing = await sor.sqlExe(
|
existing = await sor.sqlExe(
|
||||||
"SELECT id FROM pipeline_project_agents WHERE project_id=${pid}$ AND role_name=${role}$",
|
"SELECT id FROM pipeline_project_agents WHERE project_id=${pid}$ AND role_name=${role}$",
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
# cockpit_model_options.dspy - Returns active models with capabilities for dropdown
|
# cockpit_model_options.dspy - Returns active models with capabilities for dropdown
|
||||||
# Used by cockpit model selector
|
# Used by cockpit model selector
|
||||||
|
# 下拉值 = llm.id(唯一主键);显示 = llm.name。不同供应商可有相同 model_id
|
||||||
|
# (API 模型名),只有 llm.id 唯一,避免同名供应商在下拉里被合并/解析漂移。
|
||||||
# org_id 多租户隔离:非系统级机构只看到本机构的模型(不含系统级兜底)
|
# org_id 多租户隔离:非系统级机构只看到本机构的模型(不含系统级兜底)
|
||||||
# selected 标记 = 当前项目的已设模型(sd_projects.default_model,产线通用、跨会话持久);
|
# selected 标记 = 当前项目的已设模型(sd_projects.default_model,产线通用、跨会话持久);
|
||||||
# 项目未设模型时回退个人全局选择(default_llm_id)。前端 UiCode 按 selected 恢复选中项,
|
# 项目未设模型时回退个人全局选择(default_llm_id)。前端 UiCode 按 selected 恢复选中项,
|
||||||
@ -48,7 +50,8 @@ for r in recs:
|
|||||||
'value': r.id,
|
'value': r.id,
|
||||||
'text': f"{r.name} ({r.provider})",
|
'text': f"{r.name} ({r.provider})",
|
||||||
'provider': 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',
|
'capabilities': r.capabilities or 'text',
|
||||||
'selected': (r.name == project_model) if project_model else (r.id == current_llm_id),
|
'selected': (r.name == project_model) if project_model else (r.id == current_llm_id),
|
||||||
})
|
})
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user