Files
voice.sori.studio/scripts/check_env.sh
zenn 7101fdcd65 Initial commit: Korean voice-cloning TTS prototype
FastAPI backend, web UI, CosyVoice3/F5-TTS setup scripts, and handoff docs for GPU PC continuation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-04 13:36:37 +09:00

78 lines
1.7 KiB
Bash
Executable File

#!/usr/bin/env bash
# NVIDIA GPU + CUDA 환경 점검
set -euo pipefail
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "$ROOT"
echo "=== TTS 환경 점검 ==="
echo "프로젝트: $ROOT"
echo
echo "--- OS / CPU ---"
uname -a
echo
echo "--- Python ---"
if command -v python3 &>/dev/null; then
python3 --version
which python3
else
echo "python3: 없음"
fi
echo
echo "--- NVIDIA GPU ---"
if command -v nvidia-smi &>/dev/null; then
nvidia-smi
echo
nvidia-smi --query-gpu=name,memory.total,driver_version --format=csv
else
echo "nvidia-smi: 사용 불가 (NVIDIA GPU 서버에서 실행하세요)"
fi
echo
echo "--- CUDA (nvcc) ---"
if command -v nvcc &>/dev/null; then
nvcc --version | head -4
else
echo "nvcc: 없음 (PyTorch CUDA 빌드로도 동작 가능)"
fi
echo
echo "--- PyTorch (API venv) ---"
API_VENV="$ROOT/.venvs/api"
if [[ -x "$API_VENV/bin/python" ]]; then
"$API_VENV/bin/python" -c "
import sys
try:
import torch
print('torch:', torch.__version__)
print('cuda available:', torch.cuda.is_available())
if torch.cuda.is_available():
print('device:', torch.cuda.get_device_name(0))
except ImportError:
print('torch: 미설치 (API만 사용 시 정상)')
" 2>/dev/null || true
else
echo "API venv 없음 → ./scripts/setup_api.sh 실행"
fi
echo
echo "--- 모델 venv ---"
for name in f5tts cosyvoice; do
V="$ROOT/.venvs/$name"
if [[ -x "$V/bin/python" ]]; then
echo "[$name] OK: $V"
else
echo "[$name] 없음 → setup_${name}.sh (f5tts는 setup_f5tts.sh)"
fi
done
echo
echo "--- 디렉터리 ---"
for d in samples outputs models config backend web; do
[[ -d "$ROOT/$d" ]] && echo " $d: OK" || echo " $d: MISSING"
done
echo "점검 완료."