SGLang Diffusion 설치
SGLang Diffusion 설치 (Install SGLang Diffusion)
이 페이지는 NVIDIA, AMD, MUSA, Ascend 등 다양한 플랫폼에 SGLang Diffusion을 설치하는 방법을 설명해요. 기본 설치에는 이미 SGLang의 최적화된 커널 스택(sgl-kernel과 JIT 커널)이 포함되어 있어요. pip/uv, 소스 빌드, Docker 등 원하는 방식으로 설치할 수 있어요.
출처: 문서
본문
아래 방법 중 하나로 SGLang-Diffusion을 설치할 수 있어요. 표준 설치에는 확산 워크로드에 사용되는 sgl-kernel과 JIT 커널을 포함한 SGLang의 최적화된 커널 스택이 이미 포함되어 있어요.
표준 설치 (NVIDIA GPU)
방법 1: pip 또는 uv 사용
더 빠른 설치를 위해 uv를 사용하는 것을 추천해요:
pip install --upgrade pip
pip install uv
uv pip install "sglang[diffusion]" --prerelease=allow
방법 2: 소스에서 설치
# Use the latest release branch
git clone https://github.com/sgl-project/sglang.git
cd sglang
# Install the Python packages
pip install --upgrade pip
pip install -e "python[diffusion]"
# With uv
uv pip install -e "python[diffusion]" --prerelease=allow
방법 3: Docker 사용
Docker 이미지는 Dockerfile에서 빌드되어 Docker Hub의 lmsysorg/sglang에서 사용할 수 있어요. 아래의 <secret>을 HuggingFace Hub 토큰으로 바꿔 주세요.
docker run --gpus all \
--shm-size 32g \
-p 30000:30000 \
-v ~/.cache/huggingface:/root/.cache/huggingface \
--env "HF_TOKEN=<secret>" \
--ipc=host \
lmsysorg/sglang:dev \
zsh -c '\
echo "Installing diffusion dependencies..." && \
pip install -e "python[diffusion]" && \
echo "Starting SGLang-Diffusion..." && \
sglang generate \
--model-path black-forest-labs/FLUX.1-dev \
--prompt "A logo With Bold Large text: SGL Diffusion" \
--save-output \
'
플랫폼별: ROCm (AMD GPU)
AMD Instinct GPU(예: MI300X)의 경우 lmsysorg/sglang의 ROCm 지원 Docker 이미지를 사용해요. 아래 태그는 MI300X의 ROCm 7.0용 예시로, 최신 릴리스 태그보다 늦을 수 있어요:
docker run --device=/dev/kfd --device=/dev/dri --ipc=host \
-v ~/.cache/huggingface:/root/.cache/huggingface \
--env HF_TOKEN=<secret> \
lmsysorg/sglang:v0.5.5.post2-rocm700-mi30x \
sglang generate --model-path black-forest-labs/FLUX.1-dev --prompt "A logo With Bold Large text: SGL Diffusion" --save-output
자세한 ROCm 시스템 구성과 소스 설치는 AMD GPU를 참고해 주세요.
플랫폼별: MUSA (Moore Threads GPU)
MUSA 소프트웨어 스택을 사용하는 Moore Threads GPU(MTGPU)의 경우 먼저 플랫폼 가이드를 따라 주세요. 소스 트리에서 여전히 대체 플랫폼 pyproject 폴백이 필요하다면, 전환 전에 기본 파일을 백업해 두세요:
# Clone the repository
git clone https://github.com/sgl-project/sglang.git
cd sglang
# Install the Python packages
pip install --upgrade pip
mv python/pyproject.toml python/pyproject.toml.bak
cp python/pyproject_other.toml python/pyproject.toml
pip install -e "python[all_musa]"
플랫폼별: Intel XPU
Intel Data Center GPU Max 또는 Arc GPU의 경우 XPU 설치 가이드의 Docker 설치 방법을 따라 주세요. dockerfile에 확산 의존성이 이미 포함되어 있어요.
플랫폼별: Ascend NPU
Ascend NPU의 경우 NPU 설치 가이드를 따라 주세요.
빠른 테스트:
sglang generate --model-path black-forest-labs/FLUX.1-dev \
--prompt "A logo With Bold Large text: SGL Diffusion" \
--save-output
플랫폼별: Apple MPS
Apple MPS의 경우 아래 지침에 따라 소스에서 설치해요. 소스 트리에서 여전히 대체 플랫폼 pyproject 폴백이 필요하다면, 전환 전에 기본 파일을 백업해 두세요:
# Install ffmpeg
brew install ffmpeg
# Install uv
brew install uv
# Clone the repository
git clone https://github.com/sgl-project/sglang.git
cd sglang
# Create and activate a virtual environment
uv venv -p 3.12 sglang-diffusion
source sglang-diffusion/bin/activate
# Install the Python packages
uv pip install --upgrade pip
mv python/pyproject.toml python/pyproject.toml.bak
cp python/pyproject_other.toml python/pyproject.toml
uv pip install -e "python[all_mps]"
SGLang Diffusion은 PyTorch MPS를 사용해요. all_mps extra는 SRT MLX 백엔드 의존성도 설치하는데, SGLANG_USE_MLX는 SRT 서빙에만 적용돼요.