simple-chat / INSTALL.md
alex4cip's picture
feat: Add RTX 5080 support and remove requirements-local.txt
2c96300

A newer version of the Gradio SDK is available: 6.1.0

Upgrade

์„ค์น˜ ๊ฐ€์ด๋“œ

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 ์ž๋™ ๊ฐ์ง€)

  1. ํ™˜๊ฒฝ ๊ฐ์ง€: SPACE_ID ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ํ™•์ธ
  2. HF Spaces: PyTorch 2.2.0 ์„ค์น˜ (ZeroGPU ํ˜ธํ™˜)
  3. ๋กœ์ปฌ ํ™˜๊ฒฝ:
    • ๐Ÿ” 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

์ง€์›ํ•˜๋Š” 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