@juspay/neurolink 12.41.9 → 12.42.0

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.
Files changed (38) hide show
  1. package/CHANGELOG.md +3 -3
  2. package/README.md +2 -2
  3. package/dist/browser/neurolink.min.js +411 -411
  4. package/dist/constants/enums.d.ts +195 -0
  5. package/dist/constants/enums.js +214 -0
  6. package/dist/providers/catalog/arcee.json +212 -0
  7. package/dist/providers/catalog/baidu-qianfan.json +170 -0
  8. package/dist/providers/catalog/byteplus-modelark.json +246 -0
  9. package/dist/providers/catalog/bytez.json +87 -0
  10. package/dist/providers/catalog/dashscope.json +165 -0
  11. package/dist/providers/catalog/gradientai.json +238 -0
  12. package/dist/providers/catalog/hetzner-inference.json +83 -0
  13. package/dist/providers/catalog/inceptron.json +145 -0
  14. package/dist/providers/catalog/index.generated.d.ts +1 -1
  15. package/dist/providers/catalog/index.generated.js +57 -0
  16. package/dist/providers/catalog/lemonfox-ai.json +78 -0
  17. package/dist/providers/catalog/loader.js +3 -0
  18. package/dist/providers/catalog/meta-model-api.json +150 -0
  19. package/dist/providers/catalog/modelscope.json +146 -0
  20. package/dist/providers/catalog/parasail.json +251 -0
  21. package/dist/providers/catalog/poolside.json +79 -0
  22. package/dist/providers/catalog/provider-catalog.schema.json +5 -0
  23. package/dist/providers/catalog/reka.json +112 -0
  24. package/dist/providers/catalog/sakana-ai.json +162 -0
  25. package/dist/providers/catalog/schema.d.ts +1 -0
  26. package/dist/providers/catalog/schema.js +1 -0
  27. package/dist/providers/catalog/stackit.json +126 -0
  28. package/dist/providers/catalog/telnyx.json +181 -0
  29. package/dist/providers/catalog/thinking-machines.json +212 -0
  30. package/dist/providers/catalog/vispark.json +109 -0
  31. package/dist/providers/configuredOpenAICompat.d.ts +9 -0
  32. package/dist/providers/configuredOpenAICompat.js +14 -0
  33. package/dist/providers/openaiChatCompletionsBase.js +12 -3
  34. package/dist/types/providerCatalog.d.ts +9 -0
  35. package/dist/types/providerCatalog.generated.d.ts +2 -2
  36. package/dist/types/providers.d.ts +80 -0
  37. package/docs-site/static/search-index.json +211 -2
  38. package/package.json +2 -1
@@ -0,0 +1,170 @@
1
+ {
2
+ "$schema": "./provider-catalog.schema.json",
3
+ "id": "baidu-qianfan",
4
+ "displayName": "Baidu Qianfan",
5
+ "aliases": ["qianfan", "baidu"],
6
+ "tier": 2,
7
+ "wire": {
8
+ "baseURL": "https://qianfan.baidubce.com/v2"
9
+ },
10
+ "models": {
11
+ "default": "ernie-5.1",
12
+ "fallbacks": ["deepseek-v4-pro", "glm-5.1", "qwen3.5-397b-a17b"],
13
+ "defaultContextWindow": 32000,
14
+ "defaultMaxOutputTokens": 4096,
15
+ "catalog": {
16
+ "ernie-5.1": {
17
+ "contextWindow": 128000,
18
+ "maxOutputTokens": 65536,
19
+ "vision": false,
20
+ "status": "production",
21
+ "description": "NeuroLink default. Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"ERNIE 5.1\" with model parameter \"ernie-5.1\" under the \"ERNIE系列-旗舰模型\" heading of the text-generation section, context \"128k\", max input \"119k\", max output \"[1,65536]\". It is one column of the \"推荐模型\" table whose first header cell reads \"旗舰模型\"; that column's use-case cell begins \"ERNIE 5.1是文心系列最新模型\" (translation: ERNIE 5.1 is the latest model of the ERNIE series). The function-calling page (https://cloud.baidu.com/doc/qianfan-docs/s/xm95lyys5, updated 2026-07-09) lists ernie-5.1 in its 支持模型范围 (supported models) section. contextWindow 128000 is NeuroLink's numeric entry for the page's \"128k\" (k = 1,000); maxOutputTokens 65536 is the top of the stated range."
22
+ },
23
+ "ernie-5.0": {
24
+ "contextWindow": 128000,
25
+ "maxOutputTokens": 65536,
26
+ "vision": true,
27
+ "status": "production",
28
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"ERNIE 5.0\" with model parameter \"ernie-5.0\" under the \"ERNIE系列-旗舰模型\" heading of the text-generation section, again in the ERNIE table of the 视觉理解 (vision understanding) section, hence vision: true, and in the 深度思考 (deep thinking) section; context \"128k\", max input \"119k\", max output \"[1,65536]\". Its cell in the \"推荐模型\" table begins \"文心新一代模型文心5.0是原生全模态大模型\" (translation: Wenxin next-generation model; Wenxin 5.0 is a native all-modality large model). The function-calling page (https://cloud.baidu.com/doc/qianfan-docs/s/xm95lyys5, updated 2026-07-09) lists ernie-5.0. The model-retirement page (https://cloud.baidu.com/doc/qianfan/s/zmh4stou3, updated 2026-09-24, retrieved 2026-09-29) has a row with 登记日期 \"2026-09-24\", 退役模型版本 \"ERNIE-5.0\" and 模型退役日期 \"2026-10-29\". contextWindow 128000 is NeuroLink's numeric entry for the page's \"128k\" (k = 1,000)."
29
+ },
30
+ "ernie-4.5-turbo-128k": {
31
+ "contextWindow": 128000,
32
+ "vision": false,
33
+ "status": "production",
34
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"ERNIE 4.5 Turbo\" with model parameter \"ernie-4.5-turbo-128k\" under the \"ERNIE系列-旗舰模型\" heading of the text-generation section, context \"128k\", max input \"123k\", max output \"[2,12288]\". Its column in the \"推荐模型\" table states max output \"16k\" and its use-case cell begins \"核心定位:更好的满足多轮长历史对话处理、长文档理解问答任务。\" (translation: core positioning: better serving multi-turn long-history dialogue and long-document understanding Q&A tasks). The two max-output figures differ, so maxOutputTokens is left unset. The new-user free-quota page (https://cloud.baidu.com/doc/qianfan/s/Imi2rpirg, updated 2025-11-17) lists ERNIE-4.5-Turbo-128K with 100万 tokens and 3个月 validity. The model-retirement page (https://cloud.baidu.com/doc/qianfan/s/zmh4stou3, updated 2026-09-24, retrieved 2026-09-29) has a row with 登记日期 \"2026-09-24\", 退役模型版本 \"ERNIE-4.5-Turbo-128K\" and 模型退役日期 \"2026-10-29\". contextWindow 128000 is NeuroLink's numeric entry for the page's \"128k\" (k = 1,000)."
35
+ },
36
+ "ernie-4.5-turbo-32k": {
37
+ "contextWindow": 32000,
38
+ "maxOutputTokens": 12288,
39
+ "vision": false,
40
+ "status": "production",
41
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"ERNIE 4.5 Turbo\" with model parameter \"ernie-4.5-turbo-32k\" under the \"ERNIE系列-旗舰模型\" heading of the text-generation section, context \"32k\", max input \"27k\", max output \"[2,12288]\". The new-user free-quota page (https://cloud.baidu.com/doc/qianfan/s/Imi2rpirg, updated 2025-11-17) lists ERNIE-4.5-Turbo-32K with 100万 tokens and 3个月 validity. The model-retirement page (https://cloud.baidu.com/doc/qianfan/s/zmh4stou3, updated 2026-09-24, retrieved 2026-09-29) has a row with 登记日期 \"2026-09-24\", 退役模型版本 \"ERNIE-4.5-Turbo-32K\" and 模型退役日期 \"2026-10-29\". contextWindow 32000 is NeuroLink's numeric entry for the page's \"32k\" (k = 1,000); maxOutputTokens 12288 is the top of the stated range."
42
+ },
43
+ "ernie-4.5-turbo-vl": {
44
+ "contextWindow": 128000,
45
+ "maxOutputTokens": 16384,
46
+ "vision": true,
47
+ "status": "production",
48
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"ERNIE 4.5 Turbo VL\" with model parameter \"ernie-4.5-turbo-vl\" in the text-generation section and in the ERNIE table of the 视觉理解 (vision understanding) section, hence vision: true; context \"128k\", max input \"123k\", max output \"[2,16384]\". The vision-understanding page (https://cloud.baidu.com/doc/qianfan-docs/s/fm8r1ndsm, updated 2026-01-08) documents image input as OpenAI-style image_url content parts (an image URL or a base64 data URL), with examples that name deepseek-vl2. The model-retirement page (https://cloud.baidu.com/doc/qianfan/s/zmh4stou3, updated 2026-09-24, retrieved 2026-09-29) has a row with 登记日期 \"2026-09-24\", 退役模型版本 \"ERNIE-4.5-Turbo-VL-128K\" and 模型退役日期 \"2026-10-29\", and a row with 登记日期 \"2026-09-24\", 退役模型版本 \"ERNIE-4.5-Turbo-VL-32K\" and 模型退役日期 \"2026-10-29\". contextWindow 128000 is NeuroLink's numeric entry for the page's \"128k\" (k = 1,000); maxOutputTokens 16384 is the top of the stated range."
49
+ },
50
+ "deepseek-v4-pro": {
51
+ "contextWindow": 1000000,
52
+ "maxOutputTokens": 393216,
53
+ "vision": false,
54
+ "status": "production",
55
+ "description": "NeuroLink fallback. Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"DeepSeek-V4-Pro\" with model parameter \"deepseek-v4-pro\" in the DeepSeek tables of the text-generation and deep-thinking sections, context \"1M\", max input \"1M\", max output \"[1,393216]\". It is one column of the \"推荐模型\" table whose first header cell reads \"旗舰模型\"; that column's use-case cell begins \"核心定位:超强通用旗舰大模型,Agent能力大幅提高。\" (translation: core positioning: super-strong general-purpose flagship large model, Agent capability greatly improved). The structured-outputs page (https://cloud.baidu.com/doc/qianfan-docs/s/6m8r1x5hz, updated 2026-05-27) lists DeepSeek-V4-Pro in its 支持模型范围 section, and the deep-thinking page (https://cloud.baidu.com/doc/qianfan-docs/s/Wm95lyynv, updated 2026-05-27) lists deepseek-v4-pro in the 支持清单 of its thinking parameter. contextWindow 1000000 is NeuroLink's numeric entry for the page's \"1M\" (M = 1,000,000)."
56
+ },
57
+ "deepseek-v4-pro-0813": {
58
+ "contextWindow": 1000000,
59
+ "maxOutputTokens": 393216,
60
+ "vision": false,
61
+ "status": "production",
62
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row with version \"DeepSeek-V4-Pro-0813\" and model parameter \"deepseek-v4-pro-0813\" in the DeepSeek tables of the text-generation and deep-thinking sections, context \"1M\", max input \"1M\", max output \"[1,393216]\", chain-of-thought length \"32k\" in the deep-thinking section. contextWindow 1000000 is NeuroLink's numeric entry for the page's \"1M\" (M = 1,000,000)."
63
+ },
64
+ "deepseek-v4-flash-0731": {
65
+ "contextWindow": 1000000,
66
+ "maxOutputTokens": 393216,
67
+ "vision": false,
68
+ "status": "production",
69
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row with version \"DeepSeek-V4-Flash-0731\" and model parameter \"deepseek-v4-flash-0731\" in the DeepSeek tables of the text-generation and deep-thinking sections, context \"1M\", max input \"1M\", max output \"[1,393216]\", chain-of-thought length \"32k\" in the deep-thinking section. contextWindow 1000000 is NeuroLink's numeric entry for the page's \"1M\" (M = 1,000,000)."
70
+ },
71
+ "glm-5.3": {
72
+ "contextWindow": 1000000,
73
+ "maxOutputTokens": 131072,
74
+ "vision": false,
75
+ "status": "production",
76
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"GLM-5.3\" with model parameter \"glm-5.3\" under the \"其他\" heading of the 深度思考 (deep thinking) section, context \"1M\", max input \"1M\", max output \"[1,131072]\". That section's note says \"以下最大输出长度为包含思维链输出的总长度\" (translation: the max output lengths below are the total including chain-of-thought output). contextWindow 1000000 is NeuroLink's numeric entry for the page's \"1M\" (M = 1,000,000)."
77
+ },
78
+ "glm-5.2": {
79
+ "contextWindow": 1000000,
80
+ "maxOutputTokens": 131072,
81
+ "vision": false,
82
+ "status": "production",
83
+ "description": "Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"GLM-5.2\" with model parameter \"glm-5.2\" under the \"其他\" heading of the 深度思考 (deep thinking) section, context \"1M\", max input \"1M\", max output \"[1,131072]\". That section's note says \"以下最大输出长度为包含思维链输出的总长度\" (translation: the max output lengths below are the total including chain-of-thought output). contextWindow 1000000 is NeuroLink's numeric entry for the page's \"1M\" (M = 1,000,000)."
84
+ },
85
+ "glm-5.1": {
86
+ "contextWindow": 198000,
87
+ "maxOutputTokens": 131072,
88
+ "vision": false,
89
+ "status": "production",
90
+ "description": "NeuroLink fallback. Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row \"GLM-5.1\" with model parameter \"glm-5.1\" under the \"其他\" heading of the 深度思考 (deep thinking) section, context \"198k\", max input \"198k\", max output \"[1,131072]\". The structured-outputs page (https://cloud.baidu.com/doc/qianfan-docs/s/6m8r1x5hz, updated 2026-05-27) lists GLM-5.1 in its 支持模型范围 section, and the deep-thinking page (https://cloud.baidu.com/doc/qianfan-docs/s/Wm95lyynv, updated 2026-05-27) lists glm-5.1 in the 支持清单 of its thinking parameter. contextWindow 198000 is NeuroLink's numeric entry for the page's \"198k\" (k = 1,000)."
91
+ },
92
+ "qwen3.5-397b-a17b": {
93
+ "contextWindow": 256000,
94
+ "maxOutputTokens": 65536,
95
+ "vision": false,
96
+ "status": "production",
97
+ "description": "NeuroLink fallback. Model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29): row with version \"Qwen3.5-397B-A17B\" and model parameter \"qwen3.5-397b-a17b\" under the \"Qwen系列\" heading of the 深度思考 (deep thinking) section, context \"256k\", max input \"252k\", max output \"[1,65536]\", chain-of-thought length \"80k\". That section's note says \"以下最大输出长度为包含思维链输出的总长度\" (translation: the max output lengths below are the total including chain-of-thought output). contextWindow 256000 is NeuroLink's numeric entry for the page's \"256k\" (k = 1,000)."
98
+ }
99
+ },
100
+ "topModels": [
101
+ "ernie-5.1",
102
+ "ernie-5.0",
103
+ "ernie-4.5-turbo-128k",
104
+ "ernie-4.5-turbo-32k",
105
+ "ernie-4.5-turbo-vl",
106
+ "deepseek-v4-pro",
107
+ "deepseek-v4-pro-0813",
108
+ "deepseek-v4-flash-0731",
109
+ "glm-5.3",
110
+ "glm-5.2",
111
+ "glm-5.1",
112
+ "qwen3.5-397b-a17b"
113
+ ],
114
+ "visionModel": "ernie-4.5-turbo-vl"
115
+ },
116
+ "capabilities": {
117
+ "text": true,
118
+ "streaming": true,
119
+ "tools": "model-dependent",
120
+ "toolsWithStreaming": false,
121
+ "structuredOutput": true,
122
+ "structuredOutputWithTools": false,
123
+ "embeddings": false,
124
+ "thinking": false
125
+ },
126
+ "errorRules": [
127
+ {
128
+ "pattern": "invalid_iam_token",
129
+ "class": "authentication",
130
+ "message": "Baidu Qianfan IAM authentication failed (HTTP 401, invalid_iam_token). Check {apiKeyEnvVar}. Get one at {setupUrl}"
131
+ },
132
+ {
133
+ "status": 429,
134
+ "class": "rate-limit",
135
+ "message": "Baidu Qianfan rate limit reached (HTTP 429, rate_limit_exceeded)."
136
+ }
137
+ ],
138
+ "setup": {
139
+ "url": "https://console.bce.baidu.com/qianfan/",
140
+ "apiKeyFormat": null,
141
+ "billingPolicy": "free-tier",
142
+ "instructions": [
143
+ "1. Visit: https://console.bce.baidu.com/qianfan/ (an unauthenticated GET on 2026-09-29 answered HTTP 200 with the page title 百度智能云千帆大模型平台; sign-in was not attempted while building this entry)",
144
+ "2. Create an API key: the API KEY page (https://cloud.baidu.com/doc/qianfan/s/wmh8l6tnf, updated 2026-04-14) says to log in to the 百度千帆 platform, click 系统管理 in the left navigation, open API Key, then click 创建 API Key and enter a name; the quickstart (https://cloud.baidu.com/doc/qianfan/s/rmh4stn9m) links 控制台-安全认证-API Key to https://console.bce.baidu.com/iam/#/iam/apikey/list",
145
+ "3. Authentication is HTTP Bearer: the quickstart (https://cloud.baidu.com/doc/qianfan/s/rmh4stn9m) says the Authorization request header must carry the API key with Bearer in front of it; NeuroLink does not validate the key format",
146
+ "4. Billing as the vendor states it: the new-user free-quota page (https://cloud.baidu.com/doc/qianfan/s/Imi2rpirg, updated 2025-11-17) says that after you visit the platform and agree to the user agreement the system activates it automatically and issues a new-user free token quota; its table has 17 rows under 服务名称, 赠送Tokens量 and 有效期, and the page says the quota applies to online inference calls of preset model services, not batch inference. The billing page (https://cloud.baidu.com/doc/qianfan/s/wmh4sv6ya, updated 2026-09-24) lists text-generation prices under \"按量后付费\" in 元/千tokens, for example \"ERNIE 5.1\" (版本名称 \"ERNIE-5.1\") with 在线推理 \"0.004\" for 子项 \"输入(输入<=32k)\" and \"0.018\" for 子项 \"输出(输入<=32k)\"",
147
+ "5. Set {apiKeyEnvVar} in your .env file"
148
+ ],
149
+ "description": "OpenAI-compatible endpoint at https://qianfan.baidubce.com/v2. The quickstart (https://cloud.baidu.com/doc/qianfan/s/rmh4stn9m) says \"千帆ModelBuilder提供了与OpenAI兼容的使用方式,用户只需调整api_key、base_url、model等参数,就可以通过OpenAI SDK调用千帆ModelBuilder推理服务。\" and the Inference API V2 page (https://cloud.baidu.com/doc/qianfan/s/qmh4sv5vi, updated 2026-01-27) says the V2 model-service API is \"完全兼容OpenAI标准(包含身份认证、接口协议)\". Docs-verified only: an unauthenticated GET https://qianfan.baidubce.com/v2/models on 2026-09-29 answered HTTP 403 with a JSON body whose code is \"AccessDenied\" and message is \"Access denied.\", so the 12 chat model ids come from the model-list page (https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j, updated 2026-09-16, retrieved 2026-09-29) and the roster has not been checked; the entry is not yet live-verified. An unauthenticated GET https://qianfan.baidubce.com/v2/chat/completions on 2026-09-29 answered HTTP 401 with error.code \"invalid_iam_token\", and the error-code page (https://cloud.baidu.com/doc/qianfan/s/Qmh4su56e, updated 2026-04-22) lists 错误码 \"invalid_iam_token\" as HTTP 401 with 错误信息 \"IAM Certification failed\" and rows of 类型 \"rate_limit_exceeded\" as HTTP 429, so errorRules use those codes. The model-retirement page (https://cloud.baidu.com/doc/qianfan/s/zmh4stou3, updated 2026-09-24, retrieved 2026-09-29) has rows with 模型退役日期 \"2026-10-29\" for ERNIE-5.0, ERNIE-4.5-Turbo-128K, ERNIE-4.5-Turbo-32K, ERNIE-4.5-Turbo-VL-128K and ERNIE-4.5-Turbo-VL-32K. models.defaultContextWindow (32,000) and models.defaultMaxOutputTokens (4,096) are placeholders the vendor does not publish; each per-model contextWindow is a placeholder too: NeuroLink converts the page's \"128k\", \"1M\" style strings with k = 1,000 and M = 1,000,000. The vendor states prices in 元/千tokens, so the entry carries no pricingPerMTok."
150
+ },
151
+ "evidence": {
152
+ "rosterVerified": {
153
+ "date": "2026-09-29",
154
+ "status": 403,
155
+ "method": "docs-only — unauthenticated GET https://qianfan.baidubce.com/v2/models answered HTTP 403 with code \"AccessDenied\" on 2026-09-29, so model ids are taken from https://cloud.baidu.com/doc/qianfan/s/rmh4stp0j (retrieved 2026-09-29); roster not verified"
156
+ },
157
+ "authProbe": {
158
+ "date": "2026-09-29",
159
+ "status": 401,
160
+ "code": "invalid_iam_token",
161
+ "method": "unauthenticated GET https://qianfan.baidubce.com/v2/chat/completions — HTTP 401, JSON body error.code invalid_iam_token; credential-free, no key used"
162
+ },
163
+ "billingProbe": {
164
+ "date": "2026-09-29",
165
+ "method": "public page https://cloud.baidu.com/doc/qianfan/s/Imi2rpirg (updated 2025-11-17) — states a new-user free token quota issued automatically after agreeing to the user agreement; credential-free"
166
+ },
167
+ "liveMatrix": null,
168
+ "addedInPR": "https://github.com/juspay/neurolink/pull/1862"
169
+ }
170
+ }
@@ -0,0 +1,246 @@
1
+ {
2
+ "$schema": "./provider-catalog.schema.json",
3
+ "id": "byteplus-modelark",
4
+ "displayName": "BytePlus ModelArk",
5
+ "aliases": ["byteplus", "modelark"],
6
+ "tier": 2,
7
+ "wire": {
8
+ "baseURL": "https://ark.ap-southeast.bytepluses.com/api/v3"
9
+ },
10
+ "models": {
11
+ "default": "seed-2-0-pro-260328",
12
+ "fallbacks": [
13
+ "seed-2-0-lite-260228",
14
+ "seed-2-0-lite-260428",
15
+ "seed-2-0-mini-260428",
16
+ "dola-seed-2-1-turbo-260628",
17
+ "deepseek-v4-pro-ga-260813",
18
+ "deepseek-v4-flash-ga-260731"
19
+ ],
20
+ "fallbackModelName": "seed-2-0-lite-260228",
21
+ "defaultContextWindow": 128000,
22
+ "defaultMaxOutputTokens": 4096,
23
+ "catalog": {
24
+ "seed-2-0-pro-260328": {
25
+ "contextWindow": 256000,
26
+ "pricingPerMTok": {
27
+ "input": 0.5,
28
+ "output": 3.0,
29
+ "cachedInput": 0.1
30
+ },
31
+ "vision": true,
32
+ "status": "production",
33
+ "description": "NeuroLink default. The first card on the Model list page links to https://ai.byteplus.com/ark/region:ap-southeast-1/model/detail?Id=seed-2-0-pro and carries the caption \"Flagship general-purpose agentic model\". Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool Calling. Context length 256K, Max input 224K (the Visual understanding table on the same page shows Max input 256K), Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. The Structured output (beta) section of the same page lists these non-retired model ids: dola-seed-2-1-turbo-260628, seed-2-0-lite-260428, seed-2-0-mini-260428, seed-2-0-lite-260228, seed-2-0-mini-260215, deepseek-v4-1-flash-260910, deepseek-v4-pro-ga-260813, deepseek-v4-flash-ga-260731; seed-2-0-pro-260328 is not in that section. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row seed-2-0-pro-260328 (USD per M tokens, non-audio input): tier \"Prompt length [0, 128]\" input 0.50, output 3.00, cache-hit input 0.10; stored as pricingPerMTok. Tier \"Prompt length (128, 256]\" (input 1.00, output 6.00, cache-hit input 0.20) is not stored. contextWindow stores 256K as 256000 (K read as 1,000)."
34
+ },
35
+ "dola-seed-2-1-turbo-260628": {
36
+ "contextWindow": 256000,
37
+ "pricingPerMTok": {
38
+ "input": 0.5,
39
+ "output": 2.5,
40
+ "cachedInput": 0.1
41
+ },
42
+ "vision": true,
43
+ "status": "production",
44
+ "description": "NeuroLink fallback. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool use; Structured output. Context length 256K, Max input 256K, Max output (incl. CoT) 256K (Default: 4K), Max CoT 256K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row dola-seed-2-1-turbo (USD per M tokens, non-audio input): tier \"Prompt length [0, 256]\" input 0.5, output 2.5, cache-hit input 0.1; stored as pricingPerMTok. contextWindow stores 256K as 256000 (K read as 1,000)."
45
+ },
46
+ "seed-2-0-lite-260428": {
47
+ "contextWindow": 256000,
48
+ "pricingPerMTok": {
49
+ "input": 0.25,
50
+ "output": 2.0,
51
+ "cachedInput": 0.05
52
+ },
53
+ "vision": true,
54
+ "status": "production",
55
+ "description": "NeuroLink fallback. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool use; Structured output (Recommended: json_schema mode). Context length 256K, Max input 256K, Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row seed-2-0-lite-260428 (USD per M tokens, non-audio input): tier \"Prompt length [0, 128]\" input 0.25, output 2.00, cache-hit input 0.05; stored as pricingPerMTok. Tier \"Prompt length (128, 256]\" (input 0.50, output 4.00, cache-hit input 0.10) is not stored. contextWindow stores 256K as 256000 (K read as 1,000)."
56
+ },
57
+ "seed-2-0-mini-260428": {
58
+ "contextWindow": 256000,
59
+ "pricingPerMTok": {
60
+ "input": 0.1,
61
+ "output": 0.4,
62
+ "cachedInput": 0.02
63
+ },
64
+ "vision": true,
65
+ "status": "production",
66
+ "description": "NeuroLink fallback. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool use; Structured output; (Recommended: json_schema mode). Context length 256K, Max input 256K, Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row seed-2-0-mini-260428 (USD per M tokens, non-audio input): tier \"Prompt length [0, 128]\" input 0.10, output 0.40, cache-hit input 0.02; stored as pricingPerMTok. Tier \"Prompt length (128, 256]\" (input 0.20, output 0.80, cache-hit input 0.04) is not stored. contextWindow stores 256K as 256000 (K read as 1,000)."
67
+ },
68
+ "seed-2-0-lite-260228": {
69
+ "contextWindow": 256000,
70
+ "pricingPerMTok": {
71
+ "input": 0.25,
72
+ "output": 2.0,
73
+ "cachedInput": 0.05
74
+ },
75
+ "vision": true,
76
+ "status": "production",
77
+ "description": "NeuroLink fallback and models.fallbackModelName. This is the model id in the quickstart example of the vendor's Compatible with OpenAI API page (https://docs.byteplus.com/api/docs/ModelArk/1330626), in the Streaming output tool-call example of https://docs.byteplus.com/en/docs/ModelArk/function-calling and in the chat/completions curl of https://docs.byteplus.com/en/docs/ModelArk/base-url-and-authentication. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool use; Structured output. Context length 256K, Max input 224K (the Visual understanding table on the same page shows Max input 256K), Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row seed-2-0-lite-260228 (USD per M tokens, non-audio input): tier \"Prompt length [0, 128]\" input 0.25, output 2.00, cache-hit input 0.05; stored as pricingPerMTok. Tier \"Prompt length (128, 256]\" (input 0.50, output 4.00, cache-hit input 0.10) is not stored. contextWindow stores 256K as 256000 (K read as 1,000)."
78
+ },
79
+ "seed-2-0-mini-260215": {
80
+ "contextWindow": 256000,
81
+ "pricingPerMTok": {
82
+ "input": 0.1,
83
+ "output": 0.4,
84
+ "cachedInput": 0.02
85
+ },
86
+ "vision": true,
87
+ "status": "production",
88
+ "description": "Catalog entry. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool use; Structured output. Context length 256K, Max input 224K (the Visual understanding table on the same page shows Max input 256K), Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row seed-2-0-mini-260215 (USD per M tokens, non-audio input): tier \"Prompt length [0, 128]\" input 0.10, output 0.40, cache-hit input 0.02; stored as pricingPerMTok. Tier \"Prompt length (128, 256]\" (input 0.20, output 0.80, cache-hit input 0.04) is not stored. contextWindow stores 256K as 256000 (K read as 1,000)."
89
+ },
90
+ "seed-2-0-code-preview-260328": {
91
+ "contextWindow": 256000,
92
+ "pricingPerMTok": {
93
+ "input": 0.5,
94
+ "output": 3.0,
95
+ "cachedInput": 0.1
96
+ },
97
+ "vision": true,
98
+ "status": "preview",
99
+ "description": "Catalog entry; status is preview because the model id contains the word preview. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool use. Context length 256K, Max input 224K (the Visual understanding table on the same page shows Max input 256K), Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row seed-2-0-code-preview-260328 (USD per M tokens, non-audio input): tier \"Prompt length [0, 128]\" input 0.50, output 3.00, cache-hit input 0.10; stored as pricingPerMTok. Tier \"Prompt length (128, 256]\" (input 1.00, output 6.00, cache-hit input 0.20) is not stored. contextWindow stores 256K as 256000 (K read as 1,000)."
100
+ },
101
+ "glm-5-3-flash-260828": {
102
+ "contextWindow": 1024000,
103
+ "pricingPerMTok": {
104
+ "input": 0.15,
105
+ "output": 0.5,
106
+ "cachedInput": 0.03
107
+ },
108
+ "vision": true,
109
+ "status": "production",
110
+ "description": "Catalog entry. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Multi-modal understanding; Tool use. Context length 1024K, Max input 1024K, Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row glm-5-3-flash-260828 (USD per M tokens, non-audio input): no pricing tier; input 0.15, output 0.5, cache-hit input 0.03; stored as pricingPerMTok. contextWindow stores 1024K as 1024000 (K read as 1,000)."
111
+ },
112
+ "glm-5-2-260617": {
113
+ "contextWindow": 1024000,
114
+ "pricingPerMTok": {
115
+ "input": 1.4,
116
+ "output": 4.4,
117
+ "cachedInput": 0.26
118
+ },
119
+ "vision": false,
120
+ "status": "production",
121
+ "description": "Catalog entry. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Tool use. Context length 1024K, Max input 1024K, Max output (incl. CoT) 128K (Default: 4K), Max CoT 128K. vision is false as a schema placeholder for a boolean the catalog requires; it is not a vendor statement. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row glm-5-2-260617 (USD per M tokens, non-audio input): no pricing tier; input 1.4, output 4.4, cache-hit input 0.26; stored as pricingPerMTok. contextWindow stores 1024K as 1024000 (K read as 1,000)."
122
+ },
123
+ "deepseek-v4-1-flash-260910": {
124
+ "contextWindow": 1024000,
125
+ "pricingPerMTok": {
126
+ "input": 0.3,
127
+ "output": 1.2,
128
+ "cachedInput": 0.006
129
+ },
130
+ "vision": true,
131
+ "status": "production",
132
+ "description": "Catalog entry. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Visual understanding; Tool use; Structured output (json_object mode only). Context length 1024K, Max input 1024K, Max output (incl. CoT) 384K (Default: 4K), Max CoT 128K. The Visual understanding table on the same page lists this model, so vision is true. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row deepseek-v4-1-flash-260910 (USD per M tokens, non-audio input): tier \"Peak hours\" input 0.30, output 1.20, cache-hit input 0.006; stored as pricingPerMTok. Tier \"Off-peak hours\" (input 0.15, output 0.60, cache-hit input 0.003) is not stored. contextWindow stores 1024K as 1024000 (K read as 1,000)."
133
+ },
134
+ "deepseek-v4-pro-ga-260813": {
135
+ "contextWindow": 1024000,
136
+ "pricingPerMTok": {
137
+ "input": 1.32,
138
+ "output": 3.96,
139
+ "cachedInput": 0.044
140
+ },
141
+ "vision": false,
142
+ "status": "production",
143
+ "description": "NeuroLink fallback. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Tool use; Structured output. Context length 1024K, Max input 1024K, Max output (incl. CoT) 384K (Default: 4K), Max CoT 128K. vision is false as a schema placeholder for a boolean the catalog requires; it is not a vendor statement. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row deepseek-v4-pro-ga-260813 (USD per M tokens, non-audio input): no pricing tier; input 1.32, output 3.96, cache-hit input 0.044; stored as pricingPerMTok. contextWindow stores 1024K as 1024000 (K read as 1,000)."
144
+ },
145
+ "deepseek-v4-flash-ga-260731": {
146
+ "contextWindow": 1024000,
147
+ "pricingPerMTok": {
148
+ "input": 0.44,
149
+ "output": 1.32,
150
+ "cachedInput": 0.014
151
+ },
152
+ "vision": false,
153
+ "status": "production",
154
+ "description": "NeuroLink fallback. Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, retrieved 2026-09-29), Text generation table capabilities: Deep reasoning; Text generation; Tool use; Structured output. Context length 1024K, Max input 1024K, Max output (incl. CoT) 384K (Default: 4K), Max CoT 128K. vision is false as a schema placeholder for a boolean the catalog requires; it is not a vendor statement. Pricing page (https://docs.byteplus.com/en/docs/ModelArk/model-pricing, retrieved 2026-09-29), Online inference (standard) row deepseek-v4-flash-ga-260731 (USD per M tokens, non-audio input): no pricing tier; input 0.44, output 1.32, cache-hit input 0.014; stored as pricingPerMTok. contextWindow stores 1024K as 1024000 (K read as 1,000)."
155
+ }
156
+ },
157
+ "topModels": [
158
+ "seed-2-0-pro-260328",
159
+ "dola-seed-2-1-turbo-260628",
160
+ "seed-2-0-lite-260428",
161
+ "seed-2-0-mini-260428",
162
+ "seed-2-0-lite-260228",
163
+ "seed-2-0-mini-260215",
164
+ "seed-2-0-code-preview-260328",
165
+ "glm-5-3-flash-260828",
166
+ "glm-5-2-260617",
167
+ "deepseek-v4-1-flash-260910",
168
+ "deepseek-v4-pro-ga-260813",
169
+ "deepseek-v4-flash-ga-260731"
170
+ ]
171
+ },
172
+ "capabilities": {
173
+ "text": true,
174
+ "streaming": true,
175
+ "tools": "model-dependent",
176
+ "toolsWithStreaming": true,
177
+ "structuredOutput": true,
178
+ "structuredOutputWithTools": false,
179
+ "embeddings": false,
180
+ "thinking": false
181
+ },
182
+ "errorRules": [
183
+ {
184
+ "status": 401,
185
+ "class": "authentication",
186
+ "message": "ModelArk answered HTTP 401 (code AuthenticationError). The error-codes page (https://docs.byteplus.com/en/docs/ModelArk/error-codes) lists the message \"The API key or AK/SK in the request is missing or invalid.\" and the description \"Please check the authentication credentials or troubleshoot based on the API document.\" NeuroLink reads the key from {apiKeyEnvVar}. API key page: {setupUrl}"
187
+ },
188
+ {
189
+ "pattern": "has not activated the model",
190
+ "class": "invalid-model",
191
+ "message": "ModelArk reports this account has not activated model {model} (HTTP 404 ModelNotOpen). The error-codes page (https://docs.byteplus.com/en/docs/ModelArk/error-codes) says \"Please activate the model service in the Ark Console.\""
192
+ },
193
+ {
194
+ "pattern": "model or endpoint .* does not exist or you do not have access to it",
195
+ "class": "invalid-model",
196
+ "message": "ModelArk reports the model or endpoint {model} does not exist or you do not have access to it (HTTP 404 InvalidEndpointOrModel.NotFound)."
197
+ },
198
+ {
199
+ "pattern": "exhausted its free trial quota",
200
+ "class": "provider",
201
+ "message": "ModelArk reports this account has exhausted its free trial quota for model {model} (HTTP 429 QuotaExceeded). The error-codes page says to activate the corresponding model service on the Activation page: https://docs.byteplus.com/en/docs/ModelArk/error-codes"
202
+ },
203
+ {
204
+ "pattern": "reached the set inference limit",
205
+ "class": "provider",
206
+ "message": "ModelArk reports this account has reached the set inference limit for model {model} and the model service has been paused (HTTP 429 SetLimitExceeded). See https://docs.byteplus.com/en/docs/ModelArk/free-tokens-only-mode"
207
+ },
208
+ {
209
+ "pattern": "overdue balance",
210
+ "class": "provider",
211
+ "message": "ModelArk reports this account has an overdue balance (HTTP 403 AccountOverdueError). The error-codes page says to go to the BytePlus Billing Center to recharge: https://docs.byteplus.com/en/docs/ModelArk/error-codes"
212
+ }
213
+ ],
214
+ "setup": {
215
+ "url": "https://ai.byteplus.com/ark/region:ap-southeast-1/apiKey",
216
+ "apiKeyFormat": null,
217
+ "billingPolicy": "free-tier",
218
+ "instructions": [
219
+ "1. Visit: https://console.byteplus.com/auth/signup and register as a BytePlus user — the Inference free trial page (https://docs.byteplus.com/en/docs/ModelArk/free-inference-quota) says \"Register and authenticate as a BytePlus user.\"",
220
+ "2. Activate the models you want to call on the Model activation page (https://ai.byteplus.com/ark/region:ap-southeast-1/openManagement) — the Quick start (https://docs.byteplus.com/en/docs/ModelArk/quick-start) says \"Go to the Model activation page to activate the models you need to use.\"",
221
+ "3. Create an API key at https://ai.byteplus.com/ark/region:ap-southeast-1/apiKey — the Quick start says to \"create or obtain a ModelArk API key\"; the API key page (https://docs.byteplus.com/en/docs/ModelArk/api-key) says \"API Key is isolated by region. Select the appropriate region before creating and using the API Key for authentication.\"",
222
+ "4. Free trial, as the vendor states it: \"ModelArk offers new users a free inference trial quota, allowing them to get started at no cost.\" (https://docs.byteplus.com/en/docs/ModelArk/free-inference-quota); the Free Tokens Only mode page (https://docs.byteplus.com/en/docs/ModelArk/free-tokens-only-mode) says \"In this mode, calls to the inference API consume only the 500k free tokens granted by the platform.\"",
223
+ "5. Set {apiKeyEnvVar} in your .env file (the vendor's examples read ARK_API_KEY)"
224
+ ],
225
+ "description": "Docs-verified only, not yet live-verified: the vendor's GET https://ark.ap-southeast.bytepluses.com/api/v3/models needs a key (it answers HTTP 401 without one), so the 12 model ids come from the Model list page (https://docs.byteplus.com/en/docs/ModelArk/model-list, Text generation table, retrieved 2026-09-29) and the roster has not been checked. OpenAI-compatible endpoint at https://ark.ap-southeast.bytepluses.com/api/v3: the vendor's Compatible with OpenAI API page (https://docs.byteplus.com/api/docs/ModelArk/1330626) says \"ModelArk model APIs are largely compatible with the OpenAI SDK.\" and sets base_url=\"https://ark.ap-southeast.bytepluses.com/api/v3\" in the OpenAI Python SDK; the Chat API page (https://docs.byteplus.com/en/docs/ModelArk/1494384) documents POST https://ark.ap-southeast.bytepluses.com/api/v3/chat/completions. The Region availability page (https://docs.byteplus.com/en/docs/ModelArk/region-availability) lists a second base URL, https://ark.eu-west.bytepluses.com/api/v3; set BYTEPLUS_MODELARK_BASE_URL to use it. On that page, the section \"Models supported in the EU region\" has the sentence \"The EU region currently supports the following models:\" followed by a one-item list, seed-2-0-lite; separately, a tip on the Model list page says \"The seed-2-0 and seedream-5-0-lite models are also supported in the eu-west-1 region.\" The Region availability page says \"Platform-level resources, such as API keys and model activation status, are isolated by region.\" Unauthenticated GETs made 2026-09-29: /models and /chat/completions each answered HTTP 401 with a JSON body whose error.code is AuthenticationError and error.type is Unauthorized; no POST request was sent. errorRules: the 401 rule follows that observation and the AuthenticationError row of https://docs.byteplus.com/en/docs/ModelArk/error-codes, and the pattern rules follow the messages on https://docs.byteplus.com/en/docs/ModelArk/error-codes (ModelNotOpen, InvalidEndpointOrModel.NotFound, QuotaExceeded, AccountOverdueError) and https://docs.byteplus.com/en/docs/ModelArk/free-tokens-only-mode (SetLimitExceeded). models.defaultContextWindow (128000) and models.defaultMaxOutputTokens (4096) apply to model ids outside the catalog and are placeholders the vendor does not publish for those ids; 4096 is the max_tokens default on the Chat API page. No per-model maxOutputTokens is set. Each model's status field holds production (preview for the model id containing the word preview), a placeholder for a value the catalog schema requires; it is not a vendor statement. Each model's vision field is true for a model that the Visual understanding table on the Model list page lists; for glm-5-2-260617, deepseek-v4-pro-ga-260813 and deepseek-v4-flash-ga-260731, vision is false as a schema placeholder for a boolean the catalog requires; it is not a vendor statement. capabilities.tools is model-dependent: the Function call page (https://docs.byteplus.com/en/docs/ModelArk/function-calling) documents tools and points to the Model list Tool use table for the models that support it. capabilities.toolsWithStreaming is true because that page has a Streaming output section whose example passes tools with stream=True. capabilities.structuredOutput is a boolean for the entry and is true because the Structured output (beta) page (https://docs.byteplus.com/en/docs/ModelArk/structured-output-beta) documents response_format with json_schema mode and the Chat API page lists response_format types text, json_schema and json_object. The Chat API page says of response_format \"For models that support this parameter, see documentation.\" and the Model list Structured output (beta) section lists these non-retired model ids: dola-seed-2-1-turbo-260628, seed-2-0-lite-260428, seed-2-0-mini-260428, seed-2-0-lite-260228, seed-2-0-mini-260215, deepseek-v4-1-flash-260910, deepseek-v4-pro-ga-260813, deepseek-v4-flash-ga-260731. The NeuroLink default seed-2-0-pro-260328 is not in that section, and its Text generation row lists Deep reasoning; Text generation; Multi-modal understanding; Tool Calling. capabilities.structuredOutputWithTools is false because no request combining them was sent. capabilities.thinking is false: the Deep reasoning page (https://docs.byteplus.com/en/docs/ModelArk/deep-thinking) documents the thinking request field, and the entry sets no thinking-level request parameter. capabilities.embeddings is false: the Model list has a separate Multimodal embedding section with its own API, and this entry lists chat models. billingPolicy holds the schema value free-tier because the Inference free trial page (https://docs.byteplus.com/en/docs/ModelArk/free-inference-quota) states a free inference trial quota for new users; apiKeyFormat is null so NeuroLink's key-format check is not applied."
226
+ },
227
+ "evidence": {
228
+ "rosterVerified": {
229
+ "date": "2026-09-29",
230
+ "status": 401,
231
+ "method": "docs-only — unauthenticated GET https://ark.ap-southeast.bytepluses.com/api/v3/models answers 401 without a key, so model ids are taken from https://docs.byteplus.com/en/docs/ModelArk/model-list (retrieved 2026-09-29); roster not verified"
232
+ },
233
+ "authProbe": {
234
+ "date": "2026-09-29",
235
+ "status": 401,
236
+ "code": "AuthenticationError",
237
+ "method": "unauthenticated GET https://ark.ap-southeast.bytepluses.com/api/v3/models — HTTP 401, header x-error-code AuthN_MissOrInvalidAuthorizationHeader, JSON body error.code \"AuthenticationError\", error.type \"Unauthorized\", error.message \"the API key or AK/SK in the request is missing or invalid.\" followed by a request id; the same day an unauthenticated GET https://ark.ap-southeast.bytepluses.com/api/v3/chat/completions answered HTTP 401 with the same body shape; credential-free, no key used"
238
+ },
239
+ "billingProbe": {
240
+ "date": "2026-09-29",
241
+ "method": "public pages https://docs.byteplus.com/en/docs/ModelArk/free-inference-quota (\"ModelArk offers new users a free inference trial quota, allowing them to get started at no cost.\") and https://docs.byteplus.com/en/docs/ModelArk/free-tokens-only-mode (\"In this mode, calls to the inference API consume only the 500k free tokens granted by the platform.\"); credential-free, no signup performed"
242
+ },
243
+ "liveMatrix": null,
244
+ "addedInPR": "https://github.com/juspay/neurolink/pull/1862"
245
+ }
246
+ }
@@ -0,0 +1,87 @@
1
+ {
2
+ "$schema": "./provider-catalog.schema.json",
3
+ "id": "bytez",
4
+ "displayName": "Bytez",
5
+ "aliases": [],
6
+ "tier": 2,
7
+ "wire": {
8
+ "baseURL": "https://api.bytez.com/models/v2/openai/v1"
9
+ },
10
+ "models": {
11
+ "default": "Qwen/Qwen3-4B",
12
+ "fallbacks": ["Qwen/Qwen3-1.7B"],
13
+ "defaultContextWindow": 8192,
14
+ "defaultMaxOutputTokens": 1024,
15
+ "catalog": {
16
+ "Qwen/Qwen3-4B": {
17
+ "vision": false,
18
+ "status": "production",
19
+ "description": "NeuroLink default. The model named in the \"Basic usage (Open Source)\" and \"Streaming (Open Source)\" examples of the vendor's OpenAI-compliant Chat Completions page (https://docs.bytez.com/http-reference/examples/openai-compliant/chatCompletionsExample.md, retrieved 2026-09-29), whose curl examples send it to POST https://api.bytez.com/models/v2/openai/v1/chat/completions, and the model in the Basic usage example of the chat Get started page (https://docs.bytez.com/model-api/docs/task/chat.md, retrieved 2026-09-29). Open models are billed per second of inference (How Credits Work table, https://docs.bytez.com/model-api/docs/billing.md). NeuroLink vision flag: false; the Chat Completions API reference (https://docs.bytez.com/http-reference/oaiCompliant/chatCompletions.md) types message content as string."
20
+ },
21
+ "Qwen/Qwen3-1.7B": {
22
+ "vision": false,
23
+ "status": "production",
24
+ "description": "NeuroLink fallback. Named in the Chat Completions API reference (https://docs.bytez.com/http-reference/oaiCompliant/chatCompletions.md, retrieved 2026-09-29) in the model field description: \"The ID of the model to run (e.g., `Qwen/Qwen3-1.7B`, `openai/gpt-4`)\". NeuroLink vision flag: false; the same reference types message content as string."
25
+ }
26
+ },
27
+ "topModels": ["Qwen/Qwen3-4B", "Qwen/Qwen3-1.7B"]
28
+ },
29
+ "capabilities": {
30
+ "text": true,
31
+ "streaming": true,
32
+ "tools": false,
33
+ "toolsWithStreaming": false,
34
+ "structuredOutput": false,
35
+ "structuredOutputWithTools": false,
36
+ "embeddings": false,
37
+ "thinking": false
38
+ },
39
+ "errorRules": [
40
+ {
41
+ "status": 401,
42
+ "class": "authentication",
43
+ "message": "Bytez answered HTTP 401 (an unauthenticated GET to the API returned the error \"Unauthorized\" on 2026-09-29; the Models API reference https://docs.bytez.com/http-reference/list/models.md describes 401 as \"Auth error - check your api key and how you're sending it.\"). Check {apiKeyEnvVar}. Get a key: {setupUrl}"
44
+ },
45
+ {
46
+ "status": 402,
47
+ "class": "provider",
48
+ "message": "Bytez reported insufficient credits (HTTP 402). The Billing & Credits page https://docs.bytez.com/model-api/docs/billing.md shows this response for an account whose credits ran out with auto-reload disabled: \"Insufficient credits. Please add credits to continue.\""
49
+ },
50
+ {
51
+ "status": 429,
52
+ "class": "rate-limit",
53
+ "message": "Bytez rate limit (HTTP 429). The Models API reference https://docs.bytez.com/http-reference/list/models.md documents 429 as \"Too Many Requests – You have hit the rate limit.\" and the Billing & Credits page https://docs.bytez.com/model-api/docs/billing.md says requests over the open model rate limits \"are rejected with a rate-limit error\"."
54
+ }
55
+ ],
56
+ "setup": {
57
+ "url": "https://bytez.com/api",
58
+ "apiKeyFormat": null,
59
+ "billingPolicy": "free-tier",
60
+ "instructions": [
61
+ "1. Open the API Dashboard at https://bytez.com/api; the Get started page (https://docs.bytez.com/model-api/docs/get-started.md) says \"Copy your key from the API Dashboard\"",
62
+ "2. Free plan (https://docs.bytez.com/model-api/docs/billing.md): \"$0 / month - Get $1 in free credits\", with \"Run open models up to 7B parameters\" and \"Credits refresh every 4 weeks\"; the Billing Cycle section lists Billing: None for the Free Plan",
63
+ "3. The same page lists a Pay-as-you-go plan with \"Run open models up to 120B parameters\" and \"Add credits anytime\"",
64
+ "4. Set {apiKeyEnvVar} in your .env file"
65
+ ],
66
+ "description": "Docs-verified only: the vendor's GET https://api.bytez.com/models/v2/openai/v1/models needs a key (it answers HTTP 401 with the body {\"error\":\"Unauthorized\"} without one), so the two model ids come from the vendor's public docs (https://docs.bytez.com/http-reference/examples/openai-compliant/chatCompletionsExample.md and https://docs.bytez.com/http-reference/oaiCompliant/chatCompletions.md, retrieved 2026-09-29) and the roster has not been checked; the entry is not yet live-verified. OpenAI-compatible endpoint at https://api.bytez.com/models/v2/openai/v1: the Chat Completions page's JavaScript and Python examples create an OpenAI client with that base URL and call chat.completions.create with a messages array, its curl examples POST to https://api.bytez.com/models/v2/openai/v1/chat/completions, and its streaming examples read event.choices[0].delta.content and finish_reason. The curl examples send the header Authorization: BYTEZ_KEY and the OpenAI client examples pass the key as apiKey; the Get started page (https://docs.bytez.com/model-api/docs/get-started.md) has the code comment # add an Authorization header, with value \"Key {BYTEZ_KEY}\" above a curl example that sends -H \"Authorization: BYTEZ_KEY\". The Chat Completions page examples send max_tokens, and the API reference lists max_completion_tokens (default 256). Closed-source provider models (for example openai/gpt-4) are addressed with a provider prefix and their curl examples add a provider-key header; this catalog has no field for an extra header, so none are listed. models.defaultContextWindow (8,192) and models.defaultMaxOutputTokens (1,024) are placeholders the vendor does not publish."
67
+ },
68
+ "evidence": {
69
+ "rosterVerified": {
70
+ "date": "2026-09-29",
71
+ "status": 401,
72
+ "method": "docs-only — unauthenticated GET https://api.bytez.com/models/v2/openai/v1/models answers 401 without a key, so model ids are taken from https://docs.bytez.com/http-reference/examples/openai-compliant/chatCompletionsExample.md and https://docs.bytez.com/http-reference/oaiCompliant/chatCompletions.md (retrieved 2026-09-29); roster not verified"
73
+ },
74
+ "authProbe": {
75
+ "date": "2026-09-29",
76
+ "status": 401,
77
+ "code": "Unauthorized",
78
+ "method": "unauthenticated GET https://api.bytez.com/models/v2/openai/v1/models and unauthenticated GET https://api.bytez.com/models/v2/openai/v1/chat/completions both answered 401 with the body {\"error\":\"Unauthorized\"}; credential-free, no key used"
79
+ },
80
+ "billingProbe": {
81
+ "date": "2026-09-29",
82
+ "method": "public page https://docs.bytez.com/model-api/docs/billing.md — Free plan \"$0 / month - Get $1 in free credits\", Billing Cycle entry for the Free Plan lists Billing: None; credential-free"
83
+ },
84
+ "liveMatrix": null,
85
+ "addedInPR": "https://github.com/juspay/neurolink/pull/1862"
86
+ }
87
+ }