🎵 Bygheart Music — Guide

Bygheart Music — Songwriting Guide

Full reference for getting good songs out of the Bygheart Music engine. Covers every control in the Studio plus the API equivalents. If a feature isn’t here, it isn’t in the product yet.

TL;DR — pick a model, write a tight Song Description with genre + mood + voice + production words, paste lyrics with structure tags, hit Generate. Use Custom mode to keep your exact lyrics. Use Studio Pro for daily work.

Models & credits

Three DiT models live on the GPU at all times. Composer Lab piggybacks on Studio Pro until the 4th handler ships.

LabelBackend ID (alias)Best forStepsCredits
Bygheart Melody Fastbygheart-melody-fastQuick iteration / drafting8–161
Bygheart Studio Probygheart-studio-proRecommended daily driver82
Bygheart Studio Maxbygheart-studio-maxHighest detail, 4B LM thinking504
Bygheart Composer Labbygheart-composer-labEdit / repaint workflows504

Pro plan: 200 credits/month, 30/day cap, up to 60 unused credits roll over. Failed generations are refunded automatically. Ultimate: unlimited.

Modes

Simple

Short prompt only. Great for instrumentals (toggle Instrumental) and quick vibes. The LM writes lyrics for you if you leave them off.

Custom

Full prompt + your exact lyrics. The system preserves your lyrics verbatim unless you turn on Lyric-aware planning or Enhance prompt/lyrics.

Remix (cover)

Upload a reference audio + your prompt. Re-imagines the song with the new style. Tune Cover Strength (how much to follow the source) and Remix Strength (how much creative noise).

Edit (repaint)

Upload audio + new lyrics. Repaints sections of the source. Use Repaint mode (strict / balanced / loose) and Crossfade for clean section transitions.

Song Description (prompt)

The single most important control. Pack it with what you actually want to hear: genre, mood, vocal style, instruments, mix quality, hook size, energy. Avoid generic words.

Strong example
epic modern pop, dark dance pop, cinematic trap-pop, stadium anthem, huge hook, distorted bass, choir layers, glossy radio production, powerful female lead vocal, stacked harmonies, explosive chorus, dramatic bridge, punchy drums, wide synths, polished high-energy mix
Weak example (too generic)
pop song, female vocals
Genre stack — list 2-3 genres separated by commas. The model averages them.
Mood / energy — words like cinematic, melancholic, euphoric, gritty, intimate, anthemic.
Production textureglossy, lo-fi, analog, grainy, overdriven, polished, sparse, dense.
Mix descriptorspunchy snare, sub-bass, wide stereo, sidechain pump, crunchy guitar, shimmer reverb.
Hook hintshuge hook, drop into half-time, vocal chop loop, stadium "whoa-oh" gang vocals.

Pro tip: write the description like you’re briefing a producer. Specifics beat adjectives.

Negative styles

Comma-separated list of what to avoid. Set it in Advanced Options → Negative styles.

country, acoustic folk, screamo, metalcore, lo-fi bedroom pop, muddy mix, weak vocals, thin drums, pitch wobble, wrong language

A good default if you’re going for radio-quality pop: muddy mix, weak vocals, thin drums, gibberish.

Lyrics structure

Lyrics are the song’s timeline. Section tags drive arrangement. Keep production/mood mostly in the prompt; reserve in-line vibe hints for transition moments.

Section tags the model understands

[Intro] — instrumental opening
[Verse] / [Verse 1]
[Pre-Chorus]
[Chorus]
[Post-Chorus]
[Bridge]
[Final Chorus]
[Outro]
[Drop]
[Build] / [Breakdown]
[Hook]
[Refrain]

Add a short hint in the tag for a vibe shift: [Bridge - stripped, emotional] or [Final Chorus - stadium ending].

Recommended template

[Intro]

[Verse 1]

[Pre-Chorus]

[Chorus]

[Verse 2]

[Pre-Chorus]

[Chorus]

[Bridge]

[Final Chorus]

[Outro]

Vocal style

ACE-Step has no hard gender or style switch. The Studio’s Voice + Delivery dropdowns inject phrases into your prompt and lyric tags so the model is biased toward that style. They’re strong suggestions, not guarantees — back them up in the Song Description.

Voice

SettingCaption phrase added to prompt
Auto(none — model decides)
Femalefemale lead vocal
Malemale lead vocal
Female + Male duetfemale and male duet vocals
Choirfull choir vocals
Instrumentalinstrumental, no vocals (also clears lyrics)

Delivery

SettingCaption phraseLyric tag injected
Sung popmelodic sung pop delivery
Raprap hip-hop flow, spoken-word deliveryspoken word
R&Bsoulful R&B delivery with vocal runs
Country twangcountry vocal twang
Rock beltrock belt vocal
Folk acousticfolk acoustic vocal
Whisperedintimate whispered vocalwhispered
Spoken wordspoken word vocalspoken word
Falsettofalsetto vocalfalsetto
Raspyraspy gritty vocalraspy vocal
Powerful beltingpowerful belting vocalpowerful belting

In-lyric performance tags

Drop these inline in your lyrics or tag a section with them. They tell the model how to perform that line/section.

[whispered]
[falsetto]
[powerful belting]
[spoken word]
[harmonies]
[ad-lib]
[call and response]
[gang vocals]
[backing vocals]
[choir]
[shouted]
[breath]

Duration, BPM, Key, Time signature

ControlWhat it doesRecommendation
DurationTotal seconds (10–600)Idea: 30–60s · Verse+Chorus: 90–150s · Full song with bridge: 210–300s · Auto = inferred from lyrics
BPMBeats per minuteAuto unless you know the target. Pop anthem 110–140, ballad 70–90, drill 140 half-time, house 124–128.
KeyMusical key + modeAuto for most cases. Minor keys for dramatic, major for uplift.
Time signatureMeterDefault 4/4. Use 3/4 or 6/8 for waltz / ballad feel.

Expert controls (Advanced Options)

Defaults work fine. These are for fine-tuning when you know what you’re doing.

ControlBackend paramRange / defaultEffect
Global captionglobal_captionfree textOptional overall description fed alongside the prompt. Use for high-level vibe.
Track nametrack_namefree textInternal label for the track. Doesn’t affect audio.
Inference steps overrideinference_steps2–200, default per-modelMore steps = more detail, slower. Fast: 8–16. Pro: 8. Max/Lab: 50.
Flow shiftshift0.5–10.0, default 3.0Flow-matching schedule shift. Higher = more weight on early steps (composition). Lower = more weight on detail.
Guidance scaleguidance_scale0.5–15, default 1.0How strictly to follow the prompt. Higher = more on-prompt but stiffer; lower = more creative.
ADG (anti-bias)use_adgauto/on/offAnti-bias diffusion guidance. Sometimes improves coherence on long songs.
CFG window start/endcfg_interval_start / cfg_interval_end0.0–1.0, defaults 0.0/1.0Limit when guidance is applied during the diffusion. Narrower window = looser overall.
Tiled VAE decodeuse_tiled_decodeon (default) / offTile the VAE during decode for lower VRAM. Off slightly faster on big GPUs.
CoT captionuse_cot_captionon (default) / offChain-of-thought caption expansion via the LM. Off if you want the prompt verbatim.
CoT language detectuse_cot_languageon (default) / offLM auto-detects the lyric language. Off if you’re forcing a specific language.
LM top_plm_top_p0–1Nucleus sampling for the lyrics-planning LM (Studio Max thinking).
LM top_klm_top_k0–200Top-k sampling for the LM.
LM repetition penaltylm_repetition_penalty0.5–3.0, default 1.0Penalize the LM for repeating tokens. Bump to ~1.1 if lyrics get loopy.
Creativity sliderlm_temperature / lm_cfg_scale0–100%Maps to LM temperature (0.45–1.0) and inverse CFG scale. Higher slider = wilder lyrics.
Negative styleslm_negative_promptfree textWhat to push the LM/DiT away from. Use commas.

Edit / Repaint mode

Upload a song and rewrite parts of it (lyrics or section). The repaint engine generates new audio for masked sections and crossfades it back into the source.

ControlBackend paramWhat it does
Repaint Strengthrepaint_strengthHow much to alter the source. 0 = barely change, 1 = total rewrite.
Repaint moderepaint_modestrict (preserve harmony), balanced (default), loose (more creative)
Crossfade (sec)repaint_wav_crossfade_secWav-domain crossfade length. 0.0 default; bump to 0.3–0.8 for smoother joins on rough cuts.
Repainting start/endrepainting_start / repainting_endTime window in source to repaint. -1 = full song.

Remix / Cover mode

Re-imagine a song in a new style. Upload a reference and write a Song Description for the target vibe.

ControlBackend paramWhat it does
Cover Strengthaudio_cover_strengthHow tightly to follow the source structure (melody, timing). Lower = looser remix.
Remix Strengthcover_noise_strengthCreative noise injected on top. Higher = wilder departure from the source.

Full examples

A. Modern pop anthem (Custom mode, Studio Pro)

Song Description
epic modern pop, dark dance pop, cinematic trap-pop, stadium anthem, huge hook, distorted bass, choir layers, glossy radio production, powerful female lead vocal, stacked harmonies, explosive chorus, dramatic bridge, punchy drums, wide synths, polished high-energy mix
Lyrics
[Intro - dark synth pulse]

Midnight
Gold light
Black car
White lies

[Verse 1 - tight modern pop flow]

I got a new face in the rearview
Old me tried to call, I hit decline
Heart in my chest like a loaded weapon
Aiming at the version I left behind

[Pre-Chorus - rising]

Tell the angels I’m unavailable
Tell my demons they can wait in line
Got a thousand voices in my head tonight
But the only one I’m hearing is mine

[Chorus - huge, anthemic]

I go god mode after midnight
Hands up when the lightning hits
Diamonds in the dirt, baby that’s my life
I’m the storm, I’m the calm, I’m the lit fuse fire

[Bridge - stripped, emotional]

I used to beg for a little mercy
Now mercy looks like me
I used to fold like paper
Now I burn the whole damn page

[Final Chorus - massive stadium ending]

I go god mode after midnight
Whole world watching me ignite
Every scar a spotlight, every tear a strobe
I’m the storm, I’m the calm, I’m the lit fuse fire

[Outro - choir and vocal chop fade]

Midnight
Gold light
Black car
White lies
Settings
  • Mode: Custom · Model: Bygheart Studio Pro
  • Voice: Female · Delivery: Powerful belting
  • Duration: 210s · Tempo: 124 · Key: F Minor · Time: 4/4
  • Negative styles: country, acoustic folk, muddy mix, weak vocals

B. Lo-fi instrumental (Simple mode, Fast)

Prompt: lo-fi jazzhop, mellow piano, warm vinyl crackle, dusty drum break, sub bass, instrumental
Settings: Simple · Fast · Instrumental ON · Duration 90s · Tempo 80 · Key C Major

C. Spoken-word rap (Custom, Studio Max)

Prompt: hard-hitting drill, dark trap, knocking 808s, hypnotic flute, gritty male rap, spoken word delivery
Voice: Male · Delivery: Rap (auto-injects [spoken word])
Negative styles: singing, melodic vocals, soft pop

Troubleshooting

SymptomLikely causeFix
Wrong language vocalsVocal language mismatchSet Language to your target. Add to negative: non-English vocals, translated lyrics.
Lyrics rewrittenSample mode or Enhance is onUse Custom mode, turn off Enhance prompt/lyrics, don’t use the Sample button.
Female voice when you wanted male (or vice versa)ACE-Step doesn’t hard-switch; vocal style is a hintRe-emphasize in Song Description (raspy male lead vocal, low register) and add to negative: female vocals, high register. Try multiple seeds.
Muddy or weak mixUnderspecified promptAdd concrete production words: punchy snare, sub-bass, wide stereo, polished mix. Add to negative: muddy mix, weak vocals.
Static or 0-second audioBackend hiccup or task expiredTry again. Check Library → Pending. Refresh the page if a task is stuck >10 minutes.
Daily limit hit30/day cap on ProWait until midnight UTC, switch to Fast (1 credit), or upgrade to Ultimate.
Quota exceededUsed your 200 + rolloverWait for monthly reset (1st of next month) or upgrade.

API reference

Pro+ users can generate songs programmatically. Get a key at /api-keys.html. Quota is shared with the Studio. Failed generations are auto-refunded.

POST /bygheartsong/api/release_task

curl -X POST https://iamvision.tech/bygheartsong/api/release_task \
  -H "Authorization: Bearer bgh_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "bygheart-studio-pro",
    "prompt": "epic modern pop, female belt vocal, glossy mix",
    "lyrics": "[Verse]\n...\n[Chorus]\n...",
    "audio_duration": 180,
    "audio_format": "mp3",
    "vocal_language": "en",
    "use_random_seed": true,
    "task_type": "text2music",
    "lm_negative_prompt": "muddy mix, weak vocals"
  }'

All accepted fields

Bold = required-ish for a useful song. Italics = advanced.

FieldTypeDefaultNotes
modelstringFastOne of the bygheart-* aliases above.
promptstringSong Description.
lyricsstring"" = LM-generatedUse [Section] tags + blank lines.
audio_durationfloat (sec)auto10–600.
vocal_languagestring"en"en/zh/ja/es/ko
audio_formatstring"mp3"mp3/wav/flac
batch_sizeint11/2/4 — generates N variations.
seedint-1-1 = random. Set + use_random_seed=false to reproduce.
use_random_seedbooltrue
bpmint|nullnull
key_scalestring""e.g. "C Major"
time_signaturestring""e.g. "4/4"
thinkingboolfalseEnable LM lyric planning. Auto-on for Studio Max.
use_formatboolfalseEnhance prompt/lyrics via LM.
sample_modeboolfalseUsed by the Sample button.
task_typestring"text2music""text2music" / "cover" (remix) / "repaint" (edit)
lm_model_pathstring"acestep-5Hz-lm-1.7B"1.7B fast, 4B for Studio Max thinking.
lm_temperaturefloat~0.78LM creativity.
lm_cfg_scalefloat~2.4LM guidance.
lm_top_pfloat
lm_top_kint
lm_repetition_penaltyfloat1.0
lm_negative_promptstringComma-separated negatives.
guidance_scalefloat1.0DiT classifier-free guidance.
shiftfloat3.0Flow-matching shift.
cfg_interval_start, cfg_interval_endfloat0.0, 1.0
use_adgboolAnti-bias guidance.
use_tiled_decodebooltrueVAE tiling.
use_cot_caption, use_cot_languagebooltrueLM CoT helpers.
global_captionstringOptional overall description.
track_namestringInternal label.
audio_cover_strengthfloat1.0Remix only.
cover_noise_strengthfloat0.0Remix only.
repaint_strengthfloat0.5Edit only.
repaint_modestring"balanced"strict / balanced / loose
repaint_wav_crossfade_secfloat0.0Edit only.
repainting_start, repainting_endfloat0.0, -1Edit only.
reference_audiofilemultipart upload (Remix mode).
src_audiofilemultipart upload (Remix / Edit modes).

POST /bygheartsong/api/query_result

curl -X POST https://iamvision.tech/bygheartsong/api/query_result \
  -H "Authorization: Bearer bgh_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "task_id_list": ["TASK_ID_FROM_RELEASE"] }'

GET /bygheartsong/api/v1/audio?path=...

curl -L -H "Authorization: Bearer bgh_YOUR_KEY" \
  "https://iamvision.tech/bygheartsong/api/v1/audio?path=/abs/path/from/result.mp3" \
  -o song.mp3

Errors

CodeBody.errorMeaning
401unauthenticatedMissing / invalid bgh_ key.
403pro_tier_requiredFree tier blocked. Upgrade.
429quota_exceededMonthly credits used up.
429daily_limit_exceededHit today’s 30-credit cap.
502quota_check_failedSupabase RPC unreachable. Retry.