Nhập môn Stable Diffusion

Lời nói đầu

Chào các bạn, hiện tại thì Stable Diffusion đã phát triển rất rộng rãi và ứng dụng trong nhiều lĩnh vực. Bài viết này mình sẽ chia sẻ cách nhìn tổng quan và dễ hiểu nhất để giúp cho người cũ hoặc người mới có có thể dễ dàng tiếp cận và tìm hiểu về bộ môn này một cách dễ dàng nhất. Bài viết chia sẻ cách nhìn thông qua ý hiểu của bản thân và sẽ nhẹ tính hàn lâm vì vậy có thể có nhiều thiếu sót, mong rằng mọi người có thể góp ý nhẹ nhàng ^^.

Mục lục :

 

I. Tổng quan về Stable Diffusion

1. Stable Diffusion là gì ?

Stable Diffusion là một bộ dữ liệu mã nguồn mở cung cấp giải pháp generate ảnh bằng công nghệ AI và được phát hành bởi Stability.ai

Một số lưu ý :

+ Stable Diffusion (SD) không phải là một phần mềm, SD có thể coi là một phương pháp

+ Stability phát hành các bộ mã nguồn, dữ liệu cơ sở (model) một cách miễn phí và người dùng có thể đào tạo thêm từ các dữ liệu cơ sở này. Các bộ dữ liệu được đào tạo từ người dùng (model fine-tuned) sẽ được quy định phiên bản tương ứng với model cơ sở đào tạo.

2. Các phiên bản và lịch sử phát triển của Stable Diffusion

Hiện tại Stability đã phát hành rất nhiều phiên bản của Stable Diffusion. Bắt đầu ra mắt phiên bản 1.0 từ ngày 22 tháng 8 năm 2022, đến nay đã có rất nhiều bộ mô hình khác nhau từ cách vận hành đến sử dụng đã được ra mắt. Ngoài việc phát hành các bộ model base, Stability sẽ phát hành các bộ dữ liệu tương ứng bổ trợ cho từng phiên bản (VAE, inpaint model, control lora, …).

Dưới đây là một số phiên bản đã được phát hành từ Stability, mọi người có thể tham khảo :

  1. Phiên bản Stable Diffusion 1.0 – 1.4 : Đây là nhưng phiên bản đầu tiên, về cơ bản hiện tại gần như rất ít người dùng và rất ít các công cụ hỗ trợ cho các phiên bản này
  2. Phiên bản Stable Diffusion 1.5 : Đây là phiên bản phổ biến nhất đưa Stable Diffusion phổ biến như hiện nay. Phiên bản này có ưu điểm là nhẹ nhàng, dễ sử dụng, dễ tuỳ biến, dễ đào tạo, không giới hạn nội dung, có rất nhiều công cụ hỗ trợ tuỳ biến cho từng yêu cầu. Đặc biệt là từ phiên bản này có model Inpainting được Stability phát hành kèm theo giúp hỗ trợ mạnh mẽ đến các tác vụ chỉnh sửa và tuỳ biến hình ảnh được tốt hơn.
  3. Phiên bản Stable Diffusion 2.0 – 2.1 : Các phiên bản từ v2 có cách đào tạo và sử dụng sẽ khác chút so với các phiên bản v1. Các phiên bản v2 có sự cải tiến khá nhiều từ bộ dữ liệu đào tạo lớn hơn tuy nhiên do sự khác biệt không quá lớn với các phiên bản v1 cùng với việc hạn chế các yếu tố nsfw vì vậy các công cụ và các dữ liệu phát triển trên các phiên bản v2 tương đối hạn chế.
  4. Phiên bản Stable Diffusion XL 0.9 – 1.0 :  Các phiên bản XL được cải tiến cực kỳ mạnh mẽ về dữ liệu hình ảnh cũng như khả năng thông minh và hiểu rõ các yêu cầu của người dùng hơn. Đặc biệt là sự cải thiện size ảnh train từ 512, 768 lên tới size 1024 giúp tạo ra các hình ảnh với kích thước lớn hơn. Tuy nhiên việc tạo hình ảnh lớn hơn đi kèm với việc tiêu tốn quá nhiều tài nguyên máy tính làm cho người dùng khó tiếp cận SDXL hơn ở việc sử dụng và đặc biệt là khó training hơn rất nhiều.
  5. Phiên bản Stable Diffusion XL  Turbo : Đây là một phiên bản phát triển dựa trên phiên bản SDXL base. Đặc điểm của phiên bản Turbo là khả năng trả về kết quả một cách cực kỳ nhanh, có thể là realtime. Tuy nhiên, đi kèm với tốc độ là chất lượng hình ảnh sẽ kém hơn khá nhiều so với phiên bản SDXL
  6. Một số phiên bản và tài nguyên khác mà Stability đã phát hành : Stable Video Diffusion Image-to-Video | Control Lora

3. Ưu – nhược điểm của Stable Diffusion

Ưu điểm :

  • Do là mã nguồn mở vì vậy SD được phát triển gần như không có một giới hạn nào. Có muôn vàn các công cụ các tài nguyên giúp chúng ta tạo ra bức ảnh ưng ý. Người dùng có thể tự do training model theo mong muốn và yêu cầu cá nhân.
  • Stable Diffusion sở hữu những công cụ mạnh mẽ mà không một / chưa một công cụ nào có được, đó là controlnet ( Công cụ giúp ta có thể kiểm soát hoàn hảo SD để ra được kết quả ưng ý ).
  • Khả năng generate không giới hạn nội dung cũng là một ưu điểm rất lớn của SD so với công cụ khác.

Nhược điểm :

  • Do được tự do đào tạo và training model vì vậy các model của SD không có sự thống nhất về từ khoá cũng như cách sử dụng. Dẫn tới sự khó khăn cho người dùng khi tiếp cận với nhưng model tuned khác nhau.
  • Sự không giới hạn về nội dung dẫn tới sự lạm dụng của các cá nhân/ tổ chức vào các công việc không được phép.
  • Sự phát triển của nhiều phiên bản và nhiều công cụ khác nhau dẫn đến sự khó khăn cho người dùng tiếp cận và học tập SD một cách đầy đủ và có hệ thống.
  • Các model base được training khá sơ sài vì vậy chủ yếu người dùng sẽ cần phải sử dụng các model tuned, tuy nhiên do các model được train từ các tổ chức / cá nhân đơn lẻ dẫn đến sự thiếu nhất quán cùng thiếu sót về nhiều mảng trong cùng một model. Việc tìm kiếm một model được đào tạo bài bản – chất lượng cao là khá khó khăn đối với người mới.

4. Ứng dụng của Stable Diffusion trong cuộc sống

Hiện tại Stable Diffusion đã được ứng dụng ứng dụng vào khá nhiều lĩnh vực trong đời sống như :

  • Sáng tạo content
  • Làm video
  • Hỗ trợ làm hình ảnh sản phẩm
  • Hỗ trợ vào sản xuất hình ảnh game
  • Hỗ trợ vào làm sản phẩm truyện tranh
  • Hỗ trợ vào làm kiến trúc – nội thất
  • Hỗ trợ vào  trong nhiếp ảnh
  • ………

Một số ví dụ :

II. Nguyên lý sử dụng và các khái niệm cơ bản

Lưu ý : Các nguyên lý và thuật ngữ trong phần này chủ yếu mình sẽ tóm lược một cách vắn tắt các ý chính, nó sẽ không mang tính học thuật quá cao mà chủ yếu mang tính truyền tải một cách đơn giản nhất đối với người học

1.Nguyên lý hoạt động

Dưới đây là một sơ đồ đơn giản về cách hoạt động của Stable Diffusion, các bạn có thể tham khảo thêm cách hoạt động chi tiết một cách hàn lâm hơn tại đây hoặc đây

2. Các thuật ngữ, khái niệm cơ bản

  • Checkpoint : Là phần model chính giữ vai trò côt lõi cho mọi quá trình hoạt động của Stable Diffusion. Mỗi checkpoint luôn có 2 thành phần chính TextEncoder và Unet, hay có thể nói là phần chữ và phần hình. Hiện nay các checkpoint được chia sẻ ở rất nhiều nguồn khác nhau, phổ biến nhất là CivitAI
  • Prompt : Là phần text ( câu lệnh ) mà người dùng nhập yêu cầu hình ảnh tương ứng. Prompt này sẽ được giải mã bằng một bộ trình đọc trong model là CLIP giải mã thành định dạng mà model có thể hiểu được. Mỗi phiên bản SD sẽ có các bộ giải mã khác nhau, vì vậy độ thông minh và hiểu câu lệnh của mỗi phiên bản sẽ có sự khác nhau. Mỗi checkpoint và mỗi phiên bản sẽ có sự hoạt động khác nhau. Một vài website để tham khảo prompt : XLStyle | SD15 Style | Freeflo | NovelAI Tag Experiments
  • Sampler : Sau khi prompt được giải mã thành các thông tin ( textEncoder ) tương ứng. Quá trình UNET sẽ được tiến hành để chuyển đổi thông tin text tương ứng thành hình ảnh. Các hình ảnh sau quá trình UNET sẽ liên tục được gửi lặp lại n lần (steps) thêm chi tiết và hoàn thiện. Quá trình này sẽ lặp lại bằng nhiều phương pháp khác nhau, các phương pháp này gọi là các phương pháp lấy lẫu – Sampler. Tham khảo thêm tại đây
  • VAE (Variational autoencoder) : Sau n steps thì quá trình lấy mẫu hoàn tất, khi này chúng ta nhận được hình ảnh dạng Latent. Để hoàn thiện bức ảnh trở về định dạng bình thường với đầy đủ thông tin, một quá trình decoder được thực hiện. Quá trình này yêu cầu một loại model thành phần để có thể hoạt động, chúng ta gọi nó là VAE. Trong trường hợp tác vụ img-img, VAE sẽ làm nhiệm vụ encoder ảnh đầu vào từ định dạng thông thường sang định dạng latent và đưa vào quá trình UNET. Hiện nay đã số các checkpoint đã được nhúng VAE sẵn, tuy nhiên trường có những trường hợp thiếu VAE, phổ biến là ở các phiên bản v1.5, chúng ta có thể tải thêm VAE tại đây

Vậy chỉ cần một vài thành phần như Checkpoint, câu lệnh Prompt, phương pháp lấy mẫu Sampler và VAE chúng ta đã có thể vận hành StableDiffusion một cách trơn tru. Tuy nhiên sẽ có một vài trường hợp mà chúng ta không thể tạo được yêu cầu mong muốn từ các thành phần trên, khi đó người dùng sẽ có những khái niệm mới bổ trợ giúp SD hoạt động một cách mạnh mẽ và tuỳ biến cao hơn :

  • Lora : Nếu coi Checkpoint là một ổ cứng thì lora là một chiếc usb cắm thêm vào. Lora là một định dạng model với kích thước nhỏ hơn rất nhiều so với checkpoint, nó có tác dụng bổ sung thêm dữ liệu cả về TextEncoder và UNET giúp cho Checkpoint. Lưu ý rằng Lora có khá nhiều phân nhánh như Lycoris, Loha… Hiện tại có rất nhiều nguồn tải Lora miễn phí, chúng ta có thể tham khảo CivitAI
  • Embedding : Cũng là một thành phần giống với Lora, tuy nhiên Embedding sẽ chỉ bổ sung thêm các khái niệm mới vào TextEncoder mà không tác động vào phần UNET. Embbedding được sử dụng khá nhiều ở phiên bản 1.5 và không quá phổ biến ở SDXL. Chúng ta có thể tải các Embedding miễn phí tại CivitAI
  • Controlnet : Trong một vài trường hợp thì các ý tưởng trong đầu chúng ta không thể hiện thực hoá bằng các câu lệnh cụ thể. Controlnet được sinh ra giúp chúng ta giải quyết các rắc rối của trên. Controlnet cung cấp thêm giải pháp để ra lệnh cho SD bằng hình thay vì text như thông thường. Hiện tại có rất nhiều loại controlnet phục vụ cho nhiều mục đích khác nhau (Xem thêm Từ điển Controlnet). Đối với mỗi phiên bản checkpoint cũng cần loại controlnet tương ứng để hoạt động được. Các model controlnet được phát triển tốt nhất trên phiên bản 1.5. Tham khảo thêm Controlnet WebUI Automatic1111 | T2I-Adapter | IP-Adapter | Control Lora
  • Inpainting : Trong một vài trường hợp, chúng ta muốn tạo ra các hình ảnh được nội suy từ các hình ảnh sẵn có, thêm bớt hoặc chỉnh sửa hình ảnh dựa trên các phần sẵn có. Khi này chúng ta có một phương pháp generate ảnh mới đó là inpaint. Stable Diffusion cung cấp khả năng inpaint bằng model thông thường, tuy nhiên inpaint sẽ được thực hiện tốt hơn nếu chúng ta sử dụng model inpainting hoặc controlnet inpaint. Các model inpaint có thể được tạo đơn giản bằng phương pháp merger diff từ các model gốc.

Phía trên là các thuật ngữ mà chúng ta thường xuyên gặp nhất khi sử dụng Stable Diffusion, các bạn có thể tham khảo thêm chi tiết hơn các thuật ngữ tại đây

III. Các cách sử dụng Stable Diffusion

Do là mã nguồn mở, vì vậy có vô vàn các phần mềm và công cụ hỗ trợ sử dụng SD với muôn vàn các mục đích và phương pháp khác nhau. Dưới đây là một số công cụ, phần mềm giao diện GUI phổ biến nhất bất kỳ ai muốn học tập và sử dụng SD cũng nên biết

1. Automatic1111

Đây là một giao diện GUI phổ biến và mạnh mẽ và dễ dùng nhất được viết cho SD. A1111 phổ biến đến mức có khi người ta nhầm tưởng SD chính là A1111.

Khả năng mạnh mẽ nhất của Automatic1111 đó chính là lượng Extension dồi dào và đa dạng phục vụ gần như mọi yêu cầu của người dùng. A1111 cũng thường xuyên cập nhật các phiên bản để hỗ trợ các phiên bản mới của Stable Diffusion. A1111 có rất nhiều option để người dùng cá nhân hoá sâu các tác vụ cũng như cung cấp các lựa chọn tuỳ biến phần mềm.

Người dùng có thể tải và cài đặt Automatic một cách miễn phí trên mọi nền tảng MacOS, Window, Linux. A1111 cũng hỗ trợ khả năng cài đặt và điều khiển từ xa qua các máy chủ ảo rất tốt như Google Colab | Kaggle | Runpod. A1111 cũng hỗ trợ khả năng API rất tốt vì vậy rất nhiều các website cung cấp dịch vụ sử dụng Stable Diffusion sử dụng Automatic.

Mọi người có thể tải và tham khảo cách sử dụng Automatic tại wiki chính thức hoặc hướng dẫn Tiếng Việt bởi tác giả Kao dii, cài đặt nhanh với StabilityMatrix hoặc sử dụng online với Google Colab SDVN

Một số lưu ý phiên bản :

  • SDXL được hỗ trợ trên Automatic1111 từ bản Automatic1111-v1.5
  • Giao diện và một số chức năng có sự sai khác ở nhiều phiên bản khác nhau, VD : Chức năng restore face đã được ẩn từ phiên bản v1.5. Nút Extra Network đã được loại bỏ từ phiên bản v1.4

2. ComfyUI

Khác với A1111, ComfyUI tỏ ra khá khó tiếp cận người dùng hơn vì yêu cầu người dùng cần phải nắm chắc nguyên lý vận hành của SD. Cách sử dụng Comfy theo các note kéo thả cũng khá khó tiếp cận với đại đa số người dùng phổ thông. Điểm mạnh nhất của ComfyUI là khả năng cho phép người dùng sáng tạo không giới hạn các workflow phục vụ cho từng nhu cầu riêng biệt, tối ưu hoá tất cả các tác vụ trong 1 click. Người dùng có thể chia sẻ các wofkflow một cách đơn giản cũng như xuất API cho bất kỳ workflow nào.

ComfyUI hỗ trợ tải và cài đặt miễn phí trên mọi nền tảng.

3. InvokerAI

InvokerAI có thể nói là sự kết hợp của Automatic1111 và ComfyUI kèm với đó là sự nâng cấp đang kể về giao diện hiện đại hơn. Hiện tại InvokerAI có thể hoạt động trên cả 2 loại generate ảnh là workflow note kéo thả và generate ảnh mặc định theo giao diện có sẵn. Invoker khá chú trọng tới trải nghiệm người dùng khi cho phép quản lý ảnh và thư viện tài nguyên một cách nhất quán ngay trên giao diện sử dụng. Tuy nhiên Invoker lại không cho phép phát triển các extension mở, các update công nghệ mới khá chậm dẫn đến việc khá kén người dùng phổ thông. Ngoài ra khi sử dụng Invoker AI, các cú pháp về prompt cũng được viết khác hoàn toàn cho với ComfyUI và Automatic cũng là một điểm trừ khiến cho người dùng khó tiếp cận.

InvokerAI khá dễ cài đặt trên các nền tảng, tuy nhiên lại khá khó sử dụng qua các host online.

  • Tham khảo cách sử dụng tại trang chủ chính thức : invoke.ai
  • Cài đặt và sử dụng tại Github hoặc sử dụng trình cài đặt StabilityMatrix
  • Sử dụng online với Colab miễn phí tại : InvokerSDVN hoặc sử dụng với Colab Pro tại : SDVN WebUI v2

4. Fooocus

Đây là phần mềm được phát triển riêng để sử dụng các model SDXL. Fooocus được tối ưu hoá một cách đơn giản nhất cho người dùng có thể tiếp cận và sử dụng.

Cũng giống như Automatic1111, Fooocus sử dụng giao diện Gradio vì vậy rất dễ cài đặt và sử dụng online – offline trên các nền tảng, host khác nhau.

5. Các web – host dịch vụ online

Hiện tại có rất nhiều các nền tảng và dịch vụ hỗ trợ cài đặt và sử dụng Stable Diffusion, dưới đây là một số nền tảng phổ biến và dễ tiếp cận nhất đối với người dùng :

Host cung cấp GPU để cài đặt và sử dụng :

  • Google Colab : Nền tảng của google, dễ cài đặt và sử dụng nhất. Điểm mạnh nhất của colab là khả năng kết nối và động bộ hoá với drive cá nhân cũng như là drive của các tài khoản khác nhau. Tuy nhiên hiện tại Colab đang hạn chế các hoạt động generate ảnh bằng Stable Diffusion trên tài khoản miễn phí, mọi người có thể đọc chi tiết về thêm về GG Colab tại đây hoặc tại đây ( Phần tối ưu với Google Colab )
  • Kaggle : Nền tảng tương tự với Google Colab, hoạt động theo phương thức Jupyter Note
  • Runpod : Nền tảng cho thuê GPU / máy chủ (Khá đắt 🤔)

Các nền tảng online cho phép tải tài nguyên và sử dụng trực tiếp : TensordArt | CivitAI | SeaArt

Các nền tảng cho phép sử dụng Automatic1111 trực tiếp không cần cài đặt : Kaikun AI (Anh này của VN, khá ổn nên giới thiệu thêm)

Các nền tảng cho phép Generate ảnh sử dụng Stable Diffusion : Mage.Space | Leonardo.AI | Dreamlike.art | Lexica.Art | Clipdrop.co

Mọi người có thể đọc thêm về đánh giá các nền tảng tại đây

IV. Các cách training cho Stable Diffusion

Training là thế mạnh lớn nhất của Stable Diffusion, cũng là lĩnh vực khó nhất khi học tập SD. Người dùng cần rất nhiều kiến thức, kinh nghiệm cũng như là cần nắm rõ nguyên lý hoạt động của SD để hiểu và train một cách chuẩn chỉ nhất. Như đã nói ở trên, model sẽ thường gồm 2 thành phần chính là TextEncoder và UNET, việc training model SD sẽ là đào tạo các thành phần đó trong model

1. Train model ( Checkpoint – Lora )

Hiện tại có khá nhiều cách để training model, trong đó có một vài phương pháp chính :

  • Train Kohya : Đây là phương pháp train phổ biến và được nhiều người sử dụng nhất. Trong đó, phương pháp train này có thể sử dụng bằng nhiều phương pháp khác nhau. Mọi người có thể xem thêm ở Youtube hoặc Wiki Kohya
    • Train trực tiếp tại máy tính với trình train Kohya hoặc sử dụng thông qua SDVN WebUI v2
    • Train thông qua host với code Jupyter tại Colab , tham khảo GitHub, các bạn có thể train với code Colab của sdvn.me
    • Train thông qua Extension Kohya trên Automatic 1111
  • Dreamboot Extension : Đây là Extension được viết dành riêng cho Automatic1111, tuy nhiên do được viết chạy trên automatic1111 nên có thể xảy ra tình trạng xung đột khi Automatic update phiên bản mới.
  • Train InvokerAI : Trình train được tích hợp sẵn khi cài đặt và sử dụng InvokerAI

2. Train Embedding

Hiện tại Embedding được sử dụng thường được train chủ yếu bằng trình train có sẵn trong Automatic1111, tuy nhiên người dùng vẫn có thể train bằng Train Kohya

3. Merger model – Embedding

Sau khi các model được train thì việc hiệu chỉnh dữ liệu được train cũng như trộn – tách dữ liệu là một công việc không thể thiếu để dữ liệu trở lên hoàn hảo hơn. Hiện tại các phương pháp hiệu chỉnh, merger model hoặc embedding thường được thực hiện thông qua các extension của Automatic1111 hoặc trình Merger mặc định của Automatic111. Một vài các Extension chúng ta nên biết :

  • SuperMerger : Công cụ mạnh mẽ và hữu ích nhất đối với việc tinh chỉnh – trộn – tách các model checkpoint, lora
  • Embedding-MergeEmbedding-inspector: Công cụ giúp tạo, merger các embedding
  • Model Toolkit : Công cụ giúp hiệu chỉnh, tối ưu các thành phần thừa trong checkpoint
  • Model Converter : Công cụ giúp thay đổi các định dạng model

V. Một số lưu ý khác

1. Các ứng dụng hay được phát triển dựa trên Stable Diffusion

Dưới đây là một số ứng dụng, extension nổi bật chủ yếu phục vụ nhu cầu tạo ra video hoặc chuyển động đơn giản

Ứng dụng cho khả năng generate ảnh realtime : Krea.AI

2. Một số website hữu ích trong quá trình học tập và sử dụng

Một số cộng đồng, nhóm sử dụng Stable Diffusion :

Một vài website hữu ích :

VI. Cơ hội công việc với Stable Diffusion

Hiện tại có rất nhiều cơ hội việc làm tại Việt Nam đối với người biết sử dụng và training Stable Diffusion. Có thể kể đến như :

  • Tạo hình ảnh content cho các lĩnh vực như game, thời trang, sản phẩm, nhiếp ảnh …
  • Training nhân vật, bối cảnh cho game hoặc các lĩnh vực khác
  • Xây dựng concept, phương án cho kiến trúc – nội thất
  • Training model cho các nền tảng chia sẻ doanh thu với creator như Tensord Art, Mage.Space
  • Xây dựng thương hiệu, bán hình ảnh trên các website như Patreon , Pixiv ….

Góp ý xây dựng

Mình đã cố gắng xây dựng mọi thứ tốt nhất có thể, tuy nhiên không thể tránh khỏi những thiếu sót. Mọi thắc mắc trong quá trình sử dụng, lỗi sử dụng, yêu cầu về các chức năng mới, mọi người có thể gửi theo form dưới đây. Mình sẽ tiến hành tổng hợp và tham khảo điều chỉnh trong phiên bản sắp tới. Website sẽ càng hoàn thiện hơn nếu có những ý kiến đóng góp từ mọi người. Mình trân trọng tất cả các ý kiến xây dựng dù là nhỏ nhất. Rất cảm ơn các bạn !!!


    Hình ảnh minh hoạ



    Thông tin update phiên bản

    Lịch update : Thứ 2 hàng tuần

    Phiên bản : 2.1.2 ( 23/12/2023 )

    ⚙️ Fix lỗi không hiện các model từ drive trên GUI ComfyUI
     
    📀 Hỗ trợ tải model/lora và sử dụng AnimateDiff trên cả Automatic và ComfyUI
    • Người dùng tải model/lora AnimateDiff tại đây và lưu vào thư mục trên drive tương ứng (model : /content/drive/MyDrive/SD-Data/AnimateDiff ) (lora : /content/drive/MyDrive/SD-Data/Lora/AnimateDiffLora)
    • Riêng với Automatic1111, cần cài đặt thư mục lưu model tại Setting > AnimateDiff > Path to save AnimateDiff motion modules

    Phiên bản : 2.1 ( 17/12/2023 )

    • Thêm mới version A-1.61
    • Cập nhật A1111-Update lên phiên bản mới nhất v1.7
    • Cập nhật version AutoDrive lên bản mới nhất v.17 ( Chần chọn tuỳ chọn update )
    • Cập nhật thêm một số note quan trọng trong ComfyUI (IP-AdapterReactorUltimateSDUpscalePrompt Reader)
    • Fix lỗi xfommer của automatic v1.7

    Phiên bản : 2.0 ( 12/10/2023 )

    📂 WebUI chính :
    • Cập nhật thêm version mới : AutoDriveFooocus
    • Version Drive sẽ tải toàn bộ code SD và cài đặt trên Drive theo đường dẫn như mục tại mục ForderNamePatch nếu thư mục đó chưa tồn tại. Phiên bản này tương đương với sử dụng WebUI Drive. Sử dụng ban đầu sau khi cài đặt sẽ giống với chạy phiên bản A1111-update, từ lần tiếp theo sẽ lưu cài đặt của người dùng và theo setting của người dùng.
    • Version Fooocus sẽ cài đặt Fooocus v2.1 , phiên bản này sẽ lưu output và load Lora trên drive, người dùng có thể load model sẵn có trên drive, tuy nhiên cần tích chọn FooocusCkptDrive và drive cần trống sẵn khoảng 10GB vì Fooocus sẽ tự động tải model base SDXL và refinder nếu chưa có trên drive
    • Thêm tuỳ chọn load model Controlnet tuỳ chọn, người dùng có thể tải controlnet về thư mục ControlnetModel trên drive và chọn option Controlnet - drive để load model trên drive
    📂 WebUI drive :
    • Cập nhật lên Automatic 1.6 và tối ưu code, thêm khả năng load controlnet trên drive đồng bộ
    📂 WebUI 1click :
    • Tối ưu code, nhanh gọn hơn
    📂 Download tools:
    • Thêm tuỳ chọn tải Controlnet về drive
    📂 Train SD15 v2 :
    • Thêm các tuỳ chọn lưu stage, trên tiếp tục từ một lora với LoRA_Network_Weights
    • Bộ biên tập caption thông minh hơn
    • Trên Checkpoint / lora trong một …
    📂 Train SDXL v2 :
    • Bộ biên tập caption thông minh hơn
    • Trên Checkpoint / lora trong một …

    Phiên bản : 1.8.22 ( 6/9/2023 )

    📢 Cập nhật lại danh sách các Version :

    • Loại bỏ 2 version : SDXL , Fooocus ( Vì không cần thiết nữa )
    • Thêm Version mới : A-1.52 ( Tương đương bản Automatic 1.52 )
    • Update A1111-update từ 1.52 lên 1.6 : Phiên bản hỗ trợ chính thức của SDXL, sử dụng tối ưu hơn, ít tốn Ram- Vram hơn, sử dụng thân thiện với colab free

    📢 Cập nhật Controlnet : Thêm vào list controlnet XL các controlnet, controlnet-lora cho SDXL, controlnet XL dùng được trên cả A1111 và ComfyUI

    📢 Loại bỏ sử dụng thư mục lyco riêng cho tệp lycoris : Vì từ phiên bản 1.5 thì lycoris đã được hỗ trợ trên A1111 sử dụng như lora và không cần thông qua extension nữa, bạn nào sử dụng bản A1.3 và A1.42 chịu không không dùng lycoris hoặc tự cài thêm extension ạ

    📢 Cập nhật lại danh sách các model trong thư viện có sẵn, thêm list model SDXL phổ biến

    📢 Điều chỉnh nhỏ lại các thẻ style và wildcard (Có thể chọn update ở tuỳ chọn setting để update thẻ style )

    Phiên bản : 1.8.20 ( 20/8/2023 )

    • Thêm một Version mới : FooocusXL - Phiên bản chạy SDXL cho người mới muốn trải nghiệm SDXL một cách đơn giản và ổn định nhất, ver này cho phép bạn chạy SDXL với giao diện tối giản cùng nhiều option có sẵn để giúp người dùng hiểu cách SDXL hoạt động. ( Ver này không lưu ảnh và sử dụng dữ liệu drive )
    • Điều chỉnh Extension : Xoá bỏ DeepLibrary ở Extension Plus ( Ext này đã lỗi thời và gây xung đột với một số Ext khác ). Mang trở lại All in one Prompt mạnh mẽ hơn rất nhiều ( Khuyến khích mọi người sử dụng Ext plus, nó giờ ổn định và mạnh hơn rất nhiều ). Thay đổi SwapFaceLab về RoopSDVN - SwapFace này chạy quá nặng và gây quá nhiều bug.
    • Thêm mới Controlnet : Thêm ControlnetXL - Tam thời ControlnetXL chi hoạt động trên ComfyUi. Thêm một Controlnet - None : Để giảm thời gian tải đối với một vài trường hợp không muốn dùng controlnet. ( Trong trường hợp muốn tải UI nhanh, khuyến khích sử dụng Prune + Controlnet - None )
    • Thêm một Option nhỏ vào phần 2 : Giúp người dùng có thể thêm các comanline tuỳ chọn nhanh chóng trong một vài trường hợp muốn tuỳ biến
    • Thay đổi và nâng cấp ComfyUI : Thêm chế độ lưu ảnh vào drive theo từng từng thư mục con ( cụ thể là lưu theo ngày tháng thay vì một thư mục tổng ComfyUI như trước ). Cập nhật thêm các note phổ biến.

    Phiên bản : 1.8.18 ( 4/8/2023 )

    🔔 Cập nhật lại toàn bộ các Version :

    • Đổi tên : v2-28 => A-1.3 ( Automatic1111 1.3 - Sử dụng gradio 3.28 )
    • Đổi tên : v2-update => A1111-Update ( Automatic1111 bản mới nhất )
    • Thêm : A-1.41 ( Automatic1111 1.41 - Sử dụng gradio 3.32)
    • Thêm mới : ComfyUI , Kohya

    🔔 Version : ComfyUI

    • Hoạt động với các option - Controlnet , Prune, thư viện Checkpoint
    • Đồng bộ tất cả dữ liệu với trong thư mục SD-Data như các phiên bản Automatic khác
    • Chạy được SDXL ở colab free
    • Hoạt động với tất cả các cú pháp thường và cú pháp Dynamic Prompt như Automatic 1111
    • Được cài sẵn bộ Wildcard SDVN
    • Cài sẵn tất cả các Note cơ bản + nâng cao ( Hiresfix, Detailer, GPT, Dynamic Prompt …)
    • Tự động lưu output tại drive ( Export/ComfyUI )
    • Cách sử dụng cơ bản : Chạy với Version ComfyUI, chọn Prune nếu muốn tải ít controlnet hơn, chọn checkpoint tại thư viện nếu muốn tải thêm, Model SDVN3 được cài mặc định, nháy vào link cloudflare tại đầu phần 2 để sử dụng.

    🔔 Version : Kohya ( Trình train GUI kohya_ss )

    • Hoạt động với thư viện Checkpoint
    • Các tính năng hoạt động bình thường, phần chạy caption có thể xuất hiện lỗi, phần train lora SDXL yêu cầu sử dụng GPU A100

    🔔 Version : SDXL

    • Được tối ưu tối đa hiệu suất để chạy SDXL với colab free
    • Chỉ hoạt động với thư viện checkpoint
    • Tự động load setting riêng biệt đc tối ưu tốt nhất cho SDXL
    • Tự động tải SDXL 1.0
    • Nếu muốn sử dụng thêm checkpoint : Tải thêm về drive hoặc dán link / chọn ở phần thư viện
    • Cài sẵn các extension tương thích : Dynamic prompt / After Detailer / Style by SDXL

    🔔 Các version A-1.3 và A-1.41 :

    • Hoạt động với tất cả các option

    🔔 Các version A1111-Update :

    • Đây là phiên bản được chọn mặc định
    • Chạy được SDXL và SD 1.5 ( Yêu cầu colab prom để chạy được SDXL ), khi muốn chạy SDXL với A-update , khuyến khích nên tích chọn SDXLMode tại đầu phần 2 để chạy setting riêng của SDXL. Nếu không chọn SDXLMode, hãy lưu ý đổi Vae về auto khi chạy SDXL.
    • Khi chọn phiên bản này : Các Lyco có thể sử dụng chung như Lora, các, Lora block weight sử dụng cú pháp khác, tham khảo

    🔔 Thư viện checkpoint :

    • Cập nhật danh sách thư viện mới : Nhiều hơn, mới hơn
    • Thêm option : SaveFromMyDrive - Giúp tải thẳng checkpoint được chọn hoặc được dán link tải ở phần custom link về thư mục model trên Drive thay vì lưu tạm thời trên colab

    🔔 QRControlnet :

    • Thêm Extension : QR-toolkit hỗ trợ tạo mã và check mã QR
    • Hỗ trợ 4 loại controlnet phục vụ làm QR

    🔔 Extension :

    • Base : Faceswaplab được thay thế cho Faceswap-SDVN
    • Train : Thêm lại Dreamboot

    💡 Cách setting Extension theo từng cá nhân :

    • Tại giao diện Ui A1111, vào phần Wildcard => Ấn Reset => Chọn thẻ MyExtensionList => Nhập link github extension theo từng dòng tại ô text bên phải, ấn Save.
    • Các extension không dùng , vào phần Extension, bỏ chọn => Save
    • Từ phiên chạy lần sau, các Extension sẽ được cài đặt hoàn toàn theo ý muốn

    💡 Cách setting token để chạy sever Ngrok một lần duy nhất :

    • Lấy token Ngrok : tại đây
    • Tại giao diện Ui A1111, vào phần Wildcard => Ấn Reset => Chọn thẻ Ngroktoken => Dán link ngrok token tại ô text bên phải, ấn Save
    • Từ lần chạy Ui tiếp theo, luôn có một sever Ngrok xuất hiện trước phần Gradio sever, chạy Ngrok sever sẽ ổn định và ít lỗi hơn.

    💡Cách dùng chung dữ liệu drive :

    • Sau khi chạy WebUi lần đầu bằng tài khoản chính, một thư mục SD-Data sẽ được tạo trên Drive của tk chính
    • Tại Drive tài khoản chính , Phải chuột vào thư mục SD-Data, chọn chia sẻ => Nhập các tài khoản phụ và phân quyền đọc ghi
    • Tại Drive tài khoản phụ, vào mục Được chia sẻ => Phải chuột vào thư mục SD-Data , chọn thêm lối tắt => Tạo lối tắt đến Drive, đảm bảo thư mục SD-Data là duy nhất trên tk phụ.
    • Từ lần sau, tk phụ dùng web Ui sẽ luôn sử dụng chung thư viện dữ liệu với tk chính

    💡 Một số mô tả chi tiết : Yêu cầu mở phần ẩn trên cùng trang colab hoặc nháy vào nút hướng dẫn để xem thêm.

    Phiên bản : 1.7.16 ( 15/7/2023 )

    • Cập nhật version SDXL : Chỉ chạy đc trên tài khoản colab pro kích hoạt ram cao cấp 25GB tại setting colab. Người dùng chỉ cần chọn version SDXL là được. Phiên bản này sẽ tải hết các dữ liệu cần thiết để sử dụng SDXL, người dùng ko cần tải gì cả.
    • Điều chỉnh nhỏ một số extension giữa base và plus
    • Thêm controlnet QR-monter vào QR option

    Phiên bản : 1.6.14 ( 7/7/2023 )

    📖 Các thay đổi trong phiên bản :

    • Cập nhật các tuỳ chọn mới :
      • Prune option : Tuỳ chọn này giúp loại bỏ các extension không quá quan trọng, loại bỏ tải thư viện model-lora, giảm các số lượng các controlnet giúp tải ctrinh nhanh gọn hơn
      • Ngroktoken option : Tuỳ chọn này sẽ chạy sau khi đc nhập token riêng của mỗi tk, giúp tạo link sever khác ổn định hơn ngoài link sever gradio. Xem thêm tại đây - Link
    • Cập nhật danh sách checkpoint chọn bạn đầu, bao gồm các checkpoint SDVN và các bản update checkpoint khác
    • Cập nhật thêm danh sách Extension, xem thêm tại : Catalog
      • Extension base : Thêm mới Dynamic-CFG Self Attention Guidance(SAG) Color-enhanceFaceswapper thay thế Roop , loại bỏ Canva-zoom do lỗi xung đột
      • Extension plus : Thêm mới Segment-anything Inpaint-anything Agent-scheduler
      • Extension train : Thêm mới Embedding-inspector Merge-board
    • Cập nhật thêm Style file và thẻ wildcard mới : Thêm các thẻ random mới và các thẻ tuỳ chọn đa dạng hơn ( Khuyến khích việc chọn setting - update hoặc setting - reset all để cập nhật style file và cài đặt tốt hơn )
    • Thêm một model Upscate : 4x-RealisticRescaler

    📖 Cập nhật đồng bộ đối với các phiên bản Drive , Quick, 1click . Thêm sever ngrok đối với bản drive

    Phiên bản : 1.6.12 ( 15/6/2023 )

    1. Cập nhật lại các danh sách model mới trong thư viện, nhiều hơn và các bản mới hơn
    2. Thêm các Extension mới vào Base : Faceswap , Openpose-editor
    3. Cập nhật lại các prompt mẫu trong thẻ style ( Yêu cầu chọn update tại mục setting đầu colab để update thẻ mới )
    4. Thêm bộ thẻ wildcard mới vào mặc định.
    5. Thêm các chế độ mới : DeforumMode | SwapVersion ( Miêu tả chi tiết tại post cũ ) | QRControlnet ( Tải thêm controlnet chuyên làm QR và extension tích hợp làm mã QR )

    Phiên bản : 1.6.10 ( 31/5/2023 )

    1. Điều chỉnh v2-update làm phiên bản chọn mặc định, v2-update được cập nhật lên AUTOMATIC1111 1.3.1 mới nhất.
    2. Điều chỉnh lại các danh sách Extension
    3. Thêm tuỳ chọn Lybrary Data : Bỏ chọn tuỳ chọn này để các dữ liệu checlpoint, lora, textual mặc định không được tải về, giúp tiết kiệm khoảng 5GB ổ lưu trữ colab
    4. Điều chịnh lại một số setting mặc định trong UI : Adetailer được bật tự động, tắt bật tự động hiresfix
    5. Thêm thự mục Lyco trong drive để lưu các định dạng model Lycoris, cú pháp sử dụng trong prompt tham khảo Lycoris

    Cập nhật lại toàn bộ SDVN-Drive | SDVN-Qucik | SDVN-1click đồng bộ với bản chính.

    Giới thiệu công cụ mới Lora Train - 1click :

    1. Mô tả : Phiên bản này tối ưu việc train lora nhanh nhất có thể, chỉ cần nhập tên thư mục ảnh train đã được tải vào SD-Data/TrainData, link download model train là được.
    2. Hiện tại hỗ trợ 2concept train là 512 và 768

    Phiên bản : 1.5.09 ( 22/5/2023 )

    1. Điều chỉnh code nguồn, điều chỉnh màn hình thông báo colab thân thiện hơn
    2. Điều chỉnh ex AR-helper thay cho AR
    3. Sẽ có các cập nhật nhỏ bổ sung thêm trong tuần sau

    Giới thiệu công cụ mới WebUI-Drive :

    1. Mô tả : Phiên bản này khi sử dụng sẽ giống hoàn toàn phiên bản chính,đồng bộ hoàn toàn về setting và dữ liệu đối với tất cả các bản UI, điểm khác biệt duy nhất là các dữ liệu người dùng có thể sửa hoàn toàn đc,miễn là có đủ dung lượng, bạn thích cài thêm extension hay sửa gì cũng đc
    2. Chỉ cần một link duy nhất, 1bấm duy chạy duy nhất
    3. Có thể chọn tên thư mục để lưu vào drive theo ý thích, miễn là thư mục đó chưa tồn tại trên drive. Có thể cài đặt nhiều bản khác nhau, miễn là khác tên.
    4. Phiên bản này sẽ không nhận các update sau khi cài đặt, các update người dùng sẽ tự update bằng tay.

    Lời khuyên : Nếu đủ dung lượng drive, các bạn nên dùng thử bản drive trên, nó là một biện pháp backup rất tốt khi gặp lỗi ở bản chính, đơn giản vì bản đó bị khoá update !

    Phiên bản : 1.5.08 ( 16/5/2023 )

    ■ Cập nhật phiên bản v2-update lên gradio 3.29 , thêm 1 phiên bản version sao lưu v2-28. Hiện tại v2-update có lỗi không nhận model, lora cache ae lưu ý, v2-28 là phiên bản mặc định chạy ổn định nhất

    ■ Cập nhật thêm chế độ custom link download trước khi sử dụng, hỗ trợ các bác drive yếu thích test model mới

    ■ Thêm extension mới kohya script vào extraplus, phục vụ các nào thích tạo model và train.

    ■ Ra mắt công cụ mới Dreamboot - Kohya UI, tuy nhiên công cụ này mang tính tham khảo, chưa test kỹ khả năng sử dụng.

    ■ Thêm chế độ cho phiên bản quick, bản này giờ siêu nhanh và nhiều opption hơn

    ■ Cải thiện tốc độ cho phiên bản 1click, nhanh hơn và ổn định hơn, lược khá nhiều extension.

    Phiên bản : 1.5.07 ( 10/5/2023 )

    ■ Điều chỉnh Option - Version :

    • Loại bỏ ver1
    • Điều chỉnh tên version theo phiên bản Gradio : ver2-16 , ver2-23
    • Update phiên bản ver2-update lên gradio 3.28

    ■ Thêm Option - Setting

    ■ Cập nhật thư viện Checkpoint : Loại bỏ một số model cũ, tăng số lượng lên tối đa 6/28 model

    ■ Cập nhật lại giao diện UI : Việt Hoá một phần nhỏ

    ■ Cài đặt thêm Wildcard mặc định : Thêm hơn 2000 wildcard mặc định

    ■ Cập nhật phiên bản style : Thêm các thẻ style thông minh hơn

    ■ Đặt lại setting mặc định : Đặt các setting tối ưu nhất làm mặc định để tối ưu quá trình làm ảnh

    ■ Đặt lại Extension : SD-CN-Animation vào video option,Canva-zoom vào base

    ■ Bổ sung thêm script : Thêm 2 script

    ■ Giới thiệu thêm 2 trang web hỗ trợ sử dụng :

    • WebUI Catalog : Hỗ trợ tra cứu các tài nguyên tích hợp trong phiên bản WebUI
    • Bộ công cụ : Giới thiệu các bộ công cụ bổ sung và các trình công cụ tích hợp sử dụng ngay.

    ■ Giới thiệu công cụ mới : Phiên bản WebUI - Quickver

    ■ Cập nhật phiên bản WebUI - 1click

    ■ Giới thiệu chức năng tích hợp các công cụ sử dụng ngay trên web

    Update bổ sung : 1.4.06 ( 29/4/2023 )

    • Thêm Extension ver video:  Deforum Ebsynth
    • Nâng cấp python 3.10

    Phiên bản : 1.4.06 ( 27/4/2023 )

    • Fix giao diện cho phiên bản v1,v2
    • Thêm Extension ver video:  SadTalker Infinity zoom  Mov2mov Temporal-Kit
    • Thêm 3D open-pose vào Extension extraplus
    • Thêm chức năng thay đổi phiên bản không cần ngắt phiên, dừng chọn và chạy lại là được
    • Fix lại code và tối ưu tốc độ

    Update bổ sung 1.3.05 ( 25/4/2023 )

    • Fix giao diện cho phiên bản v2update
    • Cập nhật lại danh sách extension : Base - Thêm Image-browsing , ExtraPlus - Thêm Better-prompt Ultimate-upscale Face-editor Tiled-Diffusion

    Phiên bản : 1.3.05 ( 24/4/2023 )

    • Cập nhật thêm bảng tuỳ chọn cho extension ( 3 tuỳ chọn base - plus - extraplus )
      • Base : Controlnet , Openpose, Lora Block, AR, Locon, Supermerge,Dynamic prompts, Two-shot, B-Llul
      • Plus : Base + Cutoff , Prompt-fusion,Composable-lora, Civitai-Helper, Tagcomplete, Depth lib
      • ExtraPlus : Base + Plus + Mov2Mov
    • Tối ưu dung lượng, fix lỗi thiếu file yaml, cập nhật bảng tuỳ chọn cho controlnet ( 2 tuỳ chọn Base - Extra )
      • Base : Full Controlnet 1.1 cơ bản + T2A Style + T2A Color
      • Extra : Full Controlnet 1.1 + Full T2A Controlnet + PipeFace , Ip2p, Shuffle, Softedge, Tile
    • Cập nhật lại thư viện model checkpoint :
      • Loại bỏ một số model đã cũ
      • Thêm vào các model : HenmixRealv23, FantasticRealv3, V08, FishMix, ThreeDelicacyv2
    • Điều chỉnh lại extension PTS-API, chỉ xuất hiện trên phiên bản v1, v2

    Mini update ( 21/4/2023 )

    • Fix lỗi cảnh báo của google
    • Loại bỏ extension CivitAI helper, Composable LoRA
    • Giảm thiểu một vài controlnet ít sử dụng

    Phiên bản : 1.2.04

    • Thay đổi checkpoint mặc định thành SDVN-Real-v2
    • Nâng cấp controlnet v1.1
    • Cập nhật phiên bản style tối ưu hơn ( Muốn cập nhật, tìm file style.csv trong drive rồi xoá đi )
    • Cập nhật tính năng setting mặc định ( Sử dụng nút mũi tên dưới nút Generate để thay đổi nhanh các setting gen hình chuẩn - nhanh )
    • Update lại thumb mặc định trong extra network

    Phiên bản : 1.2.03

    • Thêm tuỳ chọn : Lựa chọn phiên bản sử dụng ( v1, v2, v2 update )

    + v1, v2 : Được cố định không update UI và 1 số extension, phiên bản v1 và v2 khác nhau không nhiều tuỳ sở thích sử dụng của mỗi người. Phiên bản này được lược nhiều extension , chỉ giữ các extension quan trọng

    + phiên bản v2update ( Được cập nhật luôn update trực tiếp phiên bản mới nhất của AUTO1111 và các extension, bản trước vẫn update chậm hơn bản gốc AUTO1111 ) . Được cài đặt đầy đủ các extension mới và update thường xuyên
    • Lược bớt phần chọn lora, chuyển sang tải tự động 1 số lora mặc định
    • Tối ưu hoá giao diện cho dễ nhìn hơn, chuyển hướng dẫn vào ô ẩn
    • Update hỗ trợ API cho SD-Photoshop, hướng dẫn trong mô tả ở ô ẩn , đã test tương thích với v1 và v2
    • Phiên bản 1quick được thiết đặt tương đương phiên bản v1 và được tải ít tài nguyên hơn
    • Model mặc định được chuyển qua OtakuWaveMix

    Phiên bản : 1.1.02

    • Cải thiện giao diện cho gọn gàng, sạch đẹp hơn
    • Bổ sung tuỳ chọn lưu hypernetwork trong drive
    • Bổ sung phần chọn 1 số lora cơ bản không dùng drive trước khi sử dụng
    • Bổ sung các Embeddings cho phần negative prompt , tác dụng để tăng chất lượng hình ảnh và giảm thiểu lỗi giải phẫu
    • Bổ sung 4 model base các phiên bản SD gốc 1.4,1.5,2.1-512,2.1-768
    • Bổ sung thêm 1 model real - Henmix
    • Thay đổi lại file style cho thông minh hơn ( Lưu ý muốn cập nhật file style, vào drive xoá style.csv trong thư mục setting trước )
    • Một số extension đã được thêm vào trong tuần : Llul ( Vừa fix lỗi về phiên bản cũ để không dính lỗi giao diện ), Latent-Couple , Composable-lora , Dynamic-prompts , CiviAI-Helper, Fushion
    • Phiên bản train cũng được cập nhật lại giao diện và fix code cho an toàn hơn và đã train đầy đủ đc Lora, Locon, Loha