claudish 5.4.1 → 5.5.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/dist/index.js +79 -36
- package/package.json +1 -1
- package/recommended-models.json +59 -74
package/dist/index.js
CHANGED
|
@@ -27321,7 +27321,7 @@ Tokens: ${result.usage.input} input, ${result.usage.output} output`;
|
|
|
27321
27321
|
};
|
|
27322
27322
|
}
|
|
27323
27323
|
});
|
|
27324
|
-
server.tool("list_models", "List recommended
|
|
27324
|
+
server.tool("list_models", "List recommended models for coding tasks", {}, async () => {
|
|
27325
27325
|
const models = loadRecommendedModels();
|
|
27326
27326
|
if (models.length === 0) {
|
|
27327
27327
|
return {
|
|
@@ -27347,12 +27347,12 @@ Tokens: ${result.usage.input} input, ${result.usage.output} output`;
|
|
|
27347
27347
|
output += `
|
|
27348
27348
|
## Quick Picks
|
|
27349
27349
|
`;
|
|
27350
|
-
output += "- **
|
|
27351
|
-
output += "- **
|
|
27352
|
-
output += "- **
|
|
27353
|
-
output += "- **
|
|
27354
|
-
output += "- **
|
|
27355
|
-
output += "- **
|
|
27350
|
+
output += "- **Budget**: `minimax-m2.5` ($0.75/1M)\n";
|
|
27351
|
+
output += "- **Large context**: `gemini-3.1-pro-preview` (1M tokens)\n";
|
|
27352
|
+
output += "- **Most advanced**: `gpt-5.2` ($7.88/1M)\n";
|
|
27353
|
+
output += "- **Vision + coding**: `kimi-k2.5` ($1.32/1M)\n";
|
|
27354
|
+
output += "- **Agentic**: `glm-5` ($1.68/1M)\n";
|
|
27355
|
+
output += "- **Multimodal**: `qwen3.5-plus-02-15` ($1.40/1M)\n";
|
|
27356
27356
|
return { content: [{ type: "text", text: output }] };
|
|
27357
27357
|
});
|
|
27358
27358
|
server.tool("search_models", "Search all OpenRouter models by name, provider, or capability", {
|
|
@@ -31119,8 +31119,7 @@ function loadRecommendedModels2() {
|
|
|
31119
31119
|
const data = JSON.parse(content);
|
|
31120
31120
|
return (data.models || []).map((model) => ({
|
|
31121
31121
|
...model,
|
|
31122
|
-
|
|
31123
|
-
source: "OpenRouter"
|
|
31122
|
+
source: "Recommended"
|
|
31124
31123
|
}));
|
|
31125
31124
|
} catch {
|
|
31126
31125
|
return [];
|
|
@@ -33332,6 +33331,7 @@ var init_model_parser = __esm(() => {
|
|
|
33332
33331
|
{ pattern: /^meta-llama\//i, provider: "ollamacloud" },
|
|
33333
33332
|
{ pattern: /^llama-/i, provider: "ollamacloud" },
|
|
33334
33333
|
{ pattern: /^llama3/i, provider: "ollamacloud" },
|
|
33334
|
+
{ pattern: /^qwen/i, provider: "qwen" },
|
|
33335
33335
|
{ pattern: /^poe:/i, provider: "poe" },
|
|
33336
33336
|
{ pattern: /^anthropic\//i, provider: "native-anthropic" },
|
|
33337
33337
|
{ pattern: /^claude-/i, provider: "native-anthropic" }
|
|
@@ -33995,12 +33995,14 @@ var init_auto_route = __esm(() => {
|
|
|
33995
33995
|
OPENROUTER_VENDOR_MAP = {
|
|
33996
33996
|
google: "google",
|
|
33997
33997
|
openai: "openai",
|
|
33998
|
-
kimi: "
|
|
33999
|
-
"kimi-coding": "
|
|
34000
|
-
glm: "
|
|
34001
|
-
"glm-coding": "
|
|
33998
|
+
kimi: "moonshotai",
|
|
33999
|
+
"kimi-coding": "moonshotai",
|
|
34000
|
+
glm: "z-ai",
|
|
34001
|
+
"glm-coding": "z-ai",
|
|
34002
|
+
zai: "z-ai",
|
|
34002
34003
|
minimax: "minimax",
|
|
34003
|
-
ollamacloud: "meta-llama"
|
|
34004
|
+
ollamacloud: "meta-llama",
|
|
34005
|
+
qwen: "qwen"
|
|
34004
34006
|
};
|
|
34005
34007
|
PROVIDER_HINT_MAP = {
|
|
34006
34008
|
"kimi-coding": {
|
|
@@ -35686,24 +35688,20 @@ function printAvailableModels() {
|
|
|
35686
35688
|
const modelInfo = loadModelInfo();
|
|
35687
35689
|
for (const model of basicModels) {
|
|
35688
35690
|
const info = modelInfo[model];
|
|
35689
|
-
|
|
35690
|
-
console.log(` ${displayModel}`);
|
|
35691
|
+
console.log(` ${model}`);
|
|
35691
35692
|
console.log(` ${info.name} - ${info.description}`);
|
|
35692
35693
|
console.log("");
|
|
35693
35694
|
}
|
|
35694
35695
|
return;
|
|
35695
35696
|
}
|
|
35696
35697
|
console.log(`
|
|
35697
|
-
|
|
35698
|
+
Recommended Models (last updated: ${lastUpdated}):
|
|
35698
35699
|
`);
|
|
35699
|
-
console.log(" Model
|
|
35700
|
-
console.log(" " + "─".repeat(
|
|
35700
|
+
console.log(" Model Pricing Context Capabilities");
|
|
35701
|
+
console.log(" " + "─".repeat(66));
|
|
35701
35702
|
for (const model of models) {
|
|
35702
|
-
const
|
|
35703
|
-
const
|
|
35704
|
-
const modelIdPadded = modelId.padEnd(30);
|
|
35705
|
-
const provider = model.provider.length > 10 ? model.provider.substring(0, 7) + "..." : model.provider;
|
|
35706
|
-
const providerPadded = provider.padEnd(10);
|
|
35703
|
+
const modelId = model.id.length > 28 ? model.id.substring(0, 25) + "..." : model.id;
|
|
35704
|
+
const modelIdPadded = modelId.padEnd(28);
|
|
35707
35705
|
let pricing = model.pricing?.average || "N/A";
|
|
35708
35706
|
if (pricing.includes("-1000000")) {
|
|
35709
35707
|
pricing = "varies";
|
|
@@ -35717,7 +35715,7 @@ Available OpenRouter Models (last updated: ${lastUpdated}):
|
|
|
35717
35715
|
const reasoning = model.supportsReasoning ? "\uD83E\uDDE0" : " ";
|
|
35718
35716
|
const vision = model.supportsVision ? "\uD83D\uDC41️ " : " ";
|
|
35719
35717
|
const capabilities = `${tools} ${reasoning} ${vision}`;
|
|
35720
|
-
console.log(` ${modelIdPadded} ${
|
|
35718
|
+
console.log(` ${modelIdPadded} ${pricingPadded} ${contextPadded} ${capabilities}`);
|
|
35721
35719
|
}
|
|
35722
35720
|
console.log("");
|
|
35723
35721
|
console.log(" Capabilities: \uD83D\uDD27 Tools \uD83E\uDDE0 Reasoning \uD83D\uDC41️ Vision");
|
|
@@ -35734,14 +35732,7 @@ function printAvailableModelsJSON() {
|
|
|
35734
35732
|
try {
|
|
35735
35733
|
const jsonContent = readFileSync9(jsonPath, "utf-8");
|
|
35736
35734
|
const data = JSON.parse(jsonContent);
|
|
35737
|
-
|
|
35738
|
-
...data,
|
|
35739
|
-
models: data.models.map((model) => ({
|
|
35740
|
-
...model,
|
|
35741
|
-
id: model.id.startsWith("openrouter@") ? model.id : `openrouter@${model.id}`
|
|
35742
|
-
}))
|
|
35743
|
-
};
|
|
35744
|
-
console.log(JSON.stringify(outputData, null, 2));
|
|
35735
|
+
console.log(JSON.stringify(data, null, 2));
|
|
35745
35736
|
} catch (error46) {
|
|
35746
35737
|
const models = getAvailableModels();
|
|
35747
35738
|
const modelInfo = loadModelInfo();
|
|
@@ -35752,7 +35743,7 @@ function printAvailableModelsJSON() {
|
|
|
35752
35743
|
models: models.filter((m) => m !== "custom").map((modelId) => {
|
|
35753
35744
|
const info = modelInfo[modelId];
|
|
35754
35745
|
return {
|
|
35755
|
-
id:
|
|
35746
|
+
id: modelId,
|
|
35756
35747
|
name: info.name,
|
|
35757
35748
|
description: info.description,
|
|
35758
35749
|
provider: info.provider,
|
|
@@ -35824,7 +35815,7 @@ async function fetchGLMCodingModels2() {
|
|
|
35824
35815
|
return [];
|
|
35825
35816
|
}
|
|
35826
35817
|
}
|
|
35827
|
-
var __filename5, __dirname5, VERSION = "5.
|
|
35818
|
+
var __filename5, __dirname5, VERSION = "5.5.0", CACHE_MAX_AGE_DAYS3 = 2, MODELS_JSON_PATH, CLAUDISH_CACHE_DIR3, ALL_MODELS_JSON_PATH2;
|
|
35828
35819
|
var init_cli = __esm(() => {
|
|
35829
35820
|
init_config();
|
|
35830
35821
|
init_model_loader();
|
|
@@ -40897,6 +40888,56 @@ var init_deepseek_adapter = __esm(() => {
|
|
|
40897
40888
|
};
|
|
40898
40889
|
});
|
|
40899
40890
|
|
|
40891
|
+
// src/adapters/glm-adapter.ts
|
|
40892
|
+
var GLM_CONTEXT_WINDOWS, GLM_VISION_MODELS, GLMAdapter;
|
|
40893
|
+
var init_glm_adapter = __esm(() => {
|
|
40894
|
+
init_base_adapter();
|
|
40895
|
+
init_logger();
|
|
40896
|
+
GLM_CONTEXT_WINDOWS = {
|
|
40897
|
+
"glm-5": 128000,
|
|
40898
|
+
"glm-4-plus": 128000,
|
|
40899
|
+
"glm-4-long": 1e6,
|
|
40900
|
+
"glm-4-flash": 128000,
|
|
40901
|
+
"glm-4": 128000,
|
|
40902
|
+
"glm-3-turbo": 128000
|
|
40903
|
+
};
|
|
40904
|
+
GLM_VISION_MODELS = ["glm-4v", "glm-4v-plus", "glm-5"];
|
|
40905
|
+
GLMAdapter = class GLMAdapter extends BaseModelAdapter {
|
|
40906
|
+
processTextContent(textContent, accumulatedText) {
|
|
40907
|
+
return {
|
|
40908
|
+
cleanedText: textContent,
|
|
40909
|
+
extractedToolCalls: [],
|
|
40910
|
+
wasTransformed: false
|
|
40911
|
+
};
|
|
40912
|
+
}
|
|
40913
|
+
prepareRequest(request, originalRequest) {
|
|
40914
|
+
if (originalRequest.thinking) {
|
|
40915
|
+
log(`[GLMAdapter] Stripping thinking object (not supported by GLM API)`);
|
|
40916
|
+
delete request.thinking;
|
|
40917
|
+
}
|
|
40918
|
+
return request;
|
|
40919
|
+
}
|
|
40920
|
+
shouldHandle(modelId) {
|
|
40921
|
+
return modelId.includes("glm-") || modelId.includes("zhipu/");
|
|
40922
|
+
}
|
|
40923
|
+
getName() {
|
|
40924
|
+
return "GLMAdapter";
|
|
40925
|
+
}
|
|
40926
|
+
getContextWindow() {
|
|
40927
|
+
const lower = this.modelId.toLowerCase();
|
|
40928
|
+
for (const [pattern, size] of Object.entries(GLM_CONTEXT_WINDOWS)) {
|
|
40929
|
+
if (lower.includes(pattern))
|
|
40930
|
+
return size;
|
|
40931
|
+
}
|
|
40932
|
+
return 128000;
|
|
40933
|
+
}
|
|
40934
|
+
supportsVision() {
|
|
40935
|
+
const lower = this.modelId.toLowerCase();
|
|
40936
|
+
return GLM_VISION_MODELS.some((m) => lower.includes(m));
|
|
40937
|
+
}
|
|
40938
|
+
};
|
|
40939
|
+
});
|
|
40940
|
+
|
|
40900
40941
|
// src/adapters/adapter-manager.ts
|
|
40901
40942
|
class AdapterManager {
|
|
40902
40943
|
adapters;
|
|
@@ -40908,7 +40949,8 @@ class AdapterManager {
|
|
|
40908
40949
|
new OpenAIAdapter(modelId),
|
|
40909
40950
|
new QwenAdapter(modelId),
|
|
40910
40951
|
new MiniMaxAdapter(modelId),
|
|
40911
|
-
new DeepSeekAdapter(modelId)
|
|
40952
|
+
new DeepSeekAdapter(modelId),
|
|
40953
|
+
new GLMAdapter(modelId)
|
|
40912
40954
|
];
|
|
40913
40955
|
this.defaultAdapter = new DefaultAdapter(modelId);
|
|
40914
40956
|
}
|
|
@@ -40932,6 +40974,7 @@ var init_adapter_manager = __esm(() => {
|
|
|
40932
40974
|
init_qwen_adapter();
|
|
40933
40975
|
init_minimax_adapter();
|
|
40934
40976
|
init_deepseek_adapter();
|
|
40977
|
+
init_glm_adapter();
|
|
40935
40978
|
});
|
|
40936
40979
|
|
|
40937
40980
|
// src/adapters/openrouter-adapter.ts
|
package/package.json
CHANGED
package/recommended-models.json
CHANGED
|
@@ -4,19 +4,20 @@
|
|
|
4
4
|
"source": "https://openrouter.ai/models?categories=programming&fmt=cards&order=top-weekly",
|
|
5
5
|
"models": [
|
|
6
6
|
{
|
|
7
|
-
"id": "
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
"
|
|
11
|
-
"
|
|
7
|
+
"id": "minimax-m2.5",
|
|
8
|
+
"openrouterId": "minimax/minimax-m2.5",
|
|
9
|
+
"name": "MiniMax: MiniMax M2.5",
|
|
10
|
+
"description": "MiniMax-M2.5 is a SOTA large language model designed for real-world productivity. Trained in a diverse range of complex real-world digital working environments, M2.5 builds upon the coding expertise of M2.1 to extend into general office work, reaching fluency in generating and operating Word, Excel, and Powerpoint files, context switching between diverse software environments, and working across different agent and human teams. Scoring 80.2% on SWE-Bench Verified, 51.3% on Multi-SWE-Bench, and 76.3% on BrowseComp, M2.5 is also more token efficient than previous generations, having been trained to optimize its actions and output through planning.",
|
|
11
|
+
"provider": "Minimax",
|
|
12
|
+
"category": "programming",
|
|
12
13
|
"priority": 1,
|
|
13
14
|
"pricing": {
|
|
14
|
-
"input": "$0.
|
|
15
|
-
"output": "$1.
|
|
16
|
-
"average": "$0.
|
|
15
|
+
"input": "$0.29/1M",
|
|
16
|
+
"output": "$1.20/1M",
|
|
17
|
+
"average": "$0.75/1M"
|
|
17
18
|
},
|
|
18
|
-
"context": "
|
|
19
|
-
"maxOutputTokens":
|
|
19
|
+
"context": "196K",
|
|
20
|
+
"maxOutputTokens": 196608,
|
|
20
21
|
"modality": "text->text",
|
|
21
22
|
"supportsTools": true,
|
|
22
23
|
"supportsReasoning": true,
|
|
@@ -25,37 +26,39 @@
|
|
|
25
26
|
"recommended": true
|
|
26
27
|
},
|
|
27
28
|
{
|
|
28
|
-
"id": "
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
29
|
+
"id": "kimi-k2.5",
|
|
30
|
+
"openrouterId": "moonshotai/kimi-k2.5",
|
|
31
|
+
"name": "MoonshotAI: Kimi K2.5",
|
|
32
|
+
"description": "Kimi K2.5 is Moonshot AI's native multimodal model, delivering state-of-the-art visual coding capability and a self-directed agent swarm paradigm. Built on Kimi K2 with continued pretraining over approximately 15T mixed visual and text tokens, it delivers strong performance in general reasoning, visual coding, and agentic tool-calling.",
|
|
33
|
+
"provider": "Moonshotai",
|
|
34
|
+
"category": "vision",
|
|
33
35
|
"priority": 2,
|
|
34
36
|
"pricing": {
|
|
35
|
-
"input": "$0.
|
|
36
|
-
"output": "$
|
|
37
|
-
"average": "$
|
|
37
|
+
"input": "$0.45/1M",
|
|
38
|
+
"output": "$2.20/1M",
|
|
39
|
+
"average": "$1.32/1M"
|
|
38
40
|
},
|
|
39
|
-
"context": "
|
|
40
|
-
"maxOutputTokens":
|
|
41
|
-
"modality": "text->text",
|
|
41
|
+
"context": "262K",
|
|
42
|
+
"maxOutputTokens": 65535,
|
|
43
|
+
"modality": "text+image->text",
|
|
42
44
|
"supportsTools": true,
|
|
43
45
|
"supportsReasoning": true,
|
|
44
|
-
"supportsVision":
|
|
46
|
+
"supportsVision": true,
|
|
45
47
|
"isModerated": false,
|
|
46
48
|
"recommended": true
|
|
47
49
|
},
|
|
48
50
|
{
|
|
49
|
-
"id": "
|
|
50
|
-
"
|
|
51
|
-
"
|
|
51
|
+
"id": "glm-5",
|
|
52
|
+
"openrouterId": "z-ai/glm-5",
|
|
53
|
+
"name": "Z.ai: GLM 5",
|
|
54
|
+
"description": "GLM-5 is Z.ai’s flagship open-source foundation model engineered for complex systems design and long-horizon agent workflows. Built for expert developers, it delivers production-grade performance on large-scale programming tasks, rivaling leading closed-source models. With advanced agentic planning, deep backend reasoning, and iterative self-correction, GLM-5 moves beyond code generation to full-system construction and autonomous execution.",
|
|
52
55
|
"provider": "Z-ai",
|
|
53
56
|
"category": "reasoning",
|
|
54
57
|
"priority": 3,
|
|
55
58
|
"pricing": {
|
|
56
|
-
"input": "$0.
|
|
57
|
-
"output": "$
|
|
58
|
-
"average": "$
|
|
59
|
+
"input": "$0.80/1M",
|
|
60
|
+
"output": "$2.56/1M",
|
|
61
|
+
"average": "$1.68/1M"
|
|
59
62
|
},
|
|
60
63
|
"context": "202K",
|
|
61
64
|
"maxOutputTokens": null,
|
|
@@ -67,9 +70,10 @@
|
|
|
67
70
|
"recommended": true
|
|
68
71
|
},
|
|
69
72
|
{
|
|
70
|
-
"id": "
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
+
"id": "gemini-3.1-pro-preview",
|
|
74
|
+
"openrouterId": "google/gemini-3.1-pro-preview",
|
|
75
|
+
"name": "Google: Gemini 3.1 Pro Preview",
|
|
76
|
+
"description": "Gemini 3.1 Pro Preview is Google’s frontier reasoning model, delivering enhanced software engineering performance, improved agentic reliability, and more efficient token usage across complex workflows. Building on the multimodal foundation of the Gemini 3 series, it combines high-precision reasoning across text, image, video, audio, and code with a 1M-token context window. Reasoning Details must be preserved when using multi-turn tool calling, see our docs here: https://openrouter.ai/docs/use-cases/reasoning-tokens#preserving-reasoning. The 3.1 update introduces measurable gains in SWE benchmarks and real-world coding environments, along with stronger autonomous task execution in structured domains such as finance and spreadsheet-based workflows.\n\nDesigned for advanced development and agentic systems, Gemini 3.1 Pro Preview improves long-horizon stability and tool orchestration while increasing token efficiency. It introduces a new medium thinking level to better balance cost, speed, and performance. The model excels in agentic coding, structured planning, multimodal analysis, and workflow automation, making it well-suited for autonomous agents, financial modeling, spreadsheet automation, and high-context enterprise tasks.",
|
|
73
77
|
"provider": "Google",
|
|
74
78
|
"category": "vision",
|
|
75
79
|
"priority": 4,
|
|
@@ -88,62 +92,43 @@
|
|
|
88
92
|
"recommended": true
|
|
89
93
|
},
|
|
90
94
|
{
|
|
91
|
-
"id": "
|
|
92
|
-
"
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
+
"id": "gpt-5.2",
|
|
96
|
+
"openrouterId": "openai/gpt-5.2",
|
|
97
|
+
"name": "OpenAI: GPT-5.2",
|
|
98
|
+
"description": "GPT-5.2 is the latest frontier-grade model in the GPT-5 series, offering stronger agentic and long context perfomance compared to GPT-5.1. It uses adaptive reasoning to allocate computation dynamically, responding quickly to simple queries while spending more depth on complex tasks.\n\nBuilt for broad task coverage, GPT-5.2 delivers consistent gains across math, coding, sciende, and tool calling workloads, with more coherent long-form answers and improved tool-use reliability.",
|
|
99
|
+
"provider": "Openai",
|
|
95
100
|
"category": "reasoning",
|
|
96
101
|
"priority": 5,
|
|
97
102
|
"pricing": {
|
|
98
|
-
"input": "$
|
|
99
|
-
"output": "$
|
|
100
|
-
"average": "$
|
|
103
|
+
"input": "$1.75/1M",
|
|
104
|
+
"output": "$14.00/1M",
|
|
105
|
+
"average": "$7.88/1M"
|
|
101
106
|
},
|
|
102
|
-
"context": "
|
|
103
|
-
"maxOutputTokens":
|
|
104
|
-
"modality": "text->text",
|
|
107
|
+
"context": "400K",
|
|
108
|
+
"maxOutputTokens": 128000,
|
|
109
|
+
"modality": "text+image+file->text",
|
|
105
110
|
"supportsTools": true,
|
|
106
111
|
"supportsReasoning": true,
|
|
107
|
-
"supportsVision":
|
|
108
|
-
"isModerated":
|
|
109
|
-
"recommended": true
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
"id": "deepseek/deepseek-v3.2",
|
|
113
|
-
"name": "DeepSeek: DeepSeek V3.2",
|
|
114
|
-
"description": "DeepSeek-V3.2 is a large language model designed to harmonize high computational efficiency with strong reasoning and agentic tool-use performance. It introduces DeepSeek Sparse Attention (DSA), a fine-grained sparse attention mechanism that reduces training and inference cost while preserving quality in long-context scenarios. A scalable reinforcement learning post-training framework further improves reasoning, with reported performance in the GPT-5 class, and the model has demonstrated gold-medal results on the 2025 IMO and IOI. V3.2 also uses a large-scale agentic task synthesis pipeline to better integrate reasoning into tool-use settings, boosting compliance and generalization in interactive environments.\n\nUsers can control the reasoning behaviour with the `reasoning` `enabled` boolean. [Learn more in our docs](https://openrouter.ai/docs/use-cases/reasoning-tokens#enable-reasoning-with-default-config)",
|
|
115
|
-
"provider": "Deepseek",
|
|
116
|
-
"category": "reasoning",
|
|
117
|
-
"priority": 6,
|
|
118
|
-
"pricing": {
|
|
119
|
-
"input": "$0.25/1M",
|
|
120
|
-
"output": "$0.40/1M",
|
|
121
|
-
"average": "$0.32/1M"
|
|
122
|
-
},
|
|
123
|
-
"context": "163K",
|
|
124
|
-
"maxOutputTokens": 65536,
|
|
125
|
-
"modality": "text->text",
|
|
126
|
-
"supportsTools": true,
|
|
127
|
-
"supportsReasoning": true,
|
|
128
|
-
"supportsVision": false,
|
|
129
|
-
"isModerated": false,
|
|
112
|
+
"supportsVision": true,
|
|
113
|
+
"isModerated": true,
|
|
130
114
|
"recommended": true
|
|
131
115
|
},
|
|
132
116
|
{
|
|
133
|
-
"id": "
|
|
134
|
-
"
|
|
135
|
-
"
|
|
117
|
+
"id": "qwen3.5-plus-02-15",
|
|
118
|
+
"openrouterId": "qwen/qwen3.5-plus-02-15",
|
|
119
|
+
"name": "Qwen: Qwen3.5 Plus 2026-02-15",
|
|
120
|
+
"description": "The Qwen3.5 native vision-language series Plus models are built on a hybrid architecture that integrates linear attention mechanisms with sparse mixture-of-experts models, achieving higher inference efficiency. In a variety of task evaluations, the 3.5 series consistently demonstrates performance on par with state-of-the-art leading models. Compared to the 3 series, these models show a leap forward in both pure-text and multimodal capabilities.",
|
|
136
121
|
"provider": "Qwen",
|
|
137
122
|
"category": "vision",
|
|
138
|
-
"priority":
|
|
123
|
+
"priority": 6,
|
|
139
124
|
"pricing": {
|
|
140
|
-
"input": "
|
|
141
|
-
"output": "
|
|
142
|
-
"average": "
|
|
125
|
+
"input": "$0.40/1M",
|
|
126
|
+
"output": "$2.40/1M",
|
|
127
|
+
"average": "$1.40/1M"
|
|
143
128
|
},
|
|
144
|
-
"context": "
|
|
145
|
-
"maxOutputTokens":
|
|
146
|
-
"modality": "text+image->text",
|
|
129
|
+
"context": "1000K",
|
|
130
|
+
"maxOutputTokens": 65536,
|
|
131
|
+
"modality": "text+image+video->text",
|
|
147
132
|
"supportsTools": true,
|
|
148
133
|
"supportsReasoning": true,
|
|
149
134
|
"supportsVision": true,
|