diff --git a/src/api/providers/base-openai-compatible-provider.ts b/src/api/providers/base-openai-compatible-provider.ts index 6b472dae63..49c53e3263 100644 --- a/src/api/providers/base-openai-compatible-provider.ts +++ b/src/api/providers/base-openai-compatible-provider.ts @@ -73,12 +73,13 @@ export abstract class BaseOpenAiCompatibleProvider } = this.getModel() const temperature = this.options.modelTemperature ?? this.defaultTemperature - // Ensure max_tokens doesn't exceed the model's configured limit // Users can override with modelMaxTokens, but it should not exceed the model's actual API limit const userMaxTokens = this.options.modelMaxTokens - const max_tokens = userMaxTokens ? Math.min(userMaxTokens, modelMaxTokens) : modelMaxTokens - + const max_tokens = + typeof userMaxTokens === "number" && userMaxTokens > 0 && typeof modelMaxTokens === "number" + ? Math.min(userMaxTokens, modelMaxTokens) + : modelMaxTokens const params: OpenAI.Chat.Completions.ChatCompletionCreateParamsStreaming = { model, max_tokens,