Spaces:
Running
Running
FROM ubuntu:22.04 | |
ENV DEBIAN_FRONTEND=noninteractive | |
# Update & install system dependencies | |
RUN apt-get update && apt-get install -y \ | |
wget \ | |
curl \ | |
git \ | |
cmake \ | |
build-essential \ | |
python3 \ | |
python3-pip \ | |
python-is-python3 \ | |
ca-certificates \ | |
&& rm -rf /var/lib/apt/lists/* | |
# Install LLVM | |
# NOTE: Uncomment this if you actually want to install LLVM. | |
# RUN bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" | |
# Clone BitNet | |
RUN git clone --recursive https://github.com/microsoft/BitNet.git | |
# Copy everything from the local directory (where Dockerfile is) into the BitNet directory in the container | |
COPY . /BitNet | |
WORKDIR /BitNet | |
# Install Python dependencies | |
RUN pip install --upgrade pip && \ | |
pip install -r requirements.txt | |
# Hugging Face CLI setup | |
RUN pip install huggingface_hub | |
# Optional: HF token | |
ARG HF_TOKEN | |
RUN huggingface-cli login --token $HF_TOKEN || true | |
# Download the model into ./models/ | |
RUN huggingface-cli download tiiuae/Falcon-E-1B-Instruct-GGUF --local-dir models/ | |
# Run BitNet preprocessing script | |
RUN python utils/codegen_tl1.py --model bitnet_b1_58-3B --BM 160,320,320 --BK 64,128,64 --bm 32,64,32 | |
# Build the project | |
RUN mkdir -p build && cd build && cmake .. && make -j$(nproc) | |
# Default command | |
CMD ["python", "app.py"] | |