Skip to content

Commit cd81994

Browse files
author
Jim Wu
committed
Merge remote-tracking branch 'upstream/master' into jimwu.sync-upstream
# Conflicts: # README.md
2 parents c58855a + beac530 commit cd81994

599 files changed

Lines changed: 60144 additions & 30457 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.devops/cann.Dockerfile

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,20 @@ ARG APP_REVISION=N/A
1313
# BUILD STAGE
1414
# Compile all binary files and libraries
1515
# ==============================================================================
16+
ARG NODE_VERSION=24
17+
18+
FROM docker.io/node:$NODE_VERSION AS web
19+
20+
ARG APP_VERSION
21+
22+
WORKDIR /app/tools/ui
23+
24+
COPY tools/ui/package.json tools/ui/package-lock.json ./
25+
RUN npm ci
26+
27+
COPY tools/ui/ ./
28+
RUN LLAMA_BUILD_NUMBER="$APP_VERSION" npm run build
29+
1630
FROM ${CANN_BASE_IMAGE} AS build
1731

1832
# -- Install build dependencies --
@@ -26,6 +40,8 @@ WORKDIR /app
2640
# -- Copy project files --
2741
COPY . .
2842

43+
COPY --from=web /app/tools/ui/dist tools/ui/dist
44+
2945
# -- Set CANN environment variables (required for compilation) --
3046
# Using ENV instead of `source` allows environment variables to persist across the entire image layer
3147
ENV ASCEND_TOOLKIT_HOME=/usr/local/Ascend/ascend-toolkit/latest

.devops/cpu.Dockerfile

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,21 @@ ARG BUILD_DATE=N/A
33
ARG APP_VERSION=N/A
44
ARG APP_REVISION=N/A
55

6-
FROM ubuntu:$UBUNTU_VERSION AS build
6+
ARG NODE_VERSION=24
7+
8+
FROM docker.io/node:$NODE_VERSION AS web
9+
10+
ARG APP_VERSION
11+
12+
WORKDIR /app/tools/ui
13+
14+
COPY tools/ui/package.json tools/ui/package-lock.json ./
15+
RUN npm ci
16+
17+
COPY tools/ui/ ./
18+
RUN LLAMA_BUILD_NUMBER="$APP_VERSION" npm run build
19+
20+
FROM docker.io/ubuntu:$UBUNTU_VERSION AS build
721

822
ARG TARGETARCH
923

@@ -16,6 +30,8 @@ WORKDIR /app
1630

1731
COPY . .
1832

33+
COPY --from=web /app/tools/ui/dist tools/ui/dist
34+
1935
RUN if [ "$TARGETARCH" = "amd64" ] || [ "$TARGETARCH" = "arm64" ]; then \
2036
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DGGML_NATIVE=OFF -DLLAMA_BUILD_TESTS=OFF -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON; \
2137
else \
@@ -37,7 +53,7 @@ RUN mkdir -p /app/full \
3753
&& cp .devops/tools.sh /app/full/tools.sh
3854

3955
## Base image
40-
FROM ubuntu:$UBUNTU_VERSION AS base
56+
FROM docker.io/ubuntu:$UBUNTU_VERSION AS base
4157

4258
ARG BUILD_DATE=N/A
4359
ARG APP_VERSION=N/A

.devops/cuda.Dockerfile

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,47 @@
11
ARG UBUNTU_VERSION=24.04
22
# This needs to generally match the container host's environment.
33
ARG CUDA_VERSION=12.8.1
4+
ARG GCC_VERSION=14
45
# Target the CUDA build image
5-
ARG BASE_CUDA_DEV_CONTAINER=nvidia/cuda:${CUDA_VERSION}-devel-ubuntu${UBUNTU_VERSION}
6+
ARG BASE_CUDA_DEV_CONTAINER=docker.io/nvidia/cuda:${CUDA_VERSION}-devel-ubuntu${UBUNTU_VERSION}
67

7-
ARG BASE_CUDA_RUN_CONTAINER=nvidia/cuda:${CUDA_VERSION}-runtime-ubuntu${UBUNTU_VERSION}
8+
ARG BASE_CUDA_RUN_CONTAINER=docker.io/nvidia/cuda:${CUDA_VERSION}-runtime-ubuntu${UBUNTU_VERSION}
89

910
ARG BUILD_DATE=N/A
1011
ARG APP_VERSION=N/A
1112
ARG APP_REVISION=N/A
1213

14+
ARG NODE_VERSION=24
15+
16+
FROM docker.io/node:$NODE_VERSION AS web
17+
18+
ARG APP_VERSION
19+
20+
WORKDIR /app/tools/ui
21+
22+
COPY tools/ui/package.json tools/ui/package-lock.json ./
23+
RUN npm ci
24+
25+
COPY tools/ui/ ./
26+
RUN LLAMA_BUILD_NUMBER="$APP_VERSION" npm run build
27+
1328
FROM ${BASE_CUDA_DEV_CONTAINER} AS build
1429

30+
ARG GCC_VERSION
1531
# CUDA architecture to build for (defaults to all supported archs)
1632
ARG CUDA_DOCKER_ARCH=default
1733

1834
RUN apt-get update && \
19-
apt-get install -y gcc-14 g++-14 build-essential cmake python3 python3-pip git libssl-dev libgomp1
35+
apt-get install -y gcc-${GCC_VERSION} g++-${GCC_VERSION} build-essential cmake python3 python3-pip git libssl-dev libgomp1
2036

21-
ENV CC=gcc-14 CXX=g++-14 CUDAHOSTCXX=g++-14
37+
ENV CC=gcc-${GCC_VERSION} CXX=g++-${GCC_VERSION} CUDAHOSTCXX=g++-${GCC_VERSION}
2238

2339
WORKDIR /app
2440

2541
COPY . .
2642

43+
COPY --from=web /app/tools/ui/dist tools/ui/dist
44+
2745
RUN if [ "${CUDA_DOCKER_ARCH}" != "default" ]; then \
2846
export CMAKE_ARGS="-DCMAKE_CUDA_ARCHITECTURES=${CUDA_DOCKER_ARCH}"; \
2947
fi && \

.devops/intel.Dockerfile

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,23 @@ ARG APP_REVISION=N/A
55

66
## Build Image
77

8-
FROM intel/deep-learning-essentials:$ONEAPI_VERSION AS build
8+
ARG NODE_VERSION=24
99

10-
ARG GGML_SYCL_F16=OFF
10+
FROM docker.io/node:$NODE_VERSION AS web
11+
12+
ARG APP_VERSION
13+
14+
WORKDIR /app/tools/ui
15+
16+
COPY tools/ui/package.json tools/ui/package-lock.json ./
17+
RUN npm ci
18+
19+
COPY tools/ui/ ./
20+
RUN LLAMA_BUILD_NUMBER="$APP_VERSION" npm run build
21+
22+
FROM docker.io/intel/deep-learning-essentials:$ONEAPI_VERSION AS build
23+
24+
ARG GGML_SYCL_F16=ON
1125
ARG LEVEL_ZERO_VERSION=1.28.2
1226
ARG LEVEL_ZERO_UBUNTU_VERSION=u24.04
1327
RUN apt-get update && \
@@ -22,9 +36,12 @@ WORKDIR /app
2236

2337
COPY . .
2438

39+
COPY --from=web /app/tools/ui/dist tools/ui/dist
40+
2541
RUN if [ "${GGML_SYCL_F16}" = "ON" ]; then \
2642
echo "GGML_SYCL_F16 is set" \
27-
&& export OPT_SYCL_F16="-DGGML_SYCL_F16=ON"; \
43+
&& export OPT_SYCL_F16="-DGGML_SYCL_F16=ON" \
44+
&& export SYCL_PROGRAM_COMPILE_OPTIONS="-cl-fp32-correctly-rounded-divide-sqrt"; \
2845
fi && \
2946
echo "Building with dynamic libs" && \
3047
cmake -B build -DGGML_NATIVE=OFF -DGGML_SYCL=ON -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DLLAMA_BUILD_TESTS=OFF ${OPT_SYCL_F16} && \
@@ -42,7 +59,7 @@ RUN mkdir -p /app/full \
4259
&& cp requirements.txt /app/full \
4360
&& cp .devops/tools.sh /app/full/tools.sh
4461

45-
FROM intel/deep-learning-essentials:$ONEAPI_VERSION AS base
62+
FROM docker.io/intel/deep-learning-essentials:$ONEAPI_VERSION AS base
4663

4764
ARG BUILD_DATE=N/A
4865
ARG APP_VERSION=N/A

.devops/llama-cli-cann.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ ARG BUILD_DATE=N/A
33
ARG APP_VERSION=N/A
44
ARG APP_REVISION=N/A
55

6-
FROM ascendai/cann:$ASCEND_VERSION AS build
6+
FROM docker.io/ascendai/cann:$ASCEND_VERSION AS build
77

88
WORKDIR /app
99

@@ -30,7 +30,7 @@ RUN echo "Building with static libs" && \
3030
cmake --build build --config Release --target llama-completion
3131

3232
# TODO: use image with NNRT
33-
FROM ascendai/cann:$ASCEND_VERSION AS runtime
33+
FROM docker.io/ascendai/cann:$ASCEND_VERSION AS runtime
3434

3535
ARG BUILD_DATE=N/A
3636
ARG APP_VERSION=N/A

.devops/musa.Dockerfile

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,28 @@ ARG UBUNTU_VERSION=22.04
22
# This needs to generally match the container host's environment.
33
ARG MUSA_VERSION=rc4.3.0
44
# Target the MUSA build image
5-
ARG BASE_MUSA_DEV_CONTAINER=mthreads/musa:${MUSA_VERSION}-devel-ubuntu${UBUNTU_VERSION}-amd64
5+
ARG BASE_MUSA_DEV_CONTAINER=docker.io/mthreads/musa:${MUSA_VERSION}-devel-ubuntu${UBUNTU_VERSION}-amd64
66

7-
ARG BASE_MUSA_RUN_CONTAINER=mthreads/musa:${MUSA_VERSION}-runtime-ubuntu${UBUNTU_VERSION}-amd64
7+
ARG BASE_MUSA_RUN_CONTAINER=docker.io/mthreads/musa:${MUSA_VERSION}-runtime-ubuntu${UBUNTU_VERSION}-amd64
88

99
ARG BUILD_DATE=N/A
1010
ARG APP_VERSION=N/A
1111
ARG APP_REVISION=N/A
1212

13+
ARG NODE_VERSION=24
14+
15+
FROM docker.io/node:$NODE_VERSION AS web
16+
17+
ARG APP_VERSION
18+
19+
WORKDIR /app/tools/ui
20+
21+
COPY tools/ui/package.json tools/ui/package-lock.json ./
22+
RUN npm ci
23+
24+
COPY tools/ui/ ./
25+
RUN LLAMA_BUILD_NUMBER="$APP_VERSION" npm run build
26+
1327
FROM ${BASE_MUSA_DEV_CONTAINER} AS build
1428

1529
# MUSA architecture to build for (defaults to all supported archs)
@@ -29,6 +43,8 @@ WORKDIR /app
2943

3044
COPY . .
3145

46+
COPY --from=web /app/tools/ui/dist tools/ui/dist
47+
3248
RUN if [ "${MUSA_DOCKER_ARCH}" != "default" ]; then \
3349
export CMAKE_ARGS="-DMUSA_ARCHITECTURES=${MUSA_DOCKER_ARCH}"; \
3450
fi && \

0 commit comments

Comments
 (0)