Add two generation modes: default simple (customMode=false) and advanced custom (customMode=true)
This commit is contained in:
@@ -24,9 +24,36 @@ HTTPS_PROXY=http://proxy:8080
|
||||
HTTP_PROXY=http://proxy:8080
|
||||
```
|
||||
|
||||
## Режимы генерации
|
||||
|
||||
`customMode` определяет, КТО управляет созданием трека:
|
||||
|
||||
| Режим | `customMode` | Кто делает музыку | `prompt` | `style`/`title` |
|
||||
|---|---|---|---|---|
|
||||
| **Простой** *(по умолчанию)* | `false` | Suno генерирует всё сама | Да (идея, до 500 симв.) | Не нужно |
|
||||
| **Кастомный** | `true` | Агент пишет текст и стиль | Да (точный текст, до 3000/5000) | Обязательно |
|
||||
|
||||
### Простой режим (customMode: false) — по умолчанию
|
||||
|
||||
**Агент по умолчанию всегда использует этот режим.** Пользователь говорит идею — агент передаёт её в `prompt`, Suno сама пишет текст, аранжировку и всё остальное:
|
||||
|
||||
```
|
||||
suno_generate_music
|
||||
prompt: "Энергичный рок-трек о восхождении на гору, мужской вокал"
|
||||
customMode: false
|
||||
instrumental: false
|
||||
model: "V4_5ALL"
|
||||
```
|
||||
|
||||
Плюсы: быстро, дёшево, Suno отлично справляется сама. До 500 символов в `prompt`.
|
||||
|
||||
### Кастомный режим (customMode: true) — когда нужен точный контроль
|
||||
|
||||
Агент сам пишет текст с мета-тегами `[Verse]`, `[Chorus]` и описывает стиль. Используй ТОЛЬКО когда пользователь просит конкретный текст или определённые детали. Подробнее в [Prompt Engineering Guide](#prompt-engineering-guide).
|
||||
|
||||
## Основные сценарии
|
||||
|
||||
### 1. Сгенерировать песню с нуля
|
||||
### 1. Сгенерировать песню (простой режим, по умолчанию)
|
||||
|
||||
```
|
||||
suno_generate_music
|
||||
@@ -36,28 +63,7 @@ suno_generate_music
|
||||
model: "V4_5ALL"
|
||||
```
|
||||
|
||||
Вернёт `taskId`. Затем нужно подождать и вызвать:
|
||||
|
||||
```
|
||||
suno_get_task_status
|
||||
taskId: "..."
|
||||
```
|
||||
|
||||
Результат: 2 трека с `audio_url`, `title`, `tags`, `duration`, `prompt`.
|
||||
|
||||
### 2. Сгенерировать песню в кастомном режиме
|
||||
|
||||
```
|
||||
suno_generate_music
|
||||
prompt: "[Verse] Ночной город, огни витрин..."
|
||||
customMode: true
|
||||
instrumental: false
|
||||
style: "Synthwave, cinematic, 80s"
|
||||
title: "Neon Rain"
|
||||
model: "V4_5"
|
||||
```
|
||||
|
||||
В `customMode: true` поля `style` и `title` обязательны. Если `instrumental: false` — ещё и `prompt` (он станет точным текстом песни).
|
||||
Вернёт `taskId`. Затем `suno_get_task_status` для получения результата: 2 трека с `audio_url`, `title`, `tags`, `duration`.
|
||||
|
||||
### 3. Получить текст песни
|
||||
|
||||
@@ -168,6 +174,8 @@ suno_get_task_status
|
||||
|
||||
## Prompt Engineering Guide
|
||||
|
||||
Этот раздел — **только для `customMode: true`**, когда пользователю нужен точный контроль над текстом и стилем трека. По умолчанию используй [простой режим](#простой-режим-custommode-false--по-умолчанию) с `customMode: false`.
|
||||
|
||||
Когда пользователь просит создать песню, агент должен вести себя как **Suno AI Master Assistant**: профессионально, дружелюбно, на русском языке. Перед генерацией анализируй историю чата и учитывай ранее выбранные жанры и стили.
|
||||
|
||||
### Три обязательных блока промпта
|
||||
@@ -333,8 +341,14 @@ suno_generate_music
|
||||
|
||||
### Проверка перед отправкой
|
||||
|
||||
- [ ] `customMode`, `instrumental`, `model` указаны
|
||||
- [ ] Для `customMode: true` заполнены `style` и `title`
|
||||
**Простой режим (`customMode: false`, по умолчанию):**
|
||||
- [ ] `customMode: false`, `instrumental`, `model` указаны
|
||||
- [ ] `prompt` — хорошее описание идеи (до 500 символов)
|
||||
- [ ] `style` и `title` оставлены пустыми (не нужны)
|
||||
|
||||
**Кастомный режим (`customMode: true`, только по запросу):**
|
||||
- [ ] `customMode: true`, `instrumental`, `model` указаны
|
||||
- [ ] `style` и `title` заполнены
|
||||
- [ ] Для вокального трека (`instrumental: false`) заполнен `prompt` с текстом
|
||||
- [ ] `style` не превышает лимит символов для выбранной модели
|
||||
- [ ] `negativeTags` — список через запятые, без `no`
|
||||
|
||||
Reference in New Issue
Block a user