
MiniMax Lyrics Generation API by MiniMax
MiniMax Lyrics Generation is a dedicated lyric-writing model that turns a one-line theme into a complete, professionally structured set of song lyrics - title, style tags, and sections marked with [Verse]/[Chorus] structure tags - and can also edit, continue, or restructure existing lyrics, with output directly usable as the lyrics input of MiniMax's music models.
MiniMax Lyrics Generation को MiniMax द्वारा विकसित किया गया है। Atlas Cloud (Atlas Cloud AI LLC द्वारा संचालित) इस तक पहुँच प्रदान करता है, इसका स्वामी नहीं है। सभी ट्रेडमार्क उनके संबंधित स्वामियों की संपत्ति हैं।
MiniMax Lyrics Generation
Developer: MiniMax
Model ID: minimax/lyrics-generation
Overview
MiniMax Lyrics Generation is a dedicated lyric-writing model that turns a one-line theme into a complete, professionally structured set of song lyrics. It does not just produce verse text: each result arrives with a song title, a set of style tags describing the intended genre and mood, and lyrics already segmented into named sections — [Intro], [Verse], [Pre Chorus], [Chorus], [Bridge], [Outro] and more.
That structure is the point. The section tags this model emits are the same tags MiniMax's music models read to control arrangement, so its output can be passed straight into minimax/music-3.0 as the lyrics input with no reformatting. The two models together form the standard two-step songwriting workflow: write the words, review or edit them, then compose the track.
Beyond writing from scratch, the model also works as a lyric editor — give it existing lyrics and an instruction, and it will rewrite, extend, or restructure them while keeping the parts you want intact.
How It Works
The model operates in one of two modes, selected by the mode parameter.
Write Full Song
In write_full_song mode, the prompt describes the song you want — theme, style, mood, scenario — and the model composes an entire lyric sheet from nothing. It decides the arrangement, writes each section, keeps the rhyme scheme and line lengths singable, and maintains a coherent narrative and emotional arc from opening to close. The lyrics field must be left empty in this mode.
If the prompt is left empty as well, the model generates a random song rather than failing — useful for ideation or sampling.
Edit Existing Lyrics
In edit mode, you supply existing text in the lyrics field and use the prompt as the editing instruction. This covers continuing an unfinished draft, rewriting a chorus, shifting the tone or register, tightening line lengths, translating the register to a different style, or adding missing sections. Because the model already understands section tags, it can restructure an arrangement — adding a bridge, splitting a verse — rather than only rewriting text in place.
Key Capabilities
- Structure-aware writing — output is segmented with section tags on their own lines, drawn from
[Intro],[Verse],[Pre Chorus],[Chorus],[Post Chorus],[Hook],[Bridge],[Interlude],[Transition],[Build Up],[Break],[Inst],[Solo], and[Outro]. - Style tags returned alongside the lyrics — the model infers and returns descriptive tags (for example
Pop,Summer Vibe,Romance,Lighthearted,Beach Pop), which double as a ready-made starting point for a music-generation prompt. - Title generation, or title preservation — the model names the song for you, or keeps a title you supply unchanged.
- Two-way workflow — write from a theme, or edit and continue lyrics you already have, using the same endpoint.
- Singable output — lines are written with meter, phrasing, and rhyme in mind rather than as prose, so they fit a melody.
- Direct hand-off to music generation — the
lyricsfield of the result is format-compatible with the music models'lyricsinput.
Input
Input Parameters
| Parameter | Type | Default | Range / Options | Description |
|---|---|---|---|---|
model | string | minimax/lyrics-generation | — | Required. Model name. |
mode | string | write_full_song | write_full_song, edit | Required. Generation mode. write_full_song creates a complete new set of lyrics from the prompt; edit rewrites, continues or modifies the lyrics supplied in the lyrics field. |
prompt | string | a lighthearted summer beach pop song about a seaside promise | ≤ 2000 characters | Required. Song theme, style or editing instruction. If left empty, a random song is generated. |
lyrics | string | "" | ≤ 3500 characters | Existing lyrics to continue or modify. Required when mode is edit, and must be left empty when mode is write_full_song, where the model writes the lyrics from scratch. Separate lines with a newline; supports section structure tags on their own line (e.g. [Verse], [Chorus]) to mark the arrangement of the song. |
title | string | "" | — | Song title. When provided, the generated result keeps this title unchanged. |
enable_sync_mode | boolean | false | — | Wait for the result to be generated and uploaded before returning, so the lyrics are delivered directly in the response (API only). |
Parameter Constraints
The schema ties lyrics to the selected mode:
- When
modeisedit,lyricsis required and must contain at least one character. - When
modeiswrite_full_song,lyricsmust be empty.
Output
The result is returned as a structured lyrics_result object with three fields:
| Field | Type | Description |
|---|---|---|
song_title | string | Generated song title. If title was provided in the request, it is preserved — for example "Summer Breeze Promise". |
style_tags | array of strings | Style tags describing the song, for example ["Pop", "Summer Vibe", "Romance", "Lighthearted", "Beach Pop"]. |
lyrics | string | The generated lyrics, with lines separated by newlines and sections marked by structure tags such as [Intro], [Verse], [Pre Chorus], [Chorus], [Bridge] and [Outro]. Directly compatible with the lyrics field of the music generation models. |
Requests are asynchronous by default: the response carries a request ID that can be polled until the lyrics are ready, and enabling sync mode returns the finished result directly. The response also reports task status, executionTime, and an inference timing breakdown.
Use Cases
- Step one of a two-step songwriting pipeline — generate lyrics, let a human review or adjust them, then compose the track with a music model.
- Lyric ideation — produce several structurally complete drafts on a theme and pick the strongest, instead of starting from a blank page.
- Rewriting and polishing — tighten a chorus, fix an awkward verse, or shift a draft's tone without rewriting the whole song.
- Extending unfinished drafts — continue a fragment into a full arrangement with the missing sections added.
- Personalized and occasion songs — birthday, wedding, or dedication lyrics generated from a short brief.
- Localized and stylistic variants — regenerate the same theme in a different genre register or voice for A/B testing.
Pricing
Pricing for Lyrics Generation is a flat rate per song. It does not vary with mode, prompt length, the length of the lyrics submitted for editing, or the length of the lyrics produced — writing a full song from scratch and editing an existing one are billed identically.
SKUs
| SKU | Description | Unit Price |
|---|---|---|
sku_base | Per song | $0.01 |
Formula
cost = sku_base
The formula is the single base SKU, so each successful request costs $0.01, and total spend is the number of requests multiplied by that rate.
Examples
| Scenario | Calculation | Cost |
|---|---|---|
| Write a full song from a theme | 0.01 | $0.0100 |
| Edit or continue existing lyrics | 0.01 | $0.0100 |
| Random song (empty prompt) | 0.01 | $0.0100 |
| 10 lyric drafts for comparison | 0.01 × 10 | $0.1000 |
| 100 requests | 0.01 × 100 | $1.0000 |
At a cent per request, generating and comparing multiple lyric drafts before committing to a music generation is inexpensive relative to the composition step itself, which makes an iterate-on-lyrics-first workflow the economical default.
Related Models
minimax/music-3.0 is the composition counterpart to this model: it takes the lyrics string produced here — section tags included — and returns a complete, fully produced song of up to five minutes. The style_tags returned by this model make a good seed for that model's prompt. Use this model when you want visibility into and control over the words before any audio is generated.












