persona_id in the request input.
Model
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
mv | string | Yes | Model version (see below) |
custom | boolean | Yes | false for simple mode, true for custom mode |
gpt_description_prompt | string | No | Simple mode: song description with lyrics |
prompt | string | No | Custom mode: detailed lyrics/prompt |
tags | string | No | Custom mode: genre/style tags |
title | string | No | Song title |
make_instrumental | boolean | No | Generate instrumental only |
negative_tags | string | No | Custom mode: styles to avoid |
persona_id | string | No | ID of a custom voice from Voice Creation. When set, the generated music uses that voice for vocals |
custom_model | object | No | Required when mv is chirp-custom. Inline custom model definition — see Custom Model |
Model Versions
| Version | Description |
|---|---|
chirp-v3-5 | Version 3.5 |
chirp-v4 | Version 4.0 |
chirp-auk | Version 4.5 |
chirp-bluejay | Version 4.5+ |
chirp-crow | Version 5.0 |
chirp-fenix | Version 5.5 |
chirp-custom | Inline custom model trained from your own tracks (see Custom Model) |
Model Limits
| Version | Prompt Limit | Style Limit |
|---|---|---|
| v3.5, v4 | 3,000 chars | 200 chars |
| v4.5, v4.5+, v5, v5.5 | 5,000 chars | 1,000 chars |
| Simple Mode | 500 chars | - |
Example - Simple Mode
Example - Custom Mode
Custom Model
Setmv to chirp-custom and pass an inline custom_model object to generate music in the style of your own reference tracks. The custom model is ephemeral — it’s trained for the request and discarded once generation completes. Pass the same custom_model payload on every request you want to use that style.
custom_model fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Model name |
audio_urls | list[string] | Yes | 6–24 audio URLs to train on |
