From 89b292dc12f3b006d9eed44098be82ec129f0f92 Mon Sep 17 00:00:00 2001 From: Yige Date: Tue, 28 Jul 2026 09:47:26 +0800 Subject: [PATCH] fix: correct MiMo V2.5 Pro multimodal capability (#69) --- __tests__/validate.test.mjs | 23 +++++++++++++++++++++++ compute/model-specs/xiaomi.json | 8 +++----- compute/providers/xiaomi.json | 3 +-- manifest.json | 4 ++-- 4 files changed, 29 insertions(+), 9 deletions(-) diff --git a/__tests__/validate.test.mjs b/__tests__/validate.test.mjs index c69957f..8581604 100644 --- a/__tests__/validate.test.mjs +++ b/__tests__/validate.test.mjs @@ -207,6 +207,29 @@ describe('真实数据全量校验', () => { assert.ok(specs[0].spec.capabilities.includes('asr')) }) + it('MiMo V2.5 仅非 Pro 型号应声明多模态能力', () => { + const provider = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', 'xiaomi.json'), 'utf8')) + const specFile = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', 'xiaomi.json'), 'utf8')) + const specFor = (modelId) => specFile.specs.find((item) => item.id === modelId) + + const mimoV25 = specFor('mimo-v2.5') + assert.ok(mimoV25, 'model-specs 缺少 mimo-v2.5') + assert.ok(mimoV25.spec.capabilities.includes('vision')) + assert.ok(mimoV25.spec.serviceType.includes('vision')) + + for (const modelId of ['mimo-v2.5-pro', 'mimo-v2-pro']) { + const modelSpec = specFor(modelId) + assert.ok(modelSpec, `model-specs 缺少 ${modelId}`) + assert.equal(modelSpec.spec.capabilities.includes('vision'), false) + assert.equal(modelSpec.spec.serviceType.includes('vision'), false) + } + + const pro = provider.models.find((item) => item.modelName === 'mimo-v2.5-pro') + assert.ok(pro, 'provider 缺少 mimo-v2.5-pro') + assert.equal(pro.capabilities.includes('vision'), false) + assert.equal(pro.serviceType.includes('vision'), false) + }) + it('所有 Provider 应按供应商归属计价,模型来源不覆盖供应商币种', () => { const expectedCurrencies = { anthropic: 'USD', diff --git a/compute/model-specs/xiaomi.json b/compute/model-specs/xiaomi.json index 73b212e..877f4e9 100644 --- a/compute/model-specs/xiaomi.json +++ b/compute/model-specs/xiaomi.json @@ -18,8 +18,7 @@ "chat", "reasoning", "tool_use", - "code", - "vision" + "code" ], "serviceType": [ "chat", @@ -27,7 +26,7 @@ ], "defaultTemperature": 1, "supportsReasoning": true, - "description": "小米 MiMo 旗舰推理模型,支持文本/图像/工具调用" + "description": "小米 MiMo 旗舰推理模型,支持文本/工具调用" } }, { @@ -78,8 +77,7 @@ "chat", "reasoning", "tool_use", - "code", - "vision" + "code" ], "serviceType": [ "chat", diff --git a/compute/providers/xiaomi.json b/compute/providers/xiaomi.json index b36a223..bae4bac 100644 --- a/compute/providers/xiaomi.json +++ b/compute/providers/xiaomi.json @@ -31,8 +31,7 @@ "chat", "reasoning", "tool_use", - "code", - "vision" + "code" ], "extra": {} }, diff --git a/manifest.json b/manifest.json index 848af83..9300af9 100644 --- a/manifest.json +++ b/manifest.json @@ -1,6 +1,6 @@ { "version": "1.0.0", - "presetDataVersion": 82, - "updatedAt": "2026-07-25", + "presetDataVersion": 83, + "updatedAt": "2026-07-28", "description": "DesireCore 官方配置中心" }