mac m3 pro 部署 stable diffusion webui

什么是Stable Diffusion WebUI ?

????????Stable Diffusion WebUI 是一個基于Stable Diffusion模型開發的圖形用戶界面(GUI)工具。通過這個工具,我們可以很方便的基于提示詞,描述一段文本來指導模型生成相應的圖像。相比較通過編碼或者命令方式使用stable diffusion生成圖像,webui更具靈活性與方便性,同時不具備編碼能力的人員也能輕松使用

部署前的說明

? ? ? ? 最好的資源在官網,目前SD webui(Stable Diffusion WebUI 簡稱,本文后續都使用簡稱表述)托管在github上,我們可以從?AUTOMATIC1111 維護的倉庫中下載并自行部署。對mac電腦可以參照這篇說明部署:Installation on Apple Silicon · AUTOMATIC1111/stable-diffusion-webui Wiki · GitHub。這里將部署過程以、部署過程中遇到問題及解決方案,再重新整理說明下,以便后續對在mac上部署SD webui 的同學有參考意義。

部署過程

安裝homebrew

????????首先確保你的mac電腦安裝了homebrew,homebrew是mac上一款功能強大的軟件包管理器,安裝過程比較簡單,可直接參考官網提示安裝,傳送門==> homebrew。

安裝sd依賴軟件

? ? ? ? homebrew安裝好后,打開終端控制臺,執行以下命令安裝依賴的軟件。這里需要注意下python的版本為3.10,如果你的電腦安裝了其他版本的python(一般mac都默認自帶python),請卸載避免沖突,或者設置python、pip命令默認使用brew 安裝的3.10版本

brew install cmake protobuf rust python@3.10 git wget

? ? ? ? ?這里筆者電腦默認有個3.9.6版本的python,為避免沖突,通過強制在 ~/.bash_profile文件中設置使用brew安裝的3.10版本實現。注意文件修改后,需要source生效。

alias python=/opt/homebrew/bin/python3.10
alias python3=/opt/homebrew/bin/python3.10
alias pip=/opt/homebrew/bin/pip3.10
alias pip3=/opt/homebrew/bin/pip3.10

克隆SD webui軟件包

? ? ? ? 接下來就是克隆 SD webui 項目到本地,選定一個文件夾后,直接執行git clone即可。

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui

? ? ? ? 下載完成后進入到 stable-diffusion-webui 目錄下,執行?./webui.sh 命令啟動即可。由于默認的項目不帶模型的,我們還需要相關模型。guthub上的模型鏈接都是在?https://huggingface.co/?上的,由于國內網絡限制原因,無法訪問到huggingface,故只能去鏡像網站手動下載放到項目中指定的目錄下。這里我們去鏡像網站?HF-Mirror?或者 模搭社區?下載?v1-5-pruned-emaonly.safetensors 模型,下載完的模型放到項目中的?/stable-diffusion-webui/models/Stable-diffusion/ 目錄下即可,再次重新啟動。

? ? ? ? 重新執行 ./webui.sh 后,可以看到執行仍報如下錯誤,無法加載 openai/clip-vit-large-patch14,原因還是網絡問題無法訪問https://huggingface.co導致。

EnvironmentError(
OSError: Can't load tokenizer for 'openai/clip-vit-large-patch14'. If you were trying to load it from 'https://huggingface.co/models', make sure you don't have a local directory with the same name. Otherwise, make sure 'openai/clip-vit-large-patch14' is the correct path to a directory containing all relevant files for a CLIPTokenizer tokenizer.

????????這里我們仍然可以從鏡像網站?HF-Mirror?下載對應的模型,注意這里下載的模型放到項目根目錄即可,同時相關的配置文件也要一并下載,如下圖所示。?

? ? ? ? ?解決完以上問題后,再次啟動,可以看到服務正常啟動成功,模型正常加載,我們輸入提示詞,點擊generate,圖像也正常生成成功。至此我們完成了SD WebUI 在mac上本地部署。另外說明下我的電腦環境是:Apple M3 Pro、macOs 是15.3.2。

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/74587.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/74587.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/74587.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

OpenCV圖像拼接(6)根據權重圖對源圖像進行歸一化處理函數normalizeUsingWeightMap()

操作系統:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 編程語言:C11 算法描述 cv::detail::normalizeUsingWeightMap 是 OpenCV 中用于圖像拼接細節處理的一個函數。它根據權重圖對源圖像進行歸一化處理,通常用于…

23種設計模式-外觀(Facade)設計模式

外觀設計模式 🚩什么是外觀設計模式?🚩外觀設計模式的特點🚩外觀設計模式的結構🚩外觀設計模式的優缺點🚩外觀設計模式的Java實現🚩代碼總結🚩總結 🚩什么是外觀設計模式…

capl語言基礎語法(二)

1.strncpy:將字符串復制到另一個字符串中。 輸入: dest 是目標字符串。 src 是源字符串。 n 是要復制的最大字符數。 語法: char *strncpy(char *dest, const char *src, size_t n); 例子: strncpy(gStringRep,"",…

QLoRA和LoRA 微調

QLoRA 其實是一種結合了量化和 LoRA 微調技術的統一方法,而不是同時使用兩種不同的微調方式。換句話說,QLoRA 的意思就是:先把大模型的主權重用低精度(例如 4-bit)量化,從而大幅減少存儲需求;然…

Qt Concurrent 并發 Map 和 Map-Reduce

并發 Map 和 Map-Reduce QtConcurrent::map()會對容器中的每個項目應用一個函數,對項目進行就地修改。QtConcurrent::mapped() 類似于 map(),但它返回的是一個包含修改內容的新容器。QtConcurrent::mappedReduced() 類似于 mapped(),只不過修…

RT-Thread-線程管理

一、線程管理 RT_Thread線程管理主要是實現線程管理和調度,線程分為用戶線程和系統線程。RT_Thread的線程調度器是搶占式的,尋找就緒狀態最高優先級線程。 線程管理的API函數 創建線程函數 rt_thread_t rt_thread_create( const char *name, //線程名稱 …

【CC2530 教程 十二】CC2530 Z-Stack 硬件抽象層

目錄 一、硬件抽象層簡介: (1)HAL 硬件抽象層是什么? (2)通俗易懂的解釋: (3)具體例子: 二、硬件抽象層HAL: (1)HAL…

Linux如何判斷磁盤是否已分區?

在 Linux 系統中,判斷磁盤是否已分區可通過以下方法實現: 方法 1:使用 fdisk -l 命令 此命令會列出所有磁盤及其分區的詳細信息: sudo fdisk -l輸出解讀: 若磁盤(如 /dev/sdb)下有類似 /dev/…

《熔化焊接與熱切割作業》考試注意事項

考試前的準備 攜帶必要的證件和材料:考生需攜帶身份證、準考證等有效證件,以及考試所需的焊接工具、材料等。確保證件齊全,避免因證件問題影響考試。 提前檢查焊接設備和工具:在考試前,考生應仔細檢查焊接設備和工具是…

Matlab Hessian矩陣計算(LoG算子)

文章目錄 一、簡介二、實現代碼三、實現效果參考資料一、簡介 圖像的Hessian矩陣用于描述圖像灰度值的二階導數,可以用來分析圖像的局部曲率和變化。例如,在圖像邊緣檢測、特征點檢測等任務中,Hessian矩陣能幫助我們識別圖像的結構。 Hessian矩陣定義 對于二維圖像,Hessian…

selenium之處理彈框(alert、confirm、prompt)

彈框 WebDriver提供了一個API, 用于處理JavaScript提供的三種類型的原生彈窗消息. 這些彈窗由瀏覽器提供限定的樣式.;分別為以下三種 alerts警告框confirm確認框prompt提示框 話不多說,開始實踐下就知道怎么一回事了 alerts 警告框,顯示…

Visual Studio 2019 Qt QML 項目環境搭建常見問題處理方法

在 Visual Studio 2019 運行 Qt/QML 項目比直接使用QtCreator環境麻煩,主要是有qmake 的一些配置項不能在 Visual Studio中設置。下面整理一些常見問題的處理方法,供參考: 搭建VS Qt 環境,在Visual Studios 2019下面安裝 Qt Vis…

【Linux】POSIX信號量與基于環形隊列的生產消費者模型

目錄 一、POSIX信號量: 接口: 二、基于環形隊列的生產消費者模型 環形隊列: 單生產單消費實現代碼: RingQueue.hpp: main.cc: 多生產多消費實現代碼: RingQueue.hpp: main.…

RAG優化:python從零實現GraphRag 一場文檔與知識的“戀愛”之旅

嘿,親愛的算法工程師們,準備好迎接一場文檔與知識的“戀愛”之旅了嗎?今天我們要介紹的 Graph RAG,就像是一位“紅娘”,幫助文檔和知識在圖的世界里找到彼此,擦出智慧的火花! 文章目錄 為什么需要 Graph RAG?Graph RAG 的“戀愛秘籍”準備好了嗎?讓我們開始吧!環境設…

深入 SVG:矢量圖形、濾鏡與動態交互開發指南

1.SVG 詳細介紹 SVG(Scalable Vector Graphics) 是一種基于 XML 的矢量圖形格式,用于描述二維圖形。 1. 命名空間 (Namespace) ★ 了解 命名空間 URI:http://www.w3.org/2000/svg 用途:在 XML 或 XHTML 中區分不同標…

HTTPS 加密過程詳解

HTTPS 的核心組成是 HTTP 協議與 SSL/TLS 加密層的結合,通過加密傳輸、身份驗證和完整性校驗機制,確保數據安全。其加密過程通過以下方式保障數據的機密性、完整性和身份驗證: 一、HTTPS 的核心組成 1. HTTP 協議 作為基礎通信協議&#xf…

嵌入式硬件工程師從小白到入門-速通版(一)

嵌入式硬件工程師從小白到入門:知識點速通與實戰指南 一、基礎硬件知識體系 電子電路基礎 基本概念:電流、電壓、電阻、電容、電感等;電路分析:歐姆定律、基爾霍夫定律、戴維南定理;元器件特性:二極管、三極…

SpringBoot通過Map實現天然的策略模式

😊 作者: 一恍過去 💖 主頁: https://blog.csdn.net/zhuocailing3390 🎊 社區: Java技術棧交流 🎉 主題: SpringBoot通過Map實現天然的策略模式 ?? 創作時間: 202…

WordPress WooCommerce 本地文件包含漏洞(CVE-2025-1661)

免責聲明 僅供網絡安全研究與教育目的使用。任何人不得將本文提供的信息用于非法目的或未經授權的系統測試。作者不對任何由于使用本文信息而導致的直接或間接損害承擔責任。如涉及侵權,請及時與我們聯系,我們將盡快處理并刪除相關內容。 一:產品介紹 HUSKY – WooCommer…

matlab近似計算聯合密度分布

在 Matlab 中,當A和B是兩個序列數據時,可以通過以下步驟來近似求出A大于B的概率分布:數據準備:確保序列A和B具有相同的長度。如果長度不同,需要進行相應的處理(例如截取或插值)。計算A大于B的邏…