---
url: /orchestration/reference/operations/InvokeYuE2StepTemplate.md
description: 'POST /v2/consumer/recipes/yuE2 — Generate a song from style and lyrics with YuE2'
---

> Documentation index: https://developer.civitai.com/llms.txt — every page on this site has a markdown version at its URL + `.md`.

# Generate a song from style and lyrics with YuE2

`POST https://orchestration.civitai.com/v2/consumer/recipes/yuE2`

Operation `InvokeYuE2StepTemplate` · Recipes · Civitai Orchestration API, generated from the published OpenAPI spec ([v2-consumers.json](https://developer.civitai.com/openapi/v2-consumers.json)); the interactive HTML page is this URL without `.md`.

## Authentication

Send `Authorization: Bearer <token>` (the spec's `ApiKey` scheme); this operation documents `401 Unauthorized` for a missing or invalid token. See [Authentication](https://developer.civitai.com/orchestration/guide/authentication.md).

## Parameters

| Name | In | Type | Required | Description |
|---|---|---|---|---|
| `experimental` | query | boolean | no |  |
| `allowMatureContent` | query | boolean | no |  |
| `whatif` | query | boolean | no |  |
| `ephemeral` | query | boolean | no |  |
| `tier` | query | `WorkflowTier` (one of `paid`, `free`) | no | How a workflow is paid for. |

## Request body

Optional. Content types: `application/json`, `text/json`, `application/*+json`.

Schema `YuE2Input` — YuE2 text-to-music generation with optional ABC score planning.

| Field | Type | Required | Description |
|---|---|---|---|
| `style` | string | yes | Musical style, instrumentation, mood, tempo, and vocal description. (minLength `1`) |
| `lyrics` | string | yes | Lyrics with section markers such as [verse] and [chorus]. (minLength `1`) |
| `seed` | integer (int32) | yes |  |
| `maxDuration` | number (float) | no | Maximum song duration in seconds; generation can stop earlier. (default `120`, minimum `0.03999999910593033`, maximum `360`) |
| `steps` | integer (int32) | no | Diffusion steps using the upstream dpm_2 / sgm_uniform sampler. (default `32`, minimum `1`, maximum `100`) |
| `mode` | string | yes | Score planning: full (melody and chords), melody, or off. (default `"full"`, minLength `1`, pattern `^(full\|melody\|off)$`) |
| `abc` | string, nullable | no | Optional ABC score to use instead of generating a score. Ignored in off mode. |
| `checkpointModel` | string, nullable | no | Optional YuE2 checkpoint override containing the model, text encoder, and audio VAE. (pattern `^(?:urn:)?(?:air:)?(?:(?<ecosystem>[a-zA-Z0-9_\-\/]+):)?(?:(?<type>[a-zA-Z0-9_\-\/]+):)?(?<source>[a-zA-Z0-9_\-\/]+):(?<id>[a-zA-Z0-9_\-\/\.]+)(?:@(?<version>[a-zA-Z0-9_\-\/.=,%+:]+))?(?:\.(?<format>[a-zA-Z0-9_\-]+))?$`) |
| `loras` | map of number (double) | yes | Optional LoRAs for both YuE2 experts. |

## Responses

### 200 OK

Content type: `application/json`.

Schema `YuE2Output`.

| Field | Type | Required | Description |
|---|---|---|---|
| `blob` | `AudioBlob` | yes |  |

### 400 Bad Request

Content type: `application/json`.

Schema `ProblemDetails`.

| Field | Type | Required | Description |
|---|---|---|---|
| `type` | string, nullable | no |  |
| `title` | string, nullable | no |  |
| `status` | integer (int32), nullable | no |  |
| `detail` | string, nullable | no |  |
| `instance` | string, nullable | no |  |

### 401 Unauthorized

Content type: `application/json`.

Schema `ProblemDetails` — fields as listed above.

### 403 Forbidden

Content type: `application/json`.

Schema `ProblemDetails` — fields as listed above.
