Spaces:
Sleeping
A newer version of the Gradio SDK is available:
6.1.0
์ค์น ๊ฐ์ด๋
PyTorch ๋ฒ์ ์ ์ฝ ๋ฌธ์
๋ฌธ์ : HF Spaces์ ZeroGPU๋ PyTorch 2.0.0-2.2.0๋ง ์ง์ํ์ง๋ง, ๋ก์ปฌ ํ๊ฒฝ์์๋ ์ต์ ๋ฒ์ ์ ์ฌ์ฉํ๊ณ ์ถ์ต๋๋ค.
ํด๊ฒฐ์ฑ : ํ๊ฒฝ๋ณ๋ก ๋ค๋ฅธ requirements ํ์ผ ์ฌ์ฉ
๋ฐฉ๋ฒ ๋น๊ต
| ๋ฐฉ๋ฒ | ์ฅ์ | ๋จ์ | ์ถ์ฒ |
|---|---|---|---|
| requirements-local.txt | ๊ฐ๋จ, ๋ช ํ | ์๋ ์ ํ ํ์ | โญโญโญ |
| setup.py | ์๋ ๊ฐ์ง | ๋ณต์ก๋ ์ฆ๊ฐ | โญโญ |
| requirements.txt | HF Spaces ํธํ | ๊ตฌ๋ฒ์ ๊ฐ์ | โญ |
๋ฐฉ๋ฒ 1: requirements-local.txt (๊ถ์ฅ)
HF Spaces ๋ฐฐํฌ
# requirements.txt ์ฌ์ฉ (์๋)
# PyTorch 2.2.0 (ZeroGPU ํธํ)
๋ก์ปฌ ๊ฐ๋ฐ
# ๊ฐ์ํ๊ฒฝ ์์ฑ
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# ๋ก์ปฌ์ฉ requirements ์ค์น
pip install -r requirements-local.txt
# PyTorch >=2.2.0 (์ต์ ๋ฒ์ )
ํ์ผ ๊ตฌ์กฐ
requirements.txt # HF Spaces์ฉ (PyTorch 2.2.0)
requirements-local.txt # ๋ก์ปฌ์ฉ (PyTorch >=2.2.0)
๋ฐฉ๋ฒ 2: setup.py (์๋ ๊ฐ์ง) โญ ์๋ก์ด CUDA ์ง์!
์ค์น
# ๊ฐ์ํ๊ฒฝ ์์ฑ ๋ฐ ํ์ฑํ
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# ์ค๋งํธ ์ค์น ์คํ
python setup.py
๋์ ๋ฐฉ์ (NEW! CUDA ์๋ ๊ฐ์ง)
- ํ๊ฒฝ ๊ฐ์ง:
SPACE_IDํ๊ฒฝ ๋ณ์ ํ์ธ - HF Spaces: PyTorch 2.2.0 ์ค์น (ZeroGPU ํธํ)
- ๋ก์ปฌ ํ๊ฒฝ:
- ๐ NVIDIA GPU ๊ฐ์ง:
nvidia-smi์คํ - ๐ CUDA ๋ฒ์ ๊ฐ์ง:
nvcc --version๋๋ nvidia-smi์์ ์ถ์ถ - โ
CUDA๋ณ PyTorch ์ค์น:
- CUDA 11.8 โ PyTorch cu118
- CUDA 12.1-12.3 โ PyTorch cu121
- CUDA 12.4-12.8 โ PyTorch cu124
- ๐ Apple Silicon: MPS ์ง์
- ๐ป GPU ์์: CPU ์ ์ฉ PyTorch
- ๐ NVIDIA GPU ๊ฐ์ง:
์ง์ํ๋ CUDA ๋ฒ์
| CUDA ๋ฒ์ | PyTorch ๋ณํ | Index URL |
|---|---|---|
| 11.8 | cu118 | https://download.pytorch.org/whl/cu118 |
| 12.1-12.3 | cu121 | https://download.pytorch.org/whl/cu121 |
| 12.4-12.8 | cu124 | https://download.pytorch.org/whl/cu124 |
์ฅ์
- โ ์์ ์๋ CUDA ๊ฐ์ง (NEW!)
- โ ํ ๋ช ๋ น์ผ๋ก ์ค์น
- โ ํ๋ซํผ๋ณ ์ต์ ํ
- โ ์ค์น ํ ์๋ ๊ฒ์ฆ
- โ ์คํจ ์ CPU๋ก ํด๋ฐฑ
PyTorch ๋ฒ์ ๋ณ ๊ธฐ๋ฅ
PyTorch 2.2.0 (HF Spaces ZeroGPU)
- โ ZeroGPU ํธํ
- โ ๊ธฐ๋ณธ LLM ๊ธฐ๋ฅ
- โ ์์ ์ฑ ๊ฒ์ฆ๋จ
PyTorch >=2.2.0 (๋ก์ปฌ)
- โ ์ต์ ๊ธฐ๋ฅ
- โ ์ฑ๋ฅ ๊ฐ์
- โ ์ต์ GPU ์ง์
- โ MPS ์ต์ ํ (Apple Silicon)
ํ๋ซํผ๋ณ ๊ถ์ฅ ์ค์น
Mac (Apple Silicon)
# M1/M2/M3/M4
pip install -r requirements-local.txt
# MPS ๊ฐ์ ์ง์
Linux (NVIDIA GPU)
pip install -r requirements-local.txt
# CUDA 12.x ์ง์
Windows (NVIDIA GPU)
pip install -r requirements-local.txt
# CUDA 12.x ์ง์
HF Spaces (์๋)
# requirements.txt ์๋ ์ฌ์ฉ
# ์๋ ์ค์น ๋ถํ์
๊ฒ์ฆ
์ค์น ํ์ธ
import torch
print(f"PyTorch: {torch.__version__}")
print(f"CUDA: {torch.cuda.is_available()}")
print(f"MPS: {torch.backends.mps.is_available()}")
์์ ์ถ๋ ฅ
๋ก์ปฌ (์ต์ ):
PyTorch: 2.5.1
CUDA: True / False
MPS: True / False
HF Spaces (ZeroGPU):
PyTorch: 2.2.0
CUDA: True
MPS: False
FAQ
Q: ๋ก์ปฌ์์ PyTorch 2.2.0์ ์ฌ์ฉํด์ผ ํ๋์?
A: ์๋์. ๋ก์ปฌ์์๋ requirements-local.txt๋ก ์ต์ ๋ฒ์ ์ ์ฌ์ฉํ์ธ์.
Q: requirements.txt์ requirements-local.txt ์ฐจ์ด๋?
A:
requirements.txt: HF Spaces์ฉ (PyTorch 2.2.0)requirements-local.txt: ๋ก์ปฌ์ฉ (PyTorch >=2.2.0)
Q: setup.py๋ฅผ ์ฌ์ฉํด์ผ ํ๋์?
A: ์ ํ ์ฌํญ์ ๋๋ค. ์๋ ๊ฐ์ง๋ฅผ ์ํ๋ฉด ์ฌ์ฉํ์ธ์.
Q: ๋ ํ์ผ์ ๋๊ธฐํํด์ผ ํ๋์?
A: PyTorch ๋ฒ์ ๋ง ๋ค๋ฅด๊ณ ๋๋จธ์ง๋ ๋์ผํ๊ฒ ์ ์งํ์ธ์.
๋ฌธ์ ํด๊ฒฐ
๐ฅ GPU๊ฐ ๊ฐ์ง๋์ง ์์ (torch.cuda.is_available() = False)
์ฆ์ 1: Driver/library version mismatch
nvidia-smi
# ์ถ๋ ฅ: Failed to initialize NVML: Driver/library version mismatch
์์ธ: NVIDIA ๋๋ผ์ด๋ฒ ์ ๋ฐ์ดํธ ํ ์ฌ๋ถํ ํ์ง ์์
ํด๊ฒฐ์ฑ :
# ์์คํ
์ฌ๋ถํ
(๊ฐ์ฅ ๊ฐ๋จํ๊ณ ํจ๊ณผ์ )
sudo reboot
์ฌ๋ถํ ํ ๋ค์ ํ์ธ:
nvidia-smi
python setup.py # PyTorch ์ฌ์ค์น
์ฆ์ 2: PyTorch๊ฐ CPU ๋ฒ์ ์ผ๋ก ์ค์น๋จ
import torch
print(torch.__version__) # ์ถ๋ ฅ: 2.9.0+cpu (CUDA ์์)
์์ธ: pip install torch๊ฐ ๊ธฐ๋ณธ CPU ๋ฒ์ ์ ์ค์นํจ
ํด๊ฒฐ์ฑ :
# ํ์ฌ PyTorch ์ ๊ฑฐ
pip uninstall torch torchvision torchaudio -y
# setup.py๋ก ์ฌ์ค์น (์๋ CUDA ๊ฐ์ง)
python setup.py
์ฆ์ 3: CUDA ๋ฒ์ ๋ถ์ผ์น
# ์์คํ
CUDA: 12.8
# PyTorch CUDA: 12.4
# ์ค๋ฅ: forward compatibility was attempted on non supported HW
์์ธ: PyTorch CUDA ๋ฒ์ ๊ณผ ๋๋ผ์ด๋ฒ CUDA ๋ฒ์ ๋ถ์ผ์น
ํด๊ฒฐ์ฑ :
# 1. ๋๋ผ์ด๋ฒ ์ฌ๋ถํ
(์ฐ์ ์๋)
sudo reboot
# 2. ๋๋ผ์ด๋ฒ ์ฌ์ค์น (์ฌ๋ถํ
์ผ๋ก ์ ๋๋ฉด)
sudo ubuntu-drivers autoinstall
sudo reboot
# 3. PyTorch ์ฌ์ค์น
python setup.py
์ฆ์ 4: nvidia-smi๋ ์๋ํ์ง๋ง PyTorch์์ GPU ์ธ์ ์ ๋จ
nvidia-smi # โ
์๋
python -c "import torch; print(torch.cuda.is_available())" # โ False
ํด๊ฒฐ์ฑ :
# PyTorch๋ฅผ CUDA ๋ฒ์ ์ผ๋ก ๊ฐ์ ์ฌ์ค์น
pip uninstall torch torchvision torchaudio -y
# CUDA ๋ฒ์ ํ์ธ
nvidia-smi | grep "CUDA Version" # ์: CUDA Version: 12.1
# ํด๋น CUDA ๋ฒ์ ์ PyTorch ์ค์น
# CUDA 12.1-12.3
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
# CUDA 12.4+
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
# ๊ฒ์ฆ
python -c "import torch; print(f'CUDA available: {torch.cuda.is_available()}')"
ImportError: spaces
๋ก์ปฌ ํ๊ฒฝ:
์ ์ ๋์ - app.py๊ฐ ์๋์ผ๋ก ๊ฐ์งํ๊ณ CPU/GPU ๋ชจ๋๋ก ์ ํ
PyTorch ๋ฒ์ ์ถฉ๋
pip uninstall torch torchvision torchaudio -y
python setup.py # ์๋ CUDA ๊ฐ์ง ๋ฐ ์ค์น
์ค์น ๊ฒ์ฆ
# ์์ ํ ํ๊ฒฝ ๊ฒ์ฆ
import torch
print(f"PyTorch: {torch.__version__}")
print(f"CUDA available: {torch.cuda.is_available()}")
print(f"CUDA compiled: {torch.version.cuda}")
if torch.cuda.is_available():
print(f"GPU name: {torch.cuda.get_device_name(0)}")
print(f"GPU count: {torch.cuda.device_count()}")
์์ ์ถ๋ ฅ (GPU ํ๊ฒฝ):
PyTorch: 2.5.1+cu124
CUDA available: True
CUDA compiled: 12.4
GPU name: NVIDIA GeForce RTX 4090
GPU count: 1