Refactor router configuration and request handling
Some checks failed
Docs / Build (push) Has been cancelled
Docs / Deploy (push) Has been cancelled

This commit is contained in:
musistudio 2026-09-10 14:47:43 +08:00
parent 996c7f0986
commit afba89fa37
2 changed files with 737 additions and 422 deletions

View file

@ -1,6 +1,6 @@
{
"schemaVersion": 2,
"generatedAt": "2026-09-10T03:55:18.872Z",
"generatedAt": "2026-09-10T06:44:04.383Z",
"generatedBy": "scripts/generate-models-json.mjs",
"sources": [
{
@ -21,16 +21,16 @@
],
"summary": {
"modelCount": 4631,
"rawProviderModelCount": 10968,
"duplicateProviderModelRecordsMerged": 6337,
"rawProviderModelCount": 10970,
"duplicateProviderModelRecordsMerged": 6339,
"providerCount": 230,
"availabilityProviderCount": 314,
"sourceCounts": {
"models.dev": 2915,
"litellm": 2337,
"openrouter": 435
"openrouter": 436
},
"pricingOfferCount": 11501,
"pricingOfferCount": 11504,
"modelsWithPricing": 4414,
"modelsWithoutPricing": 217,
"modelsWith1MContext": 989,
@ -7284,8 +7284,8 @@
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"input": 0.176,
"output": 0.528
"input": 0.352,
"output": 1.056
}
}
]
@ -7509,8 +7509,8 @@
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"input": 0.5808,
"output": 1.7424
"input": 1.122,
"output": 3.366
}
}
]
@ -77018,6 +77018,7 @@
"temperature",
"tool_choice",
"tools",
"top_a",
"top_k",
"top_logprobs",
"top_p"
@ -77834,6 +77835,7 @@
"temperature",
"tool_choice",
"tools",
"top_a",
"top_k",
"top_logprobs",
"top_p"
@ -240238,6 +240240,7 @@
"edenai/cloudflare/@cf/deepseek-ai/deepseek-v4-pro-0813",
"edenai/deepinfra/deepseek-ai/DeepSeek-V4-Pro-0813",
"edenai/fireworks_ai/accounts/fireworks/models/deepseek-v4-pro-0813",
"edenai/nebius/deepseek-ai/DeepSeek-V4-Pro-0813",
"edenai/tensorx/deepseek/deepseek-v4-pro-0813",
"edenai/together_ai/deepseek-ai/DeepSeek-V4-Pro-0813",
"empiriolabs/deepseek-v4-pro-0813",
@ -240263,7 +240266,7 @@
"vivgrid/deepseek-v4-pro-0813",
"wandb/deepseek-ai/DeepSeek-V4-Pro-0813"
],
"mergedProviderModelRecords": 37,
"mergedProviderModelRecords": 38,
"limits": {
"contextTokens": 1048576,
"inputTokens": 1048576,
@ -240477,6 +240480,18 @@
"output": 3.96
}
},
{
"source": "models.dev",
"provider": "edenai",
"model": "nebius/deepseek-ai/DeepSeek-V4-Pro-0813",
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"cacheRead": 1.32,
"input": 1.32,
"output": 3.96
}
},
{
"source": "models.dev",
"provider": "edenai",
@ -240811,6 +240826,7 @@
"DeepSeek V4 Pro 0813 (Cloudflare)",
"DeepSeek V4 Pro 0813 (Deep Infra)",
"DeepSeek V4 Pro 0813 (Fireworks AI)",
"DeepSeek V4 Pro 0813 (Nebius)",
"DeepSeek V4 Pro 0813 (TensorX)",
"DeepSeek V4 Pro 0813 (Together AI)",
"DeepSeek: DeepSeek V4 Pro 0813"
@ -240849,7 +240865,7 @@
"top_logprobs",
"top_p"
],
"providerModelRecordCount": 37
"providerModelRecordCount": 38
},
"sourceRecords": [
{
@ -241217,6 +241233,34 @@
]
}
},
{
"source": "models.dev",
"sourceUrl": "https://models.dev/api.json",
"provider": "edenai",
"providerName": "Eden AI",
"providerApi": "https://api.edenai.run/v3",
"providerDoc": "https://docs.edenai.co",
"model": "nebius/deepseek-ai/DeepSeek-V4-Pro-0813",
"modelKey": "nebius/deepseek-ai/DeepSeek-V4-Pro-0813",
"displayName": "DeepSeek V4 Pro 0813 (Nebius)",
"family": "deepseek-thinking",
"metadata": {
"lastUpdated": "2026-08-22",
"openWeights": true,
"releaseDate": "2026-08-12",
"reasoningOptions": [
{
"type": "effort",
"values": [
"none",
"low",
"high",
"max"
]
}
]
}
},
{
"source": "models.dev",
"sourceUrl": "https://models.dev/api.json",
@ -242795,17 +242839,20 @@
"displayName": "DeepSeek V4.1 Flash",
"family": "deepseek-flash",
"sources": [
"models.dev"
"models.dev",
"openrouter"
],
"providers": [
"nano-gpt"
"nano-gpt",
"openrouter"
],
"aliases": [
"nano-gpt/deepseek/deepseek-v4.1-flash"
"nano-gpt/deepseek/deepseek-v4.1-flash",
"openrouter/deepseek/deepseek-v4.1-flash"
],
"mergedProviderModelRecords": 1,
"mergedProviderModelRecords": 2,
"limits": {
"contextTokens": 1000000,
"contextTokens": 1048576,
"inputTokens": 1000000,
"outputTokens": 384000,
"supports1MContext": true
@ -242836,7 +242883,11 @@
"temperature": true,
"toolCalling": true,
"videoInput": false,
"supports1MContext": true
"supports1MContext": true,
"parallelFunctionCalling": false,
"responseSchema": true,
"toolChoice": true,
"webSearch": false
},
"pricing": {
"currency": "USD",
@ -242853,12 +242904,81 @@
"input": 0.1562,
"output": 0.3124
}
},
{
"source": "models.dev",
"provider": "openrouter",
"model": "deepseek/deepseek-v4.1-flash",
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"cacheRead": 0.006,
"input": 0.3,
"output": 1.2
}
},
{
"source": "openrouter",
"provider": "openrouter",
"model": "deepseek/deepseek-v4.1-flash",
"sourceUrl": "https://openrouter.ai/api/v1/models",
"sourceUnit": "usd_per_token_for_token_fields",
"per1MTokens": {
"cacheRead": 0.006,
"input": 0.3,
"output": 1.2
},
"extra": {
"overrides": [
{
"prompt": 1.5e-7,
"completion": 6e-7,
"input_cache_read": 3e-9
},
{
"utc_start": 0,
"utc_end": 100,
"prompt": 1.5e-7,
"completion": 6e-7,
"input_cache_read": 3e-9
},
{
"utc_start": 100,
"utc_end": 400,
"prompt": 3e-7,
"completion": 0.0000012,
"input_cache_read": 6e-9
},
{
"utc_start": 400,
"utc_end": 600,
"prompt": 1.5e-7,
"completion": 6e-7,
"input_cache_read": 3e-9
},
{
"utc_start": 600,
"utc_end": 1000,
"prompt": 3e-7,
"completion": 0.0000012,
"input_cache_read": 6e-9
},
{
"utc_start": 1000,
"utc_end": 0,
"prompt": 1.5e-7,
"completion": 6e-7,
"input_cache_read": 3e-9
}
]
}
}
]
},
"metadata": {
"displayNames": [
"DeepSeek V4.1 Flash"
"DeepSeek V4.1 Flash",
"DeepSeek: DeepSeek V4.1 Flash"
],
"families": [
"deepseek-flash"
@ -242866,7 +242986,23 @@
"knowledgeCutoff": "2025-05",
"releaseDate": "2026-09-10",
"lastUpdated": "2026-09-10",
"providerModelRecordCount": 1
"supportedParameters": [
"frequency_penalty",
"include_reasoning",
"logprobs",
"max_tokens",
"presence_penalty",
"reasoning",
"reasoning_effort",
"response_format",
"stop",
"temperature",
"tool_choice",
"tools",
"top_logprobs",
"top_p"
],
"providerModelRecordCount": 2
},
"sourceRecords": [
{
@ -242897,6 +243033,84 @@
}
]
}
},
{
"source": "models.dev",
"sourceUrl": "https://models.dev/api.json",
"provider": "openrouter",
"providerName": "OpenRouter",
"providerApi": "https://openrouter.ai/api/v1",
"providerDoc": "https://openrouter.ai/models",
"model": "deepseek/deepseek-v4.1-flash",
"modelKey": "deepseek/deepseek-v4.1-flash",
"displayName": "DeepSeek V4.1 Flash",
"family": "deepseek-flash",
"metadata": {
"knowledgeCutoff": "2025-05",
"lastUpdated": "2026-09-10",
"openWeights": true,
"releaseDate": "2026-09-10",
"reasoningOptions": [
{
"type": "toggle"
},
{
"type": "effort",
"values": [
"low",
"high",
"max"
]
}
]
}
},
{
"source": "openrouter",
"sourceUrl": "https://openrouter.ai/api/v1/models",
"provider": "openrouter",
"model": "deepseek/deepseek-v4.1-flash",
"displayName": "DeepSeek: DeepSeek V4.1 Flash",
"metadata": {
"canonicalSlug": "deepseek/deepseek-v4.1-flash-20260910",
"createdAt": "2026-09-10T06:21:25.000Z",
"huggingFaceId": "deepseek-ai/DeepSeek-V4.1-Flash",
"links": {
"details": "/api/v1/models/deepseek/deepseek-v4.1-flash-20260910/endpoints"
},
"reasoning": {
"mandatory": false,
"default_enabled": true,
"supported_efforts": [
"max",
"high",
"low"
],
"default_effort": "high"
},
"supportedParameters": [
"frequency_penalty",
"include_reasoning",
"logprobs",
"max_tokens",
"presence_penalty",
"reasoning",
"reasoning_effort",
"response_format",
"stop",
"temperature",
"tool_choice",
"tools",
"top_logprobs",
"top_p"
],
"tokenizer": "DeepSeek",
"topProvider": {
"context_length": 1048576,
"max_completion_tokens": 384000,
"is_moderated": false
}
}
}
]
},
@ -573322,6 +573536,9 @@
"displayNames": [
"Omen Alpha"
],
"statuses": [
"deprecated"
],
"releaseDate": "2026-09-04",
"lastUpdated": "2026-09-04",
"providerModelRecordCount": 1
@ -573337,6 +573554,7 @@
"model": "omen-alpha",
"modelKey": "omen-alpha",
"displayName": "Omen Alpha",
"status": "deprecated",
"metadata": {
"lastUpdated": "2026-09-04",
"openWeights": false,
@ -635645,9 +635863,9 @@
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"cacheRead": 0.025,
"input": 0.25,
"output": 0.9375
"cacheRead": 0.004999999999999999,
"input": 0.04999999999999999,
"output": 0.18749999999999994
}
}
]
@ -708198,9 +708416,9 @@
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"cacheRead": 0.014,
"input": 0.07,
"output": 0.2333
"cacheRead": 0.015,
"input": 0.075,
"output": 0.25
}
},
{
@ -708458,9 +708676,9 @@
"sourceUrl": "https://openrouter.ai/api/v1/models",
"sourceUnit": "usd_per_token_for_token_fields",
"per1MTokens": {
"cacheRead": 0.014,
"input": 0.07,
"output": 0.2333
"cacheRead": 0.015,
"input": 0.075,
"output": 0.25
}
}
]
@ -709852,6 +710070,7 @@
"metadata": {
"canonicalSlug": "z-ai/glm-5.3-flash-20260826",
"createdAt": "2026-08-26T13:59:01.000Z",
"expirationDate": "2098-12-31",
"huggingFaceId": "zai-org/GLM-5.3-Flash",
"links": {
"details": "/api/v1/models/z-ai/glm-5.3-flash-20260826/endpoints"
@ -713087,9 +713306,9 @@
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"cacheRead": 0.014,
"input": 0.07,
"output": 0.2333
"cacheRead": 0.015,
"input": 0.075,
"output": 0.25
}
},
{
@ -713099,9 +713318,9 @@
"sourceUrl": "https://models.dev/api.json",
"sourceUnit": "usd_per_1m_tokens",
"per1MTokens": {
"cacheRead": 0.014,
"input": 0.07,
"output": 0.2333
"cacheRead": 0.015,
"input": 0.075,
"output": 0.25
}
},
{
@ -713111,9 +713330,9 @@
"sourceUrl": "https://openrouter.ai/api/v1/models",
"sourceUnit": "usd_per_token_for_token_fields",
"per1MTokens": {
"cacheRead": 0.014,
"input": 0.07,
"output": 0.2333
"cacheRead": 0.015,
"input": 0.075,
"output": 0.25
}
}
]

File diff suppressed because it is too large Load diff