Prompt là gì? Các bước tạo ra bức ảnh AI hoàn hảo

Bạn đã bao giờ cảm thấy choáng ngợp về ý nghĩa của các tham số như, prompt, tỷ lệ CFG, seed, hoặc negative prompt trong Stable Diffusion không?

Trong hướng dẫn này, chúng tôi sẽ cung cấp cho bạn giải thích đầy đủ nhất về từng tham số với các ví dụ rõ ràng. 

Hãy bắt đầu và khám phá toàn bộ tiềm năng của Stable Diffusion với các thông số này.

Prompt

Prompt được hiểu là một lời nhắc hay gợi ý để Ai có thể hiểu và tạo thành bức ảnh theo yêu cầu. Để tạo ra một bức ảnh đúng với yêu cầu của bạn, bạn cần viết ra prompt chính xác. 

Đây là một công thức khá ổn mà tôi đã test tạo một prompt: 

[art medium], [main objects], [attribute], [expression], [key light], [detailing], [camera shot], [media], [engine], [artist]. 

Với đoạn công thức này, anh em cần phải biết chút tiếng anh, hoặc có thể tra google dịch là sẽ ra được ngay. 

Dưới đây là câu Prompt của tôi đã áp dụng công thức: 

hyper-realistic high-angle exterior photo of a beautiful bungalow on a cliff full of trees, golden hour; indirect lighting; A+D magazine photography. 

Hãy thử áp dụng công thức prompt này của tôi và tạo 1 bức ảnh trên DALL-E. Và xem thử kết quả của mình. 

Negative Prompt

Negative Prompt được hiểu chính xác như tên gọi của nó – thực chất là nó các prompt được chủ ý loại trừ và không xuất hiện trong bức ảnh. Đây là một tính năng rất hữu hiệu của Stable Diffusion vì nó giúp Ai loại bỏ được các chi tiết mà bạn không muốn xuất hiện trong ảnh của mình. 

Tuy nhiên, ngược với Prompt, Negative Prompt khá khó để tạo ra, trừ khi bạn đã rất quen với các câu lệnh chính khi tạo prompt ở Stable Diffusion. 

Với công thức tương tự như Prompt, nhưng lưu lý đây là những chi tiết bạn không muốn có trong bức ảnh của mình. 

Đây là một vài ví dụ về Negative Prompt về con người mà các bạn có thể tham khảo: deformed, ugly, mutilated, disfigured, text, extra limbs, face cut, head cut, extra fingers, extra arms, poorly drawn face, mutation, bad proportions, cropped head, malformed limbs, mutated hands, fused fingers, long neck. 

Dưới đây là ví dụ:

Negative prompts for ảnh giống ảnh chụp với các prompt: Photorealistic: illustration, painting, drawing, art, sketch’

Tạo chú voi với negative prompt
Tạo chú voi với negative prompt

Steps

Stable Diffusion tạo ra một hình ảnh bằng cách bắt đầu với một khung ảnh đầy nhiễu và khử nhiễu dần dần để đạt được hình ảnh cuối cùng. Step cũng sử dụng tham số này kiểm soát số lượng các bước khử nhiễu này. Nói chung thì càng nhiều bước thì càng tốt, chỉnh càng được chi tiết nhưng tôi vẫn cho rằng chỉnh đến độ mình yêu thích là đủ. Do đó, 25 bước là số lượng đủ để tạo bất kỳ loại hình ảnh nào.

Dưới đây là hướng dẫn chung về cách sử dụng số bước cho các trường hợp khác nhau:

  • Nếu bạn đang chỉ muốn test prompt mới của bạn và muốn có kết quả nhanh chóng, thì bạn nên sử dụng 10-15 bước. 
  • Nếu bạn đã có được 1 prompt đúng ý của mình  hãy tăng các bước lên 25 để có được 1 bức ảnh hoàn hảo. 
  • Trong trường hợp bạn đang tạo một khuôn mặt hoặc một con vật có lông hoặc bất kỳ đối tượng nào có kết cấu chi tiết và bạn cảm thấy hình ảnh được tạo ra thiếu một số chi tiết này, hãy thử tăng nó lên 40! Vì càng tằng các bước step, ảnh của bạn sẽ càng được tạo chi tiết hơn. 

Trên thực tế, có trường hợp một số người đã quen với việc tạo hình ảnh với 100 hoặc 150 bước, điều này rất hữu ích cho các thư viên mẫu  như LMS, nhưng giờ đây nó thường không còn cần thiết với các trình lấy mẫu nhanh được cải tiến như DDIM và DPM Solver++. 

Samplers

Như chúng tôi đã đề cập trước đây, các Diffusion Models hoạt động bằng cách khử nhiễu một bức tranh bị nhiễu tốt đáng kinh ngạc. Đây là nơi các Diffusion samplers phát huy tác dụng. 

Nói một cách đơn giản, samplers này là thuật toán lấy hình ảnh được tạo sau mỗi bước và so sánh nó với prompt input yêu cầu ban đầu, sau đó thêm một vài thay đổi độ nhiễu cho đến khi hình ảnh đó dần dần khớp với prompt ban đầu được input. 

Ở OpenArt, họ triển khai ba bộ lấy samplers được người dùng sử dụng nhiều nhất, Euler A, DDIM và DPM Solver++. Bạn có thể thử ba cách và xem cách nào phù hợp với prompt của bạn hơn vì không có quy tắc nào về việc sử dụng bộ lấy mẫu nào, nhưng ba cách này rất nhanh và có khả năng tạo ra kết quả nhất quán trong 15-25 bước.

Chỉ có một sự khác biệt đáng chú ý duy nhất giữa Euler A và hai bộ samplers còn lại là kết quả của Euler – so với DPM Solver++– có màu sắc mượt mà hơn với các cạnh ít được xác định hơn, mang lại cảm giác “mơ mộng” hơn, vì vậy hãy sử dụng Euler A nếu đây là hiệu ứng bạn thích trong các hình ảnh đã tạo của mình.

Tham số CFG

Tham số này có thể được coi là thang số đo giữa sự Sáng tạo và Prompt. Các con thang số thấp hơn giúp AI tự do sáng tạo hơn, trong khi các thang số cao hơn buộc nó phải tuân theo prompt nhiều hơn.

Tham số CFG mặc định được sử dụng trên OpenArt là 7, mang lại sự cân bằng tốt nhất giữa tính sáng tạo và prompt. Việc giảm xuống dưới 5 thường không được khuyến nghị vì hình ảnh có thể bắt đầu trông hơi ảo và trên 16 có thể bắt đầu cho hình ảnh chi tiết xấu vì Ai lúc này đang bám quá chặt vào yêu cầu của prompt. 

Vậy khi nào thì sử dụng các giá trị thang đo CFG khác nhau? Tham số CFG có thể được chia thành các phạm vi khác nhau, mỗi phạm vi phù hợp với một loại lời nhắc và mục tiêu khác nhau:

  • CFG 2 – 6: Sáng tạo, nhưng ảnh có thể bóp méo quá và hơi ảo
  • CFG 7 – 10: Được khuyên dùng cho hầu hết các prompt input. Cân bằng tốt giữa sáng tạo và prompt
  • CFG 10 – 15: Với khoảng tham số này, bạn nên chỉ sử dụng nếu bạn chắc chắn rằng prompt của mình chi tiết và rất rõ ràng về hình ảnh bạn muốn trông như thế nào
  • CFG 16 – 20: Thường không được đề xuất trừ khi prompt input  rất chi tiết. Có thể ảnh hưởng đến sự gắn kết và chất lượng
  • CFG >20: gần như không sử dụng được

Mã Seed

Mã seed là một dãy số ngẫu nhiên được tạo ra khi có một hình ảnh mới được tạo, đó là lý do bạn nhận được một chuỗi seed khác nhau mỗi khi chạy cùng một lời nhắc trên các hệ thống Stable Diffusion như OpenArt và tại sao bạn nhận được cùng một hình ảnh được tạo nếu bạn chạy cùng một mã seed. 

Vì nếu bạn sử dụng chung mã seed và prompt, kết quả sẽ cho ra hình ảnh giống nhau, nên chúng ta có thể sử dụng thuộc tính này để tạo lợi thế cho mình theo nhiều cách:

Kiểm soát các đặc điểm cụ thể của một nhân vật: trong ví dụ này, chúng tôi đã thay đổi cảm xúc, nhưng điều này cũng có thể áp dụng cho các đặc điểm ngoại hình khác như màu tóc hoặc màu da. 

Kiểm tra sự thay đổi của các từ cụ thể: Nếu bạn thắc mắc một từ cụ thể đang thay đổi như thế nào trong prompt, bạn có thể sử dụng cùng mã seed với một bức ảnh bạo tạo trước đó với lời nhắc đã sửa đổi để kiểm tra từ đó, bạn nên kiểm tra prompt  theo cách này bằng cách thay đổi một từ hoặc cụm từ đơn lẻ mỗi lần để ra được sự khác nhau khi bạn thêm các yếu tố vào prompt. 

Thay đổi phong cách ảnh: Nếu bạn thích bố cục của một hình ảnh, nhưng băn khoăn không biết nó sẽ trông như thế nào theo một phong cách khác. Bạn có thể sử dụng cùng 1 seed và thay đổi 1 yếu tố trong đoạn prompt  điều này có thể được sử dụng cho ảnh chân dung, phong cảnh hoặc bất kỳ cảnh nào bạn tạo.

Hãy tạo test những phong cảnh sau đây: (nhớ là giữ nguyên mã seed, chỉ thay đổi prompt theo các từ được in đậm dưới đây)

  • Portrait of a beautiful woman with blonde hair and blue eyes, smiling
  • Portrait of a beautiful woman with blonde hair and blue eyes, sad
  • Portrait of a beautiful woman with blonde hair and blue eyes, crying
  • Portrait of a beautiful woman with blonde hair and blue eyes, angry

Các thuộc tính IMG2IMG

Tính năng Img2img hoạt động giống hệt như tool txt2img, điểm khác biệt duy nhất là bạn cung cấp một hình ảnh được sử dụng làm điểm bắt đầu thay prompt. 

Độ nhiễu (noise) được thêm vào hình ảnh mà bạn sử dụng làm hình ảnh ban đầu cho img2img, sau đó quá trình Diffusion tiếp tục tạo hình ảnh theo các prompt. Độ nhiễu được thêm vào tùy thuộc vào tham số “Sức mạnh của img2img”, nằm trong khoảng từ 0 đến 1.

Trong đó 0 hoàn toàn không thêm độ nhiễu và bạn sẽ nhận được hình ảnh chính xác mà bạn đã thêm và 1 thay thế hoàn toàn hình ảnh bằng độ nhiễu ảnh và hoạt động gần giống với các quy trình bạn sử dụng với  txt2img. 

Vì vậy, làm thế nào để quyết định những gì cường độ để sử dụng? Đây là một hướng dẫn đơn giản với các ví dụ:

Để tạo các biến thể của hình ảnh, cường độ được đề xuất sử dụng sẽ là 0,5-0,75 và với cùng một lời nhắc. Điều này có thể hữu ích khi bạn thích bố cục của một hình ảnh đã tạo nhưng một số chi tiết trông không đủ đẹp hoặc bạn muốn tạo những hình ảnh trông giống với những hình ảnh bạn đã tạo trong phần mềm khác như photoshop (trong trường hợp này là lời nhắc sẽ là một mô tả của hình ảnh).

Để thay đổi kiểu hình ảnh trong khi vẫn giữ nguyên kiểu ảnh gốc, bạn có thể vẫn sử dụng tính năng img2img với cường độ thấp hơn và nhận được độ trung thực của hình ảnh tốt hơn nhiều so với một img2img đơn lẻ có cường độ cao hơn. 

Đối với ví dụ này, chúng tôi đã sử dụng cường độ 0,25 cho 4 lần, vì vậy, mỗi lần chúng tôi tạo hình ảnh, chúng tôi sẽ chèn lại hình ảnh đã tạo vào img2img và chạy lại nó với cùng một prompt và cường độ cho đến khi chúng tôi có được kiểu mình cần. Ngược lại, nếu cùng một hình ảnh được sử dụng trong img2img với cường độ cao hơn, bạn sẽ nhanh chóng mất đi sự giống nhau của hình ảnh. 

Trên đây là các thông số bạn nên biết khi tạo ảnh với Stable Diffusion. Hãy follow chúng tôi để cập nhật những bài viết mới nhất. 

We will be happy to hear your thoughts

      Leave a reply

      1VPN
      Logo