Instructions to use rambrogi/lyrics-room-suno-director-v4-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0 # Run inference directly in the terminal: llama cli -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0 # Run inference directly in the terminal: llama cli -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0 # Run inference directly in the terminal: ./llama-cli -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0 # Run inference directly in the terminal: ./build/bin/llama-cli -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Use Docker
docker model run hf.co/rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
- LM Studio
- Jan
- vLLM
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "rambrogi/lyrics-room-suno-director-v4-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "rambrogi/lyrics-room-suno-director-v4-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
- Ollama
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with Ollama:
ollama run hf.co/rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
- Unsloth Desktop
- Pi
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with Docker Model Runner:
docker model run hf.co/rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
- Lemonade
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Run and chat with the model
lemonade run user.lyrics-room-suno-director-v4-GGUF-Q8_0
List all available models
lemonade list
- Hermes Agent
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use rambrogi/lyrics-room-suno-director-v4-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "rambrogi/lyrics-room-suno-director-v4-GGUF:Q8_0" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Lyrics Room — Suno Director v4 (Q8_0 GGUF)
The Suno Director v4 turns a sung lyric draft into a Suno v5.5 performance score. Fine-tuned from unsloth/gemma-4-12b-it.
- Quantization:
Q8_0(lyrics-room-suno-director-v4.Q8_0.gguf, ~12.67 GB) - Serving: LM Studio / llama.cpp / Ollama as
lyrics-room-suno-director-v4
It adds cue-before-line vocal notes, free-form bracketed arrangement cues, and intro/outro floods. It must not change a sung word. If a draw rewrites lyrics, discard it and retry at temperature 0.2.
The official critic/judge prompt pack lives on the Structured Panel card.
How it works
Suno reads the lyric sheet top to bottom. A cue placed after the line it describes is usually ignored or sung. This model:
- Puts
(Vocal: ...)/(Production: ...)notes above the line they affect - Inserts free-form
[a low kick enters]cues as their own lines - Floods intros, breakdowns, and outros so Suno does not hum
- Copies every sung lyric line verbatim
It can write lyrics if you feed it an empty draft, because it was trained on Topline Writer sheets. That is not the intended seat. Write with Topline Writer v9, then annotate here.
Isolation example
[Mood: late-night analog]
[Energy: Medium]
[Instrument: clean electric, analog kick]
[Intro]
[solitary clean electric guitar weaves minor melody over amp hum]
[sub-bass enters on beat four]
[Verse 1: intimate baritone, close room]
(Vocal: dry intimate baritone, close-mic)
Two amps turned to gold across the festival rail
(Vocal: rasp on edge, slight delay tail)
Dust on the fader, quiet on the gale
Where it sits
graph TD
A[Creative Director] --> B[Topline Writer v9]
B -->|sung draft| C[Suno Director v4]
C -->|performance score| D[Critic Panel + Producer Judge]
D -->|repair then re-enrich| C
D --> E[Final Refiner]
Run this model before the first critic pass so the panel scores the arrangement sheet. After a Topline repair, run it again.
Sampling: temperature 0.2, max_tokens 1024, JSON { "lyrics" }. One hardened retry if the preservation check fails (sung-word count or sung lines changed).
Official prompts
System
You are the Suno Director enriching lyrics into a studio-grade Suno performance score. Return ONLY lyrics in JSON format.
User
Enrich this Suno lyric draft into a studio-grade Suno performance score.
Length budget: target {min}-{max} sung words, firm minimum {softMin} sung words even for sparse styles, never exceed {hardMax} sung words or 5000 characters. Resolved genre: {genre} from {source}.
V1 SUNO SONG CONTRACT:
- Output only the song lyrics. No commentary.
- Start with [Mood: ...], [Energy: Low|Medium|High|Very High], [Instrument: ...].
- Use bracketed section headers. Never use parenthetical (Verse)/(Chorus) labels.
- Treat the supplied title as locked.
SUNO SCORE CONTRACT:
- PRIMARY VEHICLE: free-form bracketed cues on their own line, placed immediately BEFORE the moment they shape.
- INTRO FLOOD (REQUIRED): open with an [Intro] of three to six distinct free-form cues. If the draft opens cold on a sung section, add this intro above it.
- Flood intros, breakdowns, drops, and outros. Lead most sung sections with one arrangement-change cue.
- Keep section headers short (two to five words of vocal/energy stance). Put instruments/FX in cues, not in the header.
- SECONDARY VEHICLE: typed parentheticals right before the line they shape:
(Vocal: ...) (Production: ...) (Arrangement: ...) (FX: ...) (Dynamics: ...)
(Rhythm: ...) (Mix: ...) (Performance: ...) (Transition: ...) (Instrumental: ...)
- Do NOT wrap typed labels in brackets. [Vocal: ...] is wrong; (Vocal: ...) is right.
- Do not rewrite, shorten, add, or remove sung lyric lines.
SUNO DIRECTOR PRESERVATION CONTRACT:
- Include every original sung lyric line exactly once, in the original order.
- Preserve every original vocal section.
- Header label text is not sung content; you may rewrite [Verse 1] into [Verse 1: intimate baritone, close room].
- Adding a flooded [Intro] of non-sung cues does not violate preservation.
STYLE:
{style}
TITLE:
{title or (untitled)}
CREATIVE BRIEF:
{brief JSON}
CURRENT SUNG WORD COUNT: {n}
CURRENT LYRICS:
---
{topline draft}
---
Instructions:
1. Must preserve sung words, title anchor, section order, story continuity, and word count.
2. Include every original sung lyric line exactly once. Do not rewrite sung lyric lines, shorten the lyric, add sung lines, or remove sung lines.
3. Preserve every original vocal section.
4. You may add or improve top tags, enriched section headers, typed production notes, local [Energy: ...] tags, and genre-aware Suno control language.
5. Upgrade generic cues into specific studio direction tied to the style and creative brief.
6. Return only the full enriched lyrics in JSON "lyrics".
Hardened retry (only if the first draw changed sung content): prepend this block to the same user prompt:
RETRY — PRESERVATION FAILURE:
Your previous enrichment was REJECTED because it changed the sung lyric. This is your final attempt.
- Copy every sung lyric line VERBATIM, character for character, in the exact same order. Do not reword, merge, split, reorder, add, or delete any sung line.
- Keep the exact same number of sung words ({n}).
- You may ONLY insert new bracketed tags, timeline cues, enriched section headers, and parenthetical typed notes BETWEEN the untouched sung lines.
- If an edit might change a sung line, do not make it.
Quickstart
from openai import OpenAI
client = OpenAI(base_url="http://localhost:1234/v1", api_key="lm-studio")
response = client.chat.completions.create(
model="lyrics-room-suno-director-v4",
temperature=0.2,
max_tokens=1024,
response_format={"type": "json_object"},
messages=[
{
"role": "system",
"content": "You are the Suno Director enriching lyrics into a studio-grade Suno performance score. Return ONLY lyrics in JSON format.",
},
{
"role": "user",
"content": """Enrich this Suno lyric draft into a studio-grade Suno performance score.
STYLE:
indie rock, 118 BPM, dry baritone
TITLE:
Neon Exit
CURRENT SUNG WORD COUNT: 8
CURRENT LYRICS:
---
[Verse 1]
Two amps turned to gold across the festival rail
Dust on the fader, quiet on the gale
---
Preserve every sung lyric line exactly. Return only JSON \\"lyrics\\".""",
},
],
)
print(response.choices[0].message.content)
Prompt pack license
The official system prompts, user templates, JSON contracts, stage handoff rules, sampling notes, and accept/repair policy published on the Lyrics Room cards are © rambrogi and licensed under CC BY 4.0.
You may copy, adapt placeholders/transport formatting, and redistribute those texts (including in another public project) with attribution and a link back to these cards. Keep official wording verbatim in identifiable files; mark adaptations. This does not make a downstream tool official or endorsed.
Model weights are not covered by CC BY 4.0. They remain under this card's model license and must be obtained from the official repositories — do not rehost the GGUFs.
Sibling models
- Structured Panel — official prompt pack, critics, Producer Judge
- Topline Writer v9
- Final Refiner Ozan v1
- Downloads last month
- 618
8-bit