Skip to content

Commit 0fd395d

Browse files
authored
feat(diffusers): add MPS version (#6121)
Signed-off-by: Ettore Di Giacinto <[email protected]>
1 parent d04bd47 commit 0fd395d

File tree

5 files changed

+33
-1
lines changed

5 files changed

+33
-1
lines changed

.github/workflows/backend_build_darwin.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ on:
1212
description: 'Build type (e.g., mps)'
1313
default: ''
1414
type: string
15+
use-pip:
16+
description: 'Use pip to install dependencies'
17+
default: false
18+
type: boolean
1519
go-version:
1620
description: 'Go version to use'
1721
default: '1.24.x'
@@ -63,7 +67,7 @@ jobs:
6367
- name: Build ${{ inputs.backend }}-darwin
6468
run: |
6569
make protogen-go
66-
BACKEND=${{ inputs.backend }} BUILD_TYPE=${{ inputs.build-type }} make build-darwin-python-backend
70+
BACKEND=${{ inputs.backend }} BUILD_TYPE=${{ inputs.build-type }} USE_PIP=${{ inputs.use-pip }} make build-darwin-python-backend
6771
6872
- name: Upload ${{ inputs.backend }}.tar
6973
uses: actions/upload-artifact@v4

Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -369,6 +369,10 @@ backends/mlx:
369369
BACKEND=mlx BUILD_TYPE=mps $(MAKE) build-darwin-python-backend
370370
./local-ai backends install "ocifile://$(abspath ./backend-images/mlx.tar)"
371371

372+
backends/diffuser-darwin:
373+
USE_PIP=true BACKEND=diffusers BUILD_TYPE=mps $(MAKE) build-darwin-python-backend
374+
./local-ai backends install "ocifile://$(abspath ./backend-images/diffusers.tar)"
375+
372376
backend-images:
373377
mkdir -p backend-images
374378

backend/index.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,7 @@
184184
intel: "intel-diffusers"
185185
amd: "rocm-diffusers"
186186
nvidia-l4t: "nvidia-l4t-diffusers"
187+
metal: "metal-diffusers"
187188
- &exllama2
188189
name: "exllama2"
189190
urls:
@@ -875,6 +876,7 @@
875876
intel: "intel-diffusers-development"
876877
amd: "rocm-diffusers-development"
877878
nvidia-l4t: "nvidia-l4t-diffusers-development"
879+
metal: "metal-diffusers-development"
878880
- !!merge <<: *diffusers
879881
name: "nvidia-l4t-diffusers"
880882
uri: "quay.io/go-skynet/local-ai-backends:latest-gpu-nvidia-l4t-diffusers"
@@ -925,6 +927,16 @@
925927
uri: "quay.io/go-skynet/local-ai-backends:master-gpu-intel-diffusers"
926928
mirrors:
927929
- localai/localai-backends:master-gpu-intel-diffusers
930+
- !!merge <<: *diffusers
931+
name: "metal-diffusers"
932+
uri: "quay.io/go-skynet/local-ai-backends:latest-metal-darwin-arm64-diffusers"
933+
mirrors:
934+
- localai/localai-backends:latest-metal-darwin-arm64-diffusers
935+
- !!merge <<: *diffusers
936+
name: "metal-diffusers-development"
937+
uri: "quay.io/go-skynet/local-ai-backends:master-metal-darwin-arm64-diffusers"
938+
mirrors:
939+
- localai/localai-backends:master-metal-darwin-arm64-diffusers
928940
## exllama2
929941
- !!merge <<: *exllama2
930942
name: "exllama2-development"
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
torch==2.7.1
2+
torchvision==0.22.1
3+
git+https://github.com/huggingface/diffusers
4+
opencv-python
5+
transformers
6+
accelerate
7+
compel
8+
peft
9+
sentencepiece
10+
optimum-quanto

backend/python/diffusers/run.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,6 @@ if [ -d "/opt/intel" ]; then
1212
export XPU=1
1313
fi
1414

15+
export PYTORCH_ENABLE_MPS_FALLBACK=1
16+
1517
startBackend $@

0 commit comments

Comments
 (0)