From 4fbb15f3d0cfcbe390ae363a539432a8a92d06b9 Mon Sep 17 00:00:00 2001 From: sp mac bookpro 2605 Date: Wed, 3 Jun 2026 01:42:54 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0Agent=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B=E9=85=8D=E7=BD=AE=E4=BD=BF=E7=94=A8model=5Fid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - AiModel接口新增model_id字段 - ModelCheckboxDropdown使用model_id作为checkbox的value - 保存时将model_id数组用逗号拼接成字符串提交 - 修改normalize函数,使用','作为分隔符(不带空格) --- src/api.ts | 1 + src/pages/AgentEditor/components/CapabilitySettings.tsx | 2 +- src/pages/AgentEditor/components/ModelCheckboxDropdown.tsx | 2 +- src/pages/AgentEditor/hooks/useAgentEditor.ts | 5 ++++- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/api.ts b/src/api.ts index 3b2fd57..557792a 100644 --- a/src/api.ts +++ b/src/api.ts @@ -119,6 +119,7 @@ export interface ChatHistoryResp { } export interface AiModel { + model_id: string; model_name: string; icon: string; model_ratio: number; diff --git a/src/pages/AgentEditor/components/CapabilitySettings.tsx b/src/pages/AgentEditor/components/CapabilitySettings.tsx index 4be65aa..cc24fc4 100644 --- a/src/pages/AgentEditor/components/CapabilitySettings.tsx +++ b/src/pages/AgentEditor/components/CapabilitySettings.tsx @@ -153,7 +153,7 @@ export default function CapabilitySettings({ className="mb-0" getValueProps={(value) => ({ value: parseModelSelections(value) })} normalize={(value) => - Array.isArray(value) ? value.map((item) => String(item).trim()).filter(Boolean).join(', ') : '' + Array.isArray(value) ? value.map((item) => String(item).trim()).filter(Boolean).join(',') : '' } > diff --git a/src/pages/AgentEditor/components/ModelCheckboxDropdown.tsx b/src/pages/AgentEditor/components/ModelCheckboxDropdown.tsx index b911757..7b0a320 100644 --- a/src/pages/AgentEditor/components/ModelCheckboxDropdown.tsx +++ b/src/pages/AgentEditor/components/ModelCheckboxDropdown.tsx @@ -30,7 +30,7 @@ export default function ModelCheckboxDropdown({ value = [], onChange, models }: const inputPrice = 2 * m.model_ratio; const outputPrice = inputPrice * m.completion_ratio; return ( - +
{ const formValue = (values as any)[key]; const originalValue = (agent as any)?.[key]; - if (formValue !== originalValue) { + // 特殊处理 model 字段:如果是数组,用逗号拼接成字符串 + if (key === 'model' && Array.isArray(formValue)) { + changedFields[key] = formValue.join(','); + } else if (formValue !== originalValue) { changedFields[key] = formValue; } });