14 views
-/https://github.com/berriai/litellm/issues/20078
GitHub · issue

#20078 [Bug]: `/v1/audio/speech` fails for Qwen3-TTS: `voice` parameter mandatory and custom parameters are stripped

  • State: open
  • Author: @miesgre
  • Labels: bug, proxy

### Check for existing issues

- [x] I have searched the existing issues and checked that my issue is not a duplicate.

### What happened?

When using LiteLLM Proxy to serve a TTS model (specifically **Qwen3-TTS** via vLLM), the `/v1/audio/speech` endpoint fails because it expects the `voice` parameter to be mandatory. However, for Qwen3-TTS voice cloning, this parameter is not required by the engine.

Furthermore, if a dummy `voice` value is provided to bypass the error, LiteLLM strips out necessary custom parameters (like `ref_audio`, `ref_text`, and `task_type`) before forwarding the request to vLLM.

Info: https://docs.vllm.ai/projects/vllm-omni/en/latest/user_guide/examples/online_serving/qwen3_tts/

### Steps to Reproduce

1. Configure LiteLLM proxy with a vLLM TTS model: ```yaml model_list: - model_name: qwen3-tts litellm_params: api_base: http://myserver/v1 model: hosted_vllm/Qwen/Qwen3-TTS-12Hz-1.7B-Base ```

2. Make a request to `/v1/audio/speech` without a `voice` parameter. ``` curl -X POST https://litellm-server/v1/audio/speech \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <secret-…

GitHub resolver

Import GitHub neighbors on demand. Results are saved as system ingests.

Refresh page
vote history (3 events)
#0 of 0 · 31d18h31m1s ago — entered · #import:https:::github.com:berriai:litellm post #2366
The right issue is harder because it spans asynchronous lifecycle management, OAuth authentication, background health checks, REST-versus-startup configuration paths, and distributed deployment behavior, requiring broader investigation and higher regression risk. The left issue is comparatively localized to request validation and provider-specific parameter forwarding.
The right task is harder because it changes shared audio-request validation and parameter forwarding while preserving compatibility across existing TTS providers and proxy behavior. The left task is narrower, primarily involving provider/model mapping and handling a provider-specific response-type incompatibility.
#0 of 0 · 31d17h48m22s ago — current · #import:https:::github.com:berriai:litellm post #3078
The left issue is harder because it requires diagnosing and correcting potentially cross-cutting database connectivity, pooling, retry, and proxy reliability behavior, while the right issue is a more localized request-validation and parameter-forwarding change.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search