@aituber-onair/chat 0.39.0 → 0.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/README.ja.md +17 -9
- package/README.md +16 -9
- package/dist/cjs/constants/kimi.d.ts +7 -0
- package/dist/cjs/constants/kimi.d.ts.map +1 -1
- package/dist/cjs/constants/kimi.js +21 -2
- package/dist/cjs/constants/kimi.js.map +1 -1
- package/dist/cjs/constants/openai.d.ts +3 -2
- package/dist/cjs/constants/openai.d.ts.map +1 -1
- package/dist/cjs/constants/openai.js +5 -1
- package/dist/cjs/constants/openai.js.map +1 -1
- package/dist/cjs/constants/openrouter.d.ts +2 -0
- package/dist/cjs/constants/openrouter.d.ts.map +1 -1
- package/dist/cjs/constants/openrouter.js +4 -1
- package/dist/cjs/constants/openrouter.js.map +1 -1
- package/dist/cjs/constants/zai.d.ts +1 -0
- package/dist/cjs/constants/zai.d.ts.map +1 -1
- package/dist/cjs/constants/zai.js +2 -1
- package/dist/cjs/constants/zai.js.map +1 -1
- package/dist/cjs/services/providers/kimi/KimiChatService.d.ts +1 -0
- package/dist/cjs/services/providers/kimi/KimiChatService.d.ts.map +1 -1
- package/dist/cjs/services/providers/kimi/KimiChatService.js +13 -1
- package/dist/cjs/services/providers/kimi/KimiChatService.js.map +1 -1
- package/dist/cjs/services/providers/kimi/KimiChatServiceProvider.d.ts +2 -0
- package/dist/cjs/services/providers/kimi/KimiChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/kimi/KimiChatServiceProvider.js +22 -5
- package/dist/cjs/services/providers/kimi/KimiChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatService.d.ts.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatService.js +12 -4
- package/dist/cjs/services/providers/openrouter/OpenRouterChatService.js.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.js +2 -0
- package/dist/cjs/services/providers/openrouter/OpenRouterChatServiceProvider.js.map +1 -1
- package/dist/cjs/services/providers/zai/ZAIChatService.js +1 -1
- package/dist/cjs/services/providers/zai/ZAIChatServiceProvider.d.ts.map +1 -1
- package/dist/cjs/services/providers/zai/ZAIChatServiceProvider.js +2 -1
- package/dist/cjs/services/providers/zai/ZAIChatServiceProvider.js.map +1 -1
- package/dist/esm/constants/kimi.d.ts +7 -0
- package/dist/esm/constants/kimi.d.ts.map +1 -1
- package/dist/esm/constants/kimi.js +19 -1
- package/dist/esm/constants/kimi.js.map +1 -1
- package/dist/esm/constants/openai.d.ts +3 -2
- package/dist/esm/constants/openai.d.ts.map +1 -1
- package/dist/esm/constants/openai.js +5 -1
- package/dist/esm/constants/openai.js.map +1 -1
- package/dist/esm/constants/openrouter.d.ts +2 -0
- package/dist/esm/constants/openrouter.d.ts.map +1 -1
- package/dist/esm/constants/openrouter.js +3 -0
- package/dist/esm/constants/openrouter.js.map +1 -1
- package/dist/esm/constants/zai.d.ts +1 -0
- package/dist/esm/constants/zai.d.ts.map +1 -1
- package/dist/esm/constants/zai.js +1 -0
- package/dist/esm/constants/zai.js.map +1 -1
- package/dist/esm/services/providers/kimi/KimiChatService.d.ts +1 -0
- package/dist/esm/services/providers/kimi/KimiChatService.d.ts.map +1 -1
- package/dist/esm/services/providers/kimi/KimiChatService.js +14 -2
- package/dist/esm/services/providers/kimi/KimiChatService.js.map +1 -1
- package/dist/esm/services/providers/kimi/KimiChatServiceProvider.d.ts +2 -0
- package/dist/esm/services/providers/kimi/KimiChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/kimi/KimiChatServiceProvider.js +23 -6
- package/dist/esm/services/providers/kimi/KimiChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatService.d.ts.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatService.js +13 -5
- package/dist/esm/services/providers/openrouter/OpenRouterChatService.js.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.js +3 -1
- package/dist/esm/services/providers/openrouter/OpenRouterChatServiceProvider.js.map +1 -1
- package/dist/esm/services/providers/zai/ZAIChatService.js +2 -2
- package/dist/esm/services/providers/zai/ZAIChatServiceProvider.d.ts.map +1 -1
- package/dist/esm/services/providers/zai/ZAIChatServiceProvider.js +3 -2
- package/dist/esm/services/providers/zai/ZAIChatServiceProvider.js.map +1 -1
- package/dist/umd/aituber-onair-chat.js +80 -10
- package/dist/umd/aituber-onair-chat.min.js +7 -7
- package/package.json +1 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { ENDPOINT_OPENROUTER_API, MODEL_GPT_OSS_20B_FREE, isOpenRouterVisionModel, isOpenRouterFreeModel, OPENROUTER_FREE_RATE_LIMIT_PER_MINUTE, } from '../../../constants/openrouter';
|
|
1
|
+
import { ENDPOINT_OPENROUTER_API, MODEL_GPT_OSS_20B_FREE, MODEL_ZAI_GLM_5_2, isOpenRouterVisionModel, isOpenRouterFreeModel, OPENROUTER_FREE_RATE_LIMIT_PER_MINUTE, } from '../../../constants/openrouter';
|
|
2
2
|
import { getMaxTokensForResponseLength, } from '../../../constants/chat';
|
|
3
3
|
import { ChatServiceHttpClient } from '../../../utils/chatServiceHttpClient';
|
|
4
4
|
import { buildOpenAICompatibleTools, parseOpenAICompatibleOneShot, parseOpenAICompatibleTextStream, parseOpenAICompatibleToolStream, processChatWithOptionalTools, } from '../../../utils';
|
|
5
|
-
const isTokenLimitUnsupportedModel = (model) => model.trim()
|
|
5
|
+
const isTokenLimitUnsupportedModel = (model) => [MODEL_GPT_OSS_20B_FREE, MODEL_ZAI_GLM_5_2].includes(model.trim());
|
|
6
|
+
const getDefaultReasoningEffort = (model) => model.trim() === MODEL_ZAI_GLM_5_2 ? 'none' : undefined;
|
|
6
7
|
/**
|
|
7
8
|
* OpenRouter implementation of ChatService
|
|
8
9
|
* OpenRouter provides access to multiple AI models through a unified API
|
|
@@ -198,23 +199,30 @@ export class OpenRouterChatService {
|
|
|
198
199
|
const tokenLimit = maxTokens !== undefined
|
|
199
200
|
? maxTokens
|
|
200
201
|
: getMaxTokensForResponseLength(this.responseLength);
|
|
201
|
-
// OpenRouter
|
|
202
|
+
// Some OpenRouter reasoning models can spend the whole budget on reasoning
|
|
203
|
+
// tokens before emitting visible content.
|
|
202
204
|
if (tokenLimit && isTokenLimitUnsupportedModel(model)) {
|
|
203
|
-
console.warn(`OpenRouter: Token limits are
|
|
205
|
+
console.warn(`OpenRouter: Token limits are disabled for ${model} because this model can return empty content when a token limit is set.`);
|
|
204
206
|
}
|
|
205
207
|
else if (tokenLimit) {
|
|
206
208
|
body.max_tokens = tokenLimit;
|
|
207
209
|
}
|
|
208
210
|
// Add OpenRouter reasoning control
|
|
211
|
+
const defaultReasoningEffort = getDefaultReasoningEffort(model);
|
|
209
212
|
if (this.reasoning_effort !== undefined ||
|
|
210
213
|
this.includeReasoning !== undefined ||
|
|
211
|
-
this.reasoningMaxTokens
|
|
214
|
+
this.reasoningMaxTokens ||
|
|
215
|
+
defaultReasoningEffort) {
|
|
212
216
|
body.reasoning = {};
|
|
213
217
|
if (this.reasoning_effort && this.reasoning_effort !== 'none') {
|
|
214
218
|
// OpenRouter uses 'low' as the minimum effort level, map 'minimal' to 'low'
|
|
215
219
|
const effort = this.reasoning_effort === 'minimal' ? 'low' : this.reasoning_effort;
|
|
216
220
|
body.reasoning.effort = effort;
|
|
217
221
|
}
|
|
222
|
+
else if (this.reasoning_effort === undefined &&
|
|
223
|
+
defaultReasoningEffort) {
|
|
224
|
+
body.reasoning.effort = defaultReasoningEffort;
|
|
225
|
+
}
|
|
218
226
|
// Default to exclude reasoning to avoid empty responses unless explicitly requested
|
|
219
227
|
if (this.reasoning_effort === 'none' || this.includeReasoning !== true) {
|
|
220
228
|
body.reasoning.exclude = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenRouterChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/openrouter/OpenRouterChatService.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,qCAAqC,GACtC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,6BAA6B,GAC9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AAExB,MAAM,4BAA4B,GAAG,CAAC,KAAa,EAAW,EAAE,CAC9D,KAAK,CAAC,IAAI,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"OpenRouterChatService.js","sourceRoot":"","sources":["../../../../../src/services/providers/openrouter/OpenRouterChatService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenRouterChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openrouter/OpenRouterChatServiceProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OpenRouterChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/openrouter/OpenRouterChatServiceProvider.ts"],"names":[],"mappings":"AAsCA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAIhC;;;GAGG;AACH,qBAAa,6BACX,YAAW,mBAAmB,CAAC,4BAA4B,CAAC;IAE5D;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,4BAA4B,GAAG,WAAW;IAmCrE;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;;OAIG;IACH,kBAAkB,IAAI,MAAM,EAAE;IA6C9B;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAQ3C;;;;OAIG;IACH,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9C,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;IAIhE;;;OAGG;IACH,aAAa,IAAI,MAAM,EAAE;IAIzB;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGpC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MODEL_GPT_OSS_20B_FREE, MODEL_MOONSHOTAI_KIMI_K2_5, MODEL_MOONSHOTAI_KIMI_LATEST, MODEL_OPENROUTER_AUTO, MODEL_OPENROUTER_FUSION, MODEL_OPENAI_GPT_LATEST, MODEL_OPENAI_GPT_MINI_LATEST, MODEL_OPENAI_GPT_5_5_PRO, MODEL_OPENAI_GPT_5_5, MODEL_OPENAI_GPT_5_1_CHAT, MODEL_OPENAI_GPT_5_1_CODEX, MODEL_OPENAI_GPT_5_MINI, MODEL_OPENAI_GPT_5_NANO, MODEL_OPENAI_GPT_4O, MODEL_OPENAI_GPT_4_1_MINI, MODEL_OPENAI_GPT_4_1_NANO, MODEL_ANTHROPIC_CLAUDE_SONNET_LATEST, MODEL_ANTHROPIC_CLAUDE_HAIKU_LATEST, MODEL_ANTHROPIC_CLAUDE_OPUS_4, MODEL_ANTHROPIC_CLAUDE_SONNET_4, MODEL_ANTHROPIC_CLAUDE_3_7_SONNET, MODEL_ANTHROPIC_CLAUDE_3_5_SONNET, MODEL_ANTHROPIC_CLAUDE_4_5_HAIKU, MODEL_GOOGLE_GEMINI_PRO_LATEST, MODEL_GOOGLE_GEMINI_FLASH_LATEST, MODEL_GOOGLE_GEMINI_2_5_PRO, MODEL_GOOGLE_GEMINI_2_5_FLASH, MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025, MODEL_ZAI_GLM_4_7_FLASH, MODEL_ZAI_GLM_4_5_AIR, MODEL_ZAI_GLM_4_5_AIR_FREE, OPENROUTER_FREE_MODELS, isOpenRouterFreeModel, isOpenRouterVisionModel, } from '../../../constants/openrouter';
|
|
1
|
+
import { MODEL_GPT_OSS_20B_FREE, MODEL_MOONSHOTAI_KIMI_K2_5, MODEL_MOONSHOTAI_KIMI_LATEST, MODEL_OPENROUTER_AUTO, MODEL_OPENROUTER_FUSION, MODEL_OPENAI_GPT_LATEST, MODEL_MOONSHOTAI_KIMI_K2_7_CODE, MODEL_OPENAI_GPT_MINI_LATEST, MODEL_OPENAI_GPT_5_5_PRO, MODEL_OPENAI_GPT_5_5, MODEL_OPENAI_GPT_5_1_CHAT, MODEL_OPENAI_GPT_5_1_CODEX, MODEL_OPENAI_GPT_5_MINI, MODEL_OPENAI_GPT_5_NANO, MODEL_OPENAI_GPT_4O, MODEL_OPENAI_GPT_4_1_MINI, MODEL_OPENAI_GPT_4_1_NANO, MODEL_ANTHROPIC_CLAUDE_SONNET_LATEST, MODEL_ANTHROPIC_CLAUDE_HAIKU_LATEST, MODEL_ANTHROPIC_CLAUDE_OPUS_4, MODEL_ANTHROPIC_CLAUDE_SONNET_4, MODEL_ANTHROPIC_CLAUDE_3_7_SONNET, MODEL_ANTHROPIC_CLAUDE_3_5_SONNET, MODEL_ANTHROPIC_CLAUDE_4_5_HAIKU, MODEL_GOOGLE_GEMINI_PRO_LATEST, MODEL_GOOGLE_GEMINI_FLASH_LATEST, MODEL_GOOGLE_GEMINI_2_5_PRO, MODEL_GOOGLE_GEMINI_2_5_FLASH, MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025, MODEL_ZAI_GLM_5_2, MODEL_ZAI_GLM_4_7_FLASH, MODEL_ZAI_GLM_4_5_AIR, MODEL_ZAI_GLM_4_5_AIR_FREE, OPENROUTER_FREE_MODELS, isOpenRouterFreeModel, isOpenRouterVisionModel, } from '../../../constants/openrouter';
|
|
2
2
|
import { OpenRouterChatService } from './OpenRouterChatService';
|
|
3
3
|
import { resolveVisionModel } from '../../../utils';
|
|
4
4
|
/**
|
|
@@ -76,10 +76,12 @@ export class OpenRouterChatServiceProvider {
|
|
|
76
76
|
MODEL_GOOGLE_GEMINI_2_5_FLASH,
|
|
77
77
|
MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025,
|
|
78
78
|
// Z.ai models
|
|
79
|
+
MODEL_ZAI_GLM_5_2,
|
|
79
80
|
MODEL_ZAI_GLM_4_7_FLASH,
|
|
80
81
|
MODEL_ZAI_GLM_4_5_AIR,
|
|
81
82
|
// Other models
|
|
82
83
|
MODEL_MOONSHOTAI_KIMI_LATEST,
|
|
84
|
+
MODEL_MOONSHOTAI_KIMI_K2_7_CODE,
|
|
83
85
|
MODEL_MOONSHOTAI_KIMI_K2_5,
|
|
84
86
|
];
|
|
85
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenRouterChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/openrouter/OpenRouterChatServiceProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OpenRouterChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/openrouter/OpenRouterChatServiceProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ENDPOINT_ZAI_CHAT_COMPLETIONS_API,
|
|
1
|
+
import { ENDPOINT_ZAI_CHAT_COMPLETIONS_API, MODEL_GLM_5_2, MODEL_GLM_4_6V_FLASH, isZaiToolStreamModel, isZaiVisionModel, } from '../../../constants/zai';
|
|
2
2
|
import { getMaxTokensForResponseLength, } from '../../../constants/chat';
|
|
3
3
|
import { ChatServiceHttpClient } from '../../../utils/chatServiceHttpClient';
|
|
4
4
|
import { buildOpenAICompatibleTools, parseOpenAICompatibleOneShot, parseOpenAICompatibleTextStream, parseOpenAICompatibleToolStream, processChatWithOptionalTools, } from '../../../utils';
|
|
@@ -12,7 +12,7 @@ export class ZAIChatService {
|
|
|
12
12
|
* @param model Name of the model to use
|
|
13
13
|
* @param visionModel Name of the vision model
|
|
14
14
|
*/
|
|
15
|
-
constructor(apiKey, model =
|
|
15
|
+
constructor(apiKey, model = MODEL_GLM_5_2, visionModel = MODEL_GLM_4_6V_FLASH, tools, endpoint = ENDPOINT_ZAI_CHAT_COMPLETIONS_API, responseLength, responseFormat, thinking) {
|
|
16
16
|
/** Provider name */
|
|
17
17
|
this.provider = 'zai';
|
|
18
18
|
this.apiKey = apiKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ZAIChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/zai/ZAIChatServiceProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ZAIChatServiceProvider.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/zai/ZAIChatServiceProvider.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAIhC;;GAEG;AACH,qBAAa,sBACX,YAAW,mBAAmB,CAAC,qBAAqB,CAAC;IAErD;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,WAAW;IA2B9D;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAe9B;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;OAEG;IACH,cAAc,IAAI,OAAO;IAIzB,qBAAqB,IAAI,kBAAkB;IAI3C;;OAEG;IACH,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI9C,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;CAGjE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ENDPOINT_ZAI_CHAT_COMPLETIONS_API, MODEL_GLM_5, MODEL_GLM_5_TURBO, MODEL_GLM_4_7, MODEL_GLM_4_7_FLASHX, MODEL_GLM_4_7_FLASH, MODEL_GLM_4_6, MODEL_GLM_4_6V, MODEL_GLM_4_6V_FLASHX, MODEL_GLM_4_6V_FLASH, isZaiVisionModel, } from '../../../constants/zai';
|
|
1
|
+
import { ENDPOINT_ZAI_CHAT_COMPLETIONS_API, MODEL_GLM_5_2, MODEL_GLM_5, MODEL_GLM_5_TURBO, MODEL_GLM_4_7, MODEL_GLM_4_7_FLASHX, MODEL_GLM_4_7_FLASH, MODEL_GLM_4_6, MODEL_GLM_4_6V, MODEL_GLM_4_6V_FLASHX, MODEL_GLM_4_6V_FLASH, isZaiVisionModel, } from '../../../constants/zai';
|
|
2
2
|
import { ZAIChatService } from './ZAIChatService';
|
|
3
3
|
import { resolveVisionModel } from '../../../utils';
|
|
4
4
|
/**
|
|
@@ -33,6 +33,7 @@ export class ZAIChatServiceProvider {
|
|
|
33
33
|
*/
|
|
34
34
|
getSupportedModels() {
|
|
35
35
|
return [
|
|
36
|
+
MODEL_GLM_5_2,
|
|
36
37
|
MODEL_GLM_5,
|
|
37
38
|
MODEL_GLM_5_TURBO,
|
|
38
39
|
MODEL_GLM_4_7,
|
|
@@ -48,7 +49,7 @@ export class ZAIChatServiceProvider {
|
|
|
48
49
|
* Get the default model
|
|
49
50
|
*/
|
|
50
51
|
getDefaultModel() {
|
|
51
|
-
return
|
|
52
|
+
return MODEL_GLM_5_2;
|
|
52
53
|
}
|
|
53
54
|
/**
|
|
54
55
|
* Get the default vision model
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ZAIChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/zai/ZAIChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EACjC,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAOlD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAO,sBAAsB;IAGjC;;OAEG;IACH,iBAAiB,CAAC,OAA8B;QAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,MAAM,WAAW,GAAG,kBAAkB,CAAC;YACrC,KAAK;YACL,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,EAAE;YAChD,sBAAsB,EAAE,CAAC,WAAW,EAAE,EAAE,CACtC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC;YAC1C,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,MAAM,KAAK,GAAiC,OAAO,CAAC,KAAK,CAAC;QAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,IAAI,EAAE,UAAmB,EAAE,CAAC;QAEnE,OAAO,IAAI,cAAc,CACvB,OAAO,CAAC,MAAM,EACd,KAAK,EACL,WAAW,EACX,KAAK,EACL,OAAO,CAAC,QAAQ,IAAI,iCAAiC,EACrD,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,cAAc,EACtB,QAAQ,CACT,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO;YACL,WAAW;YACX,iBAAiB;YACjB,aAAa;YACb,oBAAoB;YACpB,mBAAmB;YACnB,aAAa;YACb,cAAc;YACd,qBAAqB;YACrB,oBAAoB;SACrB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,qBAAqB;QAC3B,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,qBAAqB,EAAE,KAAK,aAAa,CAAC;IACxD,CAAC;IAED,qBAAqB;QACnB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,KAAa;QAClC,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,6BAA6B,CAAC,KAAa;QACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;IAC1E,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"ZAIChatServiceProvider.js","sourceRoot":"","sources":["../../../../../src/services/providers/zai/ZAIChatServiceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EACjC,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAOlD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAO,sBAAsB;IAGjC;;OAEG;IACH,iBAAiB,CAAC,OAA8B;QAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,MAAM,WAAW,GAAG,kBAAkB,CAAC;YACrC,KAAK;YACL,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,EAAE;YAChD,sBAAsB,EAAE,CAAC,WAAW,EAAE,EAAE,CACtC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC;YAC1C,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAC;QAEH,MAAM,KAAK,GAAiC,OAAO,CAAC,KAAK,CAAC;QAC1D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,IAAI,EAAE,UAAmB,EAAE,CAAC;QAEnE,OAAO,IAAI,cAAc,CACvB,OAAO,CAAC,MAAM,EACd,KAAK,EACL,WAAW,EACX,KAAK,EACL,OAAO,CAAC,QAAQ,IAAI,iCAAiC,EACrD,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,cAAc,EACtB,QAAQ,CACT,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO;YACL,aAAa;YACb,WAAW;YACX,iBAAiB;YACjB,aAAa;YACb,oBAAoB;YACpB,mBAAmB;YACnB,aAAa;YACb,cAAc;YACd,qBAAqB;YACrB,oBAAoB;SACrB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,qBAAqB;QAC3B,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,qBAAqB,EAAE,KAAK,aAAa,CAAC;IACxD,CAAC;IAED,qBAAqB;QACnB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,sBAAsB,CAAC,KAAa;QAClC,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,6BAA6B,CAAC,KAAa;QACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC;IAC1E,CAAC;CACF"}
|
|
@@ -59,6 +59,7 @@ var AITuberOnAirChat = (() => {
|
|
|
59
59
|
GeminiNanoChatService: () => GeminiNanoChatService,
|
|
60
60
|
GeminiNanoChatServiceProvider: () => GeminiNanoChatServiceProvider,
|
|
61
61
|
HttpError: () => HttpError,
|
|
62
|
+
KIMI_THINKING_REQUIRED_MODELS: () => KIMI_THINKING_REQUIRED_MODELS,
|
|
62
63
|
KIMI_VISION_SUPPORTED_MODELS: () => KIMI_VISION_SUPPORTED_MODELS,
|
|
63
64
|
KimiChatService: () => KimiChatService,
|
|
64
65
|
KimiChatServiceProvider: () => KimiChatServiceProvider,
|
|
@@ -112,6 +113,7 @@ var AITuberOnAirChat = (() => {
|
|
|
112
113
|
MODEL_GLM_4_7_FLASH: () => MODEL_GLM_4_7_FLASH,
|
|
113
114
|
MODEL_GLM_4_7_FLASHX: () => MODEL_GLM_4_7_FLASHX,
|
|
114
115
|
MODEL_GLM_5: () => MODEL_GLM_5,
|
|
116
|
+
MODEL_GLM_5_2: () => MODEL_GLM_5_2,
|
|
115
117
|
MODEL_GLM_5_TURBO: () => MODEL_GLM_5_TURBO,
|
|
116
118
|
MODEL_GOOGLE_GEMINI_2_5_FLASH: () => MODEL_GOOGLE_GEMINI_2_5_FLASH,
|
|
117
119
|
MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025: () => MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025,
|
|
@@ -140,6 +142,8 @@ var AITuberOnAirChat = (() => {
|
|
|
140
142
|
MODEL_GROK_4_3: () => MODEL_GROK_4_3,
|
|
141
143
|
MODEL_KIMI_K2_5: () => MODEL_KIMI_K2_5,
|
|
142
144
|
MODEL_KIMI_K2_6: () => MODEL_KIMI_K2_6,
|
|
145
|
+
MODEL_KIMI_K2_7_CODE: () => MODEL_KIMI_K2_7_CODE,
|
|
146
|
+
MODEL_KIMI_K2_7_CODE_HIGHSPEED: () => MODEL_KIMI_K2_7_CODE_HIGHSPEED,
|
|
143
147
|
MODEL_MISTRAL_LARGE_2512: () => MODEL_MISTRAL_LARGE_2512,
|
|
144
148
|
MODEL_MISTRAL_LARGE_LATEST: () => MODEL_MISTRAL_LARGE_LATEST,
|
|
145
149
|
MODEL_MISTRAL_MEDIUM_2508: () => MODEL_MISTRAL_MEDIUM_2508,
|
|
@@ -147,6 +151,7 @@ var AITuberOnAirChat = (() => {
|
|
|
147
151
|
MODEL_MISTRAL_SMALL_2603: () => MODEL_MISTRAL_SMALL_2603,
|
|
148
152
|
MODEL_MISTRAL_SMALL_LATEST: () => MODEL_MISTRAL_SMALL_LATEST,
|
|
149
153
|
MODEL_MOONSHOTAI_KIMI_K2_5: () => MODEL_MOONSHOTAI_KIMI_K2_5,
|
|
154
|
+
MODEL_MOONSHOTAI_KIMI_K2_7_CODE: () => MODEL_MOONSHOTAI_KIMI_K2_7_CODE,
|
|
150
155
|
MODEL_MOONSHOTAI_KIMI_LATEST: () => MODEL_MOONSHOTAI_KIMI_LATEST,
|
|
151
156
|
MODEL_O1: () => MODEL_O1,
|
|
152
157
|
MODEL_O1_MINI: () => MODEL_O1_MINI,
|
|
@@ -167,6 +172,7 @@ var AITuberOnAirChat = (() => {
|
|
|
167
172
|
MODEL_ZAI_GLM_4_5_AIR: () => MODEL_ZAI_GLM_4_5_AIR,
|
|
168
173
|
MODEL_ZAI_GLM_4_5_AIR_FREE: () => MODEL_ZAI_GLM_4_5_AIR_FREE,
|
|
169
174
|
MODEL_ZAI_GLM_4_7_FLASH: () => MODEL_ZAI_GLM_4_7_FLASH,
|
|
175
|
+
MODEL_ZAI_GLM_5_2: () => MODEL_ZAI_GLM_5_2,
|
|
170
176
|
MistralChatService: () => MistralChatService,
|
|
171
177
|
MistralChatServiceProvider: () => MistralChatServiceProvider,
|
|
172
178
|
OPENROUTER_CREDITS_THRESHOLD: () => OPENROUTER_CREDITS_THRESHOLD,
|
|
@@ -197,6 +203,7 @@ var AITuberOnAirChat = (() => {
|
|
|
197
203
|
getMaxTokensForResponseLength: () => getMaxTokensForResponseLength,
|
|
198
204
|
installGASFetch: () => installGASFetch,
|
|
199
205
|
isGPT5Model: () => isGPT5Model,
|
|
206
|
+
isKimiThinkingRequiredModel: () => isKimiThinkingRequiredModel,
|
|
200
207
|
isKimiVisionModel: () => isKimiVisionModel,
|
|
201
208
|
isMistralReasoningEffort: () => isMistralReasoningEffort,
|
|
202
209
|
isMistralReasoningEffortModel: () => isMistralReasoningEffortModel,
|
|
@@ -292,6 +299,9 @@ var AITuberOnAirChat = (() => {
|
|
|
292
299
|
if (allowsReasoningNone(model)) {
|
|
293
300
|
return "none";
|
|
294
301
|
}
|
|
302
|
+
if (allowsReasoningMinimal(model)) {
|
|
303
|
+
return "minimal";
|
|
304
|
+
}
|
|
295
305
|
return "medium";
|
|
296
306
|
}
|
|
297
307
|
|
|
@@ -363,6 +373,7 @@ var AITuberOnAirChat = (() => {
|
|
|
363
373
|
var MODEL_OPENROUTER_AUTO = "openrouter/auto";
|
|
364
374
|
var MODEL_OPENROUTER_FUSION = "openrouter/fusion";
|
|
365
375
|
var MODEL_GPT_OSS_20B_FREE = "openai/gpt-oss-20b:free";
|
|
376
|
+
var MODEL_MOONSHOTAI_KIMI_K2_7_CODE = "moonshotai/kimi-k2.7-code";
|
|
366
377
|
var MODEL_MOONSHOTAI_KIMI_K2_5 = "moonshotai/kimi-k2.5";
|
|
367
378
|
var MODEL_MOONSHOTAI_KIMI_LATEST = "~moonshotai/kimi-latest";
|
|
368
379
|
var MODEL_OPENAI_GPT_LATEST = "~openai/gpt-latest";
|
|
@@ -388,6 +399,7 @@ var AITuberOnAirChat = (() => {
|
|
|
388
399
|
var MODEL_GOOGLE_GEMINI_2_5_PRO = "google/gemini-2.5-pro";
|
|
389
400
|
var MODEL_GOOGLE_GEMINI_2_5_FLASH = "google/gemini-2.5-flash";
|
|
390
401
|
var MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025 = "google/gemini-2.5-flash-lite-preview-09-2025";
|
|
402
|
+
var MODEL_ZAI_GLM_5_2 = "z-ai/glm-5.2";
|
|
391
403
|
var MODEL_ZAI_GLM_4_7_FLASH = "z-ai/glm-4.7-flash";
|
|
392
404
|
var MODEL_ZAI_GLM_4_5_AIR = "z-ai/glm-4.5-air";
|
|
393
405
|
var MODEL_ZAI_GLM_4_5_AIR_FREE = "z-ai/glm-4.5-air:free";
|
|
@@ -419,6 +431,7 @@ var AITuberOnAirChat = (() => {
|
|
|
419
431
|
MODEL_GOOGLE_GEMINI_2_5_PRO,
|
|
420
432
|
MODEL_GOOGLE_GEMINI_2_5_FLASH,
|
|
421
433
|
MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025,
|
|
434
|
+
MODEL_MOONSHOTAI_KIMI_K2_7_CODE,
|
|
422
435
|
MODEL_MOONSHOTAI_KIMI_K2_5
|
|
423
436
|
];
|
|
424
437
|
var OPENROUTER_FREE_RATE_LIMIT_PER_MINUTE = 20;
|
|
@@ -436,6 +449,7 @@ var AITuberOnAirChat = (() => {
|
|
|
436
449
|
|
|
437
450
|
// src/constants/zai.ts
|
|
438
451
|
var ENDPOINT_ZAI_CHAT_COMPLETIONS_API = "https://api.z.ai/api/paas/v4/chat/completions";
|
|
452
|
+
var MODEL_GLM_5_2 = "glm-5.2";
|
|
439
453
|
var MODEL_GLM_5 = "glm-5";
|
|
440
454
|
var MODEL_GLM_5_TURBO = "glm-5-turbo";
|
|
441
455
|
var MODEL_GLM_4_7 = "glm-4.7";
|
|
@@ -477,12 +491,26 @@ var AITuberOnAirChat = (() => {
|
|
|
477
491
|
|
|
478
492
|
// src/constants/kimi.ts
|
|
479
493
|
var ENDPOINT_KIMI_CHAT_COMPLETIONS_API = "https://api.moonshot.ai/v1/chat/completions";
|
|
494
|
+
var MODEL_KIMI_K2_7_CODE = "kimi-k2.7-code";
|
|
495
|
+
var MODEL_KIMI_K2_7_CODE_HIGHSPEED = "kimi-k2.7-code-highspeed";
|
|
480
496
|
var MODEL_KIMI_K2_6 = "kimi-k2.6";
|
|
481
497
|
var MODEL_KIMI_K2_5 = "kimi-k2.5";
|
|
482
|
-
var KIMI_VISION_SUPPORTED_MODELS = [
|
|
498
|
+
var KIMI_VISION_SUPPORTED_MODELS = [
|
|
499
|
+
MODEL_KIMI_K2_7_CODE,
|
|
500
|
+
MODEL_KIMI_K2_7_CODE_HIGHSPEED,
|
|
501
|
+
MODEL_KIMI_K2_6,
|
|
502
|
+
MODEL_KIMI_K2_5
|
|
503
|
+
];
|
|
504
|
+
var KIMI_THINKING_REQUIRED_MODELS = [
|
|
505
|
+
MODEL_KIMI_K2_7_CODE,
|
|
506
|
+
MODEL_KIMI_K2_7_CODE_HIGHSPEED
|
|
507
|
+
];
|
|
483
508
|
function isKimiVisionModel(model) {
|
|
484
509
|
return KIMI_VISION_SUPPORTED_MODELS.includes(model);
|
|
485
510
|
}
|
|
511
|
+
function isKimiThinkingRequiredModel(model) {
|
|
512
|
+
return KIMI_THINKING_REQUIRED_MODELS.includes(model);
|
|
513
|
+
}
|
|
486
514
|
|
|
487
515
|
// src/constants/deepseek.ts
|
|
488
516
|
var DEEPSEEK_API_BASE_URL = "https://api.deepseek.com";
|
|
@@ -3520,7 +3548,7 @@ If it's in another language, summarize in that language.
|
|
|
3520
3548
|
if (this.responseFormat) {
|
|
3521
3549
|
body.response_format = this.responseFormat;
|
|
3522
3550
|
}
|
|
3523
|
-
const effectiveThinking = this.
|
|
3551
|
+
const effectiveThinking = this.resolveEffectiveThinking(model);
|
|
3524
3552
|
if (effectiveThinking) {
|
|
3525
3553
|
if (this.isSelfHostedEndpoint()) {
|
|
3526
3554
|
if (effectiveThinking.type === "disabled") {
|
|
@@ -3543,6 +3571,20 @@ If it's in another language, summarize in that language.
|
|
|
3543
3571
|
normalizeEndpoint(value) {
|
|
3544
3572
|
return value.replace(/\/+$/, "");
|
|
3545
3573
|
}
|
|
3574
|
+
resolveEffectiveThinking(model) {
|
|
3575
|
+
if (isKimiThinkingRequiredModel(model)) {
|
|
3576
|
+
if (this.thinking?.type === "disabled") {
|
|
3577
|
+
throw new Error(
|
|
3578
|
+
`Model ${model} requires thinking mode and does not support thinking: disabled.`
|
|
3579
|
+
);
|
|
3580
|
+
}
|
|
3581
|
+
return this.thinking ?? { type: "enabled" };
|
|
3582
|
+
}
|
|
3583
|
+
if (this.tools.length > 0) {
|
|
3584
|
+
return { type: "disabled" };
|
|
3585
|
+
}
|
|
3586
|
+
return this.thinking;
|
|
3587
|
+
}
|
|
3546
3588
|
buildToolsDefinition() {
|
|
3547
3589
|
return buildOpenAICompatibleTools(this.tools, "chat-completions");
|
|
3548
3590
|
}
|
|
@@ -3569,6 +3611,9 @@ If it's in another language, summarize in that language.
|
|
|
3569
3611
|
|
|
3570
3612
|
// src/services/providers/kimi/KimiChatServiceProvider.ts
|
|
3571
3613
|
var KimiChatServiceProvider = class {
|
|
3614
|
+
constructor() {
|
|
3615
|
+
this.defaultThinking = { type: "enabled" };
|
|
3616
|
+
}
|
|
3572
3617
|
/**
|
|
3573
3618
|
* Create a chat service instance
|
|
3574
3619
|
*/
|
|
@@ -3584,8 +3629,7 @@ If it's in another language, summarize in that language.
|
|
|
3584
3629
|
validate: "explicit"
|
|
3585
3630
|
});
|
|
3586
3631
|
const tools = options.tools;
|
|
3587
|
-
const
|
|
3588
|
-
const thinking = tools && tools.length > 0 ? { type: "disabled" } : defaultThinking;
|
|
3632
|
+
const thinking = this.resolveThinking(model, tools, options.thinking);
|
|
3589
3633
|
return new KimiChatService(
|
|
3590
3634
|
options.apiKey,
|
|
3591
3635
|
model,
|
|
@@ -3607,7 +3651,12 @@ If it's in another language, summarize in that language.
|
|
|
3607
3651
|
* Get the list of supported models
|
|
3608
3652
|
*/
|
|
3609
3653
|
getSupportedModels() {
|
|
3610
|
-
return [
|
|
3654
|
+
return [
|
|
3655
|
+
MODEL_KIMI_K2_7_CODE,
|
|
3656
|
+
MODEL_KIMI_K2_7_CODE_HIGHSPEED,
|
|
3657
|
+
MODEL_KIMI_K2_6,
|
|
3658
|
+
MODEL_KIMI_K2_5
|
|
3659
|
+
];
|
|
3611
3660
|
}
|
|
3612
3661
|
/**
|
|
3613
3662
|
* Get the default model
|
|
@@ -3655,6 +3704,20 @@ If it's in another language, summarize in that language.
|
|
|
3655
3704
|
normalizeEndpoint(value) {
|
|
3656
3705
|
return value.replace(/\/+$/, "");
|
|
3657
3706
|
}
|
|
3707
|
+
resolveThinking(model, tools, thinking) {
|
|
3708
|
+
if (isKimiThinkingRequiredModel(model)) {
|
|
3709
|
+
if (thinking?.type === "disabled") {
|
|
3710
|
+
throw new Error(
|
|
3711
|
+
`Model ${model} requires thinking mode and does not support thinking: disabled.`
|
|
3712
|
+
);
|
|
3713
|
+
}
|
|
3714
|
+
return thinking ?? this.defaultThinking;
|
|
3715
|
+
}
|
|
3716
|
+
if (tools && tools.length > 0) {
|
|
3717
|
+
return { type: "disabled" };
|
|
3718
|
+
}
|
|
3719
|
+
return thinking ?? this.defaultThinking;
|
|
3720
|
+
}
|
|
3658
3721
|
};
|
|
3659
3722
|
|
|
3660
3723
|
// src/services/providers/mistral/MistralChatService.ts
|
|
@@ -3986,7 +4049,8 @@ If it's in another language, summarize in that language.
|
|
|
3986
4049
|
};
|
|
3987
4050
|
|
|
3988
4051
|
// src/services/providers/openrouter/OpenRouterChatService.ts
|
|
3989
|
-
var isTokenLimitUnsupportedModel = (model) => model.trim()
|
|
4052
|
+
var isTokenLimitUnsupportedModel = (model) => [MODEL_GPT_OSS_20B_FREE, MODEL_ZAI_GLM_5_2].includes(model.trim());
|
|
4053
|
+
var getDefaultReasoningEffort = (model) => model.trim() === MODEL_ZAI_GLM_5_2 ? "none" : void 0;
|
|
3990
4054
|
var OpenRouterChatService = class {
|
|
3991
4055
|
/**
|
|
3992
4056
|
* Constructor
|
|
@@ -4182,16 +4246,19 @@ If it's in another language, summarize in that language.
|
|
|
4182
4246
|
const tokenLimit = maxTokens !== void 0 ? maxTokens : getMaxTokensForResponseLength(this.responseLength);
|
|
4183
4247
|
if (tokenLimit && isTokenLimitUnsupportedModel(model)) {
|
|
4184
4248
|
console.warn(
|
|
4185
|
-
`OpenRouter: Token limits are
|
|
4249
|
+
`OpenRouter: Token limits are disabled for ${model} because this model can return empty content when a token limit is set.`
|
|
4186
4250
|
);
|
|
4187
4251
|
} else if (tokenLimit) {
|
|
4188
4252
|
body.max_tokens = tokenLimit;
|
|
4189
4253
|
}
|
|
4190
|
-
|
|
4254
|
+
const defaultReasoningEffort = getDefaultReasoningEffort(model);
|
|
4255
|
+
if (this.reasoning_effort !== void 0 || this.includeReasoning !== void 0 || this.reasoningMaxTokens || defaultReasoningEffort) {
|
|
4191
4256
|
body.reasoning = {};
|
|
4192
4257
|
if (this.reasoning_effort && this.reasoning_effort !== "none") {
|
|
4193
4258
|
const effort = this.reasoning_effort === "minimal" ? "low" : this.reasoning_effort;
|
|
4194
4259
|
body.reasoning.effort = effort;
|
|
4260
|
+
} else if (this.reasoning_effort === void 0 && defaultReasoningEffort) {
|
|
4261
|
+
body.reasoning.effort = defaultReasoningEffort;
|
|
4195
4262
|
}
|
|
4196
4263
|
if (this.reasoning_effort === "none" || this.includeReasoning !== true) {
|
|
4197
4264
|
body.reasoning.exclude = true;
|
|
@@ -4313,10 +4380,12 @@ If it's in another language, summarize in that language.
|
|
|
4313
4380
|
MODEL_GOOGLE_GEMINI_2_5_FLASH,
|
|
4314
4381
|
MODEL_GOOGLE_GEMINI_2_5_FLASH_LITE_PREVIEW_09_2025,
|
|
4315
4382
|
// Z.ai models
|
|
4383
|
+
MODEL_ZAI_GLM_5_2,
|
|
4316
4384
|
MODEL_ZAI_GLM_4_7_FLASH,
|
|
4317
4385
|
MODEL_ZAI_GLM_4_5_AIR,
|
|
4318
4386
|
// Other models
|
|
4319
4387
|
MODEL_MOONSHOTAI_KIMI_LATEST,
|
|
4388
|
+
MODEL_MOONSHOTAI_KIMI_K2_7_CODE,
|
|
4320
4389
|
MODEL_MOONSHOTAI_KIMI_K2_5
|
|
4321
4390
|
];
|
|
4322
4391
|
}
|
|
@@ -4595,7 +4664,7 @@ If it's in another language, summarize in that language.
|
|
|
4595
4664
|
* @param model Name of the model to use
|
|
4596
4665
|
* @param visionModel Name of the vision model
|
|
4597
4666
|
*/
|
|
4598
|
-
constructor(apiKey, model =
|
|
4667
|
+
constructor(apiKey, model = MODEL_GLM_5_2, visionModel = MODEL_GLM_4_6V_FLASH, tools, endpoint = ENDPOINT_ZAI_CHAT_COMPLETIONS_API, responseLength, responseFormat, thinking) {
|
|
4599
4668
|
/** Provider name */
|
|
4600
4669
|
this.provider = "zai";
|
|
4601
4670
|
this.apiKey = apiKey;
|
|
@@ -4782,6 +4851,7 @@ If it's in another language, summarize in that language.
|
|
|
4782
4851
|
*/
|
|
4783
4852
|
getSupportedModels() {
|
|
4784
4853
|
return [
|
|
4854
|
+
MODEL_GLM_5_2,
|
|
4785
4855
|
MODEL_GLM_5,
|
|
4786
4856
|
MODEL_GLM_5_TURBO,
|
|
4787
4857
|
MODEL_GLM_4_7,
|
|
@@ -4797,7 +4867,7 @@ If it's in another language, summarize in that language.
|
|
|
4797
4867
|
* Get the default model
|
|
4798
4868
|
*/
|
|
4799
4869
|
getDefaultModel() {
|
|
4800
|
-
return
|
|
4870
|
+
return MODEL_GLM_5_2;
|
|
4801
4871
|
}
|
|
4802
4872
|
/**
|
|
4803
4873
|
* Get the default vision model
|