ACE-Step-1.5 — Music Generation AI Model
Describe the music you want — genre, instrumentation, mood, tempo — and get a finished 48 kHz stereo track. Add lyrics and the model sings them. For an instrumental, put only tags in the lyrics — [Instrumental], or a layout such as [Intro] [Verse] [Break] [Outro] — since plain words there can end up sung. The 8-step turbo checkpoint renders a full song in seconds, so a shorts flow can score itself per clip instead of reusing one background bed. Sung vocals follow the chosen language. Default length is 60s; the slider runs from 5s to 600s, though the upstream paper only measures quality up to 240s. Left alone, the model rounds a track off a few seconds early and fills the rest with silence, so by default it generates a little longer and cuts at the length you asked for with a short fade-out; turn off Fit to length to keep the model's own ending. Key, tempo (BPM) and time signature have their own settings: the model reads them from a dedicated field, so writing them into the style prompt is not enough. Setting a key makes several versions (five by default, adjustable) and keeps the closest, which takes longer.
What it does
ACE-Step 1.5 takes two text inputs and returns one audio file. The first describes the music - genre, instrumentation, tempo, mood - and the second is optional lyrics, with section tags like [Verse] and [Chorus] to mark structure. Out comes a 48 kHz stereo track.
Length is the part worth pausing on: up to 600 seconds in a single generation, rather than a short loop tiled out to fill the time. Turbo means guidance is distilled into the weights: eight steps by default and no prompt-strength setting, so reword the prompt or keep the best of a few seeds.
When to use it
- Scoring a product video, a demo reel or a course module
- Lyrics that get sung as part of the piece, not spoken over it
- An instrumental: write [Instrumental], or only tags like [Intro] [Verse] [Break] [Outro]
- A full-length track in one pass instead of a loop tiled out
- Sung vocals in English, Korean, Japanese, Chinese or Spanish
Details
- CategoryMusic Generation
- Year2026
- LicenseMIT
Compliance & Provenance
- ProviderACE Studio / StepFun (open weights) · Specialized
- EU AI Act RiskLimited Risk
- Art. 50 TransparencyRequired — AI-generated outputs are marked
Inputs & Outputs
- StyleInputstring
What the music should sound like - genre, instruments, mood, tempo. Descriptions go here, not in Lyrics
- LyricsInputstringoptional
Lyrics to sing, with section tags like [Verse] and [Chorus]. For an instrumental, write only tags - [Instrumental], or a layout like [Intro] [Verse] [Break] [Outro] - or leave it empty. Any other words here may be sung
- SoundOutputsound
Generated music (48 kHz stereo WAV)
Parameters
- audio_durationfloatdefault 60range 5–600
Track length in seconds.
Length of the returned track in seconds (5-600). With fit_to_length on (the default) the model generates 5 s more and the track is cut here with a 0.5 s fade-out. Upstream only measures quality up to 240s; past that the length works but is unvalidated.
- vocal_languagestringdefault enoptions: en, ko, ja, zh, es
Language the lyrics are sung in (ignored for an instrumental).
Language code for sung vocals. Ignored when lyrics are empty.
- num_inference_stepsintegerdefault 8range 4–50advanced
Diffusion steps. The turbo checkpoint is distilled for 8.
- seedintegerdefault -1advanced
Random seed. -1 draws a new one each run.
- fit_to_lengthbooleandefault true
Cut the track at the requested length with a short fade-out, so the music runs to the end instead of trailing off into silence. Off keeps the model's own ending, which usually goes quiet a few seconds early.
Default true. The model rounds a track off 2-5 s before the requested length and pads the rest with near-silence; with this on it generates 5 s longer and cuts at audio_duration with a 0.5 s fade-out. Set false to keep the model's own ending (a natural outro, then a silent tail). Lengths under 10 s are always generated at 10 s and cut, whatever this is set to.
- bpmintegerdefault 0range 0–300
Tempo in beats per minute (30-300). 0 lets the model choose.
Tempo the model is conditioned on, 30-300. 0 (default) = the model chooses. Use this rather than writing a BPM into the style prompt. It steers the result; the output is not guaranteed to land on the exact tempo.
- keyscalestringdefault autooptions: auto, C major, C# major, D major, Eb major, E major, F major, +18 more
Musical key. Setting one makes several versions (Key candidates, 5 by default) and keeps the one closest to the key, so the run takes longer. auto lets the model choose.
Key the model is conditioned on: 'auto' (default) or one of the 24 listed keys, e.g. 'D major', 'F# minor'. When a key is set the node renders `key_candidates` candidates (default 3; seeds seed, seed+1, ...) and returns the one on which the requested key most clearly beats every other key - generation time grows with the count. The result is usually in the requested key and sometimes in its relative or dominant. Do not also name the key in the style prompt: a sharp written there ("F# minor") was read as the natural (F).
- timesignaturestringdefault autooptions: auto, 2, 3, 4, 6
Beats per bar: 2, 3 (waltz), 4 (most pop) or 6. auto lets the model choose.
Beats per bar the model is conditioned on: 'auto' (default), '2', '3', '4' or '6' (upstream's convention: 4 = 4/4, 3 = 3/4, 6 = 6/8).
- key_candidatesintegerdefault 5range 1–5advanced
How many versions to make when a key is set; the one closest to the key is kept. More finds the key more often but takes longer. 1 turns this off.
Only used when keyscale is set. Number of renders (1-5, default 5) to choose from; the one where the requested key leads every other key by the widest margin is returned. On 60 dev renders across four keys, exact key matches averaged 37% for one render, 62% for the closest of 3 and 75% for the closest of 5; generation time grows in proportion. 1 = single render with the key as metadata only.
Limitations
- Words in the lyrics outside square brackets may be sung, and so may long stacked tags. Describe the arrangement in the style prompt and keep section tags short; a sentence like "soft intro, then a break" written as lyrics can come back as vocals.
- A set key is usually matched but sometimes lands on a closely related key (its relative or dominant); BPM and time signature steer the model rather than guarantee the result. If the music has to match exactly, check the output.
- Generated audio is synthetic and has to be marked as such under the EU AI Act
Tags
Alternatives in Audio Models
- Music (Lyria)
Google Lyria: text (and optional image) to music — full songs with vocals and lyrics, or 30-second clips. Needs API key.
- Text to Sound Effect (MOSS-SoundEffect v2)
MOSS-SoundEffect v2.0: generate a sound effect from an English description. 48 kHz mono, 0.5-30s.
- Text to Speech (Gemini)
Google Gemini TTS: turn text into a spoken voiceover (Korean/English). Needs API key.
- Text to Speech (Qwen3 Voice Design)
Qwen3-TTS VoiceDesign: on-device text-to-speech with a voice you describe in words. No API key.
- Text to Speech (Qwen3)
Qwen3-TTS: on-device text-to-speech voiceover (Korean/English). No API key.