Spaces:
Paused
Paused
File size: 1,989 Bytes
be1949d 3e50743 9a57e00 be1949d e5bf1d7 be1949d e5bf1d7 be1949d 7131f6c 6cba908 be1949d 998196e 636bd97 be1949d 6db6156 be1949d 6db6156 be1949d 6db6156 be1949d e5bf1d7 be1949d b8d97ca be1949d 79d7c2e 6db6156 be1949d 6db6156 be1949d 6db6156 be1949d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
FROM nvidia/cuda:11.0.3-base-ubuntu20.04
ENV MODEL_NAME="llava-1.6-mistral-7b-gguf"
ENV DEFAULT_MODEL_FILE="llava-v1.6-mistral-7b.Q3_K_XS.gguf"
ENV MODEL_USER="cjpais"
ENV DEFAULT_MODEL_BRANCH="main"
ENV DEFAULT_CLIP_MODEL_FILE="mmproj-model-f16.gguf"
ENV MODEL_URL="https://huggingface.co/${MODEL_USER}/${MODEL_NAME}/resolve/${DEFAULT_MODEL_BRANCH}/${DEFAULT_MODEL_FILE}"
ENV CLIP_MODEL_URL="https://huggingface.co/${MODEL_USER}/${MODEL_NAME}/resolve/${DEFAULT_MODEL_BRANCH}/${DEFAULT_CLIP_MODEL_FILE}"
ENV PATH="/usr/local/cuda/bin:$PATH"
RUN apt update && \
apt install --no-install-recommends -y build-essential python3 python3-pip wget curl git && \
apt clean && rm -rf /var/lib/apt/lists/*
WORKDIR /app
RUN apt-get install -y wget && \
wget -qO- "https://cmake.org/files/v3.18/cmake-3.18.0-Linux-x86_64.tar.gz" | tar --strip-components=1 -xz -C /usr/local
COPY requirements.txt ./
RUN pip3 install --upgrade pip && \
pip3 install -r requirements.txt
# Cloning the llama-cpp-python repository
#RUN git clone https://github.com/abetlen/llama-cpp-python.git
#WORKDIR llama-cpp-python
# Initializing and updating the llama.cpp submodule
#RUN git submodule init && git submodule update
# Building the llama-cpp-python
# RUN FORCE_CMAKE=1 pip install .
# Moving back to /app directory
WORKDIR /app
RUN echo ${MODEL_URL} && \
wget -O /app/${DEFAULT_MODEL_FILE} ${MODEL_URL}
RUN echo ${CLIP_MODEL_URL} && \
wget -O /app/${DEFAULT_MODEL_FILE} ${CLIP_MODEL_URL}
RUN useradd -m -u 1000 user
RUN mkdir -p /home/user/app && \
mv /app/${DEFAULT_MODEL_FILE} /home/user/app \
mv /app/${DEFAULT_CLIP_MODEL_FILE} /home/user/app
RUN chown -R user:user /home/user/app
USER user
ENV HOME=/home/user \
PATH=/home/user/.local/bin:$PATH \
MODEL_NAME=${MODEL_NAME} \
MODEL_FILE=/home/user/app/${DEFAULT_MODEL_FILE}
WORKDIR $HOME/app
COPY --chown=user . .
RUN ls -al
EXPOSE 8000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
|