diff --git a/web/modules/contrib/ai_provider_openai/src/Plugin/AiProvider/OpenAiProvider.php b/web/modules/contrib/ai_provider_openai/src/Plugin/AiProvider/OpenAiProvider.php
index 37aa209a9..54795e1f7 100644
--- a/web/modules/contrib/ai_provider_openai/src/Plugin/AiProvider/OpenAiProvider.php
+++ b/web/modules/contrib/ai_provider_openai/src/Plugin/AiProvider/OpenAiProvider.php
@@ -182,6 +182,14 @@ public function getModelSettings(string $model_id, array $generalConfig = []): a
       $generalConfig['max_tokens']['default'] = 2048;
     }
 
+    // Do this change for o1, o3 and gpt-5 models.
+    if (str_starts_with($model_id, 'gpt-5') || str_starts_with($model_id, 'o1') || str_starts_with($model_id, 'o3')) {
+      if (array_key_exists('max_tokens', $generalConfig)) {
+        $generalConfig['max_completion_tokens'] = $generalConfig['max_tokens'];
+        unset($generalConfig['max_tokens']);
+      }
+    }
+
     if (($model_id == 'dall-e-3') || strpos($model_id, 'gpt-image') === 0) {
       $generalConfig['quality'] = [
         'label' => 'Quality',
