k22056537 commited on
Commit
765fbe6
·
1 Parent(s): 739eedb

fix: restore LFS for all binary files, add git-lfs to Docker build

Browse files

HF rejects any binary files not tracked by LFS. Re-added LFS patterns
for *.npz, *.pt, *.joblib, etc. Added git-lfs install to Dockerfile
with a fallback to pull real files if pointers are copied, plus
build-time checkpoint verification.

Files changed (2) hide show
  1. .gitattributes +1 -1
  2. Dockerfile +11 -3
.gitattributes CHANGED
@@ -3,6 +3,6 @@ models/L2CS-Net/models/L2CSNet_gaze360.pkl filter=lfs diff=lfs merge=lfs -text
3
  *.npz filter=lfs diff=lfs merge=lfs -text
4
  *.pt filter=lfs diff=lfs merge=lfs -text
5
  *.pth filter=lfs diff=lfs merge=lfs -text
6
- *.pkl filter=lfs diff=lfs merge=lfs -text
7
  *.joblib filter=lfs diff=lfs merge=lfs -text
8
  *.db filter=lfs diff=lfs merge=lfs -text
 
 
3
  *.npz filter=lfs diff=lfs merge=lfs -text
4
  *.pt filter=lfs diff=lfs merge=lfs -text
5
  *.pth filter=lfs diff=lfs merge=lfs -text
 
6
  *.joblib filter=lfs diff=lfs merge=lfs -text
7
  *.db filter=lfs diff=lfs merge=lfs -text
8
+ *.pkl filter=lfs diff=lfs merge=lfs -text
Dockerfile CHANGED
@@ -11,9 +11,11 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
11
  libglib2.0-0 libsm6 libxrender1 libxext6 libxcb1 libgl1 libgomp1 \
12
  ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev \
13
  libavdevice-dev libopus-dev libvpx-dev libsrtp2-dev \
14
- build-essential nodejs npm git \
15
  && rm -rf /var/lib/apt/lists/*
16
 
 
 
17
  RUN pip install --no-cache-dir torch torchvision --index-url https://download.pytorch.org/whl/cpu
18
 
19
  COPY requirements.txt ./
@@ -21,6 +23,12 @@ RUN pip install --no-cache-dir -r requirements.txt
21
 
22
  COPY . .
23
 
 
 
 
 
 
 
24
  RUN python -c "\
25
  import os, sys;\
26
  checks = [\
@@ -38,7 +46,7 @@ for path, min_bytes in checks:\
38
  else:\
39
  print(f'[OK] {path} ({os.path.getsize(path)} bytes)');\
40
  if not ok:\
41
- print('Checkpoint verification failed'); sys.exit(1);\
42
  print('All checkpoints verified')\
43
  "
44
 
@@ -52,4 +60,4 @@ RUN mkdir -p /app/data && chown -R user:user /app
52
  USER user
53
  EXPOSE 7860
54
 
55
- CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860", "--log-level", "info"]
 
11
  libglib2.0-0 libsm6 libxrender1 libxext6 libxcb1 libgl1 libgomp1 \
12
  ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev \
13
  libavdevice-dev libopus-dev libvpx-dev libsrtp2-dev \
14
+ build-essential nodejs npm git git-lfs \
15
  && rm -rf /var/lib/apt/lists/*
16
 
17
+ RUN git lfs install
18
+
19
  RUN pip install --no-cache-dir torch torchvision --index-url https://download.pytorch.org/whl/cpu
20
 
21
  COPY requirements.txt ./
 
23
 
24
  COPY . .
25
 
26
+ # If HF copies LFS pointers instead of real files, pull them
27
+ RUN if head -c 40 checkpoints/mlp_best.pt 2>/dev/null | grep -q 'git-lfs'; then \
28
+ echo "LFS pointers detected — pulling real files..." && \
29
+ git lfs pull 2>/dev/null || echo "git lfs pull skipped (no .git dir)"; \
30
+ fi
31
+
32
  RUN python -c "\
33
  import os, sys;\
34
  checks = [\
 
46
  else:\
47
  print(f'[OK] {path} ({os.path.getsize(path)} bytes)');\
48
  if not ok:\
49
+ print('Checkpoint verification failed — models will not load'); sys.exit(1);\
50
  print('All checkpoints verified')\
51
  "
52
 
 
60
  USER user
61
  EXPOSE 7860
62
 
63
+ CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860", "--log-level", "info"]