WildOjisan commited on
Commit
e65aa9f
·
1 Parent(s): 75e738e
Files changed (2) hide show
  1. Dockerfile +15 -11
  2. main.py +7 -5
Dockerfile CHANGED
@@ -1,21 +1,25 @@
 
1
  FROM python:3.11-slim
2
 
3
- ENV PYTHONUNBUFFERED=1 \
4
- PIP_NO_CACHE_DIR=1 \
5
- HF_HOME=/root/.cache/huggingface
6
-
7
  RUN apt-get update && apt-get install -y --no-install-recommends \
8
- git curl && \
9
  rm -rf /var/lib/apt/lists/*
10
 
11
- WORKDIR /app
 
 
 
 
 
 
 
12
 
13
- # 요구 패키지 설치
14
- COPY requirements.txt /app/requirements.txt
15
- RUN pip install --upgrade pip && \
16
- pip install -r requirements.txt
17
 
18
- # 앱 소스 복사(루트의 파일들 통째로)
 
 
19
  COPY . /app
20
 
21
  EXPOSE 7860
 
1
+ # Dockerfile
2
  FROM python:3.11-slim
3
 
 
 
 
 
4
  RUN apt-get update && apt-get install -y --no-install-recommends \
5
+ libglib2.0-0 libgl1 && \
6
  rm -rf /var/lib/apt/lists/*
7
 
8
+ # ✅ 캐시/토큰 경로를 /data로 강제
9
+ ENV HF_HOME=/data \
10
+ TRANSFORMERS_CACHE=/data/transformers \
11
+ HF_HUB_CACHE=/data/hub \
12
+ HF_HUB_DISABLE_TELEMETRY=1 \
13
+ TOKENIZERS_PARALLELISM=false \
14
+ PYTHONUNBUFFERED=1 \
15
+ PYTHONDONTWRITEBYTECODE=1
16
 
17
+ # ✅ 디렉터리 생성 + 퍼미션(쓰기 가능)
18
+ RUN mkdir -p /data/transformers /data/hub && chmod -R 777 /data
 
 
19
 
20
+ WORKDIR /app
21
+ COPY requirements.txt /app/requirements.txt
22
+ RUN pip install --no-cache-dir -r /app/requirements.txt
23
  COPY . /app
24
 
25
  EXPOSE 7860
main.py CHANGED
@@ -1,4 +1,11 @@
1
  import os
 
 
 
 
 
 
 
2
  import threading
3
  from typing import List, Optional, Dict, Any, Iterator
4
 
@@ -12,11 +19,6 @@ from transformers import (
12
  TextIteratorStreamer,
13
  )
14
 
15
- # ---- CPU 안전 설정 (run_qwen25_cpu.py에서 계승) ----
16
- os.environ.setdefault("PYTORCH_FORCE_MPS_FALLBACK", "1")
17
- os.environ.setdefault("TOKENIZERS_PARALLELISM", "false")
18
- os.environ["HF_HOME"] = "/data"
19
-
20
  MODEL_ID = "unsloth/Qwen2.5-1.5B-Instruct" # :contentReference[oaicite:3]{index=3}
21
 
22
  try:
 
1
  import os
2
+ # ✅ Hugging Face 캐시/토큰 경로를 쓰기 가능한 위치로 지정 (Spaces에서는 /data가 안전)
3
+ os.environ["HF_HOME"] = "/data"
4
+ os.environ["TRANSFORMERS_CACHE"] = "/data/transformers"
5
+ os.environ["HF_HUB_CACHE"] = "/data/hub"
6
+ os.environ.setdefault("TOKENIZERS_PARALLELISM", "false")
7
+ os.environ.setdefault("PYTORCH_FORCE_MPS_FALLBACK", "1")
8
+
9
  import threading
10
  from typing import List, Optional, Dict, Any, Iterator
11
 
 
19
  TextIteratorStreamer,
20
  )
21
 
 
 
 
 
 
22
  MODEL_ID = "unsloth/Qwen2.5-1.5B-Instruct" # :contentReference[oaicite:3]{index=3}
23
 
24
  try: