Stable Diffusion เป็นเทคโนโลยีการสร้างภาพจากข้อความ (Text to Image) ที่ได้รับความนิยมเพราะเป็น Open Source จึงทำให้สามารถปรับแต่งโมเดลได้หลากหลาย มี 3 องค์ประกอบหลักที่ช่วยให้การทำงานเป็นไปอย่างราบรื่น ได้แก่ Checkpoint, VAE และ CLIP มาทำความรู้จักกับแต่ละส่วนกัน
Checkpoint โมเดล
Checkpoint คือไฟล์ที่โมเดลที่ถูกฝึกมาแล้ว สามารถใช้ในการสร้างภาพจากข้อความได้ (Text to Image) มี Checkpoint หลายแบบให้เลือกใช้ ทั้งโมเดลสร้างภาพการ์ตูน โมเดลสร้างภาพสมจริง ส่วนใหญ่เราจะพบไฟล์ Checkpoint ในรูปแบบของ .safetensors โดยมีหลากหลายรุ่นที่นิยมใช้ เช่น
- SD1.5 (Stable Diffusion v1.5): สามารถสร้างภาพได้ดี ใช้ทรัพยากรเครื่องไม่สูงมาก เหมาะสำหรับการใช้งานทั่วไป ทำงานได้เร็วมาก เครื่องคอมพิวเตอร์ระดับกลางก็สามารถรันได้
- SDXL (Stable Diffusion XL): คุณภาพสูงกว่า SD1.5 แต่ใช้ทรัพยากรเครื่องมากขึ้น เหมาะสำหรับงานที่ต้องการรายละเอียดและความละเอียดสูง ทำงานช้ากว่า SD1.5 ประมาณ 2-3 เท่า
Checkpoint ปรับแต่ง (Merge): คือการรวมโมเดลหลาย ๆ โมเดลเข้าด้วยกัน เพื่อให้ได้ผลลัพธ์ที่ดีกว่าเดิม เช่น การรวมโมเดลที่เก่งในการสร้างภาพทิวทัศน์กับโมเดลที่เก่งในการสร้างภาพคน ทำให้ได้โมเดลที่สามารถสร้างภาพทั้งสองประเภทได้ดี
สามารถหาโหลด Checkpoint ได้จากเว็บเหล่านี้
- Hugging Face Model Hub
- GitHub Repositories
- Civitai
VAE (Variational Autoencoder): ช่วยให้ภาพสดใสขึ้น
มือใหม่หลายๆ คนมักเจอปัญหาเจนภาพออกมาแล้วภาพสีซีด สาเหตุก็เพราะไม่ได้ตั้งค่าใช้งาน VAE นั้นเอง VAE เป็นโมเดลที่ใช้ในการบีบอัดและกู้คืนข้อมูล ทำหน้าที่ช่วยให้ภาพที่โมเดลสร้างออกมามีสีสันและความคมชัดมากขึ้น จึงทำให้ภาพดูดีและมีรายละเอียดที่ชัดเจนขึ้น VAE ที่นิยมใช้กันสามารถทดลองโหลดใช้ดูได้ที่นี่
ในการใช้ VAE กับ Stable Diffusion นั้นเรามักจะโหลด VAE ควบคู่ไปกับ Checkpoint ในระหว่างการตั้งค่าโมเดล เพื่อให้ VAE ช่วยปรับปรุงคุณภาพของภาพที่สร้างออกมา หรือในบาง Checkpoint ก็มีการ merg VAE รวมเข้าไปในตัวโมเดลเลยก็มี ต้องคอยอ่านคู่มือการใช้งาน Checkpoint แต่ละตัวให้ดีด้วย
CLIP (Contrastive Language–Image Pre-training): ทำให้โมเดลเข้าใจภาษามนุษย์
CLIP เป็นโมเดลที่ถูกฝึกให้เชื่อมโยงข้อความกับภาพ ทำให้โมเดลสามารถเข้าใจและสร้างภาพตามคำอธิบายที่เราป้อนเข้าไปได้อย่างถูกต้อง (Prompt) เช่น ถ้าเราบอกให้สร้างภาพแมว โมเดลจะเข้าใจว่าเราต้องการอะไรและสามารถสร้างภาพแมวออกมาได้
LORA คืออะไร ต่างยังไงกับ Checkpoint
LORA (Low-Rank Adaptation) คือเทคนิคที่ใช้ในการปรับปรุงและปรับแต่งโมเดล AI โดยใช้ทรัพยากรน้อยกว่าการฝึกโมเดลใหม่ทั้งหมด มักใช้เพื่อเพิ่มความสามารถเฉพาะด้านให้กับโมเดลที่มีอยู่แล้ว โดยไม่ต้องฝึกโมเดลใหม่ทั้งหมด หรือถ้าจะให้เปรียบเที่ยบง่ายๆ LORA ก็คือ DLC ของตัว Checkpoint นั้นเอง
ยกตัวอย่างการสร้าง Mascot ด้วย LORA
Blue Robot (โมเดลธรรมดา)
Blue Robot (ที่ผ่าน LORA)
ความสัมพันธ์ของ Checkpoint, VAE, และ CLIP
- Checkpoint: สร้างภาพตามคำสั่ง
- VAE: ทำให้ภาพมีสีสันและรายละเอียดมากขึ้น
- CLIP: ทำให้โมเดลเข้าใจคำสั่งของเรา
การทำงานร่วมกันของ Checkpoint, VAE, และ CLIP ทำให้ Stable Diffusion สามารถสร้างภาพที่มีคุณภาพสูงและตรงตามความต้องการของเราได้อย่างมีประสิทธิภาพ