fix(core): add missing Token Plan models (qwen3.7-plus, glm-5.2, kimi-k2.7-code) (#5505)

The Token Plan preset was missing three models that are available on the
ModelStudio Token Plan endpoint: qwen3.7-plus, glm-5.2, and kimi-k2.7-code.
Users who had these models installed would see a "Built-in Provider Update"
prompt offering to remove them.

- Add qwen3.7-plus (1M context, thinking, image+video) — already existed in
  the Coding Plan preset but was missing from Token Plan
- Add glm-5.2 (1M context, thinking) — already existed in the Z.AI preset
  but was missing from both Alibaba plan presets
- Add kimi-k2.7-code (256K context, always-on thinking, image+video) —
  a new Kimi coding model not present in any preset

Also widen the modalityDefaults pattern for Kimi from /^kimi-k2\.5/ to
/^kimi-k2\./ since k2.5, k2.6, and k2.7 all support image+video input
per the Kimi documentation.
This commit is contained in:
胡玮文 2026-06-21 02:24:02 +08:00 committed by GitHub
parent 45c15db56f
commit 0dc76bc7d4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 23 additions and 1 deletions

View file

@ -77,7 +77,7 @@ const MODALITY_PATTERNS: Array<[RegExp, InputModalities]> = [
// -------------------
// Moonshot / Kimi
// -------------------
[/^kimi-k2\.5/, { image: true, video: true }],
[/^kimi-k2\./, { image: true, video: true }],
[/^kimi-/, {}],
// -------------------

View file

@ -31,14 +31,17 @@ describe('token plan provider', () => {
});
expect(template.map((model) => model.id)).toEqual([
'qwen3.7-plus',
'qwen3.6-plus',
'qwen3.7-max',
'qwen3.6-flash',
'deepseek-v4-pro',
'deepseek-v4-flash',
'deepseek-v3.2',
'kimi-k2.7-code',
'kimi-k2.6',
'kimi-k2.5',
'glm-5.2',
'glm-5.1',
'glm-5',
'MiniMax-M2.5',

View file

@ -16,6 +16,12 @@ export const TOKEN_PLAN_BASE_URL =
'https://token-plan.cn-beijing.maas.aliyuncs.com/compatible-mode/v1';
const TOKEN_PLAN_MODELS: ModelSpec[] = [
{
id: 'qwen3.7-plus',
contextWindowSize: 1000000,
enableThinking: true,
modalities: { image: true, video: true },
},
{
id: 'qwen3.6-plus',
contextWindowSize: 1000000,
@ -31,6 +37,12 @@ const TOKEN_PLAN_MODELS: ModelSpec[] = [
{ id: 'deepseek-v4-pro', contextWindowSize: 1000000 },
{ id: 'deepseek-v4-flash', contextWindowSize: 1000000 },
{ id: 'deepseek-v3.2', contextWindowSize: 131072 },
{
id: 'kimi-k2.7-code',
contextWindowSize: 262144,
enableThinking: true,
modalities: { image: true, video: true },
},
{
id: 'kimi-k2.6',
contextWindowSize: 262144,
@ -42,6 +54,7 @@ const TOKEN_PLAN_MODELS: ModelSpec[] = [
enableThinking: true,
modalities: { image: true, video: true },
},
{ id: 'glm-5.2', contextWindowSize: 1000000, enableThinking: true },
{ id: 'glm-5.1', contextWindowSize: 202752, enableThinking: true },
{ id: 'glm-5', contextWindowSize: 202752, enableThinking: true },
{ id: 'MiniMax-M2.5', contextWindowSize: 196608 },

View file

@ -14,14 +14,17 @@ describe('subscription plan definitions', () => {
const codingPlan = getSubscriptionPlanConfig('coding');
expect(tokenPlan.template.map((model) => model.id)).toEqual([
'qwen3.7-plus',
'qwen3.6-plus',
'qwen3.7-max',
'qwen3.6-flash',
'deepseek-v4-pro',
'deepseek-v4-flash',
'deepseek-v3.2',
'kimi-k2.7-code',
'kimi-k2.6',
'kimi-k2.5',
'glm-5.2',
'glm-5.1',
'glm-5',
'MiniMax-M2.5',

View file

@ -108,14 +108,17 @@ const ALIBABA_SUBSCRIPTION_MODELS = [
] as const satisfies readonly SubscriptionPlanModelSpec[];
const BAILIAN_TOKEN_PLAN_MODELS = [
{ id: 'qwen3.7-plus', contextWindowSize: 1000000, enableThinking: true },
{ id: 'qwen3.6-plus', contextWindowSize: 1000000, enableThinking: true },
{ id: 'qwen3.7-max', contextWindowSize: 1000000, enableThinking: true },
{ id: 'qwen3.6-flash', contextWindowSize: 1000000, enableThinking: true },
{ id: 'deepseek-v4-pro', contextWindowSize: 1000000 },
{ id: 'deepseek-v4-flash', contextWindowSize: 1000000 },
{ id: 'deepseek-v3.2', contextWindowSize: 131072 },
{ id: 'kimi-k2.7-code', contextWindowSize: 262144, enableThinking: true },
{ id: 'kimi-k2.6', contextWindowSize: 262144, enableThinking: true },
{ id: 'kimi-k2.5', contextWindowSize: 262144, enableThinking: true },
{ id: 'glm-5.2', contextWindowSize: 1000000, enableThinking: true },
{ id: 'glm-5.1', contextWindowSize: 202752, enableThinking: true },
{ id: 'glm-5', contextWindowSize: 202752, enableThinking: true },
{ id: 'MiniMax-M2.5', contextWindowSize: 196608 },