diff --git a/litellm/llms/gemini/realtime/transformation.py b/litellm/llms/gemini/realtime/transformation.py index 36af5179b46..ca6258c5cb3 100644 --- a/litellm/llms/gemini/realtime/transformation.py +++ b/litellm/llms/gemini/realtime/transformation.py @@ -111,7 +111,10 @@ class GeminiRealtimeConfig(BaseRealtimeConfig): return True def _strip_native_audio_speech_config(self) -> bool: - """Google AI Studio native-audio Live was never verified to accept ``speechConfig`` on setup; Vertex AI accepts it.""" + """Google AI Studio native-audio Live was never verified to accept ``speechConfig`` on setup. + + Vertex AI accepts it and reads the requested voice. + """ return True @staticmethod diff --git a/tests/test_litellm/llms/gemini/realtime/test_gemini_realtime_transformation.py b/tests/test_litellm/llms/gemini/realtime/test_gemini_realtime_transformation.py index b18bf677e84..dc2e3963dfc 100644 --- a/tests/test_litellm/llms/gemini/realtime/test_gemini_realtime_transformation.py +++ b/tests/test_litellm/llms/gemini/realtime/test_gemini_realtime_transformation.py @@ -1868,7 +1868,10 @@ def test_is_setup_message_and_is_content_message(): def test_map_openai_params_maps_stock_voice_case_insensitively(): - """Regression: OpenAI stock voices map to Gemini prebuilt voices regardless of casing; unknown names pass through.""" + """Regression: OpenAI stock voices map to Gemini prebuilt voices regardless of casing. + + Unknown names pass through verbatim. + """ cfg = GeminiRealtimeConfig() mapped = cfg.map_openai_params(optional_params={}, non_default_params={"voice": "Alloy"})