feat(compute): update current model catalog (#106)

* feat(compute): update current model catalog

* feat(compute): add MiMo V2.6 model profiles
This commit is contained in:
2026-09-25 23:33:23 +08:00
committed by GitHub
parent b4ff98c38c
commit b64ee77342
18 changed files with 1358 additions and 68 deletions

View File

@@ -105,7 +105,7 @@ describe('真实数据全量校验', () => {
if (spec.routing) routed.push(spec) if (spec.routing) routed.push(spec)
} }
} }
assert.equal(routed.length, 48) assert.equal(routed.length, 58)
assert.equal(routed.every((spec) => spec.routing.reasoning.supportedModes.includes(spec.routing.reasoning.defaultMode)), true) assert.equal(routed.every((spec) => spec.routing.reasoning.supportedModes.includes(spec.routing.reasoning.defaultMode)), true)
assert.equal(routed.every((spec) => Array.isArray(spec.spec.capabilities)), true) assert.equal(routed.every((spec) => Array.isArray(spec.spec.capabilities)), true)
}) })
@@ -151,11 +151,14 @@ describe('真实数据全量校验', () => {
.map((model) => model.modelName) .map((model) => model.modelName)
assert.deepEqual(enabled(anthropic), [ assert.deepEqual(enabled(anthropic), [
'claude-opus-5-5',
'claude-fable-5-1', 'claude-fable-5-1',
'claude-opus-5', 'claude-opus-5',
'claude-sonnet-5', 'claude-sonnet-5',
]) ])
assert.deepEqual(enabled(openai), [ assert.deepEqual(enabled(openai), [
'gpt-6-sol',
'gpt-6-luna',
'gpt-6-astra', 'gpt-6-astra',
'gpt-5.5', 'gpt-5.5',
'gpt-5.5-pro', 'gpt-5.5-pro',
@@ -515,32 +518,148 @@ describe('真实数据全量校验', () => {
} }
}) })
it('Qwen3.8 Max Preview 应在 Token Plan 中提供完整的推理与视觉规格', () => { it('MiMo V2.6 三款官方 API 模型应保持全模态规格与接入差异', () => {
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 cases = [
['mimo-v2.6-pro', 3, 6, 0.025, 'flagship'],
['mimo-v2.6-flash', 1, 2, 0.02, 'balanced'],
['mimo-v2.6-pro-ultraspeed', 30, 60, 0.25, null],
]
for (const [id, inputPrice, outputPrice, cachedInputPrice, tier] of cases) {
const models = provider.models.filter((item) => item.modelName === id)
const specs = specFile.specs.filter((item) => item.id === id)
assert.equal(models.length, 1, `Provider 缺少或重复 ${id}`)
assert.equal(specs.length, 1, `model-specs 缺少或重复 ${id}`)
const model = models[0]
const modelSpec = specs[0]
assert.deepEqual(modelSpec.match.exact, [id])
assert.equal(model.contextWindow, 1000000)
assert.equal(model.maxOutputTokens, 131072)
assert.equal(modelSpec.spec.contextWindow, model.contextWindow)
assert.equal(modelSpec.spec.maxOutputTokens, model.maxOutputTokens)
assert.equal(model.inputPrice, inputPrice)
assert.equal(model.outputPrice, outputPrice)
assert.equal(model.extra.cachedInputPrice, cachedInputPrice)
for (const capability of ['vision', 'audio_understanding', 'video_understanding', 'tool_use']) {
assert.ok(model.capabilities.includes(capability), `${id} 缺少 ${capability}`)
assert.ok(modelSpec.spec.capabilities.includes(capability), `${id} 规格缺少 ${capability}`)
}
assert.equal(modelSpec.spec.extra.thinkingDefault, true)
assert.equal(modelSpec.routing?.tier ?? null, tier)
}
const previous = provider.models.find((item) => item.modelName === 'mimo-v2.5-pro')
assert.ok(previous, '尚未到官方下线日,应保留 mimo-v2.5-pro')
assert.equal(previous.maxOutputTokens, 131072)
})
it('Token Plan 应使用 Qwen3.8 正式版 ID 并淘汰 Preview 预置', () => {
const tokenPlan = JSON.parse(readFileSync(join(ROOT, 'compute', 'coding-plans', 'dashscope-token-plan.json'), 'utf8')) const tokenPlan = JSON.parse(readFileSync(join(ROOT, 'compute', 'coding-plans', 'dashscope-token-plan.json'), 'utf8'))
const apiProvider = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', 'dashscope.json'), 'utf8'))
const specFile = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', 'qwen.json'), 'utf8')) const specFile = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', 'qwen.json'), 'utf8'))
const modelId = 'qwen3.8-max-preview' assert.equal(tokenPlan.models.some((item) => item.modelName === 'qwen3.8-max-preview'), false)
const model = tokenPlan.models.find((item) => item.modelName === modelId) assert.equal(apiProvider.models.some((item) => item.modelName === 'qwen3.8-max-preview'), false)
assert.ok(tokenPlan.tombstones.includes('qwen3.8-max-preview'))
assert.ok(apiProvider.tombstones.includes('qwen3.8-max-preview'))
for (const modelId of ['qwen3.8-max', 'qwen3.8-flash']) {
const model = tokenPlan.models.find((item) => item.modelName === modelId)
const modelSpec = specFile.specs.find((item) => item.id === modelId)
assert.ok(model, `Token Plan 缺少 ${modelId}`)
assert.ok(modelSpec, `model-specs 缺少 ${modelId}`)
assert.equal(model.contextWindow, 1000000)
assert.equal(model.maxOutputTokens, 131072)
assert.ok(model.capabilities.includes('vision'))
assert.deepEqual(model.extra.reasoning.supportedEfforts, ['low', 'medium', 'xhigh'])
assert.equal(model.extra.reasoning.defaultEffort, 'xhigh')
assert.equal(model.extra.thinkingOnly, undefined)
assert.equal(model.extra.preserveThinkingDefault, true)
assert.equal(modelSpec.spec.maxOutputTokens, 131072)
const apiModel = apiProvider.models.find((item) => item.modelName === modelId)
assert.deepEqual(apiModel.extra.reasoning.supportedEfforts, ['low', 'medium', 'xhigh'])
assert.equal(apiModel.extra.preserveThinkingDefault, true)
}
})
assert.ok(model, `Token Plan 缺少 ${modelId}`) it('新增主流模型应在官方 Provider 与共享规格中保持 ID、窗口和推理配置一致', () => {
assert.equal(model.contextWindow, 983616) const cases = [
assert.equal(model.defaultTemperature, 0.6) ['openai', 'openai', 'gpt-6-sol', 1050000, 128000, 2, 10, 'medium'],
assert.ok(model.capabilities.includes('reasoning')) ['openai', 'openai', 'gpt-6-luna', 1050000, 128000, 0.1, 0.5, 'medium'],
assert.ok(model.capabilities.includes('vision')) ['anthropic', 'anthropic', 'claude-opus-5-5', 1000000, 128000, 4, 20, 'medium'],
assert.ok(model.serviceType.includes('reasoning')) ['google', 'google', 'gemini-3.8-flash', 1048576, 65536, 0.75, 3.75, null],
assert.ok(model.serviceType.includes('vision')) ['google', 'google', 'gemini-3.7-flash', 1048576, 65536, 0.75, 3.75, null],
assert.deepEqual(model.extra.reasoning.supportedEfforts, ['low', 'high', 'xhigh']) ['google', 'google', 'gemini-3.5-flash-lite', 1048576, 65536, 0.3, 2.5, null],
assert.equal(model.extra.reasoning.defaultEffort, 'xhigh') ['dashscope', 'qwen', 'qwen3.8-max', 1000000, 131072, 12, 36, null],
assert.equal(model.extra.thinkingOnly, true) ['dashscope', 'qwen', 'qwen3.8-flash', 1000000, 131072, 0.8, 2.7, null],
assert.equal(model.extra.thinkingMaxTokens, 262144) ['xai', 'xai', 'grok-4.7', 500000, undefined, 2, 6, 'high'],
assert.equal(model.extra.preserveThinkingDefault, true) ]
assert.equal(model.extra.supportsParallelToolCalls, false)
const specs = specFile.specs.filter((item) => item.id === modelId) for (const [providerName, specName, id, contextWindow, maxOutputTokens, inputPrice, outputPrice, defaultEffort] of cases) {
assert.equal(specs.length, 1, `model-specs 中 ${modelId} 应且仅应有一条规格`) const provider = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', `${providerName}.json`), 'utf8'))
assert.equal(specs[0].spec.contextWindow, 1000000) const specFile = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', `${specName}.json`), 'utf8'))
assert.equal(specs[0].spec.defaultTemperature, 0.6) const models = provider.models.filter((item) => item.modelName === id)
assert.equal(specs[0].spec.supportsReasoning, true) const specs = specFile.specs.filter((item) => item.id === id)
assert.ok(specs[0].spec.capabilities.includes('vision')) assert.equal(models.length, 1, `${providerName} 缺少或重复 ${id}`)
assert.equal(specs.length, 1, `${specName} 缺少或重复 ${id}`)
assert.equal(models[0].contextWindow, contextWindow)
assert.equal(specs[0].spec.contextWindow, contextWindow)
assert.equal(models[0].maxOutputTokens, maxOutputTokens)
assert.equal(specs[0].spec.maxOutputTokens, maxOutputTokens)
assert.equal(models[0].inputPrice, inputPrice)
assert.equal(models[0].outputPrice, outputPrice)
assert.equal(specs[0].routing.reasoning.supportedModes.includes(specs[0].routing.reasoning.defaultMode), true)
if (defaultEffort) assert.equal(models[0].extra.reasoning.defaultEffort, defaultEffort)
}
const anthropic = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', 'anthropic.json'), 'utf8'))
const opus = anthropic.models.find((item) => item.modelName === 'claude-opus-5-5')
assert.equal(opus.extra.adaptiveThinking, true)
assert.equal(opus.extra.thinkingOnly, true)
assert.equal(opus.extra.forcedToolChoiceUnsupported, true)
assert.equal(opus.extra.cachePricing.read, 0.2)
const xai = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', 'xai.json'), 'utf8'))
assert.deepEqual(xai.models.find((item) => item.modelName === 'grok-4.7').extra.reasoning.supportedEfforts, ['low', 'medium', 'high', 'xhigh'])
const codex = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', 'openai-codex.json'), 'utf8'))
for (const id of ['gpt-6-sol', 'gpt-6-luna']) {
const model = codex.models.find((item) => item.modelName === id)
assert.ok(model, `Codex 订阅 Provider 缺少 ${id}`)
assert.equal(model.source, 'preset')
assert.equal(model.extra.reasoning.defaultEffort, 'medium')
}
})
it('GLM-5.3-FlashX 仅加入共享规格,避免假定中国区智谱 API 已提供该 ID', () => {
const provider = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', 'zhipu.json'), 'utf8'))
const specs = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', 'zhipu.json'), 'utf8')).specs
assert.equal(provider.models.some((item) => item.modelName === 'glm-5.3-flashx'), false)
const spec = specs.find((item) => item.id === 'glm-5.3-flashx')
assert.ok(spec)
assert.deepEqual(spec.match.exact, ['glm-5.3-flashx', 'z-ai/glm-5.3-flashx'])
assert.equal(spec.spec.contextWindow, 1000000)
assert.equal(spec.spec.maxOutputTokens, 128000)
assert.ok(spec.spec.capabilities.includes('vision'))
})
it('GPT Image 2.5 双型号应使用图像生成接入,并与 GPT Image 2 精确区分', () => {
const provider = JSON.parse(readFileSync(join(ROOT, 'compute', 'providers', 'openai.json'), 'utf8'))
const specs = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', 'openai.json'), 'utf8')).specs
for (const id of ['gpt-image-2.5-sunburst', 'gpt-image-2.5-flare']) {
const model = provider.models.find((item) => item.modelName === id)
const spec = specs.find((item) => item.id === id)
assert.ok(model, `OpenAI Provider 缺少 ${id}`)
assert.ok(spec, `model-specs 缺少 ${id}`)
assert.deepEqual(model.serviceType, ['image_gen'])
assert.deepEqual(spec.match.exact, [id])
assert.equal(model.inputPrice, 5)
assert.equal(model.extra.imageInputPrice, 8)
assert.equal(model.outputPrice, 30)
}
const older = specs.find((item) => item.id === 'gpt-image-2')
assert.deepEqual(older.match.exact, ['gpt-image-2'])
assert.equal('patterns' in older.match, false)
}) })
it('Qwen3.8 Flash 应提供完整的多模态推理规格', () => { it('Qwen3.8 Flash 应提供完整的多模态推理规格', () => {
@@ -618,7 +737,8 @@ describe('真实数据全量校验', () => {
assert.equal('patterns' in deepseekFlash.match, false) assert.equal('patterns' in deepseekFlash.match, false)
assert.equal('patterns' in deepseekFlash0731.match, false) assert.equal('patterns' in deepseekFlash0731.match, false)
assert.equal(qwenBase.spec.contextWindow, qwenPreview.spec.contextWindow) assert.equal(qwenBase.spec.contextWindow, qwenPreview.spec.contextWindow)
assert.equal(qwenBase.spec.maxOutputTokens, qwenPreview.spec.maxOutputTokens) assert.equal(qwenBase.spec.maxOutputTokens, 131072)
assert.equal(qwenPreview.spec.maxOutputTokens, 65536)
assert.equal(deepseekBase.spec.contextWindow, deepseek0813.spec.contextWindow) assert.equal(deepseekBase.spec.contextWindow, deepseek0813.spec.contextWindow)
assert.equal(deepseekBase.spec.maxOutputTokens, deepseek0813.spec.maxOutputTokens) assert.equal(deepseekBase.spec.maxOutputTokens, deepseek0813.spec.maxOutputTokens)
assert.equal(deepseekFlash.spec.contextWindow, deepseekFlash0731.spec.contextWindow) assert.equal(deepseekFlash.spec.contextWindow, deepseekFlash0731.spec.contextWindow)
@@ -632,16 +752,16 @@ describe('真实数据全量校验', () => {
// 两处漏写都会回退成 budget_tokens(desirecore#2940)。Opus 4.6 / Sonnet 4.6 仍接受 // 两处漏写都会回退成 budget_tokens(desirecore#2940)。Opus 4.6 / Sonnet 4.6 仍接受
// budget_tokens(仅弃用),不在强制范围内。新代际若同样拒绝 budget_tokens,先扩展这里的正则。 // budget_tokens(仅弃用),不在强制范围内。新代际若同样拒绝 budget_tokens,先扩展这里的正则。
const adaptiveGeneration = /^claude-(?:fable|mythos)(?:$|-)|^claude-(?:opus|sonnet)-(?:[5-9]|[1-9]\d)(?:$|-)|^claude-opus-4-[78](?:$|-)/ const adaptiveGeneration = /^claude-(?:fable|mythos)(?:$|-)|^claude-(?:opus|sonnet)-(?:[5-9]|[1-9]\d)(?:$|-)|^claude-opus-4-[78](?:$|-)/
const thinkingOnlyGeneration = /^claude-(?:fable|mythos)(?:$|-)/ const thinkingOnlyGeneration = /^claude-(?:fable|mythos)(?:$|-)|^claude-opus-5-5(?:$|-)/
// 与客户端匹配器同口径:小写、去 vendor 前缀、统一分隔符 // 与客户端匹配器同口径:小写、去 vendor 前缀、统一分隔符
const normalizeId = (id) => id.toLowerCase().trim().split('/').at(-1).replace(/[._:\s]+/g, '-') const normalizeId = (id) => id.toLowerCase().trim().split('/').at(-1).replace(/[._:\s]+/g, '-')
const specsDir = join(ROOT, 'compute', 'model-specs') const specsDir = join(ROOT, 'compute', 'model-specs')
const allSpecs = JSON.parse(readFileSync(join(specsDir, '_index.json'), 'utf8')).order const allSpecs = JSON.parse(readFileSync(join(specsDir, '_index.json'), 'utf8')).order
.flatMap((name) => JSON.parse(readFileSync(join(specsDir, `${name}.json`), 'utf8')).specs) .flatMap((name) => JSON.parse(readFileSync(join(specsDir, `${name}.json`), 'utf8')).specs)
it('规格按代际声明 adaptiveThinking,只有 Fable/Mythos 声明思考恒开', () => { it('规格按代际声明 adaptiveThinking,并标记始终开启思考的模型', () => {
const adaptiveSpecIds = allSpecs.map((item) => item.id).filter((id) => adaptiveGeneration.test(normalizeId(id))) const adaptiveSpecIds = allSpecs.map((item) => item.id).filter((id) => adaptiveGeneration.test(normalizeId(id)))
for (const id of ['claude-fable-5-1', 'claude-opus-5', 'claude-opus-4-8', 'claude-opus-4-7', 'claude-sonnet-5']) { for (const id of ['claude-fable-5-1', 'claude-opus-5-5', 'claude-opus-5', 'claude-opus-4-8', 'claude-opus-4-7', 'claude-sonnet-5']) {
assert.ok(adaptiveSpecIds.includes(id), `model-specs 缺少 ${id}`) assert.ok(adaptiveSpecIds.includes(id), `model-specs 缺少 ${id}`)
} }
for (const modelSpec of allSpecs) { for (const modelSpec of allSpecs) {
@@ -715,10 +835,10 @@ describe('真实数据全量校验', () => {
// 只做单向断言(已知拒绝的代际必须声明),新代际按官方文档补声明即可,不维护反向代际表。 // 只做单向断言(已知拒绝的代际必须声明),新代际按官方文档补声明即可,不维护反向代际表。
// 订阅(claude-oauth)请求由 Claude CLI 自建,客户端 compat 层对这两类参数显式 fail closed,不依赖声明。 // 订阅(claude-oauth)请求由 Claude CLI 自建,客户端 compat 层对这两类参数显式 fail closed,不依赖声明。
const samplingRemoved = /^claude-(?:fable|mythos)-|^claude-(?:opus|sonnet)-5(?:$|-)|^claude-opus-4-[78](?:$|-)/ const samplingRemoved = /^claude-(?:fable|mythos)-|^claude-(?:opus|sonnet)-5(?:$|-)|^claude-opus-4-[78](?:$|-)/
const forcedToolChoiceRemoved = /^claude-(?:fable|mythos)-5-1(?:$|-)/ const forcedToolChoiceRemoved = /^claude-(?:fable|mythos)-5-1(?:$|-)|^claude-opus-5-5(?:$|-)/
const specFile = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', 'anthropic.json'), 'utf8')) const specFile = JSON.parse(readFileSync(join(ROOT, 'compute', 'model-specs', 'anthropic.json'), 'utf8'))
for (const id of ['claude-fable-5-1', 'claude-opus-5', 'claude-opus-4-8', 'claude-opus-4-7', 'claude-sonnet-5']) { for (const id of ['claude-fable-5-1', 'claude-opus-5-5', 'claude-opus-5', 'claude-opus-4-8', 'claude-opus-4-7', 'claude-sonnet-5']) {
assert.ok(specFile.specs.some((item) => item.id === id), `model-specs 缺少 ${id}`) assert.ok(specFile.specs.some((item) => item.id === id), `model-specs 缺少 ${id}`)
} }
for (const modelSpec of specFile.specs) { for (const modelSpec of specFile.specs) {

View File

@@ -15,6 +15,7 @@
"reasoning" "reasoning"
], ],
"tombstones": [ "tombstones": [
"qwen3.8-max-preview",
"qwen3.5-plus", "qwen3.5-plus",
"qwen3-coder-plus" "qwen3-coder-plus"
], ],
@@ -27,16 +28,16 @@
}, },
"models": [ "models": [
{ {
"modelName": "qwen3.8-max-preview", "modelName": "qwen3.8-max",
"displayName": "Qwen3.8 Max Preview (Token Plan)", "displayName": "Qwen3.8 Max (Token Plan)",
"serviceType": [ "serviceType": [
"chat", "chat",
"reasoning", "reasoning",
"vision" "vision"
], ],
"description": "百炼 Token Plan,通义千问 3.8 Max 预览版,支持文本与视觉输入,始终开启深度思考", "description": "百炼 Token Plan,通义千问 3.8 Max 正式版,支持文本、图像和视频输入",
"contextWindow": 983616, "contextWindow": 1000000,
"maxOutputTokens": 65536, "maxOutputTokens": 131072,
"capabilities": [ "capabilities": [
"chat", "chat",
"reasoning", "reasoning",
@@ -50,12 +51,55 @@
"defaultTemperature": 0.6, "defaultTemperature": 0.6,
"extra": { "extra": {
"reasoning": { "reasoning": {
"supportedEfforts": ["low", "high", "xhigh"], "supportedEfforts": [
"low",
"medium",
"xhigh"
],
"defaultEffort": "xhigh"
},
"supportsThinking": true,
"thinkingDefault": true,
"thinkingMaxTokens": 262144,
"preserveThinkingDefault": true,
"supportsParallelToolCalls": false
},
"source": "preset"
},
{
"modelName": "qwen3.8-flash",
"displayName": "Qwen3.8 Flash (Token Plan)",
"serviceType": [
"chat",
"reasoning",
"vision"
],
"description": "百炼 Token Plan,通义千问 3.8 Flash 正式版,高速多模态推理",
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"deep_thinking",
"code",
"vision",
"tool_use",
"agent",
"long_context",
"fast"
],
"defaultTemperature": 0.6,
"extra": {
"reasoning": {
"supportedEfforts": [
"low",
"medium",
"xhigh"
],
"defaultEffort": "xhigh" "defaultEffort": "xhigh"
}, },
"supportsThinking": true, "supportsThinking": true,
"thinkingDefault": true, "thinkingDefault": true,
"thinkingOnly": true,
"thinkingMaxTokens": 262144, "thinkingMaxTokens": 262144,
"preserveThinkingDefault": true, "preserveThinkingDefault": true,
"supportsParallelToolCalls": false "supportsParallelToolCalls": false

View File

@@ -1,6 +1,56 @@
{ {
"description": "Anthropic Claude 系列模型规格。参数来源:config-center compute/providers/anthropic.json。", "description": "Anthropic Claude 系列模型规格。参数来源:config-center compute/providers/anthropic.json。",
"specs": [ "specs": [
{
"id": "claude-opus-5-5",
"displayName": "Claude Opus 5.5",
"family": "claude-opus-5-5",
"match": {
"exact": [
"claude-opus-5-5"
]
},
"spec": {
"contextWindow": 1000000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"tool_use",
"long_context"
],
"serviceType": [
"chat"
],
"supportsReasoning": true,
"description": "Claude Opus 5.5,始终开启自适应思考,默认 medium effort",
"extra": {
"adaptiveThinking": true,
"thinkingOnly": true,
"samplingParametersDeprecated": true,
"forcedToolChoiceUnsupported": true
}
},
"routing": {
"tier": "flagship",
"routingPriority": 22,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultMode": "medium"
}
}
},
{ {
"id": "claude-fable-5-1", "id": "claude-fable-5-1",
"displayName": "Claude Fable 5.1", "displayName": "Claude Fable 5.1",
@@ -60,8 +110,8 @@
"displayName": "Claude Opus 5", "displayName": "Claude Opus 5",
"family": "claude-opus-5", "family": "claude-opus-5",
"match": { "match": {
"patterns": [ "exact": [
"claude-opus-5*" "claude-opus-5"
] ]
}, },
"spec": { "spec": {

View File

@@ -1,6 +1,144 @@
{ {
"description": "Google Gemini 系列模型规格。参数来源:config-center compute/providers/google.json。", "description": "Google Gemini 系列模型规格。参数来源:config-center compute/providers/google.json。",
"specs": [ "specs": [
{
"id": "gemini-3.8-flash",
"displayName": "Gemini 3.8 Flash",
"family": "gemini-3.8-flash",
"match": {
"exact": [
"gemini-3.8-flash"
]
},
"spec": {
"contextWindow": 1048576,
"maxOutputTokens": 65536,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"video_understanding",
"audio_understanding",
"ultra_long_context",
"tool_use",
"fast"
],
"serviceType": [
"chat"
],
"defaultTemperature": 1,
"supportsReasoning": true,
"description": "Gemini 3.8 Flash,稳定版,支持多模态输入和 1M 上下文"
},
"routing": {
"tier": "balanced",
"routingPriority": 10,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"low",
"medium",
"high"
],
"defaultMode": "medium"
}
}
},
{
"id": "gemini-3.7-flash",
"displayName": "Gemini 3.7 Flash",
"family": "gemini-3.7-flash",
"match": {
"exact": [
"gemini-3.7-flash"
]
},
"spec": {
"contextWindow": 1048576,
"maxOutputTokens": 65536,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"video_understanding",
"audio_understanding",
"ultra_long_context",
"tool_use",
"fast"
],
"serviceType": [
"chat"
],
"defaultTemperature": 1,
"supportsReasoning": true,
"description": "Gemini 3.7 Flash,稳定版,支持多模态输入和 1M 上下文"
},
"routing": {
"tier": "balanced",
"routingPriority": 20,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"low",
"medium",
"high"
],
"defaultMode": "medium"
}
}
},
{
"id": "gemini-3.5-flash-lite",
"displayName": "Gemini 3.5 Flash-Lite",
"family": "gemini-3.5-flash-lite",
"match": {
"exact": [
"gemini-3.5-flash-lite"
]
},
"spec": {
"contextWindow": 1048576,
"maxOutputTokens": 65536,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"video_understanding",
"audio_understanding",
"ultra_long_context",
"tool_use",
"fast"
],
"serviceType": [
"chat"
],
"defaultTemperature": 1,
"supportsReasoning": true,
"description": "Gemini 3.5 Flash-Lite,稳定版,支持多模态输入和 1M 上下文"
},
"routing": {
"tier": "lightweight",
"routingPriority": 20,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"low",
"medium",
"high"
],
"defaultMode": "medium"
}
}
},
{ {
"id": "gemini-3.1-flash-lite-image", "id": "gemini-3.1-flash-lite-image",
"displayName": "Gemini 3.1 Flash Lite Image (Nano Banana 2 Lite)", "displayName": "Gemini 3.1 Flash Lite Image (Nano Banana 2 Lite)",

View File

@@ -1,6 +1,144 @@
{ {
"description": "OpenAI GPT / o 系列模型规格。参数来源:config-center compute/providers/openai.json。注意:gpt-4o / gpt-5 等存在子型号(-mini/-nano),故只用 exact 主键匹配,不使用宽泛 pattern 以防误吞子型号。o 系列 serviceType 由 responses 调整为 reasoning(responses 为 OpenAI 直连专有,对 NewAPI 网关不适用)。", "description": "OpenAI GPT / o 系列模型规格。参数来源:config-center compute/providers/openai.json。注意:gpt-4o / gpt-5 等存在子型号(-mini/-nano),故只用 exact 主键匹配,不使用宽泛 pattern 以防误吞子型号。o 系列 serviceType 由 responses 调整为 reasoning(responses 为 OpenAI 直连专有,对 NewAPI 网关不适用)。",
"specs": [ "specs": [
{
"id": "gpt-image-2.5-sunburst",
"displayName": "GPT Image 2.5 Sunburst",
"family": "gpt-image-2.5-sunburst",
"match": {
"exact": [
"gpt-image-2.5-sunburst"
]
},
"spec": {
"capabilities": [
"image_generation",
"image_editing",
"text_rendering",
"vision",
"high_quality"
],
"serviceType": [
"image_gen"
],
"description": "图像生成与编辑模型,适合对编辑精度要求高的任务"
}
},
{
"id": "gpt-image-2.5-flare",
"displayName": "GPT Image 2.5 Flare",
"family": "gpt-image-2.5-flare",
"match": {
"exact": [
"gpt-image-2.5-flare"
]
},
"spec": {
"capabilities": [
"image_generation",
"image_editing",
"text_rendering",
"vision",
"fast"
],
"serviceType": [
"image_gen"
],
"description": "快速图像生成与编辑模型,适合日常高质量出图"
}
},
{
"id": "gpt-6-sol",
"displayName": "GPT-6 Sol",
"family": "gpt-6-sol",
"match": {
"exact": [
"gpt-6-sol"
]
},
"spec": {
"contextWindow": 1050000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"long_context",
"tool_use",
"agent"
],
"serviceType": [
"chat"
],
"supportsReasoning": true,
"description": "GPT-6 Sol,1.05M 上下文,128K 最大输出"
},
"routing": {
"tier": "balanced",
"routingPriority": 5,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"off",
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultMode": "medium"
}
}
},
{
"id": "gpt-6-luna",
"displayName": "GPT-6 Luna",
"family": "gpt-6-luna",
"match": {
"exact": [
"gpt-6-luna"
]
},
"spec": {
"contextWindow": 1050000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"long_context",
"tool_use",
"fast"
],
"serviceType": [
"chat"
],
"supportsReasoning": true,
"description": "GPT-6 Luna,1.05M 上下文,128K 最大输出"
},
"routing": {
"tier": "lightweight",
"routingPriority": 5,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"off",
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultMode": "medium"
}
}
},
{ {
"id": "gpt-6-astra", "id": "gpt-6-astra",
"displayName": "GPT-6 Astra", "displayName": "GPT-6 Astra",
@@ -89,9 +227,6 @@
"match": { "match": {
"exact": [ "exact": [
"gpt-image-2" "gpt-image-2"
],
"patterns": [
"gpt-image-2*"
] ]
}, },
"spec": { "spec": {
@@ -104,7 +239,7 @@
"serviceType": [ "serviceType": [
"image_gen" "image_gen"
], ],
"description": "OpenAI 最新文生图模型,支持高质量图片生成与编辑,400K 上下文" "description": "OpenAI GPT Image 2 文生图模型,支持高质量图片生成与编辑,400K 上下文"
} }
}, },
{ {

View File

@@ -12,7 +12,7 @@
}, },
"spec": { "spec": {
"contextWindow": 1000000, "contextWindow": 1000000,
"maxOutputTokens": 65536, "maxOutputTokens": 131072,
"capabilities": [ "capabilities": [
"chat", "chat",
"reasoning", "reasoning",
@@ -21,7 +21,8 @@
"tool_use", "tool_use",
"long_context", "long_context",
"agent", "agent",
"vision" "vision",
"video_understanding"
], ],
"serviceType": [ "serviceType": [
"chat" "chat"
@@ -29,7 +30,7 @@
"defaultTemperature": 0.6, "defaultTemperature": 0.6,
"defaultTopP": 0.95, "defaultTopP": 0.95,
"supportsReasoning": true, "supportsReasoning": true,
"description": "通义千问 Qwen3.8 Max,100 万上下文,支持视觉理解" "description": "通义千问 Qwen3.8 Max 稳定版,100 万上下文,支持视觉与视频理解"
}, },
"routing": { "routing": {
"tier": "flagship", "tier": "flagship",
@@ -46,7 +47,7 @@
"high", "high",
"xhigh" "xhigh"
], ],
"defaultMode": "high" "defaultMode": "xhigh"
} }
} }
}, },

View File

@@ -1,6 +1,49 @@
{ {
"description": "xAI Grok 系列模型规格。参数来源:config-center compute/providers/xai.json。Grok 网关命名变体较多(含日期戳/-fast/-reasoning 后缀),主要依赖 family=grok-4 兜底匹配。", "description": "xAI Grok 系列模型规格。参数来源:config-center compute/providers/xai.json。Grok 网关命名变体较多(含日期戳/-fast/-reasoning 后缀),主要依赖 family=grok-4 兜底匹配。",
"specs": [ "specs": [
{
"id": "grok-4.7",
"displayName": "Grok 4.7",
"family": "grok-4.7",
"match": {
"exact": [
"grok-4.7"
]
},
"spec": {
"contextWindow": 500000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"tool_use",
"long_context"
],
"serviceType": [
"chat",
"reasoning"
],
"supportsReasoning": true,
"description": "xAI Grok 4.7,500K 上下文,文本与图像输入,推理努力等级 low 到 xhigh"
},
"routing": {
"tier": "flagship",
"routingPriority": 30,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"low",
"medium",
"high",
"xhigh"
],
"defaultMode": "high"
}
}
},
{ {
"id": "grok-4.5", "id": "grok-4.5",
"displayName": "Grok 4.5", "displayName": "Grok 4.5",

View File

@@ -1,6 +1,142 @@
{ {
"description": "小米 MiMo 系列模型规格。参数来源:https://platform.xiaomimimo.com/docs/zh-CN/quick-start/model。注意 v2-pro/v2-omni 自 2026-06-01 起转发到 v2.5 系列,2026-06-30 正式停用,规格库仍保留供存量 NewAPI 渠道正确展示参数。", "description": "小米 MiMo 系列模型规格。参数来源:https://mimo.mi.com/docs/zh-CN/quick-start/summary/model。注意 v2-pro/v2-omni 自 2026-06-01 起转发到 v2.5 系列,2026-06-30 正式停用,规格库仍保留供存量 NewAPI 渠道正确展示参数。",
"specs": [ "specs": [
{
"id": "mimo-v2.6-pro",
"displayName": "MiMo-V2.6-Pro",
"family": "mimo-v2.6-pro",
"match": {
"exact": [
"mimo-v2.6-pro"
]
},
"spec": {
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"audio_understanding",
"video_understanding",
"tool_use",
"agent",
"long_context"
],
"serviceType": [
"chat",
"reasoning",
"vision"
],
"supportsReasoning": true,
"description": "小米全模态旗舰推理模型,适合复杂项目与长程智能体任务",
"extra": {
"thinkingDefault": true
},
"releasedAt": "2026-09-22"
},
"routing": {
"tier": "flagship",
"routingPriority": 28,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"off"
],
"defaultMode": "auto"
}
}
},
{
"id": "mimo-v2.6-flash",
"displayName": "MiMo-V2.6-Flash",
"family": "mimo-v2.6-flash",
"match": {
"exact": [
"mimo-v2.6-flash"
]
},
"spec": {
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"audio_understanding",
"video_understanding",
"tool_use",
"agent",
"long_context",
"fast"
],
"serviceType": [
"chat",
"reasoning",
"vision"
],
"supportsReasoning": true,
"description": "小米全模态高效推理模型,适合高频调用与规模化任务",
"extra": {
"thinkingDefault": true
},
"releasedAt": "2026-09-22"
},
"routing": {
"tier": "balanced",
"routingPriority": 28,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"off"
],
"defaultMode": "auto"
}
}
},
{
"id": "mimo-v2.6-pro-ultraspeed",
"displayName": "MiMo-V2.6-Pro-UltraSpeed",
"family": "mimo-v2.6-pro-ultraspeed",
"match": {
"exact": [
"mimo-v2.6-pro-ultraspeed"
]
},
"spec": {
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"audio_understanding",
"video_understanding",
"tool_use",
"agent",
"long_context",
"fast"
],
"serviceType": [
"chat",
"reasoning",
"vision"
],
"supportsReasoning": true,
"description": "MiMo-V2.6-Pro 的超高速服务,需向小米申请定制配额",
"extra": {
"thinkingDefault": true
},
"releasedAt": "2026-09-22"
}
},
{ {
"id": "mimo-x-flash-preview", "id": "mimo-x-flash-preview",
"displayName": "MiMo-X-Flash Preview", "displayName": "MiMo-X-Flash Preview",

View File

@@ -1,6 +1,57 @@
{ {
"description": "智谱 GLM 系列模型规格。参数来源:config-center compute/providers/zhipu.json。glm-5 与 glm-5.1/glm-5-turbo/glm-5v-turbo 前缀相近,故各自仅用 exact 主键匹配,不用宽 pattern 以防误吞。", "description": "智谱 GLM 系列模型规格。参数来源:config-center compute/providers/zhipu.json。glm-5 与 glm-5.1/glm-5-turbo/glm-5v-turbo 前缀相近,故各自仅用 exact 主键匹配,不用宽 pattern 以防误吞。",
"specs": [ "specs": [
{
"id": "glm-5.3-flashx",
"displayName": "GLM-5.3-FlashX",
"family": "glm-5.3-flashx",
"match": {
"exact": [
"glm-5.3-flashx",
"z-ai/glm-5.3-flashx"
]
},
"spec": {
"contextWindow": 1000000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"multilingual",
"vision",
"video_understanding",
"tool_use",
"long_context",
"fast"
],
"serviceType": [
"chat",
"reasoning",
"vision"
],
"supportsReasoning": true,
"description": "Z.ai GLM-5.3-FlashX,高速多模态推理模型,100 万上下文,始终开启推理",
"extra": {
"thinkingOnly": true
}
},
"routing": {
"tier": "balanced",
"routingPriority": 49,
"eligibleForAgent": true,
"defaultReference": false,
"reasoning": {
"supportedModes": [
"auto",
"low",
"high",
"max"
],
"defaultMode": "max"
}
}
},
{ {
"id": "glm-5.3", "id": "glm-5.3",
"displayName": "GLM-5.3", "displayName": "GLM-5.3",

View File

@@ -25,6 +25,47 @@
"reasoning" "reasoning"
], ],
"models": [ "models": [
{
"modelName": "claude-opus-5-5",
"displayName": "Claude Opus 5.5",
"serviceType": [
"chat"
],
"contextWindow": 1000000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"tool_use",
"agent",
"long_context"
],
"description": "Claude 订阅额度计费,长程智能体编程与知识工作模型,1M 上下文",
"extra": {
"adaptiveThinking": true,
"reasoning": {
"supportedEfforts": [
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultEffort": "medium"
},
"thinkingOnly": true,
"thinkingRoundTrip": {
"enabled": true,
"protocol": "anthropic-messages",
"allowEmptySignature": false,
"scope": "active-tool-turn"
},
"thinkingToolTurnValidation": "accepts-thinkless"
},
"source": "preset"
},
{ {
"modelName": "claude-fable-5-1", "modelName": "claude-fable-5-1",
"displayName": "Claude Fable 5.1", "displayName": "Claude Fable 5.1",
@@ -72,7 +113,7 @@
"serviceType": [ "serviceType": [
"chat" "chat"
], ],
"description": "Claude 订阅额度计费,Opus 系列当前旗舰,复杂智能体编码与长程任务首选,1M 上下文", "description": "Claude 订阅额度计费,Opus 5 系列模型,复杂智能体编码与长程任务首选,1M 上下文",
"contextWindow": 1000000, "contextWindow": 1000000,
"maxOutputTokens": 128000, "maxOutputTokens": 128000,
"capabilities": [ "capabilities": [

View File

@@ -14,6 +14,64 @@
"computer_use" "computer_use"
], ],
"models": [ "models": [
{
"modelName": "claude-opus-5-5",
"displayName": "Claude Opus 5.5",
"serviceType": [
"chat"
],
"description": "Anthropic 面向长程智能体编程与知识工作的 Opus 模型,1M 上下文,始终开启自适应思考",
"contextWindow": 1000000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"tool_use",
"agent",
"long_context"
],
"inputPrice": 4,
"outputPrice": 20,
"extra": {
"thinkingRoundTrip": {
"enabled": true,
"protocol": "anthropic-messages",
"allowEmptySignature": false,
"scope": "active-tool-turn"
},
"thinkingToolTurnValidation": "accepts-thinkless",
"serverSideWebSearch": {
"enabled": true,
"dialect": "anthropic-messages",
"fallbackPriority": 2,
"searchRequestPriceUsd": 0.01,
"toolType": "web_search_20260318"
},
"cachePricing": {
"write5m": 5,
"write1h": 8,
"read": 0.2
},
"promptCacheMinTokens": 512,
"adaptiveThinking": true,
"reasoning": {
"supportedEfforts": [
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultEffort": "medium"
},
"samplingParametersDeprecated": true,
"forcedToolChoiceUnsupported": true,
"thinkingOnly": true,
"pricingNotes": "Prices are per 1M tokens. Full 1M context is billed at standard pricing."
}
},
{ {
"modelName": "claude-fable-5-1", "modelName": "claude-fable-5-1",
"displayName": "Claude Fable 5.1", "displayName": "Claude Fable 5.1",
@@ -77,7 +135,7 @@
"serviceType": [ "serviceType": [
"chat" "chat"
], ],
"description": "Anthropic Opus 系列当前旗舰,复杂智能体编码与长程任务能力显著强于 Opus 4.8,价格不变,1M 上下文", "description": "Anthropic Opus 5 系列模型,复杂智能体编码与长程任务能力显著强于 Opus 4.8,价格不变,1M 上下文",
"contextWindow": 1000000, "contextWindow": 1000000,
"maxOutputTokens": 128000, "maxOutputTokens": 128000,
"capabilities": [ "capabilities": [
@@ -170,10 +228,6 @@
"write1h": 4, "write1h": 4,
"read": 0.2 "read": 0.2
}, },
"introductoryPricingUntil": "2026-08-31",
"standardPricingFrom": "2026-09-01",
"standardInputPrice": 3,
"standardOutputPrice": 15,
"adaptiveThinking": true, "adaptiveThinking": true,
"reasoning": { "reasoning": {
"supportedEfforts": [ "supportedEfforts": [

View File

@@ -24,6 +24,7 @@
"translation" "translation"
], ],
"tombstones": [ "tombstones": [
"qwen3.8-max-preview",
"qwen3.6-plus", "qwen3.6-plus",
"qwen3.5-plus", "qwen3.5-plus",
"qwen-max", "qwen-max",
@@ -34,15 +35,15 @@
], ],
"models": [ "models": [
{ {
"modelName": "qwen3.8-max-preview", "modelName": "qwen3.8-max",
"displayName": "阿里云 Qwen3.8-Max (Preview)", "displayName": "阿里云 Qwen3.8-Max",
"serviceType": [ "serviceType": [
"chat", "chat",
"vision" "vision"
], ],
"description": "通义千问3.8 Max 预览版,面向复杂推理与长程 Agent 任务的旗舰模型,100万上下文,支持视觉理解、内置工具和 Function Calling", "description": "通义千问3.8 Max 稳定版,支持视觉、视频理解和工具调用,100万上下文",
"contextWindow": 1000000, "contextWindow": 1000000,
"maxOutputTokens": 65536, "maxOutputTokens": 131072,
"capabilities": [ "capabilities": [
"chat", "chat",
"reasoning", "reasoning",
@@ -51,13 +52,67 @@
"long_context", "long_context",
"tool_use", "tool_use",
"agent", "agent",
"vision" "vision",
"video_understanding"
], ],
"inputPrice": 12, "inputPrice": 12,
"outputPrice": 36, "outputPrice": 36,
"defaultTemperature": 0.6, "defaultTemperature": 0.6,
"defaultTopP": 0.95, "defaultTopP": 0.95,
"extra": {} "extra": {
"cachedInputPrice": 1.5,
"pricingNotes": "CNY per 1M tokens, Beijing region standard price.",
"reasoning": {
"supportedEfforts": [
"low",
"medium",
"xhigh"
],
"defaultEffort": "xhigh"
},
"preserveThinkingDefault": true,
"thinkingMaxTokens": 262144
}
},
{
"modelName": "qwen3.8-flash",
"displayName": "阿里云 Qwen3.8-Flash",
"serviceType": [
"chat",
"vision"
],
"description": "通义千问3.8 Flash 稳定版,高速多模态推理,100万上下文",
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"code",
"multilingual",
"long_context",
"tool_use",
"agent",
"vision",
"video_understanding"
],
"inputPrice": 0.8,
"outputPrice": 2.7,
"defaultTemperature": 0.6,
"defaultTopP": 0.95,
"extra": {
"cachedInputPrice": 0.1,
"pricingNotes": "CNY per 1M tokens, Beijing region standard price.",
"reasoning": {
"supportedEfforts": [
"low",
"medium",
"xhigh"
],
"defaultEffort": "xhigh"
},
"preserveThinkingDefault": true,
"thinkingMaxTokens": 262144
}
}, },
{ {
"modelName": "qwen3.7-max", "modelName": "qwen3.7-max",

View File

@@ -15,6 +15,101 @@
"embedding" "embedding"
], ],
"models": [ "models": [
{
"modelName": "gemini-3.8-flash",
"displayName": "Gemini 3.8 Flash",
"serviceType": [
"chat"
],
"description": "Google 最新稳定版 Flash,面向长程编程和智能体任务,1M 上下文",
"contextWindow": 1048576,
"maxOutputTokens": 65536,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"ultra_long_context",
"tool_use",
"fast"
],
"inputPrice": 0.75,
"outputPrice": 3.75,
"defaultTemperature": 1,
"defaultTopP": 0.95,
"extra": {
"cachePricing": {
"inputCacheRead": 0.075
},
"reasoning": {
"supportedEfforts": ["low", "medium", "high"],
"defaultEffort": "medium"
},
"pricingNotes": "Standard paid tier introductory price through 2026-12-31; standard rates rise on 2027-01-01."
}
},
{
"modelName": "gemini-3.7-flash",
"displayName": "Gemini 3.7 Flash",
"serviceType": [
"chat"
],
"description": "Google 稳定版 Flash,面向日常编程和多步工具调用,1M 上下文",
"contextWindow": 1048576,
"maxOutputTokens": 65536,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"ultra_long_context",
"tool_use",
"fast"
],
"inputPrice": 0.75,
"outputPrice": 3.75,
"defaultTemperature": 1,
"defaultTopP": 0.95,
"extra": {
"cachePricing": {
"inputCacheRead": 0.075
},
"reasoning": {
"supportedEfforts": ["low", "medium", "high"],
"defaultEffort": "medium"
},
"pricingNotes": "Standard paid tier introductory price through 2026-12-31; standard rates rise on 2027-01-01."
}
},
{
"modelName": "gemini-3.5-flash-lite",
"displayName": "Gemini 3.5 Flash-Lite",
"serviceType": [
"chat",
"fast"
],
"description": "Google 低延迟轻量模型,支持多模态输入,1M 上下文",
"contextWindow": 1048576,
"maxOutputTokens": 65536,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"ultra_long_context",
"tool_use",
"fast"
],
"inputPrice": 0.3,
"outputPrice": 2.5,
"defaultTemperature": 1,
"defaultTopP": 0.95,
"extra": {
"cachePricing": {
"inputCacheRead": 0.03
}
}
},
{ {
"modelName": "gemini-3.5-flash", "modelName": "gemini-3.5-flash",
"displayName": "Gemini 3.5 Flash", "displayName": "Gemini 3.5 Flash",
@@ -141,7 +236,7 @@
"serviceType": [ "serviceType": [
"chat" "chat"
], ],
"description": "Google 最新旗舰模型,1,048,576 token 上下文,多模态", "description": "Google Gemini 2.5 Pro,1,048,576 token 上下文,多模态",
"contextWindow": 1048576, "contextWindow": 1048576,
"maxOutputTokens": 65536, "maxOutputTokens": 65536,
"capabilities": [ "capabilities": [

View File

@@ -24,6 +24,72 @@
"reasoning" "reasoning"
], ],
"models": [ "models": [
{
"modelName": "gpt-6-sol",
"displayName": "GPT-6 Sol",
"serviceType": [
"chat"
],
"description": "ChatGPT 订阅额度计费,兼顾复杂编程、智能体工作流与成本的 GPT-6 模型;1.05M 上下文",
"contextWindow": 1050000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"ultra_long_context",
"tool_use",
"agent"
],
"extra": {
"reasoning": {
"supportedEfforts": [
"none",
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultEffort": "medium"
}
},
"source": "preset"
},
{
"modelName": "gpt-6-luna",
"displayName": "GPT-6 Luna",
"serviceType": [
"chat"
],
"description": "ChatGPT 订阅额度计费,面向明确任务和高吞吐场景的 GPT-6 轻量模型;1.05M 上下文",
"contextWindow": 1050000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"ultra_long_context",
"tool_use",
"fast"
],
"extra": {
"reasoning": {
"supportedEfforts": [
"none",
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultEffort": "medium"
}
},
"source": "preset"
},
{ {
"modelName": "gpt-6-astra", "modelName": "gpt-6-astra",
"displayName": "GPT-6 Astra", "displayName": "GPT-6 Astra",

View File

@@ -24,6 +24,141 @@
"translation" "translation"
], ],
"models": [ "models": [
{
"modelName": "gpt-image-2.5-sunburst",
"displayName": "GPT Image 2.5 Sunburst",
"serviceType": [
"image_gen"
],
"description": "图像生成与编辑模型,适合对编辑精度要求高的任务",
"capabilities": [
"image_generation",
"image_editing",
"text_rendering",
"vision",
"high_quality"
],
"inputPrice": 5,
"outputPrice": 30,
"extra": {
"imageInputPrice": 8,
"textCachedInputPrice": 1.25,
"imageCachedInputPrice": 2,
"pricingNotes": "Text input $5/M tokens, image input $8/M tokens, image output $30/M tokens; quality supports low, medium, high, xhigh, max, auto."
}
},
{
"modelName": "gpt-image-2.5-flare",
"displayName": "GPT Image 2.5 Flare",
"serviceType": [
"image_gen"
],
"description": "快速图像生成与编辑模型,适合日常高质量出图",
"capabilities": [
"image_generation",
"image_editing",
"text_rendering",
"vision",
"fast"
],
"inputPrice": 5,
"outputPrice": 30,
"extra": {
"imageInputPrice": 8,
"textCachedInputPrice": 1.25,
"imageCachedInputPrice": 2,
"pricingNotes": "Text input $5/M tokens, image input $8/M tokens, image output $30/M tokens; quality supports low, medium, high, xhigh, max, auto."
}
},
{
"modelName": "gpt-6-sol",
"displayName": "GPT-6 Sol",
"serviceType": [
"chat",
"responses"
],
"contextWindow": 1050000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"ultra_long_context",
"tool_use",
"agent"
],
"description": "兼顾复杂编程、智能体工作流与成本的 GPT-6 模型;1.05M 上下文",
"inputPrice": 2,
"outputPrice": 10,
"extra": {
"serverSideWebSearch": {
"enabled": true,
"dialect": "openai-responses",
"fallbackPriority": 2,
"searchRequestPriceUsd": 0.01,
"toolType": "web_search"
},
"cachedInputPrice": 0.2,
"reasoning": {
"supportedEfforts": [
"none",
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultEffort": "medium"
},
"pricingNotes": "Prices are per 1M tokens. Above 272K input tokens, input and cache rates are 2x and output rates are 1.5x for the full request. Chat Completions function calling requires reasoning_effort=none."
}
},
{
"modelName": "gpt-6-luna",
"displayName": "GPT-6 Luna",
"serviceType": [
"chat",
"fast",
"responses"
],
"contextWindow": 1050000,
"maxOutputTokens": 128000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"ultra_long_context",
"tool_use",
"fast"
],
"description": "面向明确任务和高吞吐场景的 GPT-6 轻量模型;1.05M 上下文",
"inputPrice": 0.1,
"outputPrice": 0.5,
"extra": {
"serverSideWebSearch": {
"enabled": true,
"dialect": "openai-responses",
"fallbackPriority": 3,
"searchRequestPriceUsd": 0.01,
"toolType": "web_search"
},
"cachedInputPrice": 0.01,
"reasoning": {
"supportedEfforts": [
"none",
"low",
"medium",
"high",
"xhigh",
"max"
],
"defaultEffort": "medium"
},
"pricingNotes": "Prices are per 1M tokens. Above 272K input tokens, input and cache rates are 2x and output rates are 1.5x for the full request. Chat Completions function calling requires reasoning_effort=none."
}
},
{ {
"modelName": "gpt-6-astra", "modelName": "gpt-6-astra",
"displayName": "GPT-6 Astra", "displayName": "GPT-6 Astra",
@@ -68,7 +203,7 @@
"chat", "chat",
"responses" "responses"
], ],
"description": "OpenAI 最新前沿模型,面向复杂推理、编码和专业工作流,1M 上下文,128K 最大输出", "description": "OpenAI GPT-5.5 前沿模型,面向复杂推理、编码和专业工作流,1M 上下文,128K 最大输出",
"contextWindow": 1050000, "contextWindow": 1050000,
"maxOutputTokens": 128000, "maxOutputTokens": 128000,
"capabilities": [ "capabilities": [
@@ -294,7 +429,7 @@
"serviceType": [ "serviceType": [
"image_gen" "image_gen"
], ],
"description": "OpenAI 最新图像生成和编辑模型,支持文本输入、图像输入与图像输出", "description": "OpenAI GPT Image 2 图像生成和编辑模型,支持文本输入、图像输入与图像输出",
"capabilities": [ "capabilities": [
"image_generation", "image_generation",
"image_editing", "image_editing",
@@ -398,7 +533,7 @@
"serviceType": [ "serviceType": [
"chat" "chat"
], ],
"description": "OpenAI 最新旗舰模型,400K 上下文,编码和智能体任务优化", "description": "OpenAI GPT-5.2,400K 上下文,面向编码和智能体任务",
"contextWindow": 400000, "contextWindow": 400000,
"maxOutputTokens": 128000, "maxOutputTokens": 128000,
"capabilities": [ "capabilities": [

View File

@@ -14,6 +14,40 @@
"reasoning" "reasoning"
], ],
"models": [ "models": [
{
"modelName": "grok-4.7",
"displayName": "Grok 4.7",
"serviceType": [
"chat",
"reasoning"
],
"description": "xAI 面向编程与智能体任务的旗舰模型,500K 上下文,支持图像输入和可配置推理",
"contextWindow": 500000,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"tool_use",
"structured_output",
"long_context"
],
"inputPrice": 2,
"outputPrice": 6,
"extra": {
"cachedInputPrice": 0.5,
"reasoning": {
"supportedEfforts": [
"low",
"medium",
"high",
"xhigh"
],
"defaultEffort": "high"
},
"pricingNotes": "Prices are per 1M tokens below 200K prompt tokens; above 200K, input and cache rates are 2x and output rates are 2x. No text output limit is documented."
}
},
{ {
"modelName": "grok-4.3", "modelName": "grok-4.3",
"displayName": "Grok 4.3", "displayName": "Grok 4.3",
@@ -21,7 +55,7 @@
"chat", "chat",
"reasoning" "reasoning"
], ],
"description": "xAI 最新旗舰通用模型,1M 上下文,支持可配置推理、函数调用和结构化输出", "description": "xAI Grok 4.3 通用模型,1M 上下文,支持可配置推理、函数调用和结构化输出",
"contextWindow": 1000000, "contextWindow": 1000000,
"capabilities": [ "capabilities": [
"chat", "chat",

View File

@@ -19,6 +19,98 @@
"asr" "asr"
], ],
"models": [ "models": [
{
"modelName": "mimo-v2.6-pro",
"displayName": "MiMo-V2.6-Pro",
"serviceType": [
"chat",
"reasoning",
"vision"
],
"description": "小米全模态旗舰推理模型,适合复杂项目与长程智能体任务",
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"audio_understanding",
"video_understanding",
"tool_use",
"agent",
"long_context"
],
"inputPrice": 3,
"outputPrice": 6,
"extra": {
"cachedInputPrice": 0.025,
"thinkingDefault": true,
"pricingNotes": "CNY per 1M tokens on the Xiaomi MiMo API."
}
},
{
"modelName": "mimo-v2.6-flash",
"displayName": "MiMo-V2.6-Flash",
"serviceType": [
"chat",
"reasoning",
"vision"
],
"description": "小米全模态高效推理模型,适合高频调用与规模化任务",
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"audio_understanding",
"video_understanding",
"tool_use",
"agent",
"long_context",
"fast"
],
"inputPrice": 1,
"outputPrice": 2,
"extra": {
"cachedInputPrice": 0.02,
"thinkingDefault": true,
"pricingNotes": "CNY per 1M tokens on the Xiaomi MiMo API."
}
},
{
"modelName": "mimo-v2.6-pro-ultraspeed",
"displayName": "MiMo-V2.6-Pro-UltraSpeed",
"serviceType": [
"chat",
"reasoning",
"vision"
],
"description": "MiMo-V2.6-Pro 的超高速服务,需向小米申请定制配额",
"contextWindow": 1000000,
"maxOutputTokens": 131072,
"capabilities": [
"chat",
"reasoning",
"code",
"vision",
"audio_understanding",
"video_understanding",
"tool_use",
"agent",
"long_context",
"fast"
],
"inputPrice": 30,
"outputPrice": 60,
"extra": {
"cachedInputPrice": 0.25,
"thinkingDefault": true,
"pricingNotes": "CNY per 1M tokens on the Xiaomi MiMo API; UltraSpeed requires custom rate limits."
}
},
{ {
"modelName": "mimo-x-flash-preview", "modelName": "mimo-x-flash-preview",
"displayName": "MiMo-X-Flash Preview", "displayName": "MiMo-X-Flash Preview",
@@ -56,9 +148,9 @@
"chat", "chat",
"reasoning" "reasoning"
], ],
"description": "小米旗舰推理模型,1M 上下文,1T MoE 参数,擅长复杂 Agent、编程与长文本", "description": "小米 MiMo-V2.5-Pro,1M 上下文,1T MoE 参数,计划于 2026-10-21 下线",
"contextWindow": 1000000, "contextWindow": 1000000,
"maxOutputTokens": 65536, "maxOutputTokens": 131072,
"capabilities": [ "capabilities": [
"chat", "chat",
"reasoning", "reasoning",

View File

@@ -1,6 +1,6 @@
{ {
"version": "1.0.0", "version": "1.0.0",
"presetDataVersion": 120, "presetDataVersion": 121,
"updatedAt": "2026-09-15", "updatedAt": "2026-09-25",
"description": "DesireCore 官方配置中心" "description": "DesireCore 官方配置中心"
} }