@juspay/neurolink 12.39.0 → 12.40.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.
- package/CHANGELOG.md +6 -2
- package/README.md +1 -1
- package/dist/auth/middleware/AuthMiddleware.d.ts +1 -1
- package/dist/browser/neurolink.min.js +437 -435
- package/dist/constants/enums.d.ts +237 -0
- package/dist/constants/enums.js +257 -0
- package/dist/neurolink.js +52 -21
- package/dist/providers/catalog/ai21.json +142 -0
- package/dist/providers/catalog/aionlabs.json +144 -0
- package/dist/providers/catalog/atlas-cloud.json +203 -0
- package/dist/providers/catalog/avian-io.json +227 -0
- package/dist/providers/catalog/crusoe.json +229 -0
- package/dist/providers/catalog/index.generated.d.ts +1 -1
- package/dist/providers/catalog/index.generated.js +60 -0
- package/dist/providers/catalog/minimax.json +200 -0
- package/dist/providers/catalog/moonshot-ai.json +135 -0
- package/dist/providers/catalog/nebius.json +165 -0
- package/dist/providers/catalog/prime-intellect.json +217 -0
- package/dist/providers/catalog/scaleway.json +177 -0
- package/dist/providers/catalog/siliconflow.json +242 -0
- package/dist/providers/catalog/stepfun.json +155 -0
- package/dist/providers/catalog/subconscious.json +93 -0
- package/dist/providers/catalog/tinfoil.json +155 -0
- package/dist/providers/catalog/umans-ai.json +174 -0
- package/dist/providers/catalog/venice-ai.json +208 -0
- package/dist/providers/catalog/vultr-inference.json +220 -0
- package/dist/providers/catalog/wafer.json +165 -0
- package/dist/providers/catalog/wandb-inference.json +249 -0
- package/dist/providers/catalog/z-ai.json +255 -0
- package/dist/providers/googleAiStudio/client.js +687 -263
- package/dist/providers/googleNativeGemini3/utils.d.ts +44 -1
- package/dist/providers/googleNativeGemini3/utils.js +300 -1
- package/dist/types/providerCatalog.generated.d.ts +2 -2
- package/dist/types/providers.d.ts +80 -0
- package/docs-site/static/search-index.json +227 -3
- package/package.json +1 -1
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./provider-catalog.schema.json",
|
|
3
|
+
"id": "ai21",
|
|
4
|
+
"displayName": "AI21 Labs",
|
|
5
|
+
"aliases": [],
|
|
6
|
+
"tier": 2,
|
|
7
|
+
"wire": {
|
|
8
|
+
"baseURL": "https://api.ai21.com/studio/v1"
|
|
9
|
+
},
|
|
10
|
+
"models": {
|
|
11
|
+
"default": "jamba-large",
|
|
12
|
+
"fallbacks": [
|
|
13
|
+
"jamba-mini",
|
|
14
|
+
"jamba-large-1.7-2025-07",
|
|
15
|
+
"jamba-mini-2-2026-01"
|
|
16
|
+
],
|
|
17
|
+
"fallbackModelName": "jamba-mini",
|
|
18
|
+
"defaultContextWindow": 256000,
|
|
19
|
+
"defaultMaxOutputTokens": 4096,
|
|
20
|
+
"catalog": {
|
|
21
|
+
"jamba-large": {
|
|
22
|
+
"contextWindow": 256000,
|
|
23
|
+
"maxOutputTokens": 4096,
|
|
24
|
+
"pricingPerMTok": {
|
|
25
|
+
"input": 2,
|
|
26
|
+
"output": 8
|
|
27
|
+
},
|
|
28
|
+
"vision": false,
|
|
29
|
+
"status": "production",
|
|
30
|
+
"description": "NeuroLink default. https://docs.ai21.com/docs/jamba-foundation-models (retrieved 2026-09-29) describes Jamba Large as \"Our most powerful and advanced model, designed to handle complex tasks at enterprise scale with superior performance.\"; its Model Details row for Jamba Large lists Max Tokens 256K, Version 1.7, Snapshot 2025-07 and API Endpoint `jamba-large`, and its API Versioning list says `jamba-large` currently points to `jamba-large-1.7-2025-07`. https://docs.ai21.com/reference/jamba-1-6-api-ref (retrieved 2026-09-29) names `jamba-large` and `jamba-mini` as the model names that can be called without specifying a version, and its cURL example sends \"model\": \"jamba-large\". https://www.ai21.com/pricing (retrieved 2026-09-29) lists Jamba Large at $2 / 1M input tokens and $8 / 1M output tokens. The models page gives Input Modality: Text, so vision is false. contextWindow records the page's 256K as 256,000; maxOutputTokens is the Chat request page's statement \"For Jamba models, the maximum allowed value is 4096 tokens.\""
|
|
31
|
+
},
|
|
32
|
+
"jamba-mini": {
|
|
33
|
+
"contextWindow": 256000,
|
|
34
|
+
"maxOutputTokens": 4096,
|
|
35
|
+
"pricingPerMTok": {
|
|
36
|
+
"input": 0.2,
|
|
37
|
+
"output": 0.4
|
|
38
|
+
},
|
|
39
|
+
"vision": false,
|
|
40
|
+
"status": "production",
|
|
41
|
+
"description": "NeuroLink fallback. https://docs.ai21.com/docs/jamba-foundation-models (retrieved 2026-09-29): the Model Details row for Jamba Mini lists Max Tokens 256K, Version 2, Snapshot 2026-01 and API Endpoint `jamba-mini`, and the API Versioning list says `jamba-mini` currently points to `jamba-mini-2-2026-01`. https://www.ai21.com/pricing (retrieved 2026-09-29) describes Jamba Mini as \"Efficient & lightweight model for a wide range of tasks\" at $0.2 / 1M input tokens and $0.4 / 1M output tokens. https://docs.ai21.com/docs/sdk (retrieved 2026-09-29) uses `jamba-mini` in its chat example. The models page gives Input Modality: Text, so vision is false. contextWindow records the page's 256K as 256,000; maxOutputTokens is the Chat request page's statement \"For Jamba models, the maximum allowed value is 4096 tokens.\""
|
|
42
|
+
},
|
|
43
|
+
"jamba-large-1.7-2025-07": {
|
|
44
|
+
"contextWindow": 256000,
|
|
45
|
+
"maxOutputTokens": 4096,
|
|
46
|
+
"vision": false,
|
|
47
|
+
"status": "production",
|
|
48
|
+
"description": "Dated snapshot of Jamba Large. https://docs.ai21.com/docs/jamba-foundation-models (retrieved 2026-09-29) lists it in API Versioning (`jamba-large` currently points to `jamba-large-1.7-2025-07`; `jamba-large-1.7` points to `jamba-large-1.7-2025-07`), and the Model Details row for Jamba Large lists Version 1.7, Snapshot 2025-07 and Max Tokens 256K. The page states: \"We advise using dated versions of the Jamba API to avoid disruptions from model updates and breaking changes.\" Input Modality: Text, so vision is false. Context and output figures are recorded as for `jamba-large` (256K as 256,000; max_tokens 4096 per the Chat request page)."
|
|
49
|
+
},
|
|
50
|
+
"jamba-mini-2-2026-01": {
|
|
51
|
+
"contextWindow": 256000,
|
|
52
|
+
"maxOutputTokens": 4096,
|
|
53
|
+
"vision": false,
|
|
54
|
+
"status": "production",
|
|
55
|
+
"description": "Dated snapshot of Jamba Mini. https://docs.ai21.com/docs/jamba-foundation-models (retrieved 2026-09-29) lists it in API Versioning (`jamba-mini` currently points to `jamba-mini-2-2026-01`; `jamba-mini-2` points to `jamba-mini-2-2026-01`), and the Model Details row for Jamba Mini lists Version 2, Snapshot 2026-01 and Max Tokens 256K. The page states: \"We advise using dated versions of the Jamba API to avoid disruptions from model updates and breaking changes.\" Input Modality: Text, so vision is false. Context and output figures are recorded as for `jamba-mini` (256K as 256,000; max_tokens 4096 per the Chat request page)."
|
|
56
|
+
},
|
|
57
|
+
"jamba-large-1.7": {
|
|
58
|
+
"contextWindow": 256000,
|
|
59
|
+
"maxOutputTokens": 4096,
|
|
60
|
+
"vision": false,
|
|
61
|
+
"status": "production",
|
|
62
|
+
"description": "Version name for Jamba Large. https://docs.ai21.com/docs/jamba-foundation-models (retrieved 2026-09-29) API Versioning list: `jamba-large-1.7` points to `jamba-large-1.7-2025-07`; the Model Details row for Jamba Large lists Version 1.7, Snapshot 2025-07 and Max Tokens 256K. Input Modality: Text, so vision is false. Context and output figures are recorded as for `jamba-large` (256K as 256,000; max_tokens 4096 per the Chat request page)."
|
|
63
|
+
},
|
|
64
|
+
"jamba-mini-2": {
|
|
65
|
+
"contextWindow": 256000,
|
|
66
|
+
"maxOutputTokens": 4096,
|
|
67
|
+
"vision": false,
|
|
68
|
+
"status": "production",
|
|
69
|
+
"description": "Version name for Jamba Mini. https://docs.ai21.com/docs/jamba-foundation-models (retrieved 2026-09-29) API Versioning list: `jamba-mini-2` points to `jamba-mini-2-2026-01`; the Model Details row for Jamba Mini lists Version 2, Snapshot 2026-01 and Max Tokens 256K. Input Modality: Text, so vision is false. Context and output figures are recorded as for `jamba-mini` (256K as 256,000; max_tokens 4096 per the Chat request page)."
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"topModels": [
|
|
73
|
+
"jamba-large",
|
|
74
|
+
"jamba-mini",
|
|
75
|
+
"jamba-large-1.7-2025-07",
|
|
76
|
+
"jamba-mini-2-2026-01",
|
|
77
|
+
"jamba-large-1.7",
|
|
78
|
+
"jamba-mini-2"
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
"capabilities": {
|
|
82
|
+
"text": true,
|
|
83
|
+
"streaming": true,
|
|
84
|
+
"tools": true,
|
|
85
|
+
"toolsWithStreaming": false,
|
|
86
|
+
"structuredOutput": true,
|
|
87
|
+
"structuredOutputWithTools": false,
|
|
88
|
+
"embeddings": false,
|
|
89
|
+
"thinking": false
|
|
90
|
+
},
|
|
91
|
+
"errorRules": [
|
|
92
|
+
{
|
|
93
|
+
"status": 401,
|
|
94
|
+
"class": "authentication",
|
|
95
|
+
"message": "AI21 rejected the API key (HTTP 401; the Chat response page documents 401 as \"Unauthorized (Incorrect API key provided/Invalid Authentication)\"). Check {apiKeyEnvVar}. Create a key: {setupUrl}"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"pattern": "bad or missing authentication",
|
|
99
|
+
"class": "authentication",
|
|
100
|
+
"message": "AI21 reported bad or missing authentication. Check {apiKeyEnvVar}. Create a key: {setupUrl}"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"status": 429,
|
|
104
|
+
"class": "rate-limit",
|
|
105
|
+
"message": "AI21 rate limit (HTTP 429; the Chat response page documents 429 as \"Too Many Requests (You are sending requests too quickly.)\"). https://docs.ai21.com/reference/api-rate-limits lists 10 requests per second and 200 requests per minute for Jamba Large and Jamba Mini."
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"status": 503,
|
|
109
|
+
"class": "provider",
|
|
110
|
+
"message": "AI21 returned HTTP 503 (the Chat response page documents 503 as \"Service Unavailable (The engine is currently overloaded, please try again later)\")."
|
|
111
|
+
}
|
|
112
|
+
],
|
|
113
|
+
"setup": {
|
|
114
|
+
"url": "https://docs.ai21.com/docs/create-api-key",
|
|
115
|
+
"apiKeyFormat": null,
|
|
116
|
+
"billingPolicy": "free-tier",
|
|
117
|
+
"instructions": [
|
|
118
|
+
"1. Visit: https://docs.ai21.com/docs/create-api-key and follow its steps: sign in to AI21 Studio (the page says \"You can sign in using your email address, Google account, GitHub account, or SSO.\"), click Settings in the bottom-left corner of the sidebar, open the API Keys tab, then click Create new key",
|
|
119
|
+
"2. Copy the key when it is shown; the page says \"you won’t be able to view it again\"",
|
|
120
|
+
"3. Free trial: https://docs.ai21.com/docs/usage-cost says \"New accounts are given a $10 credit good for three months on the AI21 platform.\" and, once the trial is exceeded or expires, \"you must provide valid billing information in your account to continue using the AI21 platform\". https://www.ai21.com/pricing shows \"$10 credits for 7 days.\" and \"No credit card needed\" under Free Trial",
|
|
121
|
+
"4. Set {apiKeyEnvVar} in your .env file"
|
|
122
|
+
],
|
|
123
|
+
"description": "Docs-verified only: GET https://api.ai21.com/studio/v1/models answers 200 with an empty data array without a key, so the model ids come from https://docs.ai21.com/docs/jamba-foundation-models and the roster has not been checked; the entry is not yet live-verified. Chat completions are documented at POST https://api.ai21.com/studio/v1/chat/completions with Bearer authentication (https://docs.ai21.com/reference/jamba-1-6-api-ref, https://docs.ai21.com/reference/authentication); the request takes model and messages and the response carries a choices array, with streaming as server-sent events ending in data: [DONE] (https://docs.ai21.com/reference/jamba-api-response). Unauthenticated GETs made 2026-09-29: /models answered 200 {\"data\":[]}; /chat/completions answered 405 {\"detail\":\"Method Not Allowed\"} with header allow: POST; /library/files (a documented endpoint) answered 400 {\"detail\":\"Bad request: bad or missing authentication.\"}. The 401, 429 and 503 errorRules follow the status codes on the Chat response page; the pattern rule matches the /library/files body text. defaultContextWindow and the per-model contextWindow values hold 256000 as a numeric placeholder for the 256K label printed on the models page; no exact token count is taken from a vendor page. toolsWithStreaming is false because the stream parameter text on the Chat request page says \"Must be False if using tools.\" structuredOutput is true on the basis of the response_format value { \"type\": \"json_object\" } that the Chat request page describes as activating JSON mode. No POST request was sent, so the request fields that NeuroLink's chat-completions client can add (stream_options on streaming calls, tool_choice on calls with tools, and a json_schema response_format for schema output) have not been exercised against AI21."
|
|
124
|
+
},
|
|
125
|
+
"evidence": {
|
|
126
|
+
"rosterVerified": {
|
|
127
|
+
"date": "2026-09-29",
|
|
128
|
+
"method": "docs-only, roster not verified — unauthenticated GET https://api.ai21.com/studio/v1/models answered HTTP 200 with body {\"data\":[]} and no key, so model ids are taken from https://docs.ai21.com/docs/jamba-foundation-models (retrieved 2026-09-29)"
|
|
129
|
+
},
|
|
130
|
+
"authProbe": {
|
|
131
|
+
"date": "2026-09-29",
|
|
132
|
+
"status": 400,
|
|
133
|
+
"method": "unauthenticated GET https://api.ai21.com/studio/v1/library/files (a documented endpoint) — body {\"detail\":\"Bad request: bad or missing authentication.\"}; the same day GET /models answered 200 {\"data\":[]} and GET /chat/completions answered 405 {\"detail\":\"Method Not Allowed\"}; credential-free, no key used"
|
|
134
|
+
},
|
|
135
|
+
"billingProbe": {
|
|
136
|
+
"date": "2026-09-29",
|
|
137
|
+
"method": "public pages https://docs.ai21.com/docs/usage-cost (\"New accounts are given a $10 credit good for three months on the AI21 platform.\") and https://www.ai21.com/pricing (\"Start with a free trial, no credit card required, then pay based on usage.\"; Free Trial: \"$10 credits for 7 days.\" and \"No credit card needed\"); credential-free"
|
|
138
|
+
},
|
|
139
|
+
"liveMatrix": null,
|
|
140
|
+
"addedInPR": "https://github.com/juspay/neurolink/pull/1860"
|
|
141
|
+
}
|
|
142
|
+
}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./provider-catalog.schema.json",
|
|
3
|
+
"id": "aionlabs",
|
|
4
|
+
"displayName": "Aion Labs",
|
|
5
|
+
"aliases": [],
|
|
6
|
+
"tier": 2,
|
|
7
|
+
"wire": {
|
|
8
|
+
"baseURL": "https://api.aionlabs.ai/v1"
|
|
9
|
+
},
|
|
10
|
+
"models": {
|
|
11
|
+
"default": "aion-labs/aion-3.5",
|
|
12
|
+
"fallbacks": [
|
|
13
|
+
"aion-labs/aion-3.5-mini",
|
|
14
|
+
"aion-labs/aion-3.0-mini",
|
|
15
|
+
"aion-labs/aion-2.0"
|
|
16
|
+
],
|
|
17
|
+
"defaultContextWindow": 262144,
|
|
18
|
+
"defaultMaxOutputTokens": 32768,
|
|
19
|
+
"catalog": {
|
|
20
|
+
"aion-labs/aion-3.5": {
|
|
21
|
+
"contextWindow": 262144,
|
|
22
|
+
"maxOutputTokens": 32768,
|
|
23
|
+
"pricingPerMTok": {
|
|
24
|
+
"input": 3.0,
|
|
25
|
+
"output": 6.0,
|
|
26
|
+
"cachedInput": 0.75
|
|
27
|
+
},
|
|
28
|
+
"vision": false,
|
|
29
|
+
"status": "production",
|
|
30
|
+
"description": "Recommended default - the model every request example on Aion Labs' own quickstart page (https://www.aionlabs.ai/docs/quickstart/, retrieved 2026-09-29) uses, in JavaScript, Python and curl alike, and released 2026-09-23, the latest release date on the roster (shared with Aion 3.5 Mini). Vendor-described as a multi-model system built on the GLM family, described for stronger narrative structure, tension and conflict, and mature or darker themes (https://www.aionlabs.ai/docs/models/); the vendor homepage describes its API as for creative writing, roleplay, research and production workloads (https://www.aionlabs.ai/). Context 262,144 tokens, max completion 32,768 and modality text->text on the unauthenticated GET /v1/models roster (2026-09-29); $3.00 / $6.00 per MTok input/output, $0.75 cached-input read on the docs models page (https://www.aionlabs.ai/docs/models/, retrieved 2026-09-29). Reasoning cannot be disabled on this model: reasoning_effort accepts only low, high (default) or max, and reasoning tokens share the max_tokens budget (https://www.aionlabs.ai/docs/api-reference/)."
|
|
31
|
+
},
|
|
32
|
+
"aion-labs/aion-3.5-mini": {
|
|
33
|
+
"contextWindow": 262144,
|
|
34
|
+
"maxOutputTokens": 32768,
|
|
35
|
+
"pricingPerMTok": {
|
|
36
|
+
"input": 0.7,
|
|
37
|
+
"output": 1.4,
|
|
38
|
+
"cachedInput": 0.18
|
|
39
|
+
},
|
|
40
|
+
"vision": false,
|
|
41
|
+
"status": "production",
|
|
42
|
+
"description": "Aion 3.5 Mini, released the same day as Aion 3.5 (2026-09-23); vendor-described as a multi-model system built on the GLM family (https://www.aionlabs.ai/docs/models/, which gives it the same family description as Aion 3.5 and does not say how the two differ). Roster-listed only, not called. Context 262,144, max completion 32,768, text->text on the unauthenticated GET /v1/models roster (2026-09-29); $0.70 / $1.40 per MTok input/output, $0.18 cached-input read on https://www.aionlabs.ai/docs/models/ (retrieved 2026-09-29). Reasoning cannot be disabled (reasoning_effort accepts only low, high or max per https://www.aionlabs.ai/docs/api-reference/). Fallback."
|
|
43
|
+
},
|
|
44
|
+
"aion-labs/aion-3.0": {
|
|
45
|
+
"contextWindow": 131072,
|
|
46
|
+
"maxOutputTokens": 32768,
|
|
47
|
+
"pricingPerMTok": {
|
|
48
|
+
"input": 3.0,
|
|
49
|
+
"output": 6.0,
|
|
50
|
+
"cachedInput": 0.75
|
|
51
|
+
},
|
|
52
|
+
"vision": false,
|
|
53
|
+
"status": "production",
|
|
54
|
+
"description": "Aion 3.0, released 2026-05-05; vendor-described as a multi-model system built on the GLM family. Roster-listed only, not called. Context 131,072 (shown as 128K on the docs page), max completion 32,768, text->text on the unauthenticated GET /v1/models roster (2026-09-29); $3.00 / $6.00 per MTok input/output, $0.75 cached-input read on https://www.aionlabs.ai/docs/models/ (retrieved 2026-09-29). reasoning_effort accepts none, low, medium (default), high or max per https://www.aionlabs.ai/docs/api-reference/."
|
|
55
|
+
},
|
|
56
|
+
"aion-labs/aion-3.0-mini": {
|
|
57
|
+
"contextWindow": 131072,
|
|
58
|
+
"maxOutputTokens": 32768,
|
|
59
|
+
"pricingPerMTok": {
|
|
60
|
+
"input": 0.7,
|
|
61
|
+
"output": 1.4,
|
|
62
|
+
"cachedInput": 0.18
|
|
63
|
+
},
|
|
64
|
+
"vision": false,
|
|
65
|
+
"status": "production",
|
|
66
|
+
"description": "Aion 3.0 Mini, released 2026-05-14; vendor-described as a multi-model system built on the DeepSeek family. Roster-listed only, not called. Context 131,072 (shown as 128K on the docs page), max completion 32,768, text->text on the unauthenticated GET /v1/models roster (2026-09-29); $0.70 / $1.40 per MTok input/output, $0.18 cached-input read on https://www.aionlabs.ai/docs/models/ (retrieved 2026-09-29). reasoning_effort accepts none, low, medium (default), high or max per https://www.aionlabs.ai/docs/api-reference/. Fallback."
|
|
67
|
+
},
|
|
68
|
+
"aion-labs/aion-2.0": {
|
|
69
|
+
"contextWindow": 131072,
|
|
70
|
+
"maxOutputTokens": 32768,
|
|
71
|
+
"pricingPerMTok": {
|
|
72
|
+
"input": 0.8,
|
|
73
|
+
"output": 1.6,
|
|
74
|
+
"cachedInput": 0.2
|
|
75
|
+
},
|
|
76
|
+
"vision": false,
|
|
77
|
+
"status": "production",
|
|
78
|
+
"description": "Vendor-described as a variant of DeepSeek V3.2 optimized for immersive roleplaying and storytelling (released 2025-12-21). Roster-listed only, not called. Context 131,072 (shown as 128K on the docs page), max completion 32,768, text->text on the unauthenticated GET /v1/models roster (2026-09-29); $0.80 / $1.60 per MTok input/output, $0.20 cached-input read on https://www.aionlabs.ai/docs/models/ (retrieved 2026-09-29). reasoning_effort accepts none, low, medium (default), high or max per https://www.aionlabs.ai/docs/api-reference/. Fallback."
|
|
79
|
+
},
|
|
80
|
+
"aion-labs/aion-rp-llama-3.1-8b": {
|
|
81
|
+
"contextWindow": 32768,
|
|
82
|
+
"maxOutputTokens": 32768,
|
|
83
|
+
"pricingPerMTok": {
|
|
84
|
+
"input": 0.8,
|
|
85
|
+
"output": 1.6
|
|
86
|
+
},
|
|
87
|
+
"vision": false,
|
|
88
|
+
"status": "production",
|
|
89
|
+
"description": "Aion-RP 1.0 (8B), vendor-described as a variant of Llama 3.1 8B optimized for immersive roleplaying and storytelling (released 2024-11-30); the only non-reasoning model on the roster. Roster-listed only, not called. Context 32,768, max completion 32,768, text->text on the unauthenticated GET /v1/models roster (2026-09-29); $0.80 / $1.60 per MTok input/output, no cached-input price, on https://www.aionlabs.ai/docs/models/ (retrieved 2026-09-29). reasoning_effort is not supported on this model (https://www.aionlabs.ai/docs/api-reference/)."
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"topModels": [
|
|
93
|
+
"aion-labs/aion-3.5",
|
|
94
|
+
"aion-labs/aion-3.5-mini",
|
|
95
|
+
"aion-labs/aion-3.0",
|
|
96
|
+
"aion-labs/aion-3.0-mini",
|
|
97
|
+
"aion-labs/aion-2.0",
|
|
98
|
+
"aion-labs/aion-rp-llama-3.1-8b"
|
|
99
|
+
]
|
|
100
|
+
},
|
|
101
|
+
"capabilities": {
|
|
102
|
+
"text": true,
|
|
103
|
+
"streaming": true,
|
|
104
|
+
"tools": "model-dependent",
|
|
105
|
+
"toolsWithStreaming": false,
|
|
106
|
+
"structuredOutput": false,
|
|
107
|
+
"structuredOutputWithTools": false,
|
|
108
|
+
"embeddings": false,
|
|
109
|
+
"thinking": false
|
|
110
|
+
},
|
|
111
|
+
"errorRules": [
|
|
112
|
+
{
|
|
113
|
+
"status": 429,
|
|
114
|
+
"class": "rate-limit",
|
|
115
|
+
"message": "Aion Labs usage limit exceeded (429 rate_limit_error). Free-tier accounts are limited to 15 requests/min, 20,000 tokens/min and 20,000 tokens/day; limits rise with lifetime credit top-ups - see https://www.aionlabs.ai/docs/rate-limits/"
|
|
116
|
+
}
|
|
117
|
+
],
|
|
118
|
+
"setup": {
|
|
119
|
+
"url": "https://www.aionlabs.ai/accounts/signup/",
|
|
120
|
+
"apiKeyFormat": null,
|
|
121
|
+
"billingPolicy": "free-tier",
|
|
122
|
+
"instructions": [
|
|
123
|
+
"1. Visit: https://www.aionlabs.ai/accounts/signup/ and sign up (GitHub, Google or email)",
|
|
124
|
+
"2. Create an API key from the dashboard's API keys page (https://www.aionlabs.ai/app/api-keys/, sign-in required) and copy it when it is shown",
|
|
125
|
+
"3. Free tier: the pricing page (https://www.aionlabs.ai/pricing/) offers a daily credit allowance with no card required; free-tier limits are 15 requests/min, 20,000 tokens/min and 20,000 tokens/day (https://www.aionlabs.ai/docs/rate-limits/)",
|
|
126
|
+
"4. Set {apiKeyEnvVar} in your .env file"
|
|
127
|
+
],
|
|
128
|
+
"description": "OpenAI-compatible endpoint at https://api.aionlabs.ai/v1 (https://www.aionlabs.ai/docs/), serving a six-model Aion roster; the vendor homepage describes the API as for creative writing, roleplay, research and production workloads (https://www.aionlabs.ai/). Documented errors share one envelope, {\"error\":{\"message\",\"type\"}}, with 400 invalid_request_error, 429 rate_limit_error and 502 server_error (https://www.aionlabs.ai/docs/api-reference/). The docs give no 401 body and none was probed without a credential, so the errorRules carry only the documented 429; auth failures use the default classifier. Non-streaming responses must finish within 125 seconds or the edge returns HTTP 524, so prefer streaming for long or reasoning-heavy requests."
|
|
129
|
+
},
|
|
130
|
+
"evidence": {
|
|
131
|
+
"rosterVerified": {
|
|
132
|
+
"date": "2026-09-29",
|
|
133
|
+
"status": 200,
|
|
134
|
+
"method": "unauthenticated GET https://api.aionlabs.ai/v1/models — 6 models; credential-free, no key used"
|
|
135
|
+
},
|
|
136
|
+
"billingProbe": {
|
|
137
|
+
"date": "2026-09-29",
|
|
138
|
+
"status": 200,
|
|
139
|
+
"method": "public page https://www.aionlabs.ai/pricing/ — Free Tier $0, \"A daily credit allowance to try agent jobs, the API, and browser chat. No card required.\"; https://www.aionlabs.ai/docs/rate-limits/ lists Free as the default tier on signup; credential-free, no signup performed"
|
|
140
|
+
},
|
|
141
|
+
"liveMatrix": null,
|
|
142
|
+
"addedInPR": "https://github.com/juspay/neurolink/pull/1860"
|
|
143
|
+
}
|
|
144
|
+
}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./provider-catalog.schema.json",
|
|
3
|
+
"id": "atlas-cloud",
|
|
4
|
+
"displayName": "Atlas Cloud",
|
|
5
|
+
"aliases": [],
|
|
6
|
+
"tier": 2,
|
|
7
|
+
"wire": {
|
|
8
|
+
"baseURL": "https://api.atlascloud.ai/v1",
|
|
9
|
+
"apiKeyFallbackEnvVars": ["ATLASCLOUD_API_KEY"]
|
|
10
|
+
},
|
|
11
|
+
"models": {
|
|
12
|
+
"default": "deepseek-ai/deepseek-v3.2",
|
|
13
|
+
"fallbacks": [
|
|
14
|
+
"deepseek-ai/deepseek-v4-flash",
|
|
15
|
+
"zai-org/glm-5.3",
|
|
16
|
+
"Qwen/Qwen3-235B-A22B-Instruct-2507"
|
|
17
|
+
],
|
|
18
|
+
"defaultContextWindow": 163840,
|
|
19
|
+
"defaultMaxOutputTokens": 163840,
|
|
20
|
+
"catalog": {
|
|
21
|
+
"deepseek-ai/deepseek-v3.2": {
|
|
22
|
+
"contextWindow": 163840,
|
|
23
|
+
"pricingPerMTok": {
|
|
24
|
+
"input": 0.26,
|
|
25
|
+
"output": 0.38,
|
|
26
|
+
"cachedInput": 0.13
|
|
27
|
+
},
|
|
28
|
+
"vision": false,
|
|
29
|
+
"status": "production",
|
|
30
|
+
"description": "Chosen as default because Atlas Cloud is an aggregator with no single house model, and this is the model its own LLM API Protocols page (https://www.atlascloud.ai/docs/llm-protocols, retrieved 2026-09-29) uses in its chat-completions curl and OpenAI-SDK snippets, its Anthropic Messages example and its Responses example (the Gemini and Images examples on that page use a MODEL_ID placeholder instead, and the quick start, API Keys and LLM / Chat pages use a shorter deepseek-v3 that is not a roster id); its LLM / Chat page (https://www.atlascloud.ai/docs/models/llm) lists DeepSeek V3 first among Featured Models. Live on the unauthenticated GET https://api.atlascloud.ai/v1/models roster (2026-09-29, 120 models): context_length 163840, max_output_length 163840 (equal to the context window, so not recorded as a distinct output ceiling), FP8, input_modalities text only, supported_features json_mode, structured_outputs, tools, reasoning. Pricing from the same roster: $0.26 / $0.38 per MTok input/output, $0.13 per MTok cached-input read. Context-window conflict, unresolved by the vendor: the marketing copy and spec table on the model page (https://www.atlascloud.ai/models/deepseek-ai/deepseek-v3.2, retrieved 2026-09-29) say '128K token context length support' and 'Context Length 128K tokens', while the roster field and the same page's machine-readable reference (https://www.atlascloud.ai/models/deepseek-ai/deepseek-v3.2/llms.txt, retrieved 2026-09-29: 'Context length: 163,840 tokens', 'Max output tokens: 163,840') both say 163,840. The catalog records 163840 (here and in models.defaultContextWindow and models.defaultMaxOutputTokens) because the two API-facing sources agree on it; no request longer than 128K tokens was sent, so the range between 128K and 163,840 is declared by the vendor, not tested. Roster-verified only; not capability-probed without a key."
|
|
31
|
+
},
|
|
32
|
+
"deepseek-ai/deepseek-v4-flash": {
|
|
33
|
+
"contextWindow": 1048576,
|
|
34
|
+
"maxOutputTokens": 393216,
|
|
35
|
+
"pricingPerMTok": {
|
|
36
|
+
"input": 0.14,
|
|
37
|
+
"output": 0.28,
|
|
38
|
+
"cachedInput": 0.028
|
|
39
|
+
},
|
|
40
|
+
"vision": false,
|
|
41
|
+
"status": "production",
|
|
42
|
+
"description": "DeepSeek V4 Flash — first fallback. Live roster GET (https://api.atlascloud.ai/v1/models, 2026-09-29): context_length 1048576, max_output_length 393216, FP4, text-only input, supported_features json_mode, tools, structured_outputs. Roster pricing: $0.14 / $0.28 per MTok input/output, $0.028 per MTok cached-input read. Roster-verified only; not named in a docs example."
|
|
43
|
+
},
|
|
44
|
+
"zai-org/glm-5.3": {
|
|
45
|
+
"contextWindow": 1048576,
|
|
46
|
+
"maxOutputTokens": 131072,
|
|
47
|
+
"pricingPerMTok": {
|
|
48
|
+
"input": 1.4,
|
|
49
|
+
"output": 4.4,
|
|
50
|
+
"cachedInput": 0.26
|
|
51
|
+
},
|
|
52
|
+
"vision": false,
|
|
53
|
+
"status": "production",
|
|
54
|
+
"description": "Zhipu GLM 5.3 — fallback from a second model family (the LLM / Chat page, https://www.atlascloud.ai/docs/models/llm, lists GLM as a featured family). Live roster GET (2026-09-29): context_length 1048576, max_output_length 131072, FP8, text-only input, supported_features json_mode, tools, reasoning, structured_outputs. Roster pricing: $1.40 / $4.40 per MTok input/output, $0.26 per MTok cached-input read. Roster-verified only."
|
|
55
|
+
},
|
|
56
|
+
"Qwen/Qwen3-235B-A22B-Instruct-2507": {
|
|
57
|
+
"contextWindow": 131072,
|
|
58
|
+
"pricingPerMTok": {
|
|
59
|
+
"input": 0.2,
|
|
60
|
+
"output": 0.88,
|
|
61
|
+
"cachedInput": 0.2
|
|
62
|
+
},
|
|
63
|
+
"vision": false,
|
|
64
|
+
"status": "production",
|
|
65
|
+
"description": "Alibaba Qwen3 235B A22B Instruct (2507) — fallback from a third model family (Qwen is a featured family on https://www.atlascloud.ai/docs/models/llm). Live roster GET (2026-09-29): context_length 131072, max_output_length 131072 (equal to context, not recorded separately), FP8, text-only input, supported_features json_mode, structured_outputs, tools. Roster pricing: $0.20 / $0.88 per MTok input/output, $0.20 per MTok cached-input read. Roster-verified only."
|
|
66
|
+
},
|
|
67
|
+
"deepseek-ai/deepseek-v4-pro": {
|
|
68
|
+
"contextWindow": 1048576,
|
|
69
|
+
"maxOutputTokens": 393216,
|
|
70
|
+
"pricingPerMTok": {
|
|
71
|
+
"input": 1.68,
|
|
72
|
+
"output": 3.38,
|
|
73
|
+
"cachedInput": 0.13
|
|
74
|
+
},
|
|
75
|
+
"vision": false,
|
|
76
|
+
"status": "production",
|
|
77
|
+
"description": "DeepSeek V4 Pro. Live roster GET (2026-09-29): context_length 1048576, max_output_length 393216, FP4, text-only input, supported_features json_mode, tools, structured_outputs. Roster pricing: $1.68 / $3.38 per MTok input/output, $0.13 per MTok cached-input read. Roster-verified only."
|
|
78
|
+
},
|
|
79
|
+
"zai-org/glm-5.1": {
|
|
80
|
+
"contextWindow": 202752,
|
|
81
|
+
"pricingPerMTok": {
|
|
82
|
+
"input": 1.26,
|
|
83
|
+
"output": 3.96,
|
|
84
|
+
"cachedInput": 0.234
|
|
85
|
+
},
|
|
86
|
+
"vision": false,
|
|
87
|
+
"status": "production",
|
|
88
|
+
"description": "Zhipu GLM 5.1. Live roster GET (2026-09-29): context_length 202752, max_output_length 202752 (equal to context, not recorded separately), FP8, text-only input, supported_features json_mode, tools, reasoning, structured_outputs. Roster pricing: $1.26 / $3.96 per MTok input/output, $0.234 per MTok cached-input read. Roster-verified only."
|
|
89
|
+
},
|
|
90
|
+
"minimaxai/minimax-m2.7": {
|
|
91
|
+
"contextWindow": 196608,
|
|
92
|
+
"pricingPerMTok": {
|
|
93
|
+
"input": 0.3,
|
|
94
|
+
"output": 1.2,
|
|
95
|
+
"cachedInput": 0.06
|
|
96
|
+
},
|
|
97
|
+
"vision": false,
|
|
98
|
+
"status": "production",
|
|
99
|
+
"description": "MiniMax M2.7 (MiniMax is a featured family on https://www.atlascloud.ai/docs/models/llm). Live roster GET (2026-09-29): context_length 196608, max_output_length 196608 (equal to context, not recorded separately), FP8, text-only input, supported_features json_mode, tools, structured_outputs, reasoning. Roster pricing: $0.30 / $1.20 per MTok input/output, $0.06 per MTok cached-input read. Roster-verified only."
|
|
100
|
+
},
|
|
101
|
+
"moonshotai/kimi-k2.6": {
|
|
102
|
+
"contextWindow": 262144,
|
|
103
|
+
"pricingPerMTok": {
|
|
104
|
+
"input": 0.95,
|
|
105
|
+
"output": 4,
|
|
106
|
+
"cachedInput": 0.16
|
|
107
|
+
},
|
|
108
|
+
"vision": true,
|
|
109
|
+
"status": "production",
|
|
110
|
+
"description": "Moonshot Kimi K2.6 (Kimi is a featured family on https://www.atlascloud.ai/docs/models/llm). Live roster GET (2026-09-29): context_length 262144, max_output_length 262144 (equal to context, not recorded separately), INT4, input_modalities text, image and video, hence vision: true here (an image content part is the documented OpenAI-style image_url shape on https://www.atlascloud.ai/docs/llm-protocols; not independently probed with a real image), supported_features json_mode, structured_outputs, tools, reasoning. Roster pricing: $0.95 / $4.00 per MTok input/output, $0.16 per MTok cached-input read. Roster-verified only; models.visionModel."
|
|
111
|
+
},
|
|
112
|
+
"qwen/qwen3.5-397b-a17b": {
|
|
113
|
+
"contextWindow": 262144,
|
|
114
|
+
"maxOutputTokens": 65536,
|
|
115
|
+
"pricingPerMTok": {
|
|
116
|
+
"input": 0.55,
|
|
117
|
+
"output": 3.5,
|
|
118
|
+
"cachedInput": 0.55
|
|
119
|
+
},
|
|
120
|
+
"vision": true,
|
|
121
|
+
"status": "production",
|
|
122
|
+
"description": "Alibaba Qwen3.5 397B A17B. Live roster GET (2026-09-29): context_length 262144, max_output_length 65536, FP8, input_modalities text, image and video, hence vision: true here (not independently probed with a real image), supported_features json_mode, structured_outputs, tools, reasoning. Roster pricing: $0.55 / $3.50 per MTok input/output, $0.55 per MTok cached-input read. Roster-verified only."
|
|
123
|
+
},
|
|
124
|
+
"qwen/qwen3.5-27b": {
|
|
125
|
+
"contextWindow": 262144,
|
|
126
|
+
"maxOutputTokens": 65536,
|
|
127
|
+
"pricingPerMTok": {
|
|
128
|
+
"input": 0.27,
|
|
129
|
+
"output": 2.16,
|
|
130
|
+
"cachedInput": 0.27
|
|
131
|
+
},
|
|
132
|
+
"vision": true,
|
|
133
|
+
"status": "production",
|
|
134
|
+
"description": "Alibaba Qwen3.5 27B. Live roster GET (2026-09-29): context_length 262144, max_output_length 65536, FP8, input_modalities text, image and video, hence vision: true here (not independently probed with a real image), supported_features json_mode, structured_outputs, tools, reasoning. Roster pricing: $0.27 / $2.16 per MTok input/output, $0.27 per MTok cached-input read. Roster-verified only."
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
"topModels": [
|
|
138
|
+
"deepseek-ai/deepseek-v3.2",
|
|
139
|
+
"deepseek-ai/deepseek-v4-flash",
|
|
140
|
+
"zai-org/glm-5.3",
|
|
141
|
+
"Qwen/Qwen3-235B-A22B-Instruct-2507",
|
|
142
|
+
"deepseek-ai/deepseek-v4-pro",
|
|
143
|
+
"zai-org/glm-5.1",
|
|
144
|
+
"minimaxai/minimax-m2.7",
|
|
145
|
+
"moonshotai/kimi-k2.6",
|
|
146
|
+
"qwen/qwen3.5-397b-a17b",
|
|
147
|
+
"qwen/qwen3.5-27b"
|
|
148
|
+
],
|
|
149
|
+
"visionModel": "moonshotai/kimi-k2.6"
|
|
150
|
+
},
|
|
151
|
+
"capabilities": {
|
|
152
|
+
"text": true,
|
|
153
|
+
"streaming": true,
|
|
154
|
+
"tools": "model-dependent",
|
|
155
|
+
"toolsWithStreaming": false,
|
|
156
|
+
"structuredOutput": true,
|
|
157
|
+
"structuredOutputWithTools": false,
|
|
158
|
+
"embeddings": false,
|
|
159
|
+
"thinking": true
|
|
160
|
+
},
|
|
161
|
+
"errorRules": [
|
|
162
|
+
{
|
|
163
|
+
"status": 401,
|
|
164
|
+
"class": "authentication",
|
|
165
|
+
"message": "Atlas Cloud rejected the request with HTTP 401. Check {apiKeyEnvVar} (create a key at {setupUrl}); Atlas Cloud also answers 401 for a mistyped endpoint path, so confirm the base URL ends in /v1"
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"status": 402,
|
|
169
|
+
"class": "provider",
|
|
170
|
+
"message": "Atlas Cloud reports an insufficient balance (HTTP 402). Add funds at https://www.atlascloud.ai/console/billing and retry"
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"status": 404,
|
|
174
|
+
"class": "invalid-model",
|
|
175
|
+
"message": "Atlas Cloud model '{model}' was not found or is not available to your account (HTTP 404). Pick a current id from https://api.atlascloud.ai/v1/models"
|
|
176
|
+
}
|
|
177
|
+
],
|
|
178
|
+
"setup": {
|
|
179
|
+
"url": "https://www.atlascloud.ai/console/api-keys",
|
|
180
|
+
"apiKeyFormat": "^apikey-.+$",
|
|
181
|
+
"billingPolicy": "no-free-tier",
|
|
182
|
+
"instructions": [
|
|
183
|
+
"1. Visit: https://www.atlascloud.ai/login and sign up or sign in (Google, GitHub, or email and password — one page handles both, see https://www.atlascloud.ai/docs/account/sign-in)",
|
|
184
|
+
"2. Open https://www.atlascloud.ai/console/api-keys, choose Create API Key and copy it immediately — it is shown only once (https://www.atlascloud.ai/docs/api-keys), and Atlas Cloud API keys begin with apikey- (https://www.atlascloud.ai/docs/llm-protocols)",
|
|
185
|
+
"3. Billing is pay-as-you-go from a prepaid balance: the quick start's Step 3 is Add Funds with a $25 minimum top-up (https://www.atlascloud.ai/docs/get-started), and requests are rejected with 402 while the balance is insufficient (https://www.atlascloud.ai/docs/errors). The homepage FAQ also says 'No credit card required to start', but no free-tier terms are documented, so check your balance at https://www.atlascloud.ai/console/billing before relying on it",
|
|
186
|
+
"4. Set {apiKeyEnvVar} in your .env file (ATLASCLOUD_API_KEY, the name used in Atlas Cloud's own docs, is also read)"
|
|
187
|
+
],
|
|
188
|
+
"description": "OpenAI-compatible endpoint at https://api.atlascloud.ai/v1 (https://www.atlascloud.ai/docs/llm-protocols: POST /v1/chat/completions, Bearer auth, 'Point an existing SDK at Atlas Cloud and it generally works unchanged'); the same base URL also accepts Anthropic Messages, Responses and Gemini formats, which NeuroLink does not use. The roster (unauthenticated GET /v1/models, 200, 120 models, 2026-09-29) comes back in a custom {code, msg, data} envelope rather than OpenAI's {object: 'list'} wrapper; data is still an array of {id, ...} entries. The is_ready field on that roster was false on 73 of the 120 entries (by id prefix: anthropic/ 29, openai/ 18, google/ 11, qwen/ 8, xai/ 4, moonshotai/ 2, zai-org/ 1) and absent on the other 47; the models in this catalog are entries where it is absent. Per the LLM API Protocols page, response_format (json_object and json_schema) is documented for models that advertise json_mode or structured_outputs and tools for models that advertise tools, /v1/embeddings does not exist, the gateway inserts 'You are a helpful assistant.' when no system prompt is sent, and 429 responses carry no Retry-After header (back off client-side). Error body per https://www.atlascloud.ai/docs/errors: {\"code\":401,\"msg\":\"unauthorized\",\"request_id\":\"...\",\"data\":null}; a wrong path also returns 401, 402 means insufficient balance, and a 404 covers models not available to the account. Billing status is unresolved: the docs and the API describe a funded balance, while the homepage FAQ says 'No credit card required to start' (the phrase 'free credits' appears only in the homepage blurbs for the GPT Image 2 and Nano Banana 2 models, with no terms) — no page states what a brand-new account can call, so no-free-tier is the conservative schema value, not a verified fact."
|
|
189
|
+
},
|
|
190
|
+
"evidence": {
|
|
191
|
+
"rosterVerified": {
|
|
192
|
+
"date": "2026-09-29",
|
|
193
|
+
"status": 200,
|
|
194
|
+
"method": "unauthenticated GET https://api.atlascloud.ai/v1/models — 120 models; credential-free, no key used"
|
|
195
|
+
},
|
|
196
|
+
"billingProbe": {
|
|
197
|
+
"date": "2026-09-29",
|
|
198
|
+
"method": "public pages https://www.atlascloud.ai/docs/billing, /docs/billing/topup, /docs/billing/credits, /docs/get-started and the https://www.atlascloud.ai homepage — pay-as-you-go prepaid balance, $25 minimum top-up, 402 on insufficient balance; homepage FAQ separately says 'No credit card required to start'; the pages do not reconcile; credential-free"
|
|
199
|
+
},
|
|
200
|
+
"liveMatrix": null,
|
|
201
|
+
"addedInPR": "https://github.com/juspay/neurolink/pull/1860"
|
|
202
|
+
}
|
|
203
|
+
}
|