FROM intel/python:latest ARG DEBIAN_FRONTEND=noninteractive RUN apt update && \ apt install -y --no-install-recommends software-properties-common gnupg apt-utils git && \ wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null && \ echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | tee /etc/apt/sources.list.d/oneAPI.list && \ apt update && \ apt install intel-oneapi-mkl -y --no-install-recommends RUN apt install intel-oneapi-compiler-dpcpp-cpp intel-oneapi-mkl-devel gcc g++ pkg-config cmake -y --no-install-recommends && \ . /opt/intel/oneapi/setvars.sh && \ export CMAKE_ARGS="-DLLAMA_BLAS=ON -DLLAMA_NATIVE=1 -DLLAMA_LTO=1 -DLLAMA_BLAS_VENDOR=Intel10_64lp -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx" && \ export FORCE_CMAKE=1 && \ pip install git+https://git.baalajimaestro.me/baalajimaestro/llama.cpp.git fastapi uvicorn sse-starlette pydantic-settings starlette-context && \ apt remove intel-oneapi-compiler-dpcpp-cpp intel-oneapi-mkl-devel gcc g++ pkg-config cmake -y && \ apt autoremove -y ADD entrypoint.sh / EXPOSE 8000 ENV HOST 0.0.0.0 ENTRYPOINT ["/entrypoint.sh"]