# Base image FROM intel/oneapi-basekit:2025.0.1-0-devel-ubuntu22.04 ARG http_proxy ARG https_proxy ENV DEBIAN_FRONTEND=noninteractive ENV CONDA_DIR=/opt/conda # Install dependencies RUN apt-get update && apt-get install -y \ wget \ curl \ bash \ git \ vim \ ca-certificates \ binutils \ cmake \ g++ \ && rm -rf /var/lib/apt/lists/* # Install Miniforge RUN wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh -O /tmp/miniforge.sh && \ bash /tmp/miniforge.sh -b -p $CONDA_DIR && \ rm /tmp/miniforge.sh && \ $CONDA_DIR/bin/conda clean -afy # Add conda to PATH ENV PATH=$CONDA_DIR/bin:$PATH RUN bash -c "\ source /opt/conda/etc/profile.d/conda.sh && \ conda create --name ktransformers python=3.11 -y && \ conda activate ktransformers && \ conda env list && \ conda install -c conda-forge libstdcxx-ng -y && \ strings \$(find /opt/conda/envs/ktransformers/lib -name 'libstdc++.so.6') | grep GLIBCXX | grep 3.4.32 \ " RUN bash -c "\ source /opt/conda/etc/profile.d/conda.sh && \ conda activate ktransformers && \ pip install ipex-llm[xpu_2.6]==2.3.0b20250518 --extra-index-url https://download.pytorch.org/whl/xpu && \ pip uninstall -y torch torchvision torchaudio && \ pip install torch==2.7+xpu torchvision torchaudio --index-url https://download.pytorch.org/whl/test/xpu && \ pip uninstall -y intel-opencl-rt dpcpp-cpp-rt && \ pip list \ " # Clone and set up ktransformers repo RUN bash -c "\ source $CONDA_DIR/etc/profile.d/conda.sh && \ conda activate ktransformers && \ git clone https://github.com/kvcache-ai/ktransformers.git && \ cd ktransformers && \ git submodule update --init && \ sed -i 's/torch\.xpu\.is_available()/True/g' setup.py && \ bash install.sh --dev xpu \ " # Init conda and prepare bashrc RUN conda init bash && \ echo "source $CONDA_DIR/etc/profile.d/conda.sh" >> ~/.bashrc && \ echo "conda activate ktransformers" >> ~/.bashrc WORKDIR /ktransformers/ CMD ["bash"]