inpaintServer/.env

95 lines
3.0 KiB
Bash

# 인페인팅 서버 환경 설정 예시
# 실제 사용 시 .env 파일로 복사하여 사용하세요
# ===== 하드웨어/플랫폼 자동 감지 =====
# 아래 값은 자동 감지로 채워지며, 수동 강제하려면 true/false 지정
IS_JETSON=auto # auto | true | false
IS_X86=auto # auto | true | false
GPU_DEVICE=0 # 사용할 GPU 인덱스
# ===== 프레임워크 정책 (충돌 방지 핵심) =====
# TORCH_GPU_ONLY: Torch만 GPU 사용, TF/ONNX는 CPU
# ORT_GPU: ONNXRuntime GPU 사용(필요 시, TF는 CPU)
# TF_GPU_ONLY: TensorFlow만 GPU (권장하지 않음: 토치와 섞이면 충돌↑)
FRAMEWORK_POLICY=TORCH_GPU_ONLY # TORCH_GPU_ONLY | ORT_GPU | TF_GPU_ONLY
# 개별 토글(정책과 충돌 나면 부트에서 자동 보정)
TF_ENABLED=false
ORT_ENABLED=true
FP16_ENABLED=true
# 서버 설정
HOST=0.0.0.0
PORT=8008
WORKERS=1 # GPU 서버는 프로세스 1개 권장, 내부 비동기로 동시처리
# GPU 설정
CUDA_DEVICE=0
FP16_ENABLED=true
# Jetson 전용 설정
JETSON_MODE=false # 자동 감지됨
JETSON_POWER_MODE=MAXN # MAXN, 5W, 10W, 15W
JETSON_FAN_CONTROL=true
JETSON_TEMP_THRESHOLD=75 # Celsius
JETSON_GPU_FREQ=1200 # MHz
JETSON_CPU_FREQ=1900 # MHz
JETSON_MEMORY_FREQ=1600 # MHz
# 세션 풀 설정 (시스템별 자동 조정)
SIMPLE_LAMA_SESSIONS=3
MIGAN_SESSIONS=3
REMBG_SESSIONS=1
# 워커 설정 (Jetson은 더 적은 워커 사용)
MAX_WORKERS=12 # Jetson: 4, x86: 8
MIN_WORKERS=6 # Jetson: 1, x86: 2
WORKER_TIMEOUT=300
# VRAM 관리 (Jetson은 더 보수적인 설정)
VRAM_THRESHOLD_HIGH=0.8 # Jetson: 70%, x86: 80%
VRAM_THRESHOLD_LOW=0.3 # Jetson: 30%, x86: 40%
VRAM_CHECK_INTERVAL=30 # Jetson: 20초, x86: 30초
# 모델 경로
SIMPLE_LAMA_MODEL_PATH=app/models/onnx/lama_fp32.onnx
MIGAN_MODEL_PATH=app/models/onnx/migan_pipeline_v2.onnx
REMBG_MODEL_PATH=app/models/onnx/BriaRMBG1.4_model_fp16.onnx
# 모델별 세션
SIMPLE_LAMA_MIN_SESSIONS=1
SIMPLE_LAMA_MAX_SESSIONS=2
MIGAN_MIN_SESSIONS=1
MIGAN_MAX_SESSIONS=2
REMBG_MIN_SESSIONS=1
REMBG_MAX_SESSIONS=2
# 업로드 설정 (Jetson은 더 작은 파일 크기)
MAX_FILE_SIZE=26214400 # Jetson: 25MB, x86: 50MB
ALLOWED_EXTENSIONS=.jpg,.jpeg,.png,.bmp,.tiff,.webp
# ALLOWED_EXTENSIONS=[".jpg",".jpeg",".png",".bmp",".tiff",".webp"]
# 모니터링
ENABLE_MONITORING=true
MONITORING_PORT=8080
# Jetson 최적화 설정
JETSON_OPTIMIZE_ON_STARTUP=true
JETSON_AUTO_FAN_CONTROL=true
JETSON_POWER_SAVING=false
# ===== TensorRT/ONNX EP =====
TENSORRT_ENABLED=false # 실제 TensorRT 엔진/EP를 쓸 때만 true
ORT_PROVIDERS=CUDAExecutionProvider,CPUExecutionProvider
# Jetson에서 onnxruntime-gpu 특수 빌드 사용 시: TensorrtExecutionProvider,CUDAExecutionProvider,CPUExecutionProvider
# ===== 로깅 =====
LOG_LEVEL=INFO
LOG_DIR=logs
# ===== GEMMA 설정 =====
GEMMA_N_GPU_LAYERS=20
GEMMA_N_THREADS=8
GEMMA_N_BATCH=512
# GEMMA_GGUF_PATH=app/models/gemma/gemma-3n-E2B-it-Q4_K_M.gguf
GEMMA_GGUF_PATH=app/models/gemma/gemma-3-4b-it-q4_k_m.gguf