we2app commited on
Commit
6d9400f
·
verified ·
1 Parent(s): 92dbab1

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +43 -39
Dockerfile CHANGED
@@ -1,39 +1,43 @@
1
- FROM ghcr.io/ggml-org/llama.cpp:full
2
-
3
- WORKDIR /app
4
-
5
- RUN apt update && apt install -y python3 python3-pip python3-venv wget && rm -rf /var/lib/apt/lists/*
6
-
7
- RUN python3 -m venv /opt/venv
8
- ENV PATH="/opt/venv/bin:$PATH"
9
- RUN pip install -U pip huggingface_hub
10
-
11
- # Define the build argument for the token
12
- ARG HF_TOKEN
13
-
14
- # Download Gemma 4 26B using the token to prevent the warning and rate-limiting
15
- RUN python3 -c 'from huggingface_hub import hf_hub_download; \
16
- import os; \
17
- token = os.getenv("HF_TOKEN") or None; \
18
- repo="unsloth/gemma-4-26B-A4B-it-GGUF"; \
19
- hf_hub_download(repo_id=repo, filename="gemma-4-26B-A4B-it-UD-Q4_K_XL.gguf", local_dir="/app", token=token); \
20
- hf_hub_download(repo_id=repo, filename="mmproj-BF16.gguf", local_dir="/app", token=token)'
21
-
22
- # Download Gemma 4 E2B + Speculative Setup
23
- RUN wget "https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF/resolve/main/gemma-4-E2B-it-qat-UD-Q4_K_XL.gguf" -O /app/gemma-4-E2B-it-qat-UD-Q4_K_XL.gguf && \
24
- wget "https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF/resolve/main/mtp-gemma-4-E2B-it.gguf" -O /app/mtp-gemma-4-E2B-it.gguf && \
25
- wget "https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF/resolve/main/mmproj-F16.gguf" -O /app/gemma-4-E2B-it-mmproj.gguf
26
-
27
- # Download Gemma 3 1B Model
28
- RUN wget "https://huggingface.co/MaziyarPanahi/gemma-3-1b-it-GGUF/resolve/main/gemma-3-1b-it.Q3_K_M.gguf" -O /app/gemma-3-1b-it.Q3_K_M.gguf
29
-
30
- CMD ["--server", \
31
- "-m", "/app/gemma-4-26B-A4B-it-UD-Q4_K_XL.gguf", \
32
- "--mmproj", "/app/mmproj-BF16.gguf", \
33
- "--host", "0.0.0.0", \
34
- "--port", "7860", \
35
- "-t", "2", \
36
- "--cache-type-k", "q8_0", \
37
- "--cache-type-v", "iq4_nl", \
38
- "-c", "64000", \
39
- "-n", "38912"]
 
 
 
 
 
1
+ FROM ghcr.io/ggml-org/llama.cpp:server
2
+
3
+ RUN apt update && apt install wget -y && rm -rf /var/lib/apt/lists/*
4
+
5
+ # Create a dedicated directory to organize the models
6
+ RUN mkdir -p /models
7
+
8
+ # --- MODEL 1: Gemma 4 Multimodal + Speculative Setup ---
9
+ RUN wget "https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF/resolve/main/gemma-4-E2B-it-qat-UD-Q4_K_XL.gguf" -O /models/gemma-4-E2B-it-qat-UD-Q4_K_XL.gguf
10
+ RUN wget "https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF/resolve/main/mtp-gemma-4-E2B-it.gguf" -O /models/mtp-gemma-4-E2B-it.gguf
11
+ RUN wget "https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF/resolve/main/mmproj-F16.gguf" -O /models/gemma-4-E2B-it-mmproj.gguf
12
+
13
+ # --- MODEL 2: Gemma 3 1B Model (Corrected Direct Download Link) ---
14
+ RUN wget "https://huggingface.co/MaziyarPanahi/gemma-3-1b-it-GGUF/resolve/main/gemma-3-1b-it.Q3_K_M.gguf" -O /models/gemma-3-1b-it.Q3_K_M.gguf
15
+
16
+
17
+ # --- CREATE ROUTER CONFIGURATION ---
18
+ # Appending configuration step-by-step to avoid any multiline shell escaping issues
19
+ RUN echo "[gemma-4-vision]" > /models.ini && \
20
+ echo "model = /models/gemma-4-E2B-it-qat-UD-Q4_K_XL.gguf" >> /models.ini && \
21
+ echo "spec-draft-model = /models/mtp-gemma-4-E2B-it.gguf" >> /models.ini && \
22
+ echo "mmproj = /models/gemma-4-E2B-it-mmproj.gguf" >> /models.ini && \
23
+ echo "ctx-size = 4096" >> /models.ini && \
24
+ echo "flash-attn = on" >> /models.ini && \
25
+ echo "ubatch-size = 128" >> /models.ini && \
26
+ echo "batch-size = 512" >> /models.ini && \
27
+ echo "spec-type = draft-mtp" >> /models.ini && \
28
+ echo "spec-draft-n-max = 3" >> /models.ini && \
29
+ echo "" >> /models.ini && \
30
+ echo "[gemma-3-1b]" >> /models.ini && \
31
+ echo "model = /models/gemma-3-1b-it.Q3_K_M.gguf" >> /models.ini && \
32
+ echo "ctx-size = 4096" >> /models.ini && \
33
+ echo "flash-attn = on" >> /models.ini
34
+
35
+
36
+ # --- START SERVER IN ROUTER MODE ---
37
+ CMD [ \
38
+ "--models-preset", "/models.ini", \
39
+ "--port", "7860", \
40
+ "--host", "0.0.0.0", \
41
+ "-t", "2", \
42
+ "-tb", "2" \
43
+ ]