|
<!--Copyright 2024 The HuggingFace Team. All rights reserved. |
|
|
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with |
|
the License. You may obtain a copy of the License at |
|
|
|
http://www.apache.org/licenses/LICENSE-2.0 |
|
|
|
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on |
|
an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the |
|
specific language governing permissions and limitations under the License. |
|
--> |
|
|
|
# Core ML๋ก Stable Diffusion์ ์คํํ๋ ๋ฐฉ๋ฒ |
|
|
|
[Core ML](https://developer.apple.com/documentation/coreml)์ Apple ํ๋ ์์ํฌ์์ ์ง์ํ๋ ๋ชจ๋ธ ํ์ ๋ฐ ๋จธ์ ๋ฌ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์
๋๋ค. macOS ๋๋ iOS/iPadOS ์ฑ ๋ด์์ Stable Diffusion ๋ชจ๋ธ์ ์คํํ๋ ๋ฐ ๊ด์ฌ์ด ์๋ ๊ฒฝ์ฐ, ์ด ๊ฐ์ด๋์์๋ ๊ธฐ์กด PyTorch ์ฒดํฌํฌ์ธํธ๋ฅผ Core ML ํ์์ผ๋ก ๋ณํํ๊ณ ์ด๋ฅผ Python ๋๋ Swift๋ก ์ถ๋ก ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช
ํฉ๋๋ค. |
|
|
|
Core ML ๋ชจ๋ธ์ Apple ๊ธฐ๊ธฐ์์ ์ฌ์ฉํ ์ ์๋ ๋ชจ๋ ์ปดํจํ
์์ง๋ค, ์ฆ CPU, GPU, Apple Neural Engine(๋๋ Apple Silicon Mac ๋ฐ ์ต์ iPhone/iPad์์ ์ฌ์ฉํ ์ ์๋ ํ
์ ์ต์ ํ ๊ฐ์๊ธฐ์ธ ANE)์ ํ์ฉํ ์ ์์ต๋๋ค. ๋ชจ๋ธ๊ณผ ์คํ ์ค์ธ ๊ธฐ๊ธฐ์ ๋ฐ๋ผ Core ML์ ์ปดํจํ
์์ง๋ ํผํฉํ์ฌ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก, ์๋ฅผ ๋ค์ด ๋ชจ๋ธ์ ์ผ๋ถ๊ฐ CPU์์ ์คํ๋๋ ๋ฐ๋ฉด ๋ค๋ฅธ ๋ถ๋ถ์ GPU์์ ์คํ๋ ์ ์์ต๋๋ค. |
|
|
|
<Tip> |
|
|
|
PyTorch์ ๋ด์ฅ๋ `mps` ๊ฐ์๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ Apple Silicon Macs์์ `diffusers` Python ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์คํํ ์๋ ์์ต๋๋ค. ์ด ๋ฐฉ๋ฒ์ [mps ๊ฐ์ด๋]์ ์์ธํ ์ค๋ช
๋์ด ์์ง๋ง ๋ค์ดํฐ๋ธ ์ฑ๊ณผ ํธํ๋์ง ์์ต๋๋ค. |
|
|
|
</Tip> |
|
|
|
## Stable Diffusion Core ML ์ฒดํฌํฌ์ธํธ |
|
|
|
Stable Diffusion ๊ฐ์ค์น(๋๋ ์ฒดํฌํฌ์ธํธ)๋ PyTorch ํ์์ผ๋ก ์ ์ฅ๋๊ธฐ ๋๋ฌธ์ ๋ค์ดํฐ๋ธ ์ฑ์์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ Core ML ํ์์ผ๋ก ๋ณํํด์ผ ํฉ๋๋ค. |
|
|
|
๋คํํ๋ Apple ์์ง๋์ด๋ค์ด `diffusers`๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ [๋ณํ ํด](https://github.com/apple/ml-stable-diffusion#-converting-models-to-core-ml)์ ๊ฐ๋ฐํ์ฌ PyTorch ์ฒดํฌํฌ์ธํธ๋ฅผ Core ML๋ก ๋ณํํ ์ ์์ต๋๋ค. |
|
|
|
๋ชจ๋ธ์ ๋ณํํ๊ธฐ ์ ์ ์ ์ ์๊ฐ์ ๋ด์ด Hugging Face Hub๋ฅผ ์ดํด๋ณด์ธ์. ๊ด์ฌ ์๋ ๋ชจ๋ธ์ด ์ด๋ฏธ Core ML ํ์์ผ๋ก ์ ๊ณต๋๊ณ ์์ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค: |
|
|
|
- [Apple](https://huggingface.co/apple) organization์๋ Stable Diffusion ๋ฒ์ 1.4, 1.5, 2.0 base ๋ฐ 2.1 base๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. |
|
- [coreml](https://huggingface.co/coreml) organization์๋ ์ปค์คํ
DreamBooth๊ฐ ์ ์ฉ๋๊ฑฐ๋, ํ์ธํ๋๋ ๋ชจ๋ธ์ด ํฌํจ๋์ด ์์ต๋๋ค. |
|
- ์ด [ํํฐ](https://huggingface.co/models?pipeline_tag=text-to-image&library=coreml&p=2&sort=likes)๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ Core ML ์ฒดํฌํฌ์ธํธ๋ค์ ๋ฐํํฉ๋๋ค. |
|
|
|
์ํ๋ ๋ชจ๋ธ์ ์ฐพ์ ์ ์๋ ๊ฒฝ์ฐ Apple์ [๋ชจ๋ธ์ Core ML๋ก ๋ณํํ๊ธฐ](https://github.com/apple/ml-stable-diffusion#-converting-models-to-core-ml) ์ง์นจ์ ๋ฐ๋ฅด๋ ๊ฒ์ด ์ข์ต๋๋ค. |
|
|
|
## ์ฌ์ฉํ Core ML ๋ณํ(Variant) ์ ํํ๊ธฐ |
|
|
|
Stable Diffusion ๋ชจ๋ธ์ ๋ค์ํ ๋ชฉ์ ์ ๋ฐ๋ผ ๋ค๋ฅธ Core ML ๋ณํ์ผ๋ก ๋ณํํ ์ ์์ต๋๋ค: |
|
|
|
- ์ฌ์ฉ๋๋ ์ดํ
์
๋ธ๋ก ์ ํ. ์ดํ
์
์ฐ์ฐ์ ์ด๋ฏธ์ง ํํ์ ์ฌ๋ฌ ์์ญ ๊ฐ์ ๊ด๊ณ์ '์ฃผ์๋ฅผ ๊ธฐ์ธ์ด๊ณ ' ์ด๋ฏธ์ง์ ํ
์คํธ ํํ์ด ์ด๋ป๊ฒ ์ฐ๊ด๋์ด ์๋์ง ์ดํดํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ดํ
์
์ฐ์ฐ์ ์ปดํจํ
๋ฐ ๋ฉ๋ชจ๋ฆฌ ์ง์ฝ์ ์ด๋ฏ๋ก ๋ค์ํ ์ฅ์น์ ํ๋์จ์ด ํน์ฑ์ ๊ณ ๋ คํ ๋ค์ํ ๊ตฌํ์ด ์กด์ฌํฉ๋๋ค. Core ML Stable Diffusion ๋ชจ๋ธ์ ๊ฒฝ์ฐ ๋ ๊ฐ์ง ์ฃผ์ ๋ณํ์ด ์์ต๋๋ค: |
|
* `split_einsum` ([Apple์์ ๋์
](https://machinelearning.apple.com/research/neural-engine-transformers)์ ์ต์ iPhone, iPad ๋ฐ M ์๋ฆฌ์ฆ ์ปดํจํฐ์์ ์ฌ์ฉํ ์ ์๋ ANE ์ฅ์น์ ์ต์ ํ๋์ด ์์ต๋๋ค. |
|
* "์๋ณธ" ์ดํ
์
(`diffusers`์ ์ฌ์ฉ๋๋ ๊ธฐ๋ณธ ๊ตฌํ)๋ CPU/GPU์๋ง ํธํ๋๋ฉฐ ANE์๋ ํธํ๋์ง ์์ต๋๋ค. "์๋ณธ" ์ดํ
์
์ ์ฌ์ฉํ์ฌ CPU + GPU์์ ๋ชจ๋ธ์ ์คํํ๋ ๊ฒ์ด ANE๋ณด๋ค *๋* ๋น ๋ฅผ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ [์ด ์ฑ๋ฅ ๋ฒค์น๋งํฌ](https://huggingface.co/blog/fast-mac-diffusers#performance-benchmarks)์ ์ปค๋ฎค๋ํฐ์์ ์ ๊ณตํ๋ ์ผ๋ถ [์ถ๊ฐ ์ธก์ ](https://github.com/huggingface/swift-coreml-diffusers/issues/31)์ ์ฐธ์กฐํ์ญ์์ค. |
|
|
|
- ์ง์๋๋ ์ถ๋ก ํ๋ ์์ํฌ |
|
* `packages`๋ Python ์ถ๋ก ์ ์ ํฉํฉ๋๋ค. ๋ค์ดํฐ๋ธ ์ฑ์ ํตํฉํ๊ธฐ ์ ์ ๋ณํ๋ Core ML ๋ชจ๋ธ์ ํ
์คํธํ๊ฑฐ๋, Core ML ์ฑ๋ฅ์ ์๊ณ ์ถ์ง๋ง ๋ค์ดํฐ๋ธ ์ฑ์ ์ง์ํ ํ์๋ ์๋ ๊ฒฝ์ฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์น UI๊ฐ ์๋ ์ ํ๋ฆฌ์ผ์ด์
์ Python Core ML ๋ฐฑ์๋๋ฅผ ์๋ฒฝํ๊ฒ ์ฌ์ฉํ ์ ์์ต๋๋ค. |
|
* Swift ์ฝ๋์๋ `์ปดํ์ผ๋` ๋ชจ๋ธ์ด ํ์ํฉ๋๋ค. Hub์ `์ปดํ์ผ๋` ๋ชจ๋ธ์ iOS ๋ฐ iPadOS ๊ธฐ๊ธฐ์์ ํธํ์ฑ์ ์ํด ํฐ UNet ๋ชจ๋ธ ๊ฐ์ค์น๋ฅผ ์ฌ๋ฌ ํ์ผ๋ก ๋ถํ ํฉ๋๋ค. ์ด๋ [`--chunk-unet` ๋ณํ ์ต์
](https://github.com/apple/ml-stable-diffusion#-converting-models-to-core-ml)์ ํด๋นํฉ๋๋ค. ๋ค์ดํฐ๋ธ ์ฑ์ ์ง์ํ๋ ค๋ฉด `์ปดํ์ผ๋` ๋ณํ์ ์ ํํด์ผ ํฉ๋๋ค. |
|
|
|
๊ณต์ Core ML Stable Diffusion [๋ชจ๋ธ](https://huggingface.co/apple/coreml-stable-diffusion-v1-4/tree/main)์๋ ์ด๋ฌํ ๋ณํ์ด ํฌํจ๋์ด ์์ง๋ง ์ปค๋ฎค๋ํฐ ๋ฒ์ ์ ๋ค๋ฅผ ์ ์์ต๋๋ค: |
|
|
|
``` |
|
coreml-stable-diffusion-v1-4 |
|
โโโ README.md |
|
โโโ original |
|
โ โโโ compiled |
|
โ โโโ packages |
|
โโโ split_einsum |
|
โโโ compiled |
|
โโโ packages |
|
``` |
|
|
|
์๋์ ๊ฐ์ด ํ์ํ ๋ณํ์ ๋ค์ด๋ก๋ํ์ฌ ์ฌ์ฉํ ์ ์์ต๋๋ค. |
|
|
|
## Python์์ Core ML ์ถ๋ก |
|
|
|
Python์์ Core ML ์ถ๋ก ์ ์คํํ๋ ค๋ฉด ๋ค์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํ์ธ์: |
|
|
|
```bash |
|
pip install huggingface_hub |
|
pip install git+https://github.com/apple/ml-stable-diffusion |
|
``` |
|
|
|
### ๋ชจ๋ธ ์ฒดํฌํฌ์ธํธ ๋ค์ด๋ก๋ํ๊ธฐ |
|
|
|
`์ปดํ์ผ๋` ๋ฒ์ ์ Swift์๋ง ํธํ๋๋ฏ๋ก Python์์ ์ถ๋ก ์ ์คํํ๋ ค๋ฉด `packages` ํด๋์ ์ ์ฅ๋ ๋ฒ์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ธ์. `์๋ณธ` ๋๋ `split_einsum` ์ดํ
์
์ค ์ด๋ ๊ฒ์ ์ฌ์ฉํ ์ง ์ ํํ ์ ์์ต๋๋ค. |
|
|
|
๋ค์์ Hub์์ 'models'๋ผ๋ ๋๋ ํ ๋ฆฌ๋ก 'original' ์ดํ
์
๋ณํ์ ๋ค์ด๋ก๋ํ๋ ๋ฐฉ๋ฒ์
๋๋ค: |
|
|
|
```Python |
|
from huggingface_hub import snapshot_download |
|
from pathlib import Path |
|
|
|
repo_id = "apple/coreml-stable-diffusion-v1-4" |
|
variant = "original/packages" |
|
|
|
model_path = Path("./models") / (repo_id.split("/")[-1] + "_" + variant.replace("/", "_")) |
|
snapshot_download(repo_id, allow_patterns=f"{variant}/*", local_dir=model_path, local_dir_use_symlinks=False) |
|
print(f"Model downloaded at {model_path}") |
|
``` |
|
|
|
|
|
### ์ถ๋ก [[python-inference]] |
|
|
|
๋ชจ๋ธ์ snapshot์ ๋ค์ด๋ก๋ํ ํ์๋ Apple์ Python ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ฌ ํ
์คํธํ ์ ์์ต๋๋ค. |
|
|
|
```shell |
|
python -m python_coreml_stable_diffusion.pipeline --prompt "a photo of an astronaut riding a horse on mars" -i models/coreml-stable-diffusion-v1-4_original_packages -o </path/to/output/image> --compute-unit CPU_AND_GPU --seed 93 |
|
``` |
|
|
|
`<output-mlpackages-directory>`๋ ์ ๋จ๊ณ์์ ๋ค์ด๋ก๋ํ ์ฒดํฌํฌ์ธํธ๋ฅผ ๊ฐ๋ฆฌ์ผ์ผ ํ๋ฉฐ, `--compute-unit`์ ์ถ๋ก ์ ํ์ฉํ ํ๋์จ์ด๋ฅผ ๋ํ๋
๋๋ค. ์ด๋ ๋ค์ ์ต์
์ค ํ๋์ด์ด์ผ ํฉ๋๋ค: `ALL`, `CPU_AND_GPU`, `CPU_ONLY`, `CPU_AND_NE`. ์ ํ์ ์ถ๋ ฅ ๊ฒฝ๋ก์ ์ฌํ์ฑ์ ์ํ ์๋๋ฅผ ์ ๊ณตํ ์๋ ์์ต๋๋ค. |
|
|
|
์ถ๋ก ์คํฌ๋ฆฝํธ์์๋ Stable Diffusion ๋ชจ๋ธ์ ์๋ ๋ฒ์ ์ธ `CompVis/stable-diffusion-v1-4`๋ฅผ ์ฌ์ฉํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ๋ค๋ฅธ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ถ๋ก ๋ช
๋ น์ค์์ `--model-version` ์ต์
์ ์ฌ์ฉํ์ฌ ํด๋น ํ๋ธ ID๋ฅผ *์ง์ *ํด์ผ ํฉ๋๋ค. ์ด๋ ์ด๋ฏธ ์ง์๋๋ ๋ชจ๋ธ๊ณผ ์ฌ์ฉ์๊ฐ ์ง์ ํ์ตํ๊ฑฐ๋ ํ์ธํ๋ํ ์ฌ์ฉ์ ์ง์ ๋ชจ๋ธ์ ์ ์ฉ๋ฉ๋๋ค. |
|
|
|
์๋ฅผ ๋ค์ด, [`runwayml/stable-diffusion-v1-5`](https://huggingface.co/runwayml/stable-diffusion-v1-5)๋ฅผ ์ฌ์ฉํ๋ ค๋ ๊ฒฝ์ฐ์
๋๋ค: |
|
|
|
```shell |
|
python -m python_coreml_stable_diffusion.pipeline --prompt "a photo of an astronaut riding a horse on mars" --compute-unit ALL -o output --seed 93 -i models/coreml-stable-diffusion-v1-5_original_packages --model-version runwayml/stable-diffusion-v1-5 |
|
``` |
|
|
|
|
|
## Swift์์ Core ML ์ถ๋ก ํ๊ธฐ |
|
|
|
Swift์์ ์ถ๋ก ์ ์คํํ๋ ๊ฒ์ ๋ชจ๋ธ์ด ์ด๋ฏธ `mlmodelc` ํ์์ผ๋ก ์ปดํ์ผ๋์ด ์๊ธฐ ๋๋ฌธ์ Python๋ณด๋ค ์ฝ๊ฐ ๋น ๋ฆ
๋๋ค. ์ด๋ ์ฑ์ด ์์๋ ๋ ๋ชจ๋ธ์ด ๋ถ๋ฌ์์ง๋ ๊ฒ์ด ๋์ ๋์ง๋ง, ์ดํ ์ฌ๋ฌ ๋ฒ ์คํํ๋ฉด ๋์ ๋์ง ์์ ๊ฒ์
๋๋ค. |
|
|
|
### ๋ค์ด๋ก๋ |
|
|
|
Mac์์ Swift์์ ์ถ๋ก ์ ์คํํ๋ ค๋ฉด `์ปดํ์ผ๋` ์ฒดํฌํฌ์ธํธ ๋ฒ์ ์ค ํ๋๊ฐ ํ์ํฉ๋๋ค. ์ด์ ์์ ์ ์ ์ฌํ์ง๋ง `์ปดํ์ผ๋` ๋ณํ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ Python ์ฝ๋๋ฅผ ๋ก์ปฌ๋ก ๋ค์ด๋ก๋ํ๋ ๊ฒ์ด ์ข์ต๋๋ค: |
|
|
|
```Python |
|
from huggingface_hub import snapshot_download |
|
from pathlib import Path |
|
|
|
repo_id = "apple/coreml-stable-diffusion-v1-4" |
|
variant = "original/compiled" |
|
|
|
model_path = Path("./models") / (repo_id.split("/")[-1] + "_" + variant.replace("/", "_")) |
|
snapshot_download(repo_id, allow_patterns=f"{variant}/*", local_dir=model_path, local_dir_use_symlinks=False) |
|
print(f"Model downloaded at {model_path}") |
|
``` |
|
|
|
### ์ถ๋ก [[swift-inference]] |
|
|
|
์ถ๋ก ์ ์คํํ๊ธฐ ์ํด์, Apple์ ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ๋ณต์ ํ์ธ์: |
|
|
|
```bash |
|
git clone https://github.com/apple/ml-stable-diffusion |
|
cd ml-stable-diffusion |
|
``` |
|
|
|
๊ทธ ๋ค์ Apple์ ๋ช
๋ น์ด ๋๊ตฌ์ธ [Swift ํจํค์ง ๊ด๋ฆฌ์](https://www.swift.org/package-manager/#)๋ฅผ ์ฌ์ฉํฉ๋๋ค: |
|
|
|
```bash |
|
swift run StableDiffusionSample --resource-path models/coreml-stable-diffusion-v1-4_original_compiled --compute-units all "a photo of an astronaut riding a horse on mars" |
|
``` |
|
|
|
`--resource-path`์ ์ด์ ๋จ๊ณ์์ ๋ค์ด๋ก๋ํ ์ฒดํฌํฌ์ธํธ ์ค ํ๋๋ฅผ ์ง์ ํด์ผ ํ๋ฏ๋ก ํ์ฅ์๊ฐ `.mlmodelc`์ธ ์ปดํ์ผ๋ Core ML ๋ฒ๋ค์ด ํฌํจ๋์ด ์๋์ง ํ์ธํ์๊ธฐ ๋ฐ๋๋๋ค. `--compute-units`๋ ๋ค์ ๊ฐ ์ค ํ๋์ด์ด์ผ ํฉ๋๋ค: `all`, `cpuOnly`, `cpuAndGPU`, `cpuAndNeuralEngine`. |
|
|
|
์์ธํ ๋ด์ฉ์ [Apple์ ๋ฆฌํฌ์งํ ๋ฆฌ ์์ ์ง์นจ](https://github.com/apple/ml-stable-diffusion)์ ์ฐธ๊ณ ํ์๊ธฐ ๋ฐ๋๋๋ค. |
|
|
|
|
|
## ์ง์๋๋ Diffusers ๊ธฐ๋ฅ |
|
|
|
Core ML ๋ชจ๋ธ๊ณผ ์ถ๋ก ์ฝ๋๋ ๐งจ Diffusers์ ๋ง์ ๊ธฐ๋ฅ, ์ต์
๋ฐ ์ ์ฐ์ฑ์ ์ง์ํ์ง ์์ต๋๋ค. ๋ค์์ ์ ์ํด์ผ ํ ๋ช ๊ฐ์ง ์ ํ ์ฌํญ์
๋๋ค: |
|
|
|
- Core ML ๋ชจ๋ธ์ ์ถ๋ก ์๋ง ์ ํฉํฉ๋๋ค. ํ์ต์ด๋ ํ์ธํ๋์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. |
|
- Swift์ ํฌํ
๋ ์ค์ผ์ค๋ฌ๋ Stable Diffusion์์ ์ฌ์ฉํ๋ ๊ธฐ๋ณธ ์ค์ผ์ค๋ฌ์ `diffusers` ๊ตฌํ์์ Swift๋ก ํฌํ
ํ `DPMSolverMultistepScheduler` ๋ ๊ฐ๋ฟ์
๋๋ค. ์ด๋ค ์ค ์ฝ ์ ๋ฐ์ ์คํ
์ผ๋ก ๋์ผํ ํ์ง์ ์์ฑํ๋ `DPMSolverMultistepScheduler`๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค. |
|
- ์ถ๋ก ์ฝ๋์์ ๋ค๊ฑฐํฐ๋ธ ํ๋กฌํํธ, classifier-free guidance scale ๋ฐ image-to-image ์์
์ ์ฌ์ฉํ ์ ์์ต๋๋ค. depth guidance, ControlNet, latent upscalers์ ๊ฐ์ ๊ณ ๊ธ ๊ธฐ๋ฅ์ ์์ง ์ฌ์ฉํ ์ ์์ต๋๋ค. |
|
|
|
Apple์ [๋ณํ ๋ฐ ์ถ๋ก ๋ฆฌํฌ์งํ ๋ฆฌ](https://github.com/apple/ml-stable-diffusion)์ ์์ฒด [swift-coreml-diffusers](https://github.com/huggingface/swift-coreml-diffusers) ๋ฆฌํฌ์งํ ๋ฆฌ๋ ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค์ด ๊ตฌ์ถํ ์ ์๋ ๊ธฐ์ ์ ์ธ ๋ฐ๋ชจ์
๋๋ค. |
|
|
|
๋๋ฝ๋ ๊ธฐ๋ฅ์ด ์๋ค๊ณ ์๊ฐ๋๋ฉด ์ธ์ ๋ ์ง ๊ธฐ๋ฅ์ ์์ฒญํ๊ฑฐ๋, ๋ ์ข์ ๋ฐฉ๋ฒ์ ๊ธฐ์ฌ PR์ ์ด์ด์ฃผ์ธ์. :) |
|
|
|
|
|
## ๋ค์ดํฐ๋ธ Diffusers Swift ์ฑ |
|
|
|
์์ฒด Apple ํ๋์จ์ด์์ Stable Diffusion์ ์คํํ๋ ์ฌ์ด ๋ฐฉ๋ฒ ์ค ํ๋๋ `diffusers`์ Apple์ ๋ณํ ๋ฐ ์ถ๋ก ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ [์์ฒด ์คํ ์์ค Swift ๋ฆฌํฌ์งํ ๋ฆฌ](https://github.com/huggingface/swift-coreml-diffusers)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์
๋๋ค. ์ฝ๋๋ฅผ ๊ณต๋ถํ๊ณ [Xcode](https://developer.apple.com/xcode/)๋ก ์ปดํ์ผํ์ฌ ํ์์ ๋ง๊ฒ ์กฐ์ ํ ์ ์์ต๋๋ค. ํธ์๋ฅผ ์ํด ์ฑ์คํ ์ด์ [๋
๋ฆฝํ Mac ์ฑ](https://apps.apple.com/app/diffusers/id1666309574)๋ ์์ผ๋ฏ๋ก ์ฝ๋๋ IDE๋ฅผ ๋ค๋ฃจ์ง ์๊ณ ๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ก์ Core ML์ด Stable Diffusion ์ฑ์ ๊ตฌ์ถํ๋ ๋ฐ ๊ฐ์ฅ ์ ํฉํ ์๋ฃจ์
์ด๋ผ๊ณ ํ๋จํ๋ค๋ฉด, ์ด ๊ฐ์ด๋์ ๋๋จธ์ง ๋ถ๋ถ์ ์ฌ์ฉํ์ฌ ํ๋ก์ ํธ๋ฅผ ์์ํ ์ ์์ต๋๋ค. ์ฌ๋ฌ๋ถ์ด ๋ฌด์์ ๋น๋ํ ์ง ๊ธฐ๋๋ฉ๋๋ค. :) |