[討論] 手機跑AI繪圖 Stable Diffusion

作者: ivon852 (ASUS)   2023-02-20 00:02:22
AI繪圖軟體,最近比較熱門的是Stable Diffusion,它的好處為能在自己的電腦跑,而不
用依賴雲端服務,硬體到位想做什麼都可以。
這時候不禁想到,手機是否也有跑AI繪圖模型的辦法?畢竟都有人用樹莓派跑了
最近有開發者自行移植Stable Diffusion到iOS平台,蘋果使用者可以直接下載APP來玩,
配合最新iPhone的性能,幾分鐘就能出圖,該APP稱之為Draw Things。
那如果是Android平台呢?乾脆直接跑電腦版Stable Diffusion吧,所以有了這篇的實驗

網誌好讀版:https://reurl.cc/a155Ml
建議硬體:
1. 8GB以上RAM的手機,有「虛擬記憶體」功能的更好,因為Stable Diffusion建議規格
是12GB以上RAM。
2. 30GB以上的儲存空間
3. S865以上的處理器
4. 很快的網路
手機不需要root,然而沒root的情況最多只能算到320x320的圖片。有root的話可以上到
512x512。
首先我們需要Linux環境,當然就是請出Termux,然後裝Debian。
(選擇性) 編譯virgl使之能存取手機的GPU(需要支援Vulkan)
進入Debian環境,安裝Python和Pip
接著下載Stable Diffusion v1.5的模型 (30GB),要畫動漫人物則是找Anything。
WebUI目前我是裝不起來
寫個Python小程式開始算圖,關鍵字填維多利亞,長寬320像素
https://i.imgur.com/GwiyIMI.png
開發人員選項禁止所有APP在背景執行
開始算圖,等個20分鐘 (用GPU算的話15分鐘)就會出圖。關鍵字設定不好就會恐怖谷。
https://i.imgur.com/Dqfa7w8.png
如果想要算到512x512像素,我們就得另外設定Debian/Ubuntu的chroot環境。又Termux一
旦執行Stable Diffusion算更大的圖,會因佔用過多CPU被系統殺掉,因此要從電腦ADB
Shell進入手機的終端機,進入chroot,從這裡啟動算圖程式節省資源。
(嗯都用到電腦了我幹嘛還用手機算呢,電腦出圖只要30秒)
Stable Diffusion算的圖片大小越高,越吃資源。
https://i.imgur.com/gUosjoX.png
順帶一提手機沒有虛擬記憶體功能的,也可以手動在chroot裡面建立SWAP file,並將之
掛載到系統,這樣8GB手機也能擴張到20GB的RAM。
接著只要等一小時圖就會出來了 (沒辦法,chroot無法用GPU)
https://i.imgur.com/HVlfSi2.png
經歷幾小時系統不斷的崩潰和等待,做完實驗後發現我的美好星期天只剩下三個小時了。
結論是勉強可行,運算時手機其實也沒燒起來。
若有人能利用Android的AI技術移植Stable Diffusion就更好了,能有效利用手機GPU。
目前只有ncnn版的Stable Diffusion能在手機跑。
作者: benjaminchia (ben)   2023-02-20 00:21:00
自言自語
作者: NX9999 (台中走鐘張勛傑)   2023-02-20 00:31:00
彩!!
作者: jaspergod (神遊)   2023-02-20 00:39:00
實驗精神推XD 瞎搞也是種浪漫
作者: saimeitetsu (Sai Meitetsu)   2023-02-20 00:58:00
PC都熱爆了,用手機跑soc應該會提早虛焊
作者: sismiku (Simiku)   2023-02-20 02:00:00
然後就可以出保了
作者: hollen9 (好冷酒)   2023-02-20 06:30:00
某樓標準劣幣逐良幣
作者: jhangyu (jhangyu)   2023-02-20 07:29:00
推,不過實在太久了,3060出圖不過6~8秒
作者: BlackCoal (居士隱埋偏仕)   2023-02-20 07:51:00
S865的手機價格,組一台PC還比較划算
作者: sixkeeper (烏毛洗螻蟻)   2023-02-20 08:49:00
好猛推個,不曉得有沒有可能推APP出來?
作者: Arbin (路人_Lv菜逼八)   2023-02-20 08:50:00
Termux那ART沙箱環境做chroot的效能會差一點
作者: s78513221 (TERIS)   2023-02-20 08:51:00
我還是手機上colab吧
作者: Arbin (路人_Lv菜逼八)   2023-02-20 08:52:00
只是也不知道直接用root的方式做chroot會不會有其他問題就是了
作者: keigowei (keigowei)   2023-02-20 09:05:00
真的很爛慢…很厲害的實驗
作者: weltschmerz (威爾特斯克˙悶死)   2023-02-20 09:16:00
放過手機 請用雲端算圖==
作者: Sinreigensou (神靈幻想)   2023-02-20 09:22:00
為何要用手機做啊 技術展示?
作者: lkj12tw   2023-02-20 09:34:00
推一個
作者: kkagq   2023-02-20 09:36:00
應該拿pixel來試試,這兩年吹AI多強,真正應用派上用場,看是不是真有本事
作者: emptie ([ ])   2023-02-20 09:52:00
推實驗精神
作者: sheng76314 (下雨天)   2023-02-20 10:47:00
手機都能算 a卡…
作者: square4 (卡哇伊)   2023-02-20 10:52:00
都走雲端,幾秒鐘出圖https://i.imgur.com/kR0ybym.jpg
作者: lsps40803 (★嘻哩波囉★)   2023-02-20 10:53:00
雲端就能做到的事為什麼要虐待你的手機...
作者: milk830122 (SuperX)   2023-02-20 10:53:00
因為這個還是對n卡支援好很多 沒vram算都超慢的 不如用網路的幫你算
作者: abc0922001 (中士abc)   2023-02-20 11:01:00
作者: double5915   2023-02-20 11:16:00
手機:....幫復....
作者: guogu   2023-02-20 11:29:00
a卡能算阿 網路上教學也不少吧
作者: louie0909 (法老ATM)   2023-02-20 12:16:00
是說手機的npu有開放api之類的嗎 每次新處理器發表都再吹ai性能多猛多猛
作者: henrylin8086 (小木)   2023-02-20 12:16:00
這折騰很像很好玩
作者: LoveShibeInu (柴犬很笨)   2023-02-20 12:17:00
笑死 美好星期天就是要這樣浪費
作者: superstu (哇係阿BB)   2023-02-20 12:44:00
猛欸,跪著看這篇
作者: shengshampoo (Sheng Shampoo)   2023-02-20 13:27:00
物盡其用不是壞事,DIY土炮也可以發揮創意。徒手製作噴射火箭飛上天空,也是需要這類人才能付諸實行。
作者: Loliprpr (Akiya)   2023-02-20 15:15:00
雲端都有免費P100能用 怎麼會想用手機跑XD
作者: a0910bb (我不要取暱稱)   2023-02-20 17:44:00
作者: ymx3xc (U文多多)   2023-02-20 20:43:00
推 新燒機模式
作者: ncuephysics (量子佛法陳俊智師兄)   2023-02-21 04:03:00
用模擬器好了
作者: devilhades (菲特)   2023-02-21 14:34:00
我...我還是乖乖NovelAI吧

Links booklink

Contact Us: admin [ a t ] ucptt.com