<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: 张洲诚（Zack.ZHANG）</title>
    <description>The latest articles on DEV Community by 张洲诚（Zack.ZHANG） (@zackzhang).</description>
    <link>https://dev.to/zackzhang</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4009090%2F3dfae9a2-cf7c-4d8e-90fa-7dba1333ea72.jpg</url>
      <title>DEV Community: 张洲诚（Zack.ZHANG）</title>
      <link>https://dev.to/zackzhang</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/zackzhang"/>
    <language>en</language>
    <item>
      <title>I Wanted to Try AI Video But Kept Getting Stuck. This Tool Got Me My First Complete Video in 12 Minutes</title>
      <dc:creator>张洲诚（Zack.ZHANG）</dc:creator>
      <pubDate>Wed, 01 Jul 2026 10:29:22 +0000</pubDate>
      <link>https://dev.to/zackzhang/i-wanted-to-try-ai-video-but-kept-getting-stuck-this-tool-got-me-my-first-complete-video-in-12-3iok</link>
      <guid>https://dev.to/zackzhang/i-wanted-to-try-ai-video-but-kept-getting-stuck-this-tool-got-me-my-first-complete-video-in-12-3iok</guid>
      <description>&lt;h2&gt;
  
  
  The Gap Between "Wanting to Try" and "Actually Doing It"
&lt;/h2&gt;

&lt;p&gt;You've probably seen AI-generated videos on social media. Sora, HappyHorse, Kling — the results look amazing. You want to try it too.&lt;/p&gt;

&lt;p&gt;But then you hit a wall:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Which model?&lt;/strong&gt; text-to-video? image-to-video? What resolution? What parameters?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How much will it cost?&lt;/strong&gt; API pricing is per-second. One video requires multiple model calls. What if the result sucks?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Where's the full path?&lt;/strong&gt; Tutorials teach you to generate a 5-second clip. Then what? Script? Editing? Voiceover? Music?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Other creators make it look easy&lt;/strong&gt; — but they clearly spent months learning. You don't have months.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The result: you bookmark 20 tutorials, register 3 accounts, and never produce a single complete video.&lt;/p&gt;




&lt;h2&gt;
  
  
  What If Someone Packaged All That Experience For You?
&lt;/h2&gt;

&lt;p&gt;That's exactly what &lt;strong&gt;spark-video&lt;/strong&gt; does.&lt;/p&gt;

&lt;p&gt;It's a Skill from Alibaba Cloud's Model Studio (Bailian) official repository. It takes the accumulated best practices from experienced AI video creators — model selection, shot design, quality control, editing — and packages them into an automated pipeline.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What you do:&lt;/strong&gt; Type one sentence → confirm 4 times → get a complete mp4.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it does:&lt;/strong&gt; Write script → design shots → select models → render → quality check (auto-reshoot bad frames) → stitch → add voiceover + BGM → output.&lt;/p&gt;




&lt;h2&gt;
  
  
  My First Video (12 Minutes, Zero Prior Experience)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Use spark-video to create a 30-second video.
Content: A cat watching a sunset on a city rooftop. Warm, cozy vibe. 16:9.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;What happened:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AI wrote a 4-shot script → asked "OK?" → I said yes&lt;/li&gt;
&lt;li&gt;AI designed each shot + showed cost estimate (~$1.50) → "OK?" → yes&lt;/li&gt;
&lt;li&gt;AI rendered all shots (one auto-reshooted due to low quality score) → "OK?" → yes&lt;/li&gt;
&lt;li&gt;AI stitched final video with BGM → "Final version OK?" → yes&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;12 minutes later: I had my first complete AI video.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No model selection. No parameter tuning. No editing skills needed.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Works for Beginners
&lt;/h2&gt;

&lt;p&gt;The design philosophy is: &lt;strong&gt;hide complexity, expose decisions&lt;/strong&gt;.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;You decide&lt;/th&gt;
&lt;th&gt;spark-video handles&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;What video you want&lt;/td&gt;
&lt;td&gt;Script writing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"OK" or "change this"&lt;/td&gt;
&lt;td&gt;Shot design&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"OK" or "too expensive"&lt;/td&gt;
&lt;td&gt;Model selection + rendering&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"OK" or "reshoot that"&lt;/td&gt;
&lt;td&gt;Quality control + retries&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;"OK" or "tweak audio"&lt;/td&gt;
&lt;td&gt;Stitching + voiceover + BGM&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  On Cost (The #1 Fear)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Cost estimate shown &lt;strong&gt;before&lt;/strong&gt; rendering starts&lt;/li&gt;
&lt;li&gt;Typical 30-second video: $1-3&lt;/li&gt;
&lt;li&gt;New users get free credits — first video essentially costs nothing&lt;/li&gt;
&lt;li&gt;Compare: randomly calling APIs yourself without best practices = 10x wasted spend on failed attempts&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Installation (3 Minutes)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; bailian-cli
bl auth login
npx skills add modelstudioai/skills &lt;span class="nt"&gt;--skill&lt;/span&gt; spark-video &lt;span class="nt"&gt;-g&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Requirements: Node.js + &lt;a href="https://bailian.console.aliyun.com/cn-beijing/?source_channel=key_github&amp;amp;tab=app#/api-key" rel="noopener noreferrer"&gt;Bailian API Key&lt;/a&gt; (free) + ffmpeg&lt;/p&gt;

&lt;p&gt;Or just tell your AI assistant:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;Install spark-video &lt;span class="k"&gt;for &lt;/span&gt;me. Handle Node.js, bailian-cli, and ffmpeg setup.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Under the Hood (Optional Reading)
&lt;/h2&gt;

&lt;p&gt;For the technically curious, spark-video uses a multi-agent architecture:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Producer&lt;/strong&gt;: Orchestrator (no production work, only routing)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Screenwriter&lt;/strong&gt;: Script generation&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Director&lt;/strong&gt;: Shot design + render prompt engineering&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cast&lt;/strong&gt;: Character consistency management (prevents "face changing" between shots)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clip-Review / VFX-Review&lt;/strong&gt;: Automated QA via vision models (score ≥ 7.0 = pass)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stitch&lt;/strong&gt;: ffmpeg composition + TTS + BGM mixing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Key patterns:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;DAG scheduling (parallel across scene groups, serial within groups for continuity)&lt;/li&gt;
&lt;li&gt;Retry-with-escalation (3 auto-retries, then escalate to user)&lt;/li&gt;
&lt;li&gt;Cost gate (GATE 2 shows estimate before spending)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But you don't need to know any of this to use it.&lt;/p&gt;




&lt;h2&gt;
  
  
  Who Is This For?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Anyone who's been &lt;strong&gt;wanting to try AI video but hasn't started&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;People who find existing tools too complex or too expensive to experiment with&lt;/li&gt;
&lt;li&gt;Content creators who want to &lt;strong&gt;skip the trial-and-error phase&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not for: feature films, frame-perfect animation, photorealistic human faces.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Real Barrier
&lt;/h2&gt;

&lt;p&gt;The barrier to AI video creation was never talent or technical skill. It was &lt;strong&gt;not having a simple enough starting point&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;spark-video is that starting point. Expert methods, officially verified, packaged for beginners.&lt;/p&gt;

&lt;p&gt;Your first AI video is 10 minutes away.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitHub: &lt;a href="https://github.com/modelstudioai/skills" rel="noopener noreferrer"&gt;modelstudioai/skills&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Bailian CLI: &lt;a href="https://bailian.console.aliyun.com/cli?source_channel=cli_github&amp;amp;" rel="noopener noreferrer"&gt;Install&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  - API Key: &lt;a href="https://bailian.console.aliyun.com/cn-beijing/?source_channel=key_github&amp;amp;tab=app#/api-key" rel="noopener noreferrer"&gt;Free&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;title: "AI Video Production in One Prompt: From Script to Final MP4 in 10 Minutes"&lt;br&gt;
published: true&lt;br&gt;
description: "How spark-video turns your AI Agent into a full video production pipeline — screenplay, storyboard, render, QA, and stitch, all automated."&lt;br&gt;
tags: ["ai", "video", "productivity", "tutorial"]&lt;br&gt;
cover_image: ""&lt;/p&gt;
&lt;h2&gt;
  
  
  canonical_url: "&lt;a href="https://github.com/modelstudioai/skills/tree/main/skills/spark-video" rel="noopener noreferrer"&gt;https://github.com/modelstudioai/skills/tree/main/skills/spark-video&lt;/a&gt;"
&lt;/h2&gt;
&lt;h1&gt;
  
  
  AI Video Production in One Prompt
&lt;/h1&gt;
&lt;h2&gt;
  
  
  The Problem Nobody's Solving
&lt;/h2&gt;

&lt;p&gt;Here's what AI video tools look like in 2026:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sora/Kling&lt;/strong&gt;: Generate stunning 5-10 second clips. Then you write the script yourself, stitch clips yourself, add voiceover yourself, mix audio yourself.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CapCut/templates&lt;/strong&gt;: Select a template, drag in your assets. Creative freedom? Zero.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The gap: &lt;strong&gt;There's no tool that takes "I want a product ad" and delivers a complete MP4.&lt;/strong&gt; Until now.&lt;/p&gt;
&lt;h2&gt;
  
  
  What Is spark-video?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/modelstudioai/skills" rel="noopener noreferrer"&gt;spark-video&lt;/a&gt; is an AI Agent Skill that turns your coding assistant (Qwen Code, Claude Code, Cursor, etc.) into a full video production pipeline:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Your one-sentence premise
        ↓
Screenwriter (writes multi-scene script)
        ↓
Director (creates shot-by-shot storyboard)
        ↓
HappyHorse model (renders each shot in parallel)
        ↓
Auto QA (vision model scores each clip, retries if &amp;lt; 7/10)
        ↓
ffmpeg stitch + TTS voiceover + BGM mix
        ↓
Complete MP4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You confirm at 4 gates. Creative control stays with you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Real Examples
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Product ad&lt;/strong&gt; — input:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Use spark-video to create a premium wireless headphone ad.
Product image: ~/headphone.webp
Copy: "AirWave Pro — adaptive noise cancellation, spatial audio, 28h battery."
16:9. Loop BGM.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Result: 30-second product ad. &lt;strong&gt;12 minutes. ~$1 in API costs.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explainer&lt;/strong&gt; — input:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Pop-science video, under 3 min: why cats always land on their feet.
Narration mode.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Result: 3-minute explainer with TTS voiceover.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Vertical short drama&lt;/strong&gt; — input:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Suspense: programmer works late, elevator comes from nonexistent floor B1.
9:16 vertical. Drama mode.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Result: 2-minute vertical short for TikTok/Reels.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture (Why It's Different)
&lt;/h2&gt;

&lt;p&gt;The key insight: &lt;strong&gt;spark-video is not a video generator. It's a video production Agent.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  6 Sub-Skills
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Producer&lt;/strong&gt;: Orchestrator, manages 4 confirmation gates&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Screenwriter&lt;/strong&gt;: Writes multi-scene screenplay&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Director&lt;/strong&gt;: Creates JSON storyboard per scene&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cast&lt;/strong&gt;: Manages character consistency (cast.json)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clip-Review&lt;/strong&gt;: Auto-QA with vision model scoring&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stitch&lt;/strong&gt;: ffmpeg concat + audio mixing&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  DAG-based Parallel Rendering
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;chain_groups&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
    &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;S01-001&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;S01-002&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;S01-003&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;  &lt;span class="c1"&gt;# sequential (frame continuity)
&lt;/span&gt;    &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;S02-001&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;S02-002&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;              &lt;span class="c1"&gt;# parallel with above
&lt;/span&gt;    &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;S03-001&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;                          &lt;span class="c1"&gt;# parallel with above
&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Within a chain group: sequential (last frame → first frame chaining).&lt;br&gt;
Between chain groups: parallel (up to 4 concurrent).&lt;/p&gt;

&lt;h3&gt;
  
  
  Auto QA + Escalation
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Render → Vision model scores → &amp;gt;= 7.0 → ACCEPT
                              → &amp;lt; 7.0  → rewrite prompt → retry (max 3)
                                       → exhausted → escalate to Director
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Quick Start
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Install&lt;/span&gt;
npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; bailian-cli &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; bl auth login
npx skills add modelstudioai/skills &lt;span class="nt"&gt;--skill&lt;/span&gt; spark-video &lt;span class="nt"&gt;-g&lt;/span&gt;

&lt;span class="c"&gt;# Use (in your AI Agent)&lt;/span&gt;
&lt;span class="s2"&gt;"Use spark-video to make a product ad. Project: demo, episode 1.
 Product: smart watch. Selling points: 7-day battery, blood oxygen. 30s, 16:9."&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;: Node.js &amp;gt;= 18, &lt;a href="https://bailian.console.aliyun.com/cn-beijing/?source_channel=key_github&amp;amp;tab=app#/api-key" rel="noopener noreferrer"&gt;API Key (free)&lt;/a&gt;, ffmpeg.&lt;/p&gt;

&lt;h2&gt;
  
  
  When to Use
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Use case&lt;/th&gt;
&lt;th&gt;Fit&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Product ads (30s-2min)&lt;/td&gt;
&lt;td&gt;Excellent&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Explainers (1-5min)&lt;/td&gt;
&lt;td&gt;Great&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Short dramas (1-3min)&lt;/td&gt;
&lt;td&gt;Good&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Social media content&lt;/td&gt;
&lt;td&gt;Great&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;30+ min long-form&lt;/td&gt;
&lt;td&gt;Not ideal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Photorealistic live-action&lt;/td&gt;
&lt;td&gt;Not ideal&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;GitHub: &lt;a href="https://github.com/modelstudioai/skills" rel="noopener noreferrer"&gt;modelstudioai/skills&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;CLI: &lt;a href="https://bailian.console.aliyun.com/cli?source_channel=cli_github&amp;amp;" rel="noopener noreferrer"&gt;https://bailian.console.aliyun.com/cli?source_channel=cli_github&amp;amp;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;API Key: &lt;a href="https://bailian.console.aliyun.com/cn-beijing/?source_channel=key_github&amp;amp;tab=app#/api-key" rel="noopener noreferrer"&gt;Free signup&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Full tutorial: &lt;a href="https://modelstudioai.github.io/guide/" rel="noopener noreferrer"&gt;modelstudioai.github.io/guide/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>video</category>
      <category>productivity</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
