【AI作畫】【A卡】制作一個Windows下AMD顯卡可用的WebUI【中日對照翻譯】

原帖地址:https://dolls.tokyo/howto_amd_anything_webui/
原標題:AMD環(huán)境のWindowsマシンで動くAnythingV3.0に自力でWebUIをつける
原作者:ぶっちー
時間:2022-11-23
在此表示感謝。未獲授權,僅供學習交流,侵刪
ありがとうございます。著作権を侵害したら、すぐに削除します。
個人日語水平有限(N4),機翻加潤色,不當之處敬請斧正。

AUTOMATIC1111を恨めしく思いながらコマンドライン。
一邊抱怨AUTOMATIC1111(大家目前廣泛使用的一鍵包的作者,對A卡支持不良),一邊敲命令行(用A卡出圖)。
というのも寂しいので、GradioというPythonライブラリを使ってWebUIを実裝しました。
因為感到這樣很無趣,所以用Gradio這個Python庫,自己搭了一個WebUI。

Gradio
Anything v3.0じゃなくてStable Diffusion v1.5でもやることは一緒。
用的并不是Anything v3.0這個模型,而是Stable Diffusion v1.5(原版)模型(譯者注:除了能出二次元圖,還能出三次元的圖,著名的測試用例:“航天員在月球上騎馬”,就是用這個模型能跑出來),它其實一樣能干Anything模型能干的活。
P.S.:關于Windows下部署A卡StableDiffusion(能加速),本人首個專欄里搬了幾篇,該作者的博客也有詳細的部署教程。
ただ様々なモデルが使えないAMD環(huán)境にとっては、Waifuより特化したAnythingの貴重さが光ります。
但是,對于無法使用各種模型的AMD環(huán)境,比Waifu(存疑,指的是原版naifu?)更專業(yè)的Anything的價值就大放異彩了。

自己做一個腳本
【自作スクリプト】
細かな設計など無しに、最小限のステップでGUI化できる主に機械學習プログラムに向いたライブラリらしいです。
(Gradio這個庫使得我們)不用在意各種細節(jié),用很少的步驟,便能給機器學習程序,套一個簡單的圖形界面。
AUTOMATIC1111もコレを使って作られています。
AUTOMATIC1111的原版WebUI也是用Gradio這個庫來制作的。
準備はライブラリを入れるだけ。
準備階段,只需安裝這個庫。
いつものvirtualenv環(huán)境に入ったらインストール。
進入Python虛擬環(huán)境(venv),然后使用如下命令安裝:
GitHub – gradio-app(https://github.com/gradio-app/gradio)でパターンを學びながら、既存のスクリプトを融合させました。
我是現學現賣,從這個庫的項目主頁(https://github.com/gradio-app/gradio)上縫合了一些現成的代碼。
流用、応用で書くnoobなのでご了承下さい。
在寫代碼這方面我是個菜雞,敬請諒解。
原版代碼:
漢化后代碼:
virtualenvディレクトリの直下に好きな名前で保存(自分はgr_4.py)し、パラメータ無しで実行。
直接將以上代碼存成python腳本,放在虛擬環(huán)境的同一文件夾里,起個喜歡的名字(我用的是gr_4.py),不用帶參數,直接運行它即可。
表示されるURLをブラウザで開けばOK。
用瀏覽器打開(運行腳本后)顯示的網址就可以了。
指定できるパラメータは6つ
提供了7個可以調節(jié)的參數(原作者寫的6個,筆誤?)
プロンプト(正面提示prompt)
ネガティブプロンプト(反面提示prompt)
高さ(高度)
橫幅(寬度)
ステップ數(迭代步數)
CFG(關鍵詞相關度)
シード値(隨機種子號)
シード値を空にした場合、ランダムシードが使われます。
若隨機種子號留空,則使用隨機數來充當種子號。
畫像はoutputsディレクトリにパラメータを付けたファイル名(例:any3_step40-cfg7.5-3795608005.png)でどんどん保存されます。
生成的圖片存在outputs文件夾中,圖片用生成參數來命名(例如:any3_step40-cfg7.5-3795608005.png)。
また、いちいちクリックしなくていい様、プレビュー欄を生成畫像サイズと一緒にしてあります。
此外,預覽框中會展現生成的圖像,因此您不必一遍一遍地點出去看圖。

とりあえず、ようやく表現に凝った絵を試せるようになった、と思えました。
一時之間,我想我終于可以嘗試一幅表現精巧的畫了。
それでもCUDA(AUTOMATIC1111)環(huán)境には遠く及びません。
(只做了基礎的功能,)和AUTOMATIC1111的原版還差的遠……
さしあたりでも欲しい機能はコレ。やり方がわからないけど。
以下功能是我想搞的,但還沒弄明白怎么弄:
複數回の一括生成(多次批量生成)
スケジューラの変更(更換擴散算法)
複數回生成は一度にn個の畫像をInterfaceでどう並べるのか分からない。結合サムネイルを作るなんてなおさら。
關于多次批量生成,我還不知道如何在界面上一次排列多個圖像。做成縮略圖這種,就更不明白了。
スケジューラはDDIMを試してみましたが、収束しない?絵になってしまい頓挫。どうやらonnxで多くのスケジューラがこうなってしまうそうです。
擴散算法,我試了DDIM,但它沒有收斂?出來的圖很怪??磥恚麄僌NNX這套東西,把好多擴散算法都搞出問題了。

建議保持ort_night_directml是最新版
【ort_nightly_directml更新がおすすめ】
初回構築時には”ort_nightly_directml-1.13.0.dev20221003004”を使いました。
頭一回使用時,我用的是”ort_nightly_directml-1.13.0.dev20221003004”這個版本。
それが今は最新が”ort_nightly_directml-1.14.0.dev20221118001″になっています。
目前(作者寫此文時)的最新版是”ort_nightly_directml-1.14.0.dev20221118001″這一版。
これが生成スピードに大きな影響をあたえるようです。
這似乎對生成速度有很大的影響。
他の人のコメントでもかなり向上したそうですし、自分も體感できました。
別人說(更新版本后)生成速度有很大的提高,我自己也親身體會到了。

定期的なアップデートがおすすめ。
建議定期更新到最新版。

2022/12/01更新
書いてある2つの機能をバージョンアップ追加しました
作者把上面那兩個功能搞出來了,發(fā)了新帖,能連上的可以看看:https://dolls.tokyo/amd_anything_webui_verup/

P.S.果然A卡的群眾基礎還是不行啊……