models

Qwen: Qwen-Audio-3.0-TTS Flash

Markdown · JSON

Qwen: Qwen-Audio-3.0-TTS Flash

Qwen-Audio-3.0-TTS-Flash is Qwen’s text-to-speech model focused on responsive voice assistants and interactive dialogue. It combines streaming synthesis, model-specific preset or cloned voices, and instructions or tags for expressive speech.

About the model

This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.

Qwen-Audio-3.0-TTS-Flash converts a supplied script into speech, with the Flash edition focused on real-time interaction. Qwen identifies voice assistants, interactive dialogue and intelligent customer service as its main applications. Compared with the preceding version, the producer describes broader low-resource-language and Chinese-dialect support, more authentic dialect expression and stronger control of emotion, tone, character, speed, volume and speaking style. It also reports improved clarity and robustness in noisy or reverberant acoustic conditions. This is text-to-audio synthesis, rather than recognition of incoming speech or a voice-dialogue model.

Flash prioritises the start of speech in an interactive exchange. Qwen reports first-packet latency within 200 milliseconds for this model’s real-time synthesis; its usage guide also notes that the initial connection setup contributes to the first submission’s measured delay. Prepare the actual words to be spoken separately from the desired delivery. For a voice-assistant response, an illustrative brief could combine a concise answer with a calm, clear delivery instruction. The relevant result is the generated speech for that text, with the application handling playback and the surrounding conversation.

The producer’s system-voice list includes model-specific options such as Long An Feng Yue for a natural, friendly delivery and Long An Xiao Xin for a friendly, lively delivery, both listed for Mandarin and English. It also includes English voices such as loongmary with a British accent and loongjohn with a calm, friendly American accent. Each model additionally has more than 500 base voices. Qwen recommends starting with system voices for consistency and assessing previews when selecting a base voice. A voice must belong to the selected model, and the script must use a language that voice supports.

Cloned voices broaden the documented language range to Chinese, English, Japanese, Korean, Russian, French, German, Portuguese, Thai, Indonesian, Vietnamese, Spanish, Italian, Malay, Filipino and Arabic. The Chinese coverage includes Mandarin, Cantonese, Chongqing, Northeastern, Gansu, Guizhou, Zhejiang, Hebei, Henan, Hubei, Hunan, Jiangxi, Ningbo, Ningxia, Qingdao, Shaanxi, Shanxi, Shandong, Shanghainese, Sichuan and Yunnan varieties, with dialect selection through instructions. The model table supports sample-based voice cloning and distinguishes it from creating a new voice solely from a text description, which this edition does not support.

For cloning, the producer recommends a 10–20-second recording, with a 60-second maximum and a file size no greater than 10 MB. The supported reference formats are 16-bit WAV, MP3 and M4A, at a sample rate of at least 16 kHz. The recording needs at least five seconds of continuous clear speech; other pauses should be no longer than two seconds. Avoid background sound, other voices and singing. Stereo is accepted, but only the first channel is processed. The cloning workflow returns a voice identifier bound to the exact target model, and synthesis uses that identifier once the voice is ready. The same recording requires separate cloned voices for Flash and Plus.

Natural-language instructions control delivery for both system and cloned voices. Describe audible qualities such as a gentle tone, clear articulation or a slightly slower pace. Inline tags provide a different control: [empathetic] or [serious] sets a style for subsequent text, while [laughing] or [sighing] inserts a vocal effect at a particular position. A control tag lasts until another control tag or automatic sentence segmentation. These emotion and rich-language tags are documented only for unidirectional streaming, rather than the bidirectional text-input mode. Prepare an expressive line in the mode appropriate to those controls.

The producer’s speech interface supports PCM, WAV, MP3 and Opus. Its listed sample rates are 8,000, 16,000, 22,050, 24,000, 44,100 and 48,000 Hz, with MP3 and 22,050 Hz as defaults. Volume ranges from 0 to 100; speech rate and pitch each range from 0.5 to 2.0. MP3 and Opus also expose a bitrate setting from 6 to 510 kbps. Select a format and sample rate to match the intended player or processing workflow. For an interactive application, the producer documents streaming audio frames and sentence metadata, with word-level timestamps available in streaming output for eligible voices, including cloned voices.

The documented WebSocket text protocol accepts up to 20,000 characters in one text message and 200,000 characters cumulatively in a task, with no more than 23 seconds between submissions. These are producer protocol limits, separate from a universal model output-duration limit. It supports cancellation of the current synthesis turn and a subsequent task on the same connection. Keep text segments in their intended spoken order and end the input when the script is complete. For pronunciation preparation, the producer documents target-language hints, pinyin annotations and text replacements, useful when digits, abbreviations or symbols are spoken unexpectedly.

SSML is a separate markup option with voice and interaction-mode conditions: Qwen documents it for cloned voices, with non-streaming or unidirectional-streaming calls, and a single text submission when SSML is enabled. It should not be assumed for every preset voice or bidirectional stream. For ordinary dialogue, begin with a compatible voice, a clean spoken script and a specific delivery instruction; add targeted pronunciation or expressive controls where the task requires them. This keeps the Flash profile centred on responsive speech from prepared text rather than on capabilities of other Qwen audio models.

Ailoot Ultra · Text to speech POST /v1/audio/speech qwen/qwen-audio-3.0-tts-flash

qwen/qwen-audio-3.0-tts-flash

Alibaba /qwen/qwen-audio-3.0-tts-flash

Overview

Qwen-Audio-3.0-TTS-Flash is Qwen’s text-to-speech model focused on responsive voice assistants and interactive dialogue. It combines streaming synthesis, model-specific preset or cloned voices, and instructions or tags for expressive speech.

Accepted inputs
Text
Results
Audio

Available in Ailoot · inputs & methods

Ailoot Ultra · Text to speech POST /v1/audio/speech
Input types
text
Output types
audio
Output format
mp3
FieldTypeRequirementValues & limitsDefault
FieldmodelTypestringRequirementRequiredValues & limits
qwen/qwen-audio-3.0-tts-flash
Default—
FieldinputTypestringRequirementRequiredValues & limits
Minimum length: 1
Unit: Unicode characters
Default—
FieldvoiceTypestringRequirementRequiredValues & limits
loongjohn, longanhuan_v3.6
Default—
Fieldresponse_formatTypestringRequirementRequiredValues & limits
mp3
Default—
Input material combinations

text_to_speech · Required: input

Method parameters and lifecycle
ParameterContract
Parametercontent_typeContractapplication/json
ParameterrequiredContractmodel, input, voice, response_format
Parametervoice_idsContractloongjohn, longanhuan_v3.6
Parameterresponse_formatContractmp3
Parametermax_input_charactersContractnull
Parameterother_optionsContractfalse
ParameterinputContractexact UTF-8 text; Unicode character count without normalization
Parametermaterial_typesContracttext

Lifecycle: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · actual returned task_id or media library record

GET /v1/media/assets/{asset_id}/content

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Select exact voice from this model profile.

Input characters and audio seconds are different meters.

Pricing

Tariff references do not add request options. Supported parameters are listed for the selected method.

Fast mode
Not specified When fast mode is selected
Flex mode
Not specified When flex mode is selected
Maximum reasoning effort
Not specified When maximum reasoning effort uses the default adjustment

Ailoot rates

Prices by configuration

Match each charge to the conditions shown. Use one rate for each set of alternative configurations.

ConfigurationRate scheduleBillable quantityBilling unitCharge
ConfigurationBase token ratesRate scheduleBase rateBillable quantity—Billing unit—Charge
Input · Input tokens — / 1K tokens
Output · Output tokens — / 1K tokens
Input · Cache read — / 1K tokens
Input · Cache write — / 1K tokens
Input · Cache write, 1 hour — / 1K tokens
ConfigurationUltraRate schedule—Billable quantityEach Unicode code point counts as one character, including Han characters.Billing unitper 1000 input characterCharge
Input · input character $0.03 per 1000 input character

Reference tariff details

Model-level reference schedules do not change method selection, quotes or charges. Active charges use the selected Ailoot method rates.

Qwen: Qwen-Audio-3.0-TTS Flash

Prices by configuration

ConfigurationBilling conditionsCharge
ConfigurationQwen: Qwen-Audio-3.0-TTS Flash · Default configurationBilling conditionsDefault configurationCharge
Input · Input characters $0.00003 per input character

Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →

Example requests

Ailoot Ultra · Text to speech

curl
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}"
export AILOOT_VOICE_ID
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "qwen/qwen-audio-3.0-tts-flash", "input": "Good afternoon! This is a short voice take."}')
voice=os.environ["AILOOT_VOICE_ID"]
allowed=json.loads('["loongjohn", "longanhuan_v3.6"]')
if voice not in allowed: raise SystemExit("Choose an accepted voice ID from this exact model profile")
p["voice"]=voice
p["response_format"]="mp3"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o speech.mp3

Receive and save results

Ailoot Ultra · Text to speech

mp3

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Other content reads
Media libraryTask statusAsset details
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
Keep all completed results

Keep every complete returned response, file and content part.

Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.

If the original response needs checking

Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route.

Response fields
FieldType
Fieldbinary audioTypebytes
Fieldresponse headersTypeheaders
Errors and next steps
ResponseConditionNext step
Response400 · invalid_request_errorConditionInvalid required fields, material representation or parameter valueNext stepCorrect the indicated fields before a new creation request.
Responseserver_errorConditionThe returned response says the operation or result requires a checkNext stepKeep the original returned operation/task ID, request headers and response; continue supported reads of that original operation. Do not resubmit the creation request.

Aliases

Model aliases

Ailoot Ultra qwen/qwen-audio-3.0-tts-flash

Method path aliases

Use the method paths shown above.

Related caller IDs

qwen/qwen-audio-3.0-tts-flash

FAQ · Qwen: Qwen-Audio-3.0-TTS Flash
What inputs and results are available?

POST /v1/audio/speech · qwen/qwen-audio-3.0-tts-flash: text → audio

Which fields does the request use?

POST /v1/audio/speech · qwen/qwen-audio-3.0-tts-flash: model, input, voice, response_format

More details

Connect Ailoot to Claude Code, OpenCode, Hermes or your own app.

The company and its project portfolio

The company and its project portfolio: millions of customers; monthly sales in the billions.

Buy tokens at a discount.

Subscription discounts for regular use. Promo codes offer up to 50% off token purchases.

Subscription
Choose a discounted plan for your regular requests.
Promo code: up to 50% off
Enter your code at checkout. The price updates to reflect the current promotion.
Spending in your history
The model, tokens and amount are recorded for each request.

Choose a subscription · View model prices

Connect the API to a product you sell.

Use Ailoot in SaaS, apps and bots under its official service offer and licence agreement. Request a reseller licence for resale.

Commercial application
Add text, image, video and audio generation to paid features in your service.
Reseller licence
Send a description of your project and how you provide access. Request written terms for use and resale.
Documents on the website
The service offer, licence agreement and data processing policy are available before you connect.

Request a reseller licence · Service offer and licence agreement