@juspay/neurolink 12.9.0 → 12.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +3 -3
- package/dist/browser/neurolink.min.js +344 -344
- package/dist/cli/commands/proxy.js +35 -2
- package/dist/constants/enums.d.ts +17 -2
- package/dist/constants/enums.js +17 -2
- package/dist/core/baseProvider.d.ts +56 -0
- package/dist/core/baseProvider.js +308 -17
- package/dist/providers/catalog/cerebras.json +15 -5
- package/dist/providers/catalog/cloudflare.json +17 -13
- package/dist/providers/catalog/fireworks.json +74 -43
- package/dist/providers/catalog/groq.json +81 -32
- package/dist/providers/catalog/loader.js +3 -0
- package/dist/providers/catalog/mistral.json +27 -23
- package/dist/providers/catalog/provider-catalog.schema.json +5 -0
- package/dist/providers/catalog/sambanova.json +36 -11
- package/dist/providers/catalog/schema.d.ts +2 -1
- package/dist/providers/catalog/schema.js +1 -0
- package/dist/providers/catalog/xai.json +39 -26
- package/dist/providers/configuredOpenAICompat.d.ts +18 -1
- package/dist/providers/configuredOpenAICompat.js +48 -0
- package/dist/providers/openaiChatCompletionsBase.d.ts +15 -0
- package/dist/providers/openaiChatCompletionsBase.js +20 -0
- package/dist/proxy/proxyActivity.d.ts +2 -0
- package/dist/proxy/proxyActivity.js +18 -0
- package/dist/server/routes/codexProxyRoutes.js +3 -2
- package/dist/types/providerCatalog.d.ts +6 -0
- package/dist/types/providers.d.ts +3 -0
- package/package.json +2 -1
|
@@ -16,9 +16,7 @@
|
|
|
16
16
|
"@cf/meta/llama-3.3-70b-instruct-fp8-fast",
|
|
17
17
|
"@cf/meta/llama-3.1-70b-instruct",
|
|
18
18
|
"@cf/meta/llama-3.1-8b-instruct-fast",
|
|
19
|
-
"@cf/
|
|
20
|
-
"@cf/mistral/mistral-7b-instruct-v0.2",
|
|
21
|
-
"@cf/qwen/qwen1.5-14b-chat-awq"
|
|
19
|
+
"@cf/google/gemma-2b-it-lora"
|
|
22
20
|
],
|
|
23
21
|
"defaultContextWindow": 8192,
|
|
24
22
|
"defaultMaxOutputTokens": 4096,
|
|
@@ -47,23 +45,23 @@
|
|
|
47
45
|
"@cf/meta/llama-3.2-11b-vision-instruct": {
|
|
48
46
|
"enumMember": "LLAMA_3_2_11B_VISION",
|
|
49
47
|
"contextWindow": 24000,
|
|
50
|
-
"vision":
|
|
48
|
+
"vision": false,
|
|
51
49
|
"status": "production",
|
|
52
|
-
"description": "Llama 3.2 11B Vision Instruct"
|
|
50
|
+
"description": "Llama 3.2 11B Vision Instruct — gated: Cloudflare returns 403 until the model's Community License is accepted once on the account, so it is unusable here and its vision flag is false despite being a vision model"
|
|
53
51
|
},
|
|
54
52
|
"@cf/mistral/mistral-7b-instruct-v0.2": {
|
|
55
53
|
"enumMember": "MISTRAL_7B_INSTRUCT_V0_2",
|
|
56
54
|
"contextWindow": 32768,
|
|
57
55
|
"vision": false,
|
|
58
|
-
"status": "
|
|
59
|
-
"description": "
|
|
56
|
+
"status": "retired",
|
|
57
|
+
"description": "Retired 2026-08 — Cloudflare answers 'No such model'"
|
|
60
58
|
},
|
|
61
59
|
"@cf/qwen/qwen1.5-14b-chat-awq": {
|
|
62
60
|
"enumMember": "QWEN_1P5_14B_CHAT_AWQ",
|
|
63
61
|
"contextWindow": 7500,
|
|
64
62
|
"vision": false,
|
|
65
|
-
"status": "
|
|
66
|
-
"description": "
|
|
63
|
+
"status": "retired",
|
|
64
|
+
"description": "Retired 2026-08 — Cloudflare reports it was deprecated on 2025-10-01"
|
|
67
65
|
},
|
|
68
66
|
"@cf/google/gemma-2b-it-lora": {
|
|
69
67
|
"enumMember": "GEMMA_2B_IT_LORA",
|
|
@@ -77,7 +75,7 @@
|
|
|
77
75
|
"@cf/meta/llama-3.3-70b-instruct-fp8-fast",
|
|
78
76
|
"@cf/meta/llama-3.1-70b-instruct",
|
|
79
77
|
"@cf/meta/llama-3.1-8b-instruct-fast",
|
|
80
|
-
"@cf/
|
|
78
|
+
"@cf/google/gemma-2b-it-lora"
|
|
81
79
|
]
|
|
82
80
|
},
|
|
83
81
|
"capabilities": {
|
|
@@ -112,10 +110,16 @@
|
|
|
112
110
|
},
|
|
113
111
|
"evidence": {
|
|
114
112
|
"rosterVerified": {
|
|
115
|
-
"date": "2026-08-
|
|
116
|
-
"method": "
|
|
113
|
+
"date": "2026-08-30",
|
|
114
|
+
"method": "real chat call per id against the live account"
|
|
115
|
+
},
|
|
116
|
+
"liveMatrix": {
|
|
117
|
+
"date": "2026-08-30",
|
|
118
|
+
"result": "Live tool round-trip verified on @cf/meta/llama-3.1-8b-instruct-fast, both non-streaming and streaming, once messageContentFormat normalization was applied; before it the follow-up turn was rejected with HTTP 400 (content sent as array/null). Of the three ids that failed, only two are actually gone: mistral-7b-instruct-v0.2 ('No such model') and qwen1.5-14b-chat-awq ('deprecated on 2025-10-01'). llama-3.2-11b-vision-instruct is alive but gated behind a one-time Community License acceptance on the account, so it answers 403 and is left production with vision false rather than retired."
|
|
117
119
|
},
|
|
118
|
-
"liveMatrix": null,
|
|
119
120
|
"addedInPR": "https://github.com/juspay/neurolink/pull/1587"
|
|
121
|
+
},
|
|
122
|
+
"quirks": {
|
|
123
|
+
"messageContentFormat": "string"
|
|
120
124
|
}
|
|
121
125
|
}
|
|
@@ -8,80 +8,108 @@
|
|
|
8
8
|
"baseURL": "https://api.fireworks.ai/inference/v1"
|
|
9
9
|
},
|
|
10
10
|
"models": {
|
|
11
|
-
"default": "accounts/fireworks/models/
|
|
12
|
-
"
|
|
13
|
-
"fallbackModelName": "accounts/fireworks/models/deepseek-v4-pro",
|
|
11
|
+
"default": "accounts/fireworks/models/kimi-k2p6",
|
|
12
|
+
"fallbackModelName": "accounts/fireworks/models/gpt-oss-120b",
|
|
14
13
|
"fallbacks": [
|
|
15
|
-
"accounts/fireworks/models/deepseek-v4-pro",
|
|
16
|
-
"accounts/fireworks/models/glm-5p1",
|
|
17
|
-
"accounts/fireworks/models/glm-5",
|
|
18
14
|
"accounts/fireworks/models/kimi-k2p6",
|
|
19
|
-
"accounts/fireworks/models/
|
|
20
|
-
"accounts/fireworks/models/
|
|
15
|
+
"accounts/fireworks/models/gpt-oss-120b",
|
|
16
|
+
"accounts/fireworks/models/kimi-k3",
|
|
17
|
+
"accounts/fireworks/models/qwen3p8-max",
|
|
18
|
+
"accounts/fireworks/models/glm-5p3"
|
|
21
19
|
],
|
|
22
20
|
"defaultContextWindow": 128000,
|
|
23
21
|
"defaultMaxOutputTokens": 4096,
|
|
24
22
|
"catalog": {
|
|
25
|
-
"accounts/fireworks/models/
|
|
26
|
-
"enumMember": "
|
|
27
|
-
"vision":
|
|
23
|
+
"accounts/fireworks/models/kimi-k2p6": {
|
|
24
|
+
"enumMember": "KIMI_K2P6",
|
|
25
|
+
"vision": true,
|
|
28
26
|
"status": "production",
|
|
29
|
-
"description": "Recommended -
|
|
27
|
+
"description": "Recommended - Kimi K2.6, Moonshot flagship; vision-capable"
|
|
30
28
|
},
|
|
31
|
-
"accounts/fireworks/models/
|
|
32
|
-
"enumMember": "
|
|
29
|
+
"accounts/fireworks/models/gpt-oss-120b": {
|
|
30
|
+
"enumMember": "GPT_OSS_120B",
|
|
33
31
|
"vision": false,
|
|
34
32
|
"status": "production",
|
|
35
|
-
"description": "
|
|
33
|
+
"description": "GPT-OSS 120B — Apache-2.0 OpenAI weights"
|
|
36
34
|
},
|
|
37
|
-
"accounts/fireworks/models/
|
|
38
|
-
"enumMember": "
|
|
39
|
-
"vision":
|
|
35
|
+
"accounts/fireworks/models/kimi-k3": {
|
|
36
|
+
"enumMember": "KIMI_K3",
|
|
37
|
+
"vision": true,
|
|
40
38
|
"status": "production",
|
|
41
|
-
"description": "
|
|
39
|
+
"description": "Kimi K3 — newest Moonshot generation; vision-capable"
|
|
42
40
|
},
|
|
43
|
-
"accounts/fireworks/models/
|
|
44
|
-
"enumMember": "
|
|
41
|
+
"accounts/fireworks/models/qwen3p8-max": {
|
|
42
|
+
"enumMember": "QWEN3P8_MAX",
|
|
43
|
+
"vision": true,
|
|
44
|
+
"status": "production",
|
|
45
|
+
"description": "Qwen 3.8 Max — vision-capable"
|
|
46
|
+
},
|
|
47
|
+
"accounts/fireworks/models/glm-5p3": {
|
|
48
|
+
"enumMember": "GLM_5P3",
|
|
45
49
|
"vision": false,
|
|
46
50
|
"status": "production",
|
|
47
|
-
"description": "
|
|
51
|
+
"description": "GLM 5.3 — Zhipu flagship"
|
|
48
52
|
},
|
|
49
|
-
"accounts/fireworks/models/
|
|
50
|
-
"enumMember": "
|
|
53
|
+
"accounts/fireworks/models/minimax-m3": {
|
|
54
|
+
"enumMember": "MINIMAX_M3",
|
|
51
55
|
"vision": false,
|
|
52
56
|
"status": "production",
|
|
53
|
-
"description": "
|
|
57
|
+
"description": "MiniMax M3"
|
|
54
58
|
},
|
|
55
|
-
"accounts/fireworks/models/
|
|
56
|
-
"enumMember": "
|
|
59
|
+
"accounts/fireworks/models/deepseek-v4-flash-0731": {
|
|
60
|
+
"enumMember": "DEEPSEEK_V4_FLASH_0731",
|
|
57
61
|
"vision": false,
|
|
58
62
|
"status": "production",
|
|
59
|
-
"description": "
|
|
63
|
+
"description": "DeepSeek V4 Flash — low-latency DeepSeek"
|
|
64
|
+
},
|
|
65
|
+
"accounts/fireworks/models/deepseek-v4-pro": {
|
|
66
|
+
"enumMember": "DEEPSEEK_V4_PRO",
|
|
67
|
+
"vision": false,
|
|
68
|
+
"status": "retired",
|
|
69
|
+
"description": "Retired 2026-08 as a usable id — still on the Fireworks roster but never answers: a real chat call hangs past 120s on this account"
|
|
70
|
+
},
|
|
71
|
+
"accounts/fireworks/models/glm-5p1": {
|
|
72
|
+
"enumMember": "GLM_5P1",
|
|
73
|
+
"vision": false,
|
|
74
|
+
"status": "retired",
|
|
75
|
+
"description": "Retired 2026-08 — Fireworks returns 404 'not deployed'"
|
|
76
|
+
},
|
|
77
|
+
"accounts/fireworks/models/glm-5": {
|
|
78
|
+
"enumMember": "GLM_5",
|
|
79
|
+
"vision": false,
|
|
80
|
+
"status": "retired",
|
|
81
|
+
"description": "Retired 2026-08 — Fireworks returns 404 'not deployed'"
|
|
82
|
+
},
|
|
83
|
+
"accounts/fireworks/models/kimi-k2p5": {
|
|
84
|
+
"enumMember": "KIMI_K2P5",
|
|
85
|
+
"vision": false,
|
|
86
|
+
"status": "retired",
|
|
87
|
+
"description": "Retired 2026-08 — Fireworks returns 404 'not deployed'"
|
|
60
88
|
},
|
|
61
89
|
"accounts/fireworks/models/llama-v3p2-90b-vision-instruct": {
|
|
62
90
|
"enumMember": "LLAMA_V3P2_90B_VISION_INSTRUCT",
|
|
63
|
-
"vision":
|
|
64
|
-
"status": "
|
|
65
|
-
"description": "
|
|
91
|
+
"vision": false,
|
|
92
|
+
"status": "retired",
|
|
93
|
+
"description": "Retired 2026-08 — Fireworks returns 404 'not deployed'"
|
|
66
94
|
},
|
|
67
95
|
"accounts/fireworks/models/llama-v3p2-11b-vision-instruct": {
|
|
68
96
|
"enumMember": "LLAMA_V3P2_11B_VISION_INSTRUCT",
|
|
69
|
-
"vision":
|
|
70
|
-
"status": "
|
|
71
|
-
"description": "
|
|
97
|
+
"vision": false,
|
|
98
|
+
"status": "retired",
|
|
99
|
+
"description": "Retired 2026-08 — Fireworks returns 404 'not deployed'"
|
|
72
100
|
},
|
|
73
101
|
"accounts/fireworks/models/phi-3-vision-128k-instruct": {
|
|
74
102
|
"enumMember": "PHI_3_VISION_128K_INSTRUCT",
|
|
75
|
-
"vision":
|
|
76
|
-
"status": "
|
|
77
|
-
"description": "
|
|
103
|
+
"vision": false,
|
|
104
|
+
"status": "retired",
|
|
105
|
+
"description": "Retired 2026-08 — Fireworks returns 404 'not deployed'"
|
|
78
106
|
}
|
|
79
107
|
},
|
|
80
108
|
"topModels": [
|
|
81
|
-
"accounts/fireworks/models/deepseek-v4-pro",
|
|
82
|
-
"accounts/fireworks/models/glm-5p1",
|
|
83
109
|
"accounts/fireworks/models/kimi-k2p6",
|
|
84
|
-
"accounts/fireworks/models/gpt-oss-120b"
|
|
110
|
+
"accounts/fireworks/models/gpt-oss-120b",
|
|
111
|
+
"accounts/fireworks/models/kimi-k3",
|
|
112
|
+
"accounts/fireworks/models/qwen3p8-max"
|
|
85
113
|
]
|
|
86
114
|
},
|
|
87
115
|
"capabilities": {
|
|
@@ -115,10 +143,13 @@
|
|
|
115
143
|
},
|
|
116
144
|
"evidence": {
|
|
117
145
|
"rosterVerified": {
|
|
118
|
-
"date": "2026-08-
|
|
119
|
-
"method": "
|
|
146
|
+
"date": "2026-08-30",
|
|
147
|
+
"method": "GET /models against the live account, cross-checked with a real chat call per id"
|
|
148
|
+
},
|
|
149
|
+
"liveMatrix": {
|
|
150
|
+
"date": "2026-08-30",
|
|
151
|
+
"result": "The previous default, deepseek-v4-pro, is the reason a roster listing is never sufficient evidence here: it is still listed but a real chat call hangs past 120s, so the default moved to kimi-k2p6 (200 OK). Six ids return 404 'not deployed', including all three old vision models. Vision did not disappear with them: re-tested with a valid 64x64 PNG, kimi-k2p6, kimi-k3 and qwen3p8-max all describe the image correctly, while glm-5p3 answers 'does not support image inputs'. gpt-oss-20b is listed but 404s and was therefore not added."
|
|
120
152
|
},
|
|
121
|
-
"liveMatrix": null,
|
|
122
153
|
"addedInPR": "https://github.com/juspay/neurolink/pull/1587"
|
|
123
154
|
}
|
|
124
155
|
}
|
|
@@ -8,75 +8,121 @@
|
|
|
8
8
|
"baseURL": "https://api.groq.com/openai/v1"
|
|
9
9
|
},
|
|
10
10
|
"models": {
|
|
11
|
-
"default": "
|
|
12
|
-
"testModel": "openai/gpt-oss-120b",
|
|
11
|
+
"default": "openai/gpt-oss-120b",
|
|
13
12
|
"fallbacks": [
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"llama-3.2-90b-vision-preview",
|
|
19
|
-
"llama-3.2-11b-vision-preview"
|
|
13
|
+
"openai/gpt-oss-120b",
|
|
14
|
+
"openai/gpt-oss-20b",
|
|
15
|
+
"qwen/qwen3.8-27b",
|
|
16
|
+
"groq/compound"
|
|
20
17
|
],
|
|
21
18
|
"defaultContextWindow": 128000,
|
|
22
19
|
"defaultMaxOutputTokens": 4096,
|
|
23
20
|
"catalog": {
|
|
21
|
+
"openai/gpt-oss-120b": {
|
|
22
|
+
"enumMember": "GPT_OSS_120B",
|
|
23
|
+
"contextWindow": 131072,
|
|
24
|
+
"vision": false,
|
|
25
|
+
"status": "production",
|
|
26
|
+
"description": "Recommended - GPT-OSS 120B, Groq's flagship open model"
|
|
27
|
+
},
|
|
28
|
+
"openai/gpt-oss-20b": {
|
|
29
|
+
"enumMember": "GPT_OSS_20B",
|
|
30
|
+
"contextWindow": 131072,
|
|
31
|
+
"vision": false,
|
|
32
|
+
"status": "production",
|
|
33
|
+
"description": "GPT-OSS 20B — lower latency, smaller model"
|
|
34
|
+
},
|
|
35
|
+
"qwen/qwen3.8-27b": {
|
|
36
|
+
"enumMember": "QWEN_3_8_27B",
|
|
37
|
+
"contextWindow": 131072,
|
|
38
|
+
"vision": true,
|
|
39
|
+
"status": "production",
|
|
40
|
+
"description": "Qwen 3.8 27B — Groq's only vision-capable model"
|
|
41
|
+
},
|
|
42
|
+
"qwen/qwen3.6-27b": {
|
|
43
|
+
"enumMember": "QWEN_3_6_27B",
|
|
44
|
+
"contextWindow": 131072,
|
|
45
|
+
"vision": false,
|
|
46
|
+
"status": "production",
|
|
47
|
+
"description": "Qwen 3.6 27B"
|
|
48
|
+
},
|
|
49
|
+
"groq/compound": {
|
|
50
|
+
"enumMember": "COMPOUND",
|
|
51
|
+
"contextWindow": 131072,
|
|
52
|
+
"vision": false,
|
|
53
|
+
"status": "production",
|
|
54
|
+
"description": "Groq Compound — agentic system with built-in tool use"
|
|
55
|
+
},
|
|
56
|
+
"groq/compound-mini": {
|
|
57
|
+
"enumMember": "COMPOUND_MINI",
|
|
58
|
+
"contextWindow": 131072,
|
|
59
|
+
"vision": false,
|
|
60
|
+
"status": "production",
|
|
61
|
+
"description": "Groq Compound Mini — lighter agentic system"
|
|
62
|
+
},
|
|
63
|
+
"allam-2-7b": {
|
|
64
|
+
"enumMember": "ALLAM_2_7B",
|
|
65
|
+
"contextWindow": 4096,
|
|
66
|
+
"vision": false,
|
|
67
|
+
"status": "production",
|
|
68
|
+
"description": "ALLaM 2 7B — Arabic-focused model"
|
|
69
|
+
},
|
|
24
70
|
"llama-3.3-70b-versatile": {
|
|
25
71
|
"contextWindow": 131072,
|
|
26
72
|
"pricingPerMTok": { "input": 0.59, "output": 0.79 },
|
|
27
73
|
"vision": false,
|
|
28
|
-
"status": "
|
|
29
|
-
"description": "
|
|
74
|
+
"status": "retired",
|
|
75
|
+
"description": "Retired 2026-08 — Groq returns 404 'does not exist'"
|
|
30
76
|
},
|
|
31
77
|
"llama-3.1-8b-instant": {
|
|
32
78
|
"contextWindow": 128000,
|
|
33
79
|
"pricingPerMTok": { "input": 0.05, "output": 0.08 },
|
|
34
80
|
"vision": false,
|
|
35
|
-
"status": "
|
|
36
|
-
"description": "
|
|
81
|
+
"status": "retired",
|
|
82
|
+
"description": "Retired 2026-08 — Groq returns 404 'does not exist'"
|
|
37
83
|
},
|
|
38
84
|
"gemma2-9b-it": {
|
|
39
85
|
"enumMember": "GEMMA_2_9B_IT",
|
|
40
86
|
"contextWindow": 8192,
|
|
41
87
|
"pricingPerMTok": { "input": 0.2, "output": 0.2 },
|
|
42
88
|
"vision": false,
|
|
43
|
-
"status": "
|
|
44
|
-
"description": "
|
|
89
|
+
"status": "retired",
|
|
90
|
+
"description": "Retired 2026-08 — Groq reports 'decommissioned'"
|
|
45
91
|
},
|
|
46
92
|
"mixtral-8x7b-32768": {
|
|
47
93
|
"contextWindow": 32768,
|
|
48
94
|
"pricingPerMTok": { "input": 0.24, "output": 0.24 },
|
|
49
95
|
"vision": false,
|
|
50
|
-
"status": "
|
|
51
|
-
"description": "
|
|
96
|
+
"status": "retired",
|
|
97
|
+
"description": "Retired 2026-08 — Groq reports 'decommissioned'"
|
|
52
98
|
},
|
|
53
99
|
"llama-guard-3-8b": {
|
|
54
100
|
"contextWindow": 8192,
|
|
55
101
|
"vision": false,
|
|
56
|
-
"status": "
|
|
57
|
-
"description": "
|
|
102
|
+
"status": "retired",
|
|
103
|
+
"description": "Retired 2026-08 — Groq reports 'decommissioned'"
|
|
58
104
|
},
|
|
59
105
|
"llama-3.2-90b-vision-preview": {
|
|
60
106
|
"contextWindow": 128000,
|
|
61
107
|
"pricingPerMTok": { "input": 0.9, "output": 0.9 },
|
|
62
|
-
"vision":
|
|
63
|
-
"status": "
|
|
64
|
-
"description": "
|
|
108
|
+
"vision": false,
|
|
109
|
+
"status": "retired",
|
|
110
|
+
"description": "Retired 2026-08 — Groq reports 'decommissioned'"
|
|
65
111
|
},
|
|
66
112
|
"llama-3.2-11b-vision-preview": {
|
|
67
113
|
"contextWindow": 128000,
|
|
68
114
|
"pricingPerMTok": { "input": 0.18, "output": 0.18 },
|
|
69
|
-
"vision":
|
|
70
|
-
"status": "
|
|
71
|
-
"description": "
|
|
115
|
+
"vision": false,
|
|
116
|
+
"status": "retired",
|
|
117
|
+
"description": "Retired 2026-08 — Groq reports 'decommissioned'"
|
|
72
118
|
}
|
|
73
119
|
},
|
|
120
|
+
"visionModel": "qwen/qwen3.8-27b",
|
|
74
121
|
"topModels": [
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"mixtral-8x7b-32768"
|
|
122
|
+
"openai/gpt-oss-120b",
|
|
123
|
+
"openai/gpt-oss-20b",
|
|
124
|
+
"qwen/qwen3.8-27b",
|
|
125
|
+
"groq/compound"
|
|
80
126
|
]
|
|
81
127
|
},
|
|
82
128
|
"capabilities": {
|
|
@@ -118,10 +164,13 @@
|
|
|
118
164
|
},
|
|
119
165
|
"evidence": {
|
|
120
166
|
"rosterVerified": {
|
|
121
|
-
"date": "2026-08-
|
|
122
|
-
"method": "
|
|
167
|
+
"date": "2026-08-30",
|
|
168
|
+
"method": "GET /models against the live account, cross-checked with a real chat call per id"
|
|
169
|
+
},
|
|
170
|
+
"liveMatrix": {
|
|
171
|
+
"date": "2026-08-30",
|
|
172
|
+
"result": "All 7 previously-catalogued ids are gone: Groq answers 404 'does not exist' for the llama ids and 'has been decommissioned' for gemma2/mixtral/llama-guard/llama-3.2-vision. The 7 replacements listed here each returned 200 to a real chat call. Vision was re-tested with a valid 64x64 PNG: qwen/qwen3.8-27b describes the image correctly and is the only vision-capable id; gpt-oss-120b and groq/compound reject an image part with 'messages[0].content must be a string'."
|
|
123
173
|
},
|
|
124
|
-
"liveMatrix": null,
|
|
125
174
|
"addedInPR": "https://github.com/juspay/neurolink/pull/1587"
|
|
126
175
|
}
|
|
127
176
|
}
|
|
@@ -107,6 +107,9 @@ export function buildCatalogEntries() {
|
|
|
107
107
|
base.baseURLEnvVar = catalogEnvVar(entry, "baseURL");
|
|
108
108
|
base.defaultBaseURL = entry.wire.baseURL;
|
|
109
109
|
}
|
|
110
|
+
if (entry.quirks?.messageContentFormat) {
|
|
111
|
+
base.messageContentFormat = entry.quirks.messageContentFormat;
|
|
112
|
+
}
|
|
110
113
|
if (entry.quirks?.timeoutErrorClass === "provider") {
|
|
111
114
|
base.timeoutErrorClass = ProviderError;
|
|
112
115
|
}
|
|
@@ -106,14 +106,14 @@
|
|
|
106
106
|
"description": "Devstral Small (Software Development)"
|
|
107
107
|
},
|
|
108
108
|
"pixtral-large": {
|
|
109
|
-
"vision":
|
|
109
|
+
"vision": false,
|
|
110
110
|
"status": "retired",
|
|
111
|
-
"description": "Retired 2026-
|
|
111
|
+
"description": "Retired 2026-08 — absent from Mistral's roster and rejected as an invalid model"
|
|
112
112
|
},
|
|
113
113
|
"pixtral-12b": {
|
|
114
114
|
"vision": true,
|
|
115
|
-
"status": "
|
|
116
|
-
"description": "
|
|
115
|
+
"status": "production",
|
|
116
|
+
"description": "Pixtral 12B — vision-capable; re-verified live 2026-08-30"
|
|
117
117
|
},
|
|
118
118
|
"voxtral-small-latest": {
|
|
119
119
|
"vision": false,
|
|
@@ -136,18 +136,18 @@
|
|
|
136
136
|
"enumMember": "DEVSTRAL_SMALL_2",
|
|
137
137
|
"contextWindow": 256000,
|
|
138
138
|
"vision": false,
|
|
139
|
-
"status": "
|
|
140
|
-
"description": "
|
|
139
|
+
"status": "retired",
|
|
140
|
+
"description": "Retired 2026-08 — absent from Mistral's roster and rejected as an invalid model"
|
|
141
141
|
},
|
|
142
142
|
"magistral-medium-2509": {
|
|
143
|
-
"vision":
|
|
144
|
-
"status": "
|
|
145
|
-
"description": "
|
|
143
|
+
"vision": false,
|
|
144
|
+
"status": "retired",
|
|
145
|
+
"description": "Retired 2026-08 — absent from Mistral's roster and rejected as an invalid model"
|
|
146
146
|
},
|
|
147
147
|
"magistral-small-2509": {
|
|
148
|
-
"vision":
|
|
149
|
-
"status": "
|
|
150
|
-
"description": "
|
|
148
|
+
"vision": false,
|
|
149
|
+
"status": "retired",
|
|
150
|
+
"description": "Retired 2026-08 — absent from Mistral's roster and rejected as an invalid model"
|
|
151
151
|
},
|
|
152
152
|
"voxtral-mini-2602": {
|
|
153
153
|
"enumMember": "VOXTRAL_MINI_TRANSCRIBE_2",
|
|
@@ -168,8 +168,8 @@
|
|
|
168
168
|
},
|
|
169
169
|
"mistral-nemo": {
|
|
170
170
|
"vision": false,
|
|
171
|
-
"status": "
|
|
172
|
-
"description": "Mistral
|
|
171
|
+
"status": "retired",
|
|
172
|
+
"description": "Retired 2026-08 — absent from Mistral's roster and rejected as an invalid model"
|
|
173
173
|
},
|
|
174
174
|
"mistral-embed": {
|
|
175
175
|
"vision": false,
|
|
@@ -178,8 +178,8 @@
|
|
|
178
178
|
},
|
|
179
179
|
"mistral-moderation-latest": {
|
|
180
180
|
"vision": false,
|
|
181
|
-
"status": "
|
|
182
|
-
"description": "Mistral
|
|
181
|
+
"status": "retired",
|
|
182
|
+
"description": "Retired 2026-08 — absent from Mistral's roster and rejected as an invalid model"
|
|
183
183
|
},
|
|
184
184
|
"mistral-small-2603": {
|
|
185
185
|
"enumMember": "MISTRAL_SMALL_4",
|
|
@@ -189,17 +189,18 @@
|
|
|
189
189
|
"description": "Mistral Small 4 (June 2026)"
|
|
190
190
|
},
|
|
191
191
|
"mistral-small-creative": {
|
|
192
|
-
"vision":
|
|
193
|
-
"status": "
|
|
194
|
-
"description": "Mistral
|
|
192
|
+
"vision": false,
|
|
193
|
+
"status": "retired",
|
|
194
|
+
"description": "Retired 2026-08 — absent from Mistral's roster and rejected as an invalid model"
|
|
195
195
|
}
|
|
196
196
|
},
|
|
197
|
+
"visionModel": "mistral-medium-latest",
|
|
197
198
|
"topModels": [
|
|
198
199
|
"mistral-large-latest",
|
|
199
200
|
"mistral-small-latest",
|
|
200
201
|
"codestral-latest",
|
|
201
202
|
"magistral-medium-latest",
|
|
202
|
-
"
|
|
203
|
+
"pixtral-12b"
|
|
203
204
|
]
|
|
204
205
|
},
|
|
205
206
|
"capabilities": {
|
|
@@ -235,10 +236,13 @@
|
|
|
235
236
|
},
|
|
236
237
|
"evidence": {
|
|
237
238
|
"rosterVerified": {
|
|
238
|
-
"date": "2026-08-
|
|
239
|
-
"method": "
|
|
239
|
+
"date": "2026-08-30",
|
|
240
|
+
"method": "GET /models against the live account, cross-checked with a real chat call per id"
|
|
241
|
+
},
|
|
242
|
+
"liveMatrix": {
|
|
243
|
+
"date": "2026-08-30",
|
|
244
|
+
"result": "17 ids answer normally. A chat probe alone was not enough to judge the rest, because Mistral rejects every non-chat model with the same generic 'Invalid model' text: cross-referencing the roster shows mistral-embed, codestral-embed, mistral-ocr-latest, mistral-ocr-2512, voxtral-mini-latest and voxtral-mini-2602 are all still listed and alive — they are embedding, OCR and audio models that a chat endpoint is right to refuse — so they keep production status. An id is marked retired only when BOTH signals agree: absent from the roster AND rejected by a live chat call. pixtral-12b is the one id where they disagree — the roster omits it but a real call returns 200, so it was moved back to production, on the rule that a live 200 outranks a roster omission. mistral-large-latest and mistral-large-2512 answer 403 'not available in your subscription tier': a plan limit on this account, not a retirement, so they stay production. visionModel is pinned to mistral-medium-latest because the otherwise-first vision id, mistral-large-latest, is behind that plan gate."
|
|
240
245
|
},
|
|
241
|
-
"liveMatrix": null,
|
|
242
246
|
"addedInPR": "https://github.com/juspay/neurolink/pull/1587"
|
|
243
247
|
}
|
|
244
248
|
}
|
|
@@ -262,6 +262,11 @@
|
|
|
262
262
|
},
|
|
263
263
|
"registryDefaultIgnoresModelEnvVar": {
|
|
264
264
|
"type": "boolean"
|
|
265
|
+
},
|
|
266
|
+
"messageContentFormat": {
|
|
267
|
+
"type": "string",
|
|
268
|
+
"enum": ["string"],
|
|
269
|
+
"description": "Vendor accepts messages[].content only as a plain string, rejecting OpenAI's content-parts array and the null used on an assistant message with tool_calls. Normalized by ConfiguredOpenAICompatProvider."
|
|
265
270
|
}
|
|
266
271
|
}
|
|
267
272
|
},
|
|
@@ -9,55 +9,77 @@
|
|
|
9
9
|
},
|
|
10
10
|
"models": {
|
|
11
11
|
"default": "Meta-Llama-3.3-70B-Instruct",
|
|
12
|
-
"visionModel": "
|
|
12
|
+
"visionModel": "Meta-Llama-3.3-70B-Instruct",
|
|
13
13
|
"fallbacks": ["Meta-Llama-3.3-70B-Instruct", "gpt-oss-120b"],
|
|
14
14
|
"defaultContextWindow": 131072,
|
|
15
15
|
"defaultMaxOutputTokens": 8192,
|
|
16
16
|
"catalog": {
|
|
17
17
|
"Meta-Llama-3.3-70B-Instruct": {
|
|
18
18
|
"contextWindow": 131072,
|
|
19
|
-
"pricingPerMTok": {
|
|
20
|
-
|
|
19
|
+
"pricingPerMTok": {
|
|
20
|
+
"input": 0.6,
|
|
21
|
+
"output": 1.2
|
|
22
|
+
},
|
|
23
|
+
"vision": true,
|
|
21
24
|
"status": "production",
|
|
22
|
-
"description": "Recommended - Meta Llama 3.3 70B; production, 128K context"
|
|
25
|
+
"description": "Recommended - Meta Llama 3.3 70B; production, 128K context; vision-capable"
|
|
23
26
|
},
|
|
24
27
|
"gpt-oss-120b": {
|
|
25
28
|
"contextWindow": 131072,
|
|
26
|
-
"pricingPerMTok": {
|
|
29
|
+
"pricingPerMTok": {
|
|
30
|
+
"input": 0.22,
|
|
31
|
+
"output": 0.59
|
|
32
|
+
},
|
|
27
33
|
"vision": false,
|
|
28
34
|
"status": "production",
|
|
29
35
|
"description": "OpenAI GPT-OSS 120B (open-weight)"
|
|
30
36
|
},
|
|
31
37
|
"DeepSeek-V3.1": {
|
|
32
38
|
"contextWindow": 131072,
|
|
33
|
-
"pricingPerMTok": {
|
|
39
|
+
"pricingPerMTok": {
|
|
40
|
+
"input": 3,
|
|
41
|
+
"output": 4.5
|
|
42
|
+
},
|
|
34
43
|
"vision": false,
|
|
35
44
|
"status": "production",
|
|
36
45
|
"description": "DeepSeek V3.1 (reasoning)"
|
|
37
46
|
},
|
|
38
47
|
"DeepSeek-V3.2": {
|
|
39
48
|
"contextWindow": 32768,
|
|
40
|
-
"pricingPerMTok": {
|
|
49
|
+
"pricingPerMTok": {
|
|
50
|
+
"input": 3,
|
|
51
|
+
"output": 4.5
|
|
52
|
+
},
|
|
41
53
|
"vision": false,
|
|
42
54
|
"status": "preview",
|
|
43
55
|
"description": "DeepSeek V3.2 (reasoning; vendor preview, 32K context)"
|
|
44
56
|
},
|
|
45
57
|
"MiniMax-M2.7": {
|
|
46
58
|
"contextWindow": 196608,
|
|
47
|
-
"pricingPerMTok": {
|
|
59
|
+
"pricingPerMTok": {
|
|
60
|
+
"input": 0.6,
|
|
61
|
+
"output": 2.4,
|
|
62
|
+
"cachedInput": 0.06
|
|
63
|
+
},
|
|
48
64
|
"vision": false,
|
|
49
65
|
"status": "production",
|
|
50
66
|
"description": "MiniMax M2.7, 192K context"
|
|
51
67
|
},
|
|
52
68
|
"MiniMax-M3": {
|
|
53
|
-
"pricingPerMTok": {
|
|
69
|
+
"pricingPerMTok": {
|
|
70
|
+
"input": 0.6,
|
|
71
|
+
"output": 2.4
|
|
72
|
+
},
|
|
54
73
|
"vision": true,
|
|
55
74
|
"status": "production",
|
|
56
75
|
"description": "MiniMax M3 (vision)"
|
|
57
76
|
},
|
|
58
77
|
"gemma-4-31B-it": {
|
|
59
78
|
"contextWindow": 131072,
|
|
60
|
-
"pricingPerMTok": {
|
|
79
|
+
"pricingPerMTok": {
|
|
80
|
+
"input": 0.38,
|
|
81
|
+
"output": 1.15
|
|
82
|
+
},
|
|
61
83
|
"vision": true,
|
|
62
84
|
"status": "preview",
|
|
63
85
|
"description": "Google Gemma 4 31B IT (vision; vendor preview)"
|
|
@@ -123,7 +145,10 @@
|
|
|
123
145
|
"status": 402,
|
|
124
146
|
"code": "PAYMENT_METHOD_REQUIRED"
|
|
125
147
|
},
|
|
126
|
-
"liveMatrix": {
|
|
148
|
+
"liveMatrix": {
|
|
149
|
+
"date": "2026-08-30",
|
|
150
|
+
"result": "Six of seven ids answer. Vision re-tested with a valid 64x64 PNG: gemma-4-31B-it and Meta-Llama-3.3-70B-Instruct both describe it correctly, so Meta-Llama's vision flag is now true. MiniMax-M3 returned 429 'currently experiencing high demand' — the model is served and simply busy, so it stays production rather than being retired; its declared vision support is therefore still unverified."
|
|
151
|
+
},
|
|
127
152
|
"addedInPR": "https://github.com/juspay/neurolink/pull/1586"
|
|
128
153
|
}
|
|
129
154
|
}
|