Julien Blanchon commited on
Commit
69a0f2c
·
1 Parent(s): b9831db

Complete wheel-based deployment: add pre-built fused-ssim wheel

Browse files

- Add pre-built fused_ssim wheel to avoid compilation in Docker
- Update pyproject.docker.toml to use both gsplat and fused_ssim wheels
- Download both wheels in Dockerfile for zero-compilation build
- Regenerate uv.docker.lock with both wheel dependencies
- This eliminates all CUDA compilation during Docker build (fixes exit code 137)

Files changed (3) hide show
  1. Dockerfile +4 -2
  2. pyproject.docker.toml +1 -1
  3. uv.docker.lock +5 -2
Dockerfile CHANGED
@@ -46,10 +46,12 @@ ENV HOME=/home/user \
46
  COPY --chown=user pyproject.docker.toml ./pyproject.toml
47
  COPY --chown=user uv.docker.lock ./uv.lock
48
 
49
- # Download optimized gsplat wheel (built with same PyTorch version)
50
  RUN mkdir -p wheels && \
51
  wget -O wheels/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl \
52
- "https://huggingface.co/blanchon/image-gs-models-utils/resolve/main/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl"
 
 
53
 
54
  # Install dependencies with exact versions from lock file
55
  RUN --mount=type=cache,target=/tmp/uv-cache,sharing=locked,uid=1000,gid=1000 \
 
46
  COPY --chown=user pyproject.docker.toml ./pyproject.toml
47
  COPY --chown=user uv.docker.lock ./uv.lock
48
 
49
+ # Download pre-built wheels (built with same PyTorch version)
50
  RUN mkdir -p wheels && \
51
  wget -O wheels/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl \
52
+ "https://huggingface.co/blanchon/image-gs-models-utils/resolve/main/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl" && \
53
+ wget -O wheels/fused_ssim-0.0.0-cp310-cp310-linux_x86_64.whl \
54
+ "https://huggingface.co/blanchon/image-gs-models-utils/resolve/main/fused_ssim-0.0.0-cp310-cp310-linux_x86_64.whl"
55
 
56
  # Install dependencies with exact versions from lock file
57
  RUN --mount=type=cache,target=/tmp/uv-cache,sharing=locked,uid=1000,gid=1000 \
pyproject.docker.toml CHANGED
@@ -23,7 +23,7 @@ dependencies = [
23
 
24
  # We use python 3.10 and cu124
25
  [tool.uv.sources]
26
- fused_ssim = { git = "https://github.com/rahul-goel/fused-ssim/" }
27
  gsplat = { path = "wheels/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl" }
28
  torch = [
29
  { index = "pytorch-cu124", marker = "sys_platform == 'linux'" },
 
23
 
24
  # We use python 3.10 and cu124
25
  [tool.uv.sources]
26
+ fused_ssim = { path = "wheels/fused_ssim-0.0.0-cp310-cp310-linux_x86_64.whl" }
27
  gsplat = { path = "wheels/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl" }
28
  torch = [
29
  { index = "pytorch-cu124", marker = "sys_platform == 'linux'" },
uv.docker.lock CHANGED
@@ -548,7 +548,10 @@ wheels = [
548
  [[package]]
549
  name = "fused-ssim"
550
  version = "0.0.0"
551
- source = { git = "https://github.com/rahul-goel/fused-ssim/#b4fd8324e81c48c9b2b9f62e1b9c6431fece6ab3" }
 
 
 
552
 
553
  [[package]]
554
  name = "gradio"
@@ -759,7 +762,7 @@ dev = [
759
 
760
  [package.metadata]
761
  requires-dist = [
762
- { name = "fused-ssim", git = "https://github.com/rahul-goel/fused-ssim/" },
763
  { name = "gradio", specifier = ">=4.0.0" },
764
  { name = "gsplat", path = "wheels/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl" },
765
  { name = "huggingface-hub", specifier = ">=0.24.0" },
 
548
  [[package]]
549
  name = "fused-ssim"
550
  version = "0.0.0"
551
+ source = { path = "wheels/fused_ssim-0.0.0-cp310-cp310-linux_x86_64.whl" }
552
+ wheels = [
553
+ { filename = "fused_ssim-0.0.0-cp310-cp310-linux_x86_64.whl", hash = "sha256:d8330ff7feeba7a3f9ca662dac41f16aa23ce5350c370407842857da21671b87" },
554
+ ]
555
 
556
  [[package]]
557
  name = "gradio"
 
762
 
763
  [package.metadata]
764
  requires-dist = [
765
+ { name = "fused-ssim", path = "wheels/fused_ssim-0.0.0-cp310-cp310-linux_x86_64.whl" },
766
  { name = "gradio", specifier = ">=4.0.0" },
767
  { name = "gsplat", path = "wheels/gsplat-0.1.0-cp310-cp310-linux_x86_64.whl" },
768
  { name = "huggingface-hub", specifier = ">=0.24.0" },