FROM corex:4.3.8 as builder ADD . /app WORKDIR /app RUN sed -i 's/-x cuda/-x ivcore/g' /usr/local/share/cmake-3.25/Modules/Compiler/Clang-CUDA.cmake &&\ cmake -S . -B build \ -DGGML_CUDA=ON \ -DLLAMA_CURL=OFF \ -DCMAKE_CUDA_ARCHITECTURES=ivcore11 \ -DCMAKE_CUDA_FLAGS="-x ivcore -std=c++17" \ -DCMAKE_CUDA_STANDARD=17 \ -DCMAKE_CXX_STANDARD=17 \ -DGGML_CUDA_FA=OFF \ -DBUILD_SHARED_LIBS=OFF \ -DGGML_CUDA_FORCE_CUBLAS=ON \ -DGGML_CPU=ON &&\ cmake --build build --config Release -j \ --target llama-server llama-cli FROM ubuntu WORKDIR /app COPY --from=builder /usr/local/corex/ /usr/local/corex/ COPY --from=builder /usr/local/openmpi/lib/ /usr/local/openmpi/lib/ COPY --from=builder /app/build/bin/llama-server /app/llama-server COPY --from=builder /app/build/bin/llama-cli /app/llama-cli RUN apt update && apt install -y libgomp1 ENV PATH=/usr/local/corex/bin:/usr/local/openmpi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ENV LD_LIBRARY_PATH=/usr/local/corex/lib64:/usr/local/openmpi/lib:/usr/local/lib