diff --git a/packages/core/src/services/modelConfigService.ts b/packages/core/src/services/modelConfigService.ts index d92532fd3a..949529b87e 100644 --- a/packages/core/src/services/modelConfigService.ts +++ b/packages/core/src/services/modelConfigService.ts @@ -488,6 +488,14 @@ export class ModelConfigService { ); } + // Automatically strip thinkingConfig if the model does not support thinking. + const modelDefinition = this.getModelDefinition(resolved.model); + if (modelDefinition && modelDefinition.features?.thinking === false) { + if (resolved.generateContentConfig.thinkingConfig) { + delete resolved.generateContentConfig.thinkingConfig; + } + } + // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion return { model: resolved.model,