首先說明,這裡說的「家裡電腦」,指的是大多數人在用的Windows 10/11電腦。
作為文字工作者,日常用長續航的Macbook Pro M1,雖然蘋果電腦也能跑 stable-diffusion-webui ,但是考慮到N卡仍最主流的選擇,圍繞N卡的更新最多最快,所以,還是主要用帶有N卡的Windows電腦做圖。
想遠程訪問家裡電腦上部署的Stable diffusion,我主要用三個方式(第三種最簡單):
第一種:遠控軟體。
常用的是向日葵和ToDesk兩個,TeamViewer也行,直接登錄控制遠程電腦。
優勢是操控空間大,可以隨時下載模型。
劣勢是,依賴帶寬,延遲感比較大。
第二種:內網穿透,映射埠。(最麻煩)
內網穿透懂的都懂,不懂的接著往下看。
我用的是華碩路由器梅林固件帶的DDNSTO,把本地電腦上的地址映射到公網上,訪問公網上的連結即可。
不用路由器的話,也不用擔心,很簡單。
註冊DDNSTO帳號後,點擊添加設備,選擇Windows後會下載4MB的客戶端。
打開軟體後,把右上角的Token填進去,點個保存,DDNSTO後台就看見你的設備了。
接下來需要填寫一下映射埠。
不過,直接映射默認的127.0.0.1:7860不行,得在webui-user.bat里的「set COMMANDLINE_ARGS=」上添加一個參數「--listen 」。
重啟後,啟動後的cmd會顯示:
Running on local URL: http://0.0.0.0:7860
這時候,找到你的電腦在本地區域網的IP位址,把它映射到公網就行了。
還要注意的是,添加「--listen」參數之後,系統為了安全,就會禁止安裝插件,會報錯:
AssertionError: extension access disabled because of command line flags
去掉「--listen」之後就能正常安裝更新插件了。
最後提醒一下,DDNSTO是付費服務,但是支持7天免費體驗。
第三種,最簡單的方法,添加Share參數。
在webui-user.bat里的「set COMMANDLINE_ARGS=」上添加一個參數「--share」。
然後,會生成一個可以直接公網訪問的連結,cmd上會顯示:
Running on public URL: https://fbf82979-b704-42d8.gradio.live
連結臨時生成一次,有效期72個小時,任何人都可以訪問,為了安全起見,需要繼續在後面添加參數:
--gradio-auth username:password
--gradio-auth後面跟上用戶名和密碼。
登錄時候輸入帳戶密碼即可。
最後,為了避免安全問題,也會禁止安裝腳本,會報錯:
AssertionError: extension access disabled because of command line flags
還有別的問題,歡迎交流。