AI · AI 圖片
文字生成圖片 AI 是怎麼運作的?怎麼用才好?
簡答
文字生成圖片 AI 會先把提示詞編碼成數字,再由生成器產出符合這些數字的圖片,通常是從隨機起點一步步去除雜訊。你可以靠提示詞、圖片尺寸、步數、引導強度和種子來控制結果。好的流程是:快速生成許多小圖當草稿、固定一個種子、調整提示詞,最後對最好的一張進行編輯與放大。
開啟AI 繪圖產生器從提示詞到圖片之間發生了什麼
多數文字生成圖片系統由三部分組成。文字編碼器把提示詞轉換成一串能表達其語意的數字;圖片生成器依這些數字產生圖片;解碼器再把生成器內部的表示轉成真正的像素。
截至撰寫時,最常見的生成器類型是擴散模型(diffusion model)。它從純隨機雜訊開始,經過一連串步驟,每次在文字的引導下預測並去除一點雜訊。潛在擴散模型(latent diffusion model,Stable Diffusion 背後的模型家族)是在壓縮空間而不是完整尺寸的像素上進行,因此執行成本低得多。另一類系統是自回歸(autoregressive)模型:像語言模型逐字寫作一樣,把圖片當成 token 序列一個接一個地產生,Janus-Pro 就是這樣運作的。兩種模型接受的輸入相同,所以下面的流程兩者都適用。
- 提示詞被切分成 token 並完成編碼。
- 依據種子建立隨機起點。
- 生成器在設定的步數內不斷精修這個起點,每一步都被拉向提示詞。
- 解碼器以選定的尺寸輸出最終圖片。
真正重要的設定
各工具的名稱不同,許多線上服務也會隱藏其中一些設定。如果看得到,下列這些值得學。
| 設定 | 控制什麼 | 實用建議 |
|---|---|---|
| 提示詞 | 模型要畫什麼 | 主體優先,再依序寫場景、風格、光線與鏡頭。請見圖片提示詞指南。 |
| 負面提示詞 | 模型要遠離什麼 | 簡短而具體:文字、浮水印、多餘的手指。沒有具體要排除的就留空。 |
| 尺寸/長寬比 | 輸出的像素與形狀 | 使用模型訓練時的尺寸。尺寸大很多時,主體可能重複;改為事後放大。 |
| 步數(steps) | 精修的次數 | 步數多會增加細節,但到一定程度後只是浪費時間。先用工具的預設值。 |
| 引導值(CFG scale) | 圖片多嚴格地遵循提示詞 | 值低會偏離提示詞;值非常高會顯得生硬或過度飽和。從預設值開始。 |
| 種子(seed) | 隨機起點 | 在相同環境下,相同的種子、提示詞與設定會得到幾乎一樣的圖片。調整提示詞時請固定它。 |
| 取樣器/排程器(sampler / scheduler) | 去除雜訊所用的演算法 | 對速度與質感略有影響。最後再改,甚至不用改。 |
| 批次大小(batch size) | 每次執行生成幾張圖 | 一次生成多張再挑選,比一張張重跑更快。 |
引導的原理,是在每一步比較兩個預測,一個含你的提示詞、一個不含,再把結果朝兩者的差異進一步推去。這就是為什麼這個數值像是提示詞的強度旋鈕,也是為什麼調太高會讓一切都被誇大。
從構想到成品的工作流程
- 用一句話寫下需求:圖片用途、形狀(方形貼文、16:9 橫幅、9:16 手機桌布),以及它必須呈現的那一件事。
- 起草提示詞,包含主體、動作、場景、風格、光線和構圖。
- 用隨機種子生成四到八張小圖,看構圖,不看細節。
- 挑出最好的一張並記下它的種子,從這時起固定種子。
- 每次只改提示詞裡的一件事(光線、鏡頭、色彩)再比較。種子固定時,差異就來自你的用字。
- 構圖正確後,用局部重繪(inpainting)或圖生圖修補局部問題,而不是從頭重新生成。
- 把最終圖片放大到需要的尺寸,再以原尺寸檢查臉、手和所有文字。
- 把提示詞、種子、模型與設定記錄在檔案旁邊,之後才能做出變化版本。
下面是第 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 放大工具取得最終解析度。