diff --git a/src/agents/realtime/session.py b/src/agents/realtime/session.py index 89f63b02fa..53726e234e 100644 --- a/src/agents/realtime/session.py +++ b/src/agents/realtime/session.py @@ -693,9 +693,11 @@ async def _handle_tool_call( # Update current agent self._current_agent = result - # Get updated model settings from new agent + # Get updated model settings from new agent, preserving transport-configured + # settings (e.g. audio format) from initial_model_settings so they are not + # reset to defaults during the handoff session update. updated_settings = await self._get_updated_model_settings_from_agent( - starting_settings=None, + starting_settings=self._model_config.get("initial_model_settings", None), agent=self._current_agent, )