diff --git a/packages/core/src/providers/__tests__/presets/alibaba-token-plan.test.ts b/packages/core/src/providers/__tests__/presets/alibaba-token-plan.test.ts index 6472f5b03d7..298f504460e 100644 --- a/packages/core/src/providers/__tests__/presets/alibaba-token-plan.test.ts +++ b/packages/core/src/providers/__tests__/presets/alibaba-token-plan.test.ts @@ -52,8 +52,22 @@ describe('token plan provider', () => { ).toEqual({ extra_body: { enable_thinking: true }, contextWindowSize: 1000000, - modalities: { image: true, video: true }, }); + expect( + template.find((model) => model.id === 'kimi-k2.6')?.generationConfig, + ).toEqual({ + extra_body: { enable_thinking: true }, + contextWindowSize: 262144, + }); + // Plus/2.5 variants are genuinely multimodal and stay that way. + expect( + template.find((model) => model.id === 'qwen3.6-plus')?.generationConfig + ?.modalities, + ).toEqual({ image: true, video: true }); + expect( + template.find((model) => model.id === 'kimi-k2.5')?.generationConfig + ?.modalities, + ).toEqual({ image: true, video: true }); expect(plan.providerId).toBe('token-plan'); expect(plan.authType).toBe(AuthType.USE_OPENAI); expect(plan.env).toEqual({ [TOKEN_PLAN_ENV_KEY]: 'sk-token' }); diff --git a/packages/core/src/providers/__tests__/presets/idealab.test.ts b/packages/core/src/providers/__tests__/presets/idealab.test.ts index 5151a1b9b45..6dae252198e 100644 --- a/packages/core/src/providers/__tests__/presets/idealab.test.ts +++ b/packages/core/src/providers/__tests__/presets/idealab.test.ts @@ -63,6 +63,20 @@ describe('idealabProvider', () => { }); }); + it('does not mark kimi-k2.6 as multimodal', () => { + const plan = buildInstallPlan(idealabProvider, { + baseUrl: 'https://idealab.alibaba-inc.com/api/openai/v1', + apiKey: 'sk-idealab', + modelIds: ['bailian/kimi-k2.6'], + }); + + const models = plan.modelProviders?.[0]?.models; + expect(models?.[0]?.generationConfig).toEqual({ + extra_body: { enable_thinking: true }, + contextWindowSize: 262144, + }); + }); + it('falls back gracefully for unknown model IDs', () => { const plan = buildInstallPlan(idealabProvider, { baseUrl: 'https://idealab.alibaba-inc.com/api/openai/v1', diff --git a/packages/core/src/providers/presets/alibaba-token-plan.ts b/packages/core/src/providers/presets/alibaba-token-plan.ts index 4f798634af8..82b47e6bdcf 100644 --- a/packages/core/src/providers/presets/alibaba-token-plan.ts +++ b/packages/core/src/providers/presets/alibaba-token-plan.ts @@ -27,7 +27,6 @@ const TOKEN_PLAN_MODELS: ModelSpec[] = [ id: 'qwen3.6-flash', contextWindowSize: 1000000, enableThinking: true, - modalities: { image: true, video: true }, }, { id: 'deepseek-v4-pro', contextWindowSize: 1000000 }, { id: 'deepseek-v4-flash', contextWindowSize: 1000000 }, @@ -36,7 +35,6 @@ const TOKEN_PLAN_MODELS: ModelSpec[] = [ id: 'kimi-k2.6', contextWindowSize: 262144, enableThinking: true, - modalities: { image: true, video: true }, }, { id: 'kimi-k2.5', diff --git a/packages/core/src/providers/presets/idealab.ts b/packages/core/src/providers/presets/idealab.ts index aeabd1ab6a5..df310f6a97b 100644 --- a/packages/core/src/providers/presets/idealab.ts +++ b/packages/core/src/providers/presets/idealab.ts @@ -36,7 +36,6 @@ export const idealabProvider: ProviderConfig = { id: 'bailian/kimi-k2.6', contextWindowSize: 262144, enableThinking: true, - modalities: { image: true, video: true }, }, ], modelsEditable: true,