{"id":1887,"date":"2026-03-11T16:57:38","date_gmt":"2026-03-11T08:57:38","guid":{"rendered":"https:\/\/gaga.art\/blog\/?p=1887"},"modified":"2026-03-11T16:57:40","modified_gmt":"2026-03-11T08:57:40","slug":"songgeneration-2","status":"publish","type":"post","link":"https:\/\/gaga.art\/blog\/songgeneration-2\/","title":{"rendered":"SongGeneration 2: Tencent&#8217;s Free AI Music Model"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-1024x572.webp\" alt=\"songgeneration 2\" class=\"wp-image-1889\" srcset=\"https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-1024x572.webp 1024w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-300x167.webp 300w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-768x429.webp 768w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2.webp 1376w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"key-takeaways\" style=\"font-size:24px\"><strong>Key Takeaways<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>SongGeneration 2 (also called LeVo 2) is an open-source AI music model by Tencent AI Lab, released on March 1, 2026.<\/li>\n\n\n\n<li>It uses a hybrid LLM-Diffusion architecture with 4 billion parameters and generates complete songs up to 4 minutes 30 seconds long.<\/li>\n\n\n\n<li>It achieves a Phoneme Error Rate (PER) of 8.55% \u2014 outperforming Suno v5 (12.4%) and Mureka v8 (9.96%) on lyric accuracy.<\/li>\n\n\n\n<li>It supports multilingual input: Chinese, English, Spanish, Japanese, and more.<\/li>\n\n\n\n<li>It can generate vocals + accompaniment, pure instrumentals, a cappella vocals, or dual-track separated outputs.<\/li>\n\n\n\n<li>It runs locally with as little as 10GB of GPU memory (without audio prompt) or 16GB (with prompt audio).<\/li>\n\n\n\n<li>Available on GitHub, Hugging Face, and third-party APIs like WaveSpeed ($0.05\/run).<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block has-custom-cd-994-c-color has-text-color has-link-color wp-elements-235800b3cd59016123e611d0c7ee02b1\" id=\"rank-math-toc\"><p>Table of Contents<\/p><nav><ul><li><a href=\"#key-takeaways\">Key Takeaways<\/a><\/li><li><a href=\"#what-is-song-generation-2\">What Is SongGeneration 2?<\/a><ul><li><a href=\"#what-makes-song-generation-2-different\">What Makes SongGeneration 2 Different?<\/a><\/li><\/ul><\/li><li><a href=\"#who-built-song-generation-2\">Who Built SongGeneration 2?<\/a><\/li><li><a href=\"#how-does-song-generation-2-work\">How Does SongGeneration 2 Work?<\/a><ul><li><a href=\"#the-architecture-hybrid-llm-diffusion\">The Architecture: Hybrid LLM-Diffusion<\/a><\/li><li><a href=\"#the-token-system-hierarchical-language-model\">The Token System: Hierarchical Language Model<\/a><\/li><li><a href=\"#training-3-stage-dpo-alignment\">Training: 3-Stage DPO Alignment<\/a><\/li><\/ul><\/li><li><a href=\"#song-generation-2-vs-competitors\">SongGeneration 2 vs. Competitors<\/a><ul><li><a href=\"#lyric-accuracy-comparison-phoneme-error-rate-lower-is-better\">Lyric Accuracy Comparison (Phoneme Error Rate \u2014 lower is better)<\/a><\/li><li><a href=\"#overall-quality-comparison\">Overall Quality Comparison<\/a><\/li><\/ul><\/li><li><a href=\"#available-model-versions\">Available Model Versions<\/a><\/li><li><a href=\"#how-to-run-song-generation-2-step-by-step\">How to Run SongGeneration 2: Step-by-Step<\/a><ul><li><a href=\"#option-a-run-it-in-the-cloud-no-setup\">Option A: Run It in the Cloud (No Setup)<\/a><\/li><li><a href=\"#option-b-run-it-locally\">Option B: Run It Locally<\/a><ul><li><a href=\"#step-1-clone-the-repository\">Step 1: Clone the Repository<\/a><\/li><li><a href=\"#step-2-install-dependencies\">Step 2: Install Dependencies<\/a><\/li><li><a href=\"#step-3-download-model-weights\">Step 3: Download Model Weights<\/a><\/li><li><a href=\"#step-4-prepare-your-lyrics-input\">Step 4: Prepare Your Lyrics Input<\/a><\/li><li><a href=\"#step-5-run-generation\">Step 5: Run Generation<\/a><\/li><li><a href=\"#optional-flags\">Optional Flags<\/a><\/li><\/ul><\/li><\/ul><\/li><li><a href=\"#how-to-write-good-lyrics-for-song-generation-2\">How to Write Good Lyrics for SongGeneration 2<\/a><ul><li><a href=\"#the-required-format\">The Required Format<\/a><\/li><li><a href=\"#structure-tags-reference\">Structure Tags Reference<\/a><\/li><li><a href=\"#a-complete-lyrics-example\">A Complete Lyrics Example<\/a><\/li><li><a href=\"#description-tags-optional-but-powerful\">Description Tags (Optional but Powerful)<\/a><\/li><\/ul><\/li><li><a href=\"#common-issues-and-how-to-fix-them\">Common Issues and How to Fix Them<\/a><ul><li><a href=\"#the-model-is-singing-the-wrong-words\">&#8220;The model is singing the wrong words&#8221;<\/a><\/li><li><a href=\"#out-of-memory-oom-error\">&#8220;Out of memory (OOM) error&#8221;<\/a><\/li><li><a href=\"#generation-is-very-slow\">&#8220;Generation is very slow&#8221;<\/a><\/li><li><a href=\"#the-style-doesnt-match-my-description\">&#8220;The style doesn&#8217;t match my description&#8221;<\/a><\/li><li><a href=\"#flash-attention-errors\">&#8220;Flash Attention errors&#8221;<\/a><\/li><\/ul><\/li><li><a href=\"#use-cases-what-can-you-build-with-song-generation-2\">Use Cases: What Can You Build With SongGeneration 2?<\/a><\/li><li><a href=\"#bonus-turn-ai-music-into-full-video-content-with-gaga-ai\">BONUS: Turn AI Music Into Full Video Content with Gaga AI<\/a><ul><li><a href=\"#what-gaga-ai-offers\">What Gaga AI Offers<\/a><ul><li><a href=\"#image-to-video-ai\">Image to Video AI<\/a><\/li><li><a href=\"#video-and-audio-infusion\">Video and Audio Infusion<\/a><\/li><li><a href=\"#ai-avatar\">AI Avatar<\/a><\/li><li><a href=\"#ai-voice-clone\">AI Voice Clone<\/a><\/li><li><a href=\"#text-to-speech-tts\">Text-to-Speech (TTS)<\/a><\/li><\/ul><\/li><li><a href=\"#the-song-generation-2-gaga-ai-workflow\">The SongGeneration 2 + Gaga AI Workflow<\/a><\/li><\/ul><\/li><li><a href=\"#frequently-asked-questions-faq\">Frequently Asked Questions (FAQ)<\/a><ul><\/ul><\/li><\/ul><\/nav><\/div>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-is-song-generation-2\"><strong>What Is SongGeneration 2?<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 is an open-source, commercial-grade AI music generation model developed by Tencent AI Lab that turns structured lyrics and optional style prompts into complete, high-quality songs.<\/p>\n\n\n\n<p>It is the official second generation of the LeVo framework \u2014 short for &#8220;Leverage Vocals.&#8221; The model was publicly released on March 1, 2026, under the code name SongGeneration-v2-large on Hugging Face and GitHub.<\/p>\n\n\n\n<p>Unlike closed-source tools like Suno or Udio, SongGeneration 2 is fully open-weight. Developers, researchers, and creators can download it, run it locally, and build products on top of it \u2014 at zero licensing cost.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-makes-song-generation-2-different\" style=\"font-size:24px\"><strong>What Makes SongGeneration 2 Different?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Most AI music tools generate audio from vague text descriptions. SongGeneration 2 takes a more structured, precise approach:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You provide formatted lyrics with section labels (verse, chorus, bridge)<\/li>\n\n\n\n<li>You optionally add a text description (genre, gender, instrument, emotion, BPM)<\/li>\n\n\n\n<li>Or you provide a 10-second reference audio clip for style transfer<\/li>\n\n\n\n<li>The model produces a complete song that follows your input accurately<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>This level of control \u2014 combined with commercial-grade output quality \u2014 is what sets SongGeneration 2 apart from every other open-source music model.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"who-built-song-generation-2\"><strong>Who Built SongGeneration 2?<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 was developed by Tencent AI Lab, the research division of Tencent (the company behind WeChat, QQ, and Tencent Music). The core research team includes Shun Lei, Yaoxun Xu, Zhiwei Lin, and others. The technical foundation is described in the paper <em>&#8220;LeVo: High-Quality Song Generation with Multi-Preference Alignment&#8221;<\/em> (arXiv:2506.07520).<\/p>\n\n\n\n<p>The project is hosted at:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>GitHub: tencent-ailab\/SongGeneration<\/li>\n\n\n\n<li>Hugging Face: tencent\/SongGeneration<\/li>\n\n\n\n<li>Demo: levo-demo.github.io<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-does-song-generation-2-work\"><strong>How Does SongGeneration 2 Work?<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 works by combining a language model (for musical structure) with a diffusion model (for audio fidelity) in a unified hybrid architecture.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"355\" src=\"https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-architecture-1024x355.webp\" alt=\"songgeneration 2 architecture\" class=\"wp-image-1888\" srcset=\"https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-architecture-1024x355.webp 1024w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-architecture-300x104.webp 300w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-architecture-768x266.webp 768w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-2-architecture.webp 1414w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"the-architecture-hybrid-llm-diffusion\" style=\"font-size:24px\"><strong>The Architecture: Hybrid LLM-Diffusion<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>This is the core technical innovation of SongGeneration 2, and it directly explains why it sounds better than previous open-source models:<\/p>\n\n\n\n<p>LeLM \u2014 &#8220;The Composer Brain&#8221; The language model component handles the <em>musical intelligence<\/em>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Global song structure (how verses lead to choruses)<\/li>\n\n\n\n<li>Melodic patterns and harmonic progressions<\/li>\n\n\n\n<li>Lyric alignment with the beat and rhythm<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>Diffusion \u2014 &#8220;The Hi-Fi Renderer&#8221; Guided by the language model output, the diffusion component handles:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Fine acoustic details (timbre, room sound, reverb)<\/li>\n\n\n\n<li>High-fidelity audio synthesis<\/li>\n\n\n\n<li>Instrument texture and vocal nuance<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"the-token-system-hierarchical-language-model\" style=\"font-size:24px\"><strong>The Token System: Hierarchical Language Model<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 models two types of tokens in parallel:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Mixed Tokens \u2014 capture high-level musical semantics (melody, structure, vocal-instrument harmony)<\/li>\n\n\n\n<li>Dual-Track Tokens \u2014 separately encode vocals and accompaniment, enabling clean separation at output<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>This dual-track approach is why SongGeneration 2 can output isolated vocal tracks or instrumental-only versions \u2014 features absent in most competing models.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"training-3-stage-dpo-alignment\" style=\"font-size:24px\"><strong>Training: 3-Stage DPO Alignment<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>The model solves the notorious &#8220;lyrical hallucination&#8221; problem (where AI sings garbled or wrong words) through a rigorous multi-stage training pipeline:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Stage 1 \u2014 SFT (Supervised Fine-Tuning): Trains on high-quality songs to build a strong baseline.<\/li>\n\n\n\n<li>Stage 2 \u2014 Large-Scale Offline DPO: Uses ~200,000 positive\/negative lyric pairs to eliminate hallucinations and improve controllability.<\/li>\n\n\n\n<li>Stage 3 \u2014 Semi-Online DPO: Continuously updates the model based on automated aesthetic scoring to push musicality higher.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"song-generation-2-vs-competitors\"><strong>SongGeneration 2 vs. Competitors<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 is the first open-source model to challenge commercial-grade AI music tools head-to-head across both lyric accuracy and musicality.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"lyric-accuracy-comparison-phoneme-error-rate-lower-is-better\" style=\"font-size:24px\"><strong>Lyric Accuracy Comparison (Phoneme Error Rate \u2014 lower is better)<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Model<\/strong><\/td><td><strong>PER (%)<\/strong><\/td><td><strong>Type<\/strong><\/td><\/tr><tr><td>SongGeneration 2 (LeVo 2)<\/td><td>8.55%<\/td><td>Open-source \u2705<\/td><\/tr><tr><td>Mureka v8<\/td><td>9.96%<\/td><td>Commercial \u274c<\/td><\/tr><tr><td>Suno v5<\/td><td>12.4%<\/td><td>Commercial \u274c<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>A lower PER means the model sings the actual lyrics more accurately. At 8.55%, SongGeneration 2 sings your words better than the paid tools that dominate the market.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"overall-quality-comparison\" style=\"font-size:24px\"><strong>Overall Quality Comparison<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Feature<\/strong><\/td><td><strong>SongGeneration 2<\/strong><\/td><td><strong>Suno v5<\/strong><\/td><td><strong>YuE<\/strong><\/td><td><strong>ACE-Step<\/strong><\/td><\/tr><tr><td>Open-source<\/td><td>\u2705<\/td><td>\u274c<\/td><td>\u2705<\/td><td>\u2705<\/td><\/tr><tr><td>Max song length<\/td><td>4m30s<\/td><td>~4m<\/td><td>~4m<\/td><td>Varies<\/td><\/tr><tr><td>Multilingual<\/td><td>\u2705 zh\/en\/es\/ja+<\/td><td>\u2705<\/td><td>\u2705<\/td><td>\u2705<\/td><\/tr><tr><td>Audio style prompt<\/td><td>\u2705<\/td><td>\u274c<\/td><td>\u2705<\/td><td>\u2705<\/td><\/tr><tr><td>Dual-track output<\/td><td>\u2705<\/td><td>\u274c<\/td><td>\u274c<\/td><td>\u2705<\/td><\/tr><tr><td>Min GPU memory<\/td><td>10GB<\/td><td>Cloud only<\/td><td>16GB+<\/td><td>16GB+<\/td><\/tr><tr><td>Commercial use<\/td><td>\u2705 (check license)<\/td><td>Paid license<\/td><td>\u2705<\/td><td>\u2705<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"available-model-versions\"><strong>Available Model Versions<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 offers multiple model variants, letting you choose between quality and speed depending on your hardware.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Model<\/strong><\/td><td><strong>Max Length<\/strong><\/td><td><strong>Languages<\/strong><\/td><td><strong>GPU Memory<\/strong><\/td><td><strong>Speed (RTF)<\/strong><\/td><\/tr><tr><td>SongGeneration-base<\/td><td>2m30s<\/td><td>Chinese<\/td><td>10G \/ 16G<\/td><td>0.67<\/td><\/tr><tr><td>SongGeneration-base-new<\/td><td>2m30s<\/td><td>Chinese, English<\/td><td>10G \/ 16G<\/td><td>0.67<\/td><\/tr><tr><td>SongGeneration-base-full<\/td><td>4m30s<\/td><td>Chinese, English<\/td><td>12G \/ 18G<\/td><td>0.69<\/td><\/tr><tr><td>SongGeneration-large<\/td><td>4m30s<\/td><td>Chinese, English<\/td><td>22G \/ 28G<\/td><td>0.82<\/td><\/tr><tr><td>SongGeneration-v2-large<\/td><td>4m30s<\/td><td>zh, en, es, ja+<\/td><td>22G \/ 28G<\/td><td>0.82<\/td><\/tr><tr><td>SongGeneration-v2-medium<\/td><td>4m30s<\/td><td>zh, en, es, ja+<\/td><td>12G \/ 18G<\/td><td>Coming soon<\/td><\/tr><tr><td>SongGeneration-v2-fast<\/td><td>4m30s<\/td><td>zh, en, es, ja+<\/td><td>TBD<\/td><td>Coming soon<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>RTF = Real-Time Factor. An RTF of 0.82 means the model generates 1 minute of audio in ~49 seconds (excluding model load time). The v2-fast version on Hugging Face Space generates a full song in under 1 minute.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-to-run-song-generation-2-step-by-step\"><strong>How to Run SongGeneration 2: Step-by-Step<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 requires a Linux machine with at least 10GB GPU memory (NVIDIA), Python 3.8+, and CUDA 11.8+.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"option-a-run-it-in-the-cloud-no-setup\" style=\"font-size:24px\"><strong>Option A: Run It in the Cloud (No Setup)<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>The easiest way is the Hugging Face Space demo:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to <a href=\"https:\/\/huggingface.co\/spaces\/tencent\/SongGeneration\" rel=\"nofollow noopener\" target=\"_blank\">huggingface.co\/spaces\/tencent\/SongGeneration<\/a><\/li>\n\n\n\n<li>Enter formatted lyrics and optional description<\/li>\n\n\n\n<li>Click Generate and wait 1\u20133 minutes for your song<\/li>\n<\/ol>\n\n\n\n<p>For API access with faster inference, use WaveSpeed at $0.05 per generation.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"option-b-run-it-locally\" style=\"font-size:24px\"><strong>Option B: Run It Locally<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-1-clone-the-repository\"><strong>Step 1: Clone the Repository<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>git clone https:\/\/github.com\/tencent-ailab\/SongGeneration<\/p>\n\n\n\n<p>cd SongGeneration<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-2-install-dependencies\"><strong>Step 2: Install Dependencies<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>pip install -r requirements.txt<\/p>\n\n\n\n<p>pip install -r requirements_nodeps.txt &#8211;no-deps<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-3-download-model-weights\"><strong>Step 3: Download Model Weights<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p># For the latest v2-large model (recommended)<\/p>\n\n\n\n<p>huggingface-cli download lglg666\/SongGeneration-v2-large &#8211;local-dir .\/songgeneration_v2_large<\/p>\n\n\n\n<p># Also download the runtime folder<\/p>\n\n\n\n<p>huggingface-cli download lglg666\/SongGeneration-Runtime &#8211;local-dir .\/runtime<\/p>\n\n\n\n<p>mv runtime\/ckpt ckpt<\/p>\n\n\n\n<p>mv runtime\/third_party third_party<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-4-prepare-your-lyrics-input\"><strong>Step 4: Prepare Your Lyrics Input<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>Create a .jsonl file. Each line is one song request:<\/p>\n\n\n\n<p>{<\/p>\n\n\n\n<p>&nbsp;&nbsp;&#8220;idx&#8221;: &#8220;my_song_001&#8221;,<\/p>\n\n\n\n<p>&nbsp;&nbsp;&#8220;gt_lyric&#8221;: &#8220;[intro-medium] ; [verse] Streetlights flicker in the night. I wander through familiar corners. ; [chorus] The warmth of memories still remains. But you are gone. ; [outro-short]&#8221;,<\/p>\n\n\n\n<p>&nbsp;&nbsp;&#8220;descriptions&#8221;: &#8220;female, dark, pop, sad, piano and drums&#8221;,<\/p>\n\n\n\n<p>&nbsp;&nbsp;&#8220;prompt_audio_path&#8221;: null<\/p>\n\n\n\n<p>}<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"step-5-run-generation\"><strong>Step 5: Run Generation<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>sh generate.sh songgeneration_v2_large sample\/lyrics.jsonl sample\/output<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"optional-flags\"><strong>Optional Flags<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>&#8211;bgm&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # Generate instrumental only (no vocals)<\/p>\n\n\n\n<p>&#8211;vocal&nbsp; &nbsp; &nbsp; &nbsp; # Generate vocals only (a cappella)<\/p>\n\n\n\n<p>&#8211;separate &nbsp; &nbsp; # Output vocals and accompaniment as separate tracks<\/p>\n\n\n\n<p>&#8211;low_mem&nbsp; &nbsp; &nbsp; # Enable if you&#8217;re hitting GPU memory limits<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-to-write-good-lyrics-for-song-generation-2\"><strong>How to Write Good Lyrics for SongGeneration 2<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Lyric formatting is critical \u2014 poorly formatted input is the single most common reason for bad output quality.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"578\" src=\"https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-demo-space-1024x578.webp\" alt=\"songgeneration demo space\" class=\"wp-image-1890\" srcset=\"https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-demo-space-1024x578.webp 1024w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-demo-space-300x169.webp 300w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-demo-space-768x433.webp 768w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-demo-space-1536x866.webp 1536w, https:\/\/gaga.art\/blog\/wp-content\/uploads\/2026\/03\/songgeneration-demo-space-2048x1155.webp 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"the-required-format\" style=\"font-size:24px\"><strong>The Required Format<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>[structure-tag] ; [lyrics line 1]. [lyrics line 2]. ; [next-section]<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"structure-tags-reference\" style=\"font-size:24px\"><strong>Structure Tags Reference<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Instrumental sections (no lyrics):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>[intro-short] \u2014 0\u201310 second intro<\/li>\n\n\n\n<li>[intro-medium] \u2014 10\u201320 second intro<\/li>\n\n\n\n<li>[inst-short] \/ [inst-medium] \u2014 instrumental break<\/li>\n\n\n\n<li>[outro-short] \/ [outro-medium] \u2014 ending<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>Lyrical sections (require lyrics):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>[verse] \u2014 verse<\/li>\n\n\n\n<li>[chorus] \u2014 chorus\/hook<\/li>\n\n\n\n<li>[bridge] \u2014 bridge<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"a-complete-lyrics-example\" style=\"font-size:24px\"><strong>A Complete Lyrics Example<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>[intro-medium] ; [verse] Trails wind through the forest. Trees stand tall and honest. Moss covers the logs. Sunlight starts to fondest. ; [chorus] Forest is the sanctuary where the promise does fondest. Is the tree that stands through the storm&#8217;s honest. Is the peace that makes the restless heart honest. ; [inst-medium] ; [verse] Squirrels scamper by. Nuts hide in the sky. Streams trickle through. ; [chorus] Forest is the sanctuary where the promise does fondest. Is the peace that makes the restless heart honest. ; [outro-medium]<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"description-tags-optional-but-powerful\" style=\"font-size:24px\"><strong>Description Tags (Optional but Powerful)<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Use comma-separated keywords \u2014 never full sentences:<\/p>\n\n\n\n<p>\u2705 Valid:<\/p>\n\n\n\n<p>female, dark, pop, sad, piano and drums, the bpm is 125<\/p>\n\n\n\n<p>male, bright, rock, inspirational, bass and drums<\/p>\n\n\n\n<p>\u274c Invalid:<\/p>\n\n\n\n<p>Please make a sad pop song with piano.<\/p>\n\n\n\n<p>A melancholic female voice over slow drums.<\/p>\n\n\n\n<p>Supported dimensions:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gender: male, female<\/li>\n\n\n\n<li>Timbre: dark, bright, soft, warm, loud, magnetic<\/li>\n\n\n\n<li>Genre: pop, rock, jazz, R&amp;B, folk, electronic, country, hip-hop, blues<\/li>\n\n\n\n<li>Emotion: sad, energetic, romantic, melancholic, mysterious, inspirational<\/li>\n\n\n\n<li>Instrument: piano, guitar, drums, bass, synthesizer, electric guitar<\/li>\n\n\n\n<li>BPM: &#8220;the bpm is 120&#8221;<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"common-issues-and-how-to-fix-them\"><strong>Common Issues and How to Fix Them<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"the-model-is-singing-the-wrong-words\" style=\"font-size:24px\"><strong>&#8220;The model is singing the wrong words&#8221;<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Solution: This is a lyric formatting error. Check that sections are separated by semicolons (;), sentences within sections end with periods (.), and you&#8217;re using English punctuation only. Review your .jsonl formatting carefully.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"out-of-memory-oom-error\" style=\"font-size:24px\"><strong>&#8220;Out of memory (OOM) error&#8221;<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Solution: Add the &#8211;low_mem flag to your generation command. Also try using SongGeneration-base-new (10GB) instead of the large or v2-large variant.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"generation-is-very-slow\" style=\"font-size:24px\"><strong>&#8220;Generation is very slow&#8221;<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Solution: Use the SongGeneration-v2-fast version on Hugging Face Space, or use the WaveSpeed API which has no cold starts. Local inference RTF of 0.82 means a 4-minute song takes ~3.3 minutes of compute time (excluding model load).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"the-style-doesnt-match-my-description\" style=\"font-size:24px\"><strong>&#8220;The style doesn&#8217;t match my description&#8221;<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Solution: Don&#8217;t provide both prompt_audio_path AND descriptions simultaneously \u2014 they will conflict. Choose one. If using audio prompts, use the chorus section of the reference track for best results.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"flash-attention-errors\" style=\"font-size:24px\"><strong>&#8220;Flash Attention errors&#8221;<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Solution: Add &#8211;not_use_flash_attn to your command if your GPU doesn&#8217;t support Flash Attention, or if you haven&#8217;t installed the Flash Attention package.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"use-cases-what-can-you-build-with-song-generation-2\"><strong>Use Cases: What Can You Build With SongGeneration 2?<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 is suitable for any workflow that requires controllable, high-quality song generation at scale.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Content creators \u2014 Generate original background music with custom lyrics for YouTube, Podcasts, or social media<\/li>\n\n\n\n<li>Game developers \u2014 Produce adaptive soundtrack variations without licensing costs<\/li>\n\n\n\n<li>Music educators \u2014 Demonstrate songwriting structure with generated examples<\/li>\n\n\n\n<li>Indie artists \u2014 Create demo tracks and full arrangements from lyrics drafts<\/li>\n\n\n\n<li>App developers \u2014 Build music generation products using the open weights or WaveSpeed API<\/li>\n\n\n\n<li>Researchers \u2014 Study lyric-to-audio alignment, vocal synthesis, and multi-track generation<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"bonus-turn-ai-music-into-full-video-content-with-gaga-ai\"><strong>BONUS: Turn AI Music Into Full Video Content with Gaga AI<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 gives you the song. <a href=\"https:\/\/gaga.art\/en\/\">Gaga AI<\/a> gives you the complete production.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-a89b3969 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"http:\/\/gaga.art\/app\" target=\"_blank\" rel=\"noreferrer noopener\">Generate Video Free<\/a><\/div>\n\n\n\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/gaga.art\/\">Learn Gaga AI<\/a><\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>Once you have a high-quality AI-generated track from SongGeneration 2, the next bottleneck is visual content. A great song without a video, a presenter, or a visual identity is invisible on platforms like YouTube, TikTok, and Instagram.<\/p>\n\n\n\n<p>Gaga AI is an all-in-one AI video creation platform that bridges the gap between your SongGeneration 2 audio and a publication-ready video asset.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-gaga-ai-offers\" style=\"font-size:24px\"><strong>What Gaga AI Offers<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"image-to-video-ai\"><strong>Image to Video AI<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>Convert any static image into a dynamic animated video clip \u2014 perfectly timed to your AI-generated music. Use cases include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Animating album cover art to match your SongGeneration 2 track<\/li>\n\n\n\n<li>Creating lyric-video style animations from illustrated artwork<\/li>\n\n\n\n<li>Building short-form video content for TikTok or Instagram Reels<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"video-and-audio-infusion\"><strong>Video and Audio Infusion<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>Gaga AI doesn&#8217;t just pair audio and video \u2014 it synchronizes them intelligently:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Overlay your SongGeneration 2 track as the primary audio layer<\/li>\n\n\n\n<li>Add ambient sounds, SFX, and sound design on top<\/li>\n\n\n\n<li>Auto-sync visual transitions to beat detection<\/li>\n\n\n\n<li>Balance music, voiceover, and effects at the mixing stage<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>This turns a SongGeneration 2 audio file into a broadcast-ready video in minutes.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"ai-avatar\"><strong>AI Avatar<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>Create a photorealistic AI avatar that presents your content \u2014 talking, reacting, and delivering your message \u2014 without you ever appearing on camera. Use cases:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Music video &#8220;artists&#8221; with consistent visual identity<\/li>\n\n\n\n<li>Talking-head presenter for lyric breakdowns or music commentary<\/li>\n\n\n\n<li>Brand spokesperson for music app promotions<\/li>\n\n\n\n<li>Educational explainer presenting SongGeneration 2 tutorial walkthroughs<\/li>\n\n\n\n<li><\/li>\n<\/ul>\n\n\n\n<p>Avatars are fully customizable: appearance, expression, language, and movement.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"ai-voice-clone\"><strong>AI Voice Clone<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>Record a short voice sample and Gaga AI creates a digital clone of your voice. This enables:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Narration over your AI music video in your own voice<\/li>\n\n\n\n<li>Consistent artist voice identity across multiple releases<\/li>\n\n\n\n<li>Rapid multilingual content \u2014 clone once, speak in multiple languages<\/li>\n\n\n\n<li>Podcast-style music commentary without re-recording sessions<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"text-to-speech-tts\"><strong>Text-to-Speech (TTS)<\/strong><\/h4>\n\n\n\n<p><\/p>\n\n\n\n<p>Don&#8217;t want to record your voice at all? Gaga AI&#8217;s TTS engine delivers:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Natural-sounding voices in multiple languages and accents<\/li>\n\n\n\n<li>Emotional tone control: neutral, warm, energetic, authoritative<\/li>\n\n\n\n<li>Adjustable speaking speed and emphasis<\/li>\n\n\n\n<li>SSML support for precise prosody control<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"the-song-generation-2-gaga-ai-workflow\" style=\"font-size:24px\"><strong>The SongGeneration 2 + Gaga AI Workflow<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Compose your lyrics and run SongGeneration 2 to produce a full song (vocals + accompaniment)<\/li>\n\n\n\n<li>Design album or lyric artwork (or use Craiyon AI for free concept images)<\/li>\n\n\n\n<li>Animate your artwork into a video clip with Gaga AI&#8217;s image-to-video feature<\/li>\n\n\n\n<li>Infuse your SongGeneration 2 audio track into the video with Gaga AI&#8217;s audio layer<\/li>\n\n\n\n<li>Add a presenter using Gaga AI&#8217;s AI Avatar to introduce or comment on the track<\/li>\n\n\n\n<li>Voice it with Gaga AI&#8217;s TTS or voice clone for narration<\/li>\n\n\n\n<li>Publish to YouTube, TikTok, Instagram, or Spotify Canvas<\/li>\n<\/ol>\n\n\n\n<p>This full-stack pipeline lets a solo creator go from a lyric draft to a published music video \u2014 without a studio, band, camera, or mixing engineer.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"frequently-asked-questions-faq\"><strong>Frequently Asked Questions (FAQ)<\/strong><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-is-song-generation-2-1\" style=\"font-size:24px\"><strong>What is SongGeneration 2?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 (also called LeVo 2) is an open-source AI music generation model built by Tencent AI Lab. It takes formatted lyrics and optional style prompts and generates complete, high-quality songs up to 4 minutes 30 seconds long. It was released in March 2026 and is available free on GitHub and Hugging Face.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"is-song-generation-2-free\" style=\"font-size:24px\"><strong>Is SongGeneration 2 free?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Yes. SongGeneration 2 is fully open-source and free to download and run locally. A Hugging Face Space demo is also free to use. Third-party API providers like WaveSpeed charge approximately $0.05 per generation.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-is-song-generation-2-different-from-suno\" style=\"font-size:24px\"><strong>How is SongGeneration 2 different from Suno?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 is open-source and runs locally; Suno is a closed, subscription-based commercial service. SongGeneration 2 achieves a lower Phoneme Error Rate (8.55%) than Suno v5 (12.4%), meaning it sings lyrics more accurately. Suno has a more polished consumer interface; SongGeneration 2 requires technical setup for local use.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-gpu-do-i-need-to-run-song-generation-2\" style=\"font-size:24px\"><strong>What GPU do I need to run SongGeneration 2?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>The base models require a minimum of 10GB VRAM (without audio prompts) or 16GB VRAM (with audio prompts). The large and v2-large models require 22GB \/ 28GB VRAM respectively. Use the &#8211;low_mem flag to reduce memory usage on lower-end hardware.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-languages-does-song-generation-2-support\" style=\"font-size:24px\"><strong>What languages does SongGeneration 2 support?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>SongGeneration 2 (v2-large) supports multiple languages including Chinese (Mandarin), English, Spanish, Japanese, and others. Earlier base models support Chinese and English only.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"can-song-generation-2-generate-instrumental-music-without-vocals\" style=\"font-size:24px\"><strong>Can SongGeneration 2 generate instrumental music without vocals?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Yes. Use the &#8211;bgm flag to generate pure background music (no vocals), the &#8211;vocal flag for a cappella vocals only, or &#8211;separate for dual-track output with vocals and accompaniment as separate audio files.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-do-i-fix-lyric-hallucination-in-song-generation-2\" style=\"font-size:24px\"><strong>How do I fix lyric hallucination in SongGeneration 2?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Lyric hallucination (the model singing wrong words) is almost always caused by incorrect lyric formatting. Ensure sections are semicolon-separated, sentences within lyrical sections end with periods, and all punctuation is English half-width. Refer to the official formatting guide in the GitHub repository.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-long-does-song-generation-2-take-to-generate-a-song\" style=\"font-size:24px\"><strong>How long does SongGeneration 2 take to generate a song?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>At a Real-Time Factor of 0.82 (for the large model), a 4-minute song takes approximately 3.3 minutes of computation, not counting model loading time. The v2-fast variant on Hugging Face Space can generate a full song in under 1 minute, with a slight quality trade-off.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"can-i-use-song-generation-2-for-commercial-projects\" style=\"font-size:24px\"><strong>Can I use SongGeneration 2 for commercial projects?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Review the LICENSE file in the official GitHub repository before commercial use. The weights and code have specific licensing terms that govern commercial applications. Always check the latest license before deploying in a product.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"where-can-i-try-song-generation-2-without-installing-anything\" style=\"font-size:24px\"><strong>Where can I try SongGeneration 2 without installing anything?<\/strong><\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Use the official Hugging Face Space demo at huggingface.co\/spaces\/tencent\/SongGeneration, or use the WaveSpeed API playground at wavespeed.ai for a no-code inference experience at $0.05\/run.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>SongGeneration 2 by Tencent AI beats Suno v5 on lyric accuracy and rivals commercial models \u2014 free, open-source, and ready to run. Here&#8217;s everything you need to know.<\/p>\n","protected":false},"author":2,"featured_media":1889,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1887","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-audio"],"_links":{"self":[{"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/posts\/1887","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/comments?post=1887"}],"version-history":[{"count":1,"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/posts\/1887\/revisions"}],"predecessor-version":[{"id":1891,"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/posts\/1887\/revisions\/1891"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/media\/1889"}],"wp:attachment":[{"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/media?parent=1887"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/categories?post=1887"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gaga.art\/blog\/wp-json\/wp\/v2\/tags?post=1887"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}