From 94e136a6b7dd4c4b7730690464be74ba95114e74 Mon Sep 17 00:00:00 2001 From: Mark Backman Date: Wed, 6 May 2026 09:48:39 -0400 Subject: [PATCH 1/2] fix(xai): update default Grok model to grok-4.20-non-reasoning grok-3 is being retired from the xAI API on May 15, 2026. Switch the default to grok-4.20-non-reasoning, which xAI recommends for non-reasoning workloads and is appropriate for real-time voice AI. --- src/pipecat/services/xai/llm.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pipecat/services/xai/llm.py b/src/pipecat/services/xai/llm.py index e0d84373f..1e7656f06 100644 --- a/src/pipecat/services/xai/llm.py +++ b/src/pipecat/services/xai/llm.py @@ -56,7 +56,7 @@ class GrokLLMService(OpenAILLMService): Args: api_key: The API key for accessing Grok's API. base_url: The base URL for Grok API. Defaults to "https://api.x.ai/v1". - model: The model identifier to use. Defaults to "grok-3". + model: The model identifier to use. Defaults to "grok-4.20-non-reasoning". .. deprecated:: 0.0.105 Use ``settings=GrokLLMService.Settings(model=...)`` instead. @@ -67,7 +67,7 @@ class GrokLLMService(OpenAILLMService): """ # 1. Initialize default_settings with hardcoded defaults default_settings = self.Settings( - model="grok-3", + model="grok-4.20-non-reasoning", ) # 2. Apply direct init arg overrides (deprecated) From 138991418aa9bf708da75c651ef74f6bc34fa289 Mon Sep 17 00:00:00 2001 From: Mark Backman Date: Wed, 6 May 2026 09:49:20 -0400 Subject: [PATCH 2/2] docs(changelog): add 4429 entry for Grok default model update --- changelog/4429.changed.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog/4429.changed.md diff --git a/changelog/4429.changed.md b/changelog/4429.changed.md new file mode 100644 index 000000000..11464fb48 --- /dev/null +++ b/changelog/4429.changed.md @@ -0,0 +1 @@ +- Changed the default model for `GrokLLMService` from `grok-3` to `grok-4.20-non-reasoning`. xAI is retiring `grok-3` on May 15, 2026.