cv.cm

AI · AI 圖片

文字生成圖片 AI 是怎麼運作的?怎麼用才好?

閱讀約 7 分鐘

簡答

文字生成圖片 AI 會先把提示詞編碼成數字,再由生成器產出符合這些數字的圖片,通常是從隨機起點一步步去除雜訊。你可以靠提示詞、圖片尺寸、步數、引導強度和種子來控制結果。好的流程是:快速生成許多小圖當草稿、固定一個種子、調整提示詞,最後對最好的一張進行編輯與放大。

開啟AI 繪圖產生器

從提示詞到圖片之間發生了什麼

多數文字生成圖片系統由三部分組成。文字編碼器把提示詞轉換成一串能表達其語意的數字;圖片生成器依這些數字產生圖片;解碼器再把生成器內部的表示轉成真正的像素。

截至撰寫時,最常見的生成器類型是擴散模型(diffusion model)。它從純隨機雜訊開始,經過一連串步驟,每次在文字的引導下預測並去除一點雜訊。潛在擴散模型(latent diffusion model,Stable Diffusion 背後的模型家族)是在壓縮空間而不是完整尺寸的像素上進行,因此執行成本低得多。另一類系統是自回歸(autoregressive)模型:像語言模型逐字寫作一樣,把圖片當成 token 序列一個接一個地產生,Janus-Pro 就是這樣運作的。兩種模型接受的輸入相同,所以下面的流程兩者都適用。

  1. 提示詞被切分成 token 並完成編碼。
  2. 依據種子建立隨機起點。
  3. 生成器在設定的步數內不斷精修這個起點,每一步都被拉向提示詞。
  4. 解碼器以選定的尺寸輸出最終圖片。

真正重要的設定

各工具的名稱不同,許多線上服務也會隱藏其中一些設定。如果看得到,下列這些值得學。

設定控制什麼實用建議
提示詞模型要畫什麼主體優先,再依序寫場景、風格、光線與鏡頭。請見圖片提示詞指南。
負面提示詞模型要遠離什麼簡短而具體:文字、浮水印、多餘的手指。沒有具體要排除的就留空。
尺寸/長寬比輸出的像素與形狀使用模型訓練時的尺寸。尺寸大很多時,主體可能重複;改為事後放大。
步數(steps)精修的次數步數多會增加細節,但到一定程度後只是浪費時間。先用工具的預設值。
引導值(CFG scale)圖片多嚴格地遵循提示詞值低會偏離提示詞;值非常高會顯得生硬或過度飽和。從預設值開始。
種子(seed)隨機起點在相同環境下,相同的種子、提示詞與設定會得到幾乎一樣的圖片。調整提示詞時請固定它。
取樣器/排程器(sampler / scheduler)去除雜訊所用的演算法對速度與質感略有影響。最後再改,甚至不用改。
批次大小(batch size)每次執行生成幾張圖一次生成多張再挑選,比一張張重跑更快。

引導的原理,是在每一步比較兩個預測,一個含你的提示詞、一個不含,再把結果朝兩者的差異進一步推去。這就是為什麼這個數值像是提示詞的強度旋鈕,也是為什麼調太高會讓一切都被誇大。

從構想到成品的工作流程

  1. 用一句話寫下需求:圖片用途、形狀(方形貼文、16:9 橫幅、9:16 手機桌布),以及它必須呈現的那一件事。
  2. 起草提示詞,包含主體、動作、場景、風格、光線和構圖。
  3. 用隨機種子生成四到八張小圖,看構圖,不看細節。
  4. 挑出最好的一張並記下它的種子,從這時起固定種子。
  5. 每次只改提示詞裡的一件事(光線、鏡頭、色彩)再比較。種子固定時,差異就來自你的用字。
  6. 構圖正確後,用局部重繪(inpainting)或圖生圖修補局部問題,而不是從頭重新生成。
  7. 把最終圖片放大到需要的尺寸,再以原尺寸檢查臉、手和所有文字。
  8. 把提示詞、種子、模型與設定記錄在檔案旁邊,之後才能做出變化版本。

下面是第 5 步的小範例。種子不變,每次只換光線那個詞組。

seed 1234
A: a lighthouse on a rocky coast, wide shot, overcast soft light
B: a lighthouse on a rocky coast, wide shot, golden hour, warm rim light
C: a lighthouse on a rocky coast, wide shot, blue hour, lamp glowing

因為起始雜訊相同,A、B、C 的版面相近,所以你可以單獨評判光線。如果每次都換新種子,你比較的就會是不同的構圖。

選擇尺寸與解析度

每個模型都是圍繞特定尺寸訓練的。早期的 Stable Diffusion 模型主要以 512 × 512 像素訓練;較新的則圍繞 1024 × 1024 與多種長寬比訓練。要求遠大於訓練尺寸的圖片,常會產生重複的主體,例如兩個頭或雙重地平線,因為模型會用它所知的更多內容去填滿多出來的空間。

較安全的做法,是以原生尺寸生成,再用 AI 放大工具放大。例如 cv.cm 的 AI 圖片生成器,會用自回歸模型在你自己的 GPU 上生成 384 像素的圖片,再用 Real-ESRGAN 放大 2 倍或 4 倍。放大工具能銳利化邊緣與紋理,卻無法增加物件或修正糟糕的構圖,所以要先把版面做對。

文字生成圖片仍然做不好的地方

  • 圖中的文字。字母可能拼錯或憑空編造,長句和非拉丁文字尤其明顯。文字必須正確時,請事後在編輯器裡加。
  • 手與數量。多出來或黏在一起的手指比以前少見,但仍會出現。精確的數量(七隻鳥)和空間關係(在左邊、在後面)也常常出錯。
  • 多個不同的人物。一個人的細節會滲到另一個人身上。請分階段建構場景,或使用參考圖。
  • 同一個角色出現兩次。除非使用參考圖、固定的描述語或微調,否則每次生成都是新的人。請見角色一致性指南。
  • 偏向常見的樣貌。沒有細節時,模型會退回訓練資料中最常見的臉孔、地點和風格。請明確寫出年齡、地區、體型和場景。
  • 真人、品牌與標誌。許多服務會封鎖,即使工具允許,使用它們也可能造成法律風險。

用線上服務還是本機模型?

Midjourney、GPT image、Imagen,或線上的 Stable Diffusion 與 FLUX 服務等託管工具容易上手,也執行大型模型,但你的提示詞會傳到伺服器,並須遵守其內容規範與條款。本機工具則在你自己的 GPU 上執行模型:資料不會離開你的裝置,每個設定都看得到,但模型必須放得進記憶體,通常也比較小。

問題線上服務本機或瀏覽器內模型
隱私提示詞和圖片會傳給服務商留在你的裝置上
圖片品質通常是更大、更強的模型模型較小;取決於你的硬體
可控性部分設定被隱藏所有設定都看得到
費用免費額度或訂閱制下載後免費;耗用你的電力和 GPU

常見問題

文字生成圖片 AI 就是擴散模型嗎?

不一定。擴散是截至撰寫時最常見的方法,但也有些文字生成圖片模型是自回歸的,把圖片當成 token 序列來生成。兩者的使用方式相同。

為什麼同一段提示詞,每次都得到不同的圖片?

每次執行都從種子決定的新隨機雜訊開始。把種子連同模型和設定一起固定,就能再次得到相同或非常相近的圖片。

CFG 或引導值該設多少?

從工具的預設值開始。如果圖片忽略了提示詞的某些部分,就稍微調高;如果色彩顯得生硬或細節過度,就調低。

AI 生成的圖片可以商用嗎?

取決於工具的條款和你所在地的法律。許多服務允許商用,但純 AI 製作的圖片在一些國家對著作權的保護有限。請查看條款與著作權指南。

為什麼 AI 圖片常常是方形而且很小?

模型是以特定尺寸訓練的,生成大圖需要耗費大量記憶體和時間。請以原生尺寸生成,再用 AI 放大工具取得最終解析度。

全部 AI 教學