Custom mode as main, simple as alternative. Default model V5_5. Agent proposes mode, user confirms.
This commit is contained in:
@@ -26,44 +26,76 @@ HTTP_PROXY=http://proxy:8080
|
|||||||
|
|
||||||
## Режимы генерации
|
## Режимы генерации
|
||||||
|
|
||||||
`customMode` определяет, КТО управляет созданием трека:
|
Агент **сам определяет**, какой режим лучше подходит под запрос пользователя, и предлагает его. Пользователь может согласиться или попросить изменить режим.
|
||||||
|
|
||||||
| Режим | `customMode` | Кто делает музыку | `prompt` | `style`/`title` |
|
Модель по умолчанию: **V5_5** (пользователь может выбрать другую).
|
||||||
|---|---|---|---|---|
|
|
||||||
| **Простой** *(по умолчанию)* | `false` | Suno генерирует всё сама | Да (идея, до 500 симв.) | Не нужно |
|
|
||||||
| **Кастомный** | `true` | Агент пишет текст и стиль | Да (точный текст, до 3000/5000) | Обязательно |
|
|
||||||
|
|
||||||
### Простой режим (customMode: false) — по умолчанию
|
| Режим | `customMode` | Когда предлагать |
|
||||||
|
|---|---|---|
|
||||||
|
| **Кастомный** *(основной)* | `true` | По умолчанию. Агент сам пишет текст, стиль, структуру |
|
||||||
|
| **Простой** | `false` | Если пользователь хочет быстро, без деталей, или говорит «просто сделай что-нибудь» |
|
||||||
|
|
||||||
**Агент по умолчанию всегда использует этот режим.** Пользователь говорит идею — агент передаёт её в `prompt`, Suno сама пишет текст, аранжировку и всё остальное:
|
*В простом режиме Suno сама генерирует всё по короткому описанию (до 500 симв.).*
|
||||||
|
|
||||||
|
### Кастомный режим (customMode: true) — основной
|
||||||
|
|
||||||
|
Агент пишет текст с мета-тегами `[Verse]`, `[Chorus]`, стиль и всю структуру. Используй [Prompt Engineering Guide](#prompt-engineering-guide) для составления промпта.
|
||||||
|
|
||||||
|
```
|
||||||
|
suno_generate_music
|
||||||
|
prompt: "///*****///\n\n[Intro]..."
|
||||||
|
customMode: true
|
||||||
|
instrumental: false
|
||||||
|
style: "genre: anthemic alternative rock..."
|
||||||
|
title: "Название трека"
|
||||||
|
negativeTags: "trap, electronic beats..."
|
||||||
|
model: "V5_5"
|
||||||
|
```
|
||||||
|
|
||||||
|
В `customMode: true` поля `style` и `title` обязательны. Если `instrumental: false` — ещё и `prompt` (он станет точным текстом).
|
||||||
|
|
||||||
|
### Простой режим (customMode: false) — альтернатива
|
||||||
|
|
||||||
|
Если пользователь не хочет деталей (или говорит «просто сделай трек»):
|
||||||
|
|
||||||
```
|
```
|
||||||
suno_generate_music
|
suno_generate_music
|
||||||
prompt: "Энергичный рок-трек о восхождении на гору, мужской вокал"
|
prompt: "Энергичный рок-трек о восхождении на гору, мужской вокал"
|
||||||
customMode: false
|
customMode: false
|
||||||
instrumental: false
|
instrumental: false
|
||||||
model: "V4_5ALL"
|
model: "V5_5"
|
||||||
```
|
```
|
||||||
|
|
||||||
Плюсы: быстро, дёшево, Suno отлично справляется сама. До 500 символов в `prompt`.
|
Suno сама напишет текст и аранжировку. До 500 символов в `prompt`.
|
||||||
|
|
||||||
### Кастомный режим (customMode: true) — когда нужен точный контроль
|
|
||||||
|
|
||||||
Агент сам пишет текст с мета-тегами `[Verse]`, `[Chorus]` и описывает стиль. Используй ТОЛЬКО когда пользователь просит конкретный текст или определённые детали. Подробнее в [Prompt Engineering Guide](#prompt-engineering-guide).
|
|
||||||
|
|
||||||
## Основные сценарии
|
## Основные сценарии
|
||||||
|
|
||||||
### 1. Сгенерировать песню (простой режим, по умолчанию)
|
### 1. Сгенерировать песню (кастомный режим, основной)
|
||||||
|
|
||||||
|
Агент предлагает написать текст и стиль. Если пользователь согласен — использует Prompt Engineering Guide, формирует три блока (Lyrics, Style, Negative Prompt) и вызывает:
|
||||||
|
|
||||||
```
|
```
|
||||||
suno_generate_music
|
suno_generate_music
|
||||||
prompt: "Мелодичный инди-фолк с акустической гитарой, мягким вокалом, ностальгическое настроение"
|
prompt: "///*****///\n\n[Verse]..."
|
||||||
customMode: false
|
customMode: true
|
||||||
instrumental: false
|
instrumental: false
|
||||||
model: "V4_5ALL"
|
style: "genre: synthwave, 80s..."
|
||||||
|
title: "Название"
|
||||||
|
negativeTags: "trap, male vocals..."
|
||||||
|
model: "V5_5"
|
||||||
```
|
```
|
||||||
|
|
||||||
Вернёт `taskId`. Затем `suno_get_task_status` для получения результата: 2 трека с `audio_url`, `title`, `tags`, `duration`.
|
Вернёт `taskId`. Затем `suno_get_task_status` для результата: 2 трека с `audio_url`, `title`, `tags`, `duration`.
|
||||||
|
|
||||||
|
### 2. Сгенерировать песню (простой режим, если спешка)
|
||||||
|
|
||||||
|
```
|
||||||
|
suno_generate_music
|
||||||
|
prompt: "Мелодичный инди-фолк с акустической гитарой, мягким вокалом"
|
||||||
|
customMode: false
|
||||||
|
instrumental: false
|
||||||
|
model: "V5_5"
|
||||||
|
```
|
||||||
|
|
||||||
### 3. Получить текст песни
|
### 3. Получить текст песни
|
||||||
|
|
||||||
@@ -174,9 +206,7 @@ suno_get_task_status
|
|||||||
|
|
||||||
## Prompt Engineering Guide
|
## Prompt Engineering Guide
|
||||||
|
|
||||||
Этот раздел — **только для `customMode: true`**, когда пользователю нужен точный контроль над текстом и стилем трека. По умолчанию используй [простой режим](#простой-режим-custommode-false--по-умолчанию) с `customMode: false`.
|
Когда пользователь просит создать песню, агент ведёт себя как **Suno AI Master Master Assistant**: профессионально, дружелюбно, на русском языке. Агент предлагает пользователю вариант (режим, модель V5_5, текст, стиль) — пользователь может согласиться, попросить правки или отказаться в пользу простого режима. Перед генерацией анализируй историю чата и учитывай ранее выбранные жанры и стили.
|
||||||
|
|
||||||
Когда пользователь просит создать песню, агент должен вести себя как **Suno AI Master Assistant**: профессионально, дружелюбно, на русском языке. Перед генерацией анализируй историю чата и учитывай ранее выбранные жанры и стили.
|
|
||||||
|
|
||||||
### Три обязательных блока промпта
|
### Три обязательных блока промпта
|
||||||
|
|
||||||
@@ -332,7 +362,7 @@ suno_generate_music
|
|||||||
style: "genre: anthemic alternative rock..."
|
style: "genre: anthemic alternative rock..."
|
||||||
title: "Восхождение"
|
title: "Восхождение"
|
||||||
negativeTags: "trap, electronic beats, female vocals, jazz chords, muddiness, weak drums"
|
negativeTags: "trap, electronic beats, female vocals, jazz chords, muddiness, weak drums"
|
||||||
model: "V4_5ALL"
|
model: "V5_5"
|
||||||
```
|
```
|
||||||
|
|
||||||
### Память и предпочтения
|
### Память и предпочтения
|
||||||
@@ -341,19 +371,19 @@ suno_generate_music
|
|||||||
|
|
||||||
### Проверка перед отправкой
|
### Проверка перед отправкой
|
||||||
|
|
||||||
**Простой режим (`customMode: false`, по умолчанию):**
|
**Кастомный режим (`customMode: true`, основной):**
|
||||||
- [ ] `customMode: false`, `instrumental`, `model` указаны
|
- [ ] `customMode: true`, `instrumental`, `model: "V5_5"` (если пользователь не выбрал другую)
|
||||||
- [ ] `prompt` — хорошее описание идеи (до 500 символов)
|
|
||||||
- [ ] `style` и `title` оставлены пустыми (не нужны)
|
|
||||||
|
|
||||||
**Кастомный режим (`customMode: true`, только по запросу):**
|
|
||||||
- [ ] `customMode: true`, `instrumental`, `model` указаны
|
|
||||||
- [ ] `style` и `title` заполнены
|
- [ ] `style` и `title` заполнены
|
||||||
- [ ] Для вокального трека (`instrumental: false`) заполнен `prompt` с текстом
|
- [ ] Для вокального трека (`instrumental: false`) заполнен `prompt` с текстом
|
||||||
- [ ] `style` не превышает лимит символов для выбранной модели
|
- [ ] `style` не превышает лимит символов для выбранной модели
|
||||||
- [ ] `negativeTags` — список через запятые, без `no`
|
- [ ] `negativeTags` — список через запятые, без `no`
|
||||||
- [ ] Ударения **не** размечены заглавными буквами
|
- [ ] Ударения **не** размечены заглавными буквами
|
||||||
|
|
||||||
|
**Простой режим (`customMode: false`, альтернативный):**
|
||||||
|
- [ ] `customMode: false`, `instrumental`, `model` указаны
|
||||||
|
- [ ] `prompt` — хорошее описание идеи (до 500 символов)
|
||||||
|
- [ ] `style` и `title` оставлены пустыми (не нужны)
|
||||||
|
|
||||||
## Обработка ошибок
|
## Обработка ошибок
|
||||||
|
|
||||||
| Код | Причина |
|
| Код | Причина |
|
||||||
|
|||||||
Reference in New Issue
Block a user