AceStepPerplexity_Lyrics
The Search-Flavored Option
- lyrics
AceStepPerplexity_Lyrics is the odd one in the family in a specific way: Perplexity's Sonar models are built around search-grounded answering, which is a strange profile for writing song lyrics. It works - Sonar is a capable instruction-follower - but you're using a tool designed to cite sources to write a verse about a broken heart. The node exists mainly so that people who already hold a Perplexity API key have a place in this pack to use it.
The mechanism and model list
Family-standard under the hood: text is your description, the node wraps it in the shared ACE-Step lyricist prompt (production tags, short lines, anti-repetition rules), calls Perplexity's API with your api_key, model, max_tokens, seed, and instrumentality_balance. Output is a lyrics STRING for your conditioning.
The dropdown is small - five Sonar entries - and that's actually the most useful thing to understand about this node:
- sonar - the default. General-purpose, fine.
- sonar-pro - the quality step-up. This is the one to use if you're going to use any.
- sonar-reasoning / sonar-reasoning-pro - reasoning variants. For a 300-word lyric sheet these mostly burn tokens thinking about structure. Marginal.
- sonar-deep-research - deep research mode, which is the single most pointless pick here: it's built to spend minutes compiling sourced reports, not to write a song. Treat it as a curiosity.
Honest positioning
If you don't already have a Perplexity key, there is no strong reason to get one for this node. The free-ish/cheap lanes are better served by the Groq and Gemini nodes; the quality lane is better served by Claude or OpenAI. This node's reason to exist is key-portability - you're a Perplexity user, and this is the pack's hook for your account.
Install and gotchas
Pack standard install: ComfyUI Manager (search "JK AceStep Nodes"), or
cd ComfyUI/custom_nodes
git clone https://github.com/jeankassio/JK-AceStep-Nodes.git
restart. Nothing extra to download.
Caveats as per the family: the api_key is a node input (it travels in saved workflow JSON - watch it), errors surface as the lyrics string, and there's no retry handling for rate limits. For most people this node is a "have it if you need it" - perfectly functional, rarely the best tool for the job.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — | |
| api_key | STRING | — | |
| model | COMBO | sonar | 5 options: sonar, sonar-pro, sonar-reasoning, sonar-reasoning-pro, sonar-deep-research |
| max_tokens | INT | 10241–4096 | — |
| seed | INT | 00–18446744073709550000 | — |
| instrumentality_balance | COMBO | Balanced | 5 options: Pure Instrumental, Very Instrumental, Balanced, Vocal Focused, Vocals Only |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| lyrics | STRING | — |