tddf commited on
Commit
7de5a1a
·
verified ·
1 Parent(s): 954680a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -4
app.py CHANGED
@@ -5,11 +5,19 @@ import torch
5
  from PIL import Image
6
  from transformers import AutoProcessor, AutoModelForSeq2SeqLM
7
 
8
- # --- Настройка кэша для модели (чтобы не скачивать при каждом запуске) ---
9
- # Hugging Face Spaces даёт нам постоянную папку /data, если включить Persistent Storage.
10
- # Если /data существует, используем её, иначе временную папку /tmp.
11
- CACHE_DIR = "/tmp/.huggingface" if os.path.exists("/data")
 
 
 
 
 
12
  os.makedirs(CACHE_DIR, exist_ok=True)
 
 
 
13
 
14
  # --- Функция загрузки модели с кэшированием через Streamlit ---
15
  @st.cache_resource # Эта декорация сохраняет модель в памяти между запусками
 
5
  from PIL import Image
6
  from transformers import AutoProcessor, AutoModelForSeq2SeqLM
7
 
8
+ import os
9
+ import tempfile
10
+
11
+ # Определяем папку для кэша: /data если есть (persistent), иначе /tmp
12
+ if os.path.exists("/data") and os.access("/data", os.W_OK):
13
+ CACHE_DIR = "/data/.huggingface"
14
+ else:
15
+ CACHE_DIR = os.path.join(tempfile.gettempdir(), ".huggingface")
16
+
17
  os.makedirs(CACHE_DIR, exist_ok=True)
18
+ os.environ["HF_HOME"] = CACHE_DIR
19
+ os.environ["HF_HUB_CACHE"] = os.path.join(CACHE_DIR, "hub")
20
+ os.environ["TRANSFORMERS_CACHE"] = os.path.join(CACHE_DIR, "transformers")
21
 
22
  # --- Функция загрузки модели с кэшированием через Streamlit ---
23
  @st.cache_resource # Эта декорация сохраняет модель в памяти между запусками