fix: forward frequency_penalty and presence_penalty to Responses API delegate

Addresses Bugbot review feedback - these parameters were silently
ignored when using api='responses' mode.

Co-Authored-By: João <joao@crewai.com>
This commit is contained in:
Devin AI
2026-04-01 09:20:26 +00:00
parent 1a7d2ad05c
commit 2315422fc4
2 changed files with 8 additions and 0 deletions

View File

@@ -250,6 +250,10 @@ class AzureCompletion(BaseLLM):
delegate_kwargs["response_format"] = self.response_format
if self.stop:
delegate_kwargs["stop"] = self.stop
if self.frequency_penalty is not None:
delegate_kwargs["frequency_penalty"] = self.frequency_penalty
if self.presence_penalty is not None:
delegate_kwargs["presence_penalty"] = self.presence_penalty
self._responses_delegate = OpenAICompletion(**delegate_kwargs)

View File

@@ -1522,6 +1522,8 @@ def test_azure_responses_api_forwards_parameters():
max_tokens=1000,
reasoning_effort="high",
seed=42,
frequency_penalty=0.3,
presence_penalty=0.6,
)
delegate = llm._responses_delegate
@@ -1538,6 +1540,8 @@ def test_azure_responses_api_forwards_parameters():
assert delegate.max_tokens == 1000
assert delegate.reasoning_effort == "high"
assert delegate.seed == 42
assert delegate.frequency_penalty == 0.3
assert delegate.presence_penalty == 0.6
def test_azure_responses_api_call_delegates_to_openai():