---
title: Music 1.0
description: Sume Music 1.0에서 텍스트(그리고 선택적 이미지 조건)로 음악을 생성하는 방법을 살펴보세요.
---

프롬프트 기반 음악 생성에는 Music 1.0을 사용하세요. 요청은 텍스트 중심이며
선택적으로 이미지 조건을 지원합니다. 프로바이더 모델 id는 내부에 남습니다.

기본 실행 URL입니다.

```text
POST /v1/music-1.0/generate
```

model-run 별칭입니다(본문은 같습니다).

```text
POST /v1/models/sume/music-1.0/runs
```

공개 모델 id는 `sume/music-1.0`입니다.

## 언제 사용하나요

| 목표 | 방법 |
|---|---|
| 텍스트 → 음악 | `prompt`만 사용합니다 |
| 시각 조건 | `prompt` + 선택적 `image_url` |
| 특정 스타일 피하기 | 제외할 내용을 긍정 `prompt`에 적으세요(예: "no vocals, no spoken word") |

## 반드시 지켜야 할 제약

- `duration`이나 `duration_seconds`를 보내지 **마세요**. Music 1.0에서는 인식되지
  않으며 거부됩니다.
- 비어 있지 않은 `negative_prompt`를 보내지 **마세요**. Music 1.0 / Lyria 3는
  네거티브 프롬프트를 지원하지 않으며, 값이 비어 있지 않으면
  `public_reason=negative_prompt_unsupported`와 함께 HTTP 400을 반환합니다.
  필드를 생략하거나 `""`를 보내세요.
- 프롬프트 최대 길이는 5000자입니다.
- 이미지 URL은 공개 HTTPS여야 합니다. 요청 객체를 재사용하는 클라이언트에서
  이미지 입력을 의도적으로 비울 때만 `image_url`에 `null`을 보내세요.

## 요청 필드

| 필드 | 필수 | 설명 |
|---|---|---|
| `prompt` | 예 | 1~5000자입니다. 제외할 내용도 긍정 프롬프트에 포함하세요. |
| `negative_prompt` | 아니요 | 비어 있지 않으면 지원되지 않습니다. 생략하거나 `""`를 보내세요. |
| `image_url` | 아니요 | 선택적인 공개 HTTPS 이미지 URL이거나, 비우려면 `null`입니다. |
| `metadata` | 아니요 | Job에 저장되는 호출자 메타데이터입니다. 프로바이더로 전달되지 않습니다. |
| `mode` | 아니요 | `async`, `sync`, `subscribe`, `webhook`입니다. |
| `webhook_url` | 아니요 | 웹훅 모드를 위한 공개 HTTPS 콜백입니다. |
| `wait_timeout_seconds` | 아니요 | `sync` / `subscribe`에서 0~30입니다. |

## 음악 Job 만들기

<!-- api-call-example:music-generate -->

이미지 조건을 준 예제입니다.

```bash
curl -X POST https://api.sume.com/v1/music-1.0/generate \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: music-image-001" \
  -d '{
    "prompt": "Cinematic ambient underscore matching the mood of the reference still, instrumental only",
    "image_url": "https://example.com/moodboard.png"
  }'
```

## 폴링하고 결과 가져오기

```bash
curl https://api.sume.com/v1/jobs/job_123/status \
  -H "Authorization: Bearer $SUME_API_KEY"

curl https://api.sume.com/v1/jobs/job_123/result \
  -H "Authorization: Bearer $SUME_API_KEY"
```

성공하면 `result.artifacts[]`에서 `type`이 `audio`인 오디오 산출물을
읽으세요(보통 `media.sume.com`의 `audio/mpeg`입니다).

## 산출물

완료된 Music 1.0 Job은 Sume가 호스팅하는 오디오 산출물을 반환합니다.

```json
{
  "id": "job_...",
  "status": "completed",
  "result": {
    "artifacts": [
      {
        "id": "artifact_...",
        "type": "audio",
        "url": "https://media.sume.com/artifacts/...",
        "content_type": "audio/mpeg"
      }
    ]
  }
}
```

결과의 Sume 미디어 URL을 사용하세요. 원본 프로바이더 URL은 공개 출력이
아닙니다.

## 가격

접수된 Music 1.0 생성마다 고정 **0.10 USD**입니다. 프롬프트 길이나 선택적 이미지
조건에 따라 달라지지 않습니다.

## 다음

- 폴링과 웹훅은 [Job과 결과](/workflows/jobs-and-results)
- 짧게 복사해 쓰는 플로는 [레시피](/api/cookbook)
