Spaces:
Sleeping
Sleeping
Update main.py
Browse files
main.py
CHANGED
@@ -134,20 +134,28 @@ else:
|
|
134 |
# )
|
135 |
from huggingface_hub import snapshot_download
|
136 |
|
137 |
-
HF_TOKEN
|
|
|
|
|
|
|
|
|
|
|
138 |
|
139 |
logger.info("Loading Derm Foundation (first time may take a while)...")
|
140 |
try:
|
141 |
-
if
|
142 |
-
derm_dir =
|
143 |
-
logger.info(f"Loaded Derm Foundation from local: {
|
144 |
else:
|
145 |
logger.info(f"Downloading derm-foundation from hub: {DERM_MODEL_ID}")
|
146 |
derm_dir = snapshot_download(
|
147 |
repo_id=DERM_MODEL_ID,
|
148 |
repo_type="model",
|
149 |
allow_patterns=["saved_model.pb", "variables/*"],
|
150 |
-
token=HF_TOKEN,
|
|
|
|
|
|
|
151 |
)
|
152 |
logger.info(f"Derm Foundation downloaded to: {derm_dir}")
|
153 |
|
@@ -159,6 +167,7 @@ except Exception as e:
|
|
159 |
"Make sure you accepted the model terms and set HF_TOKEN in Space Settings."
|
160 |
)
|
161 |
|
|
|
162 |
# ---------------------- Utils ----------------------
|
163 |
def pil_to_png_bytes_448(pil_img: Image.Image) -> bytes:
|
164 |
pil_img = pil_img.convert("RGB").resize(DF_SIZE)
|
|
|
134 |
# )
|
135 |
from huggingface_hub import snapshot_download
|
136 |
|
137 |
+
HF_TOKEN = os.getenv("HF_TOKEN") or os.getenv("HUGGINGFACE_HUB_TOKEN")
|
138 |
+
CACHE_DIR = os.getenv("HF_HOME", "/app/.cache")
|
139 |
+
LOCAL_DERM = os.getenv("DERM_LOCAL_DIR", "/app/derm-foundation") # จะดาวน์โหลดมาไว้ที่นี่
|
140 |
+
|
141 |
+
os.makedirs(CACHE_DIR, exist_ok=True)
|
142 |
+
os.makedirs(LOCAL_DERM, exist_ok=True)
|
143 |
|
144 |
logger.info("Loading Derm Foundation (first time may take a while)...")
|
145 |
try:
|
146 |
+
if os.path.isdir(LOCAL_DERM) and os.path.exists(os.path.join(LOCAL_DERM, "saved_model.pb")):
|
147 |
+
derm_dir = LOCAL_DERM
|
148 |
+
logger.info(f"Loaded Derm Foundation from local: {derm_dir}")
|
149 |
else:
|
150 |
logger.info(f"Downloading derm-foundation from hub: {DERM_MODEL_ID}")
|
151 |
derm_dir = snapshot_download(
|
152 |
repo_id=DERM_MODEL_ID,
|
153 |
repo_type="model",
|
154 |
allow_patterns=["saved_model.pb", "variables/*"],
|
155 |
+
token=HF_TOKEN, # <-- ต้องมี
|
156 |
+
cache_dir=CACHE_DIR, # <-- ไม่เขียนไป /.cache
|
157 |
+
local_dir=LOCAL_DERM, # <-- เก็บเป็นโฟลเดอร์จริง
|
158 |
+
local_dir_use_symlinks=False, # <-- กันปัญหา symlink/สิทธิ์
|
159 |
)
|
160 |
logger.info(f"Derm Foundation downloaded to: {derm_dir}")
|
161 |
|
|
|
167 |
"Make sure you accepted the model terms and set HF_TOKEN in Space Settings."
|
168 |
)
|
169 |
|
170 |
+
|
171 |
# ---------------------- Utils ----------------------
|
172 |
def pil_to_png_bytes_448(pil_img: Image.Image) -> bytes:
|
173 |
pil_img = pil_img.convert("RGB").resize(DF_SIZE)
|