FROM nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04 ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && \ apt-get upgrade -y && \ apt-get install -y --no-install-recommends \ libgirepository1.0-dev \ git \ git-lfs \ wget \ curl \ # python build dependencies \ build-essential \ libssl-dev \ zlib1g-dev \ libbz2-dev \ libreadline-dev \ libsqlite3-dev \ libncursesw5-dev \ xz-utils \ tk-dev \ libxml2-dev \ libxmlsec1-dev \ libffi-dev \ liblzma-dev \ # nightly dependencies \ libdbus-glib-1-dev \ libpng-dev \ libjpeg-dev \ libcairo2-dev \ # gradio dependencies \ ffmpeg \ # fairseq2 dependencies \ libsndfile-dev && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* RUN useradd -m -u 1000 user USER user ENV HOME=/home/user \ PATH=/home/user/.local/bin:${PATH} WORKDIR ${HOME}/app COPY --chown=user . $HOME/app RUN curl https://pyenv.run | bash ENV PATH=${HOME}/.pyenv/shims:${HOME}/.pyenv/bin:${PATH} ARG PYTHON_VERSION=3.10.13 RUN pyenv install ${PYTHON_VERSION} && \ pyenv global ${PYTHON_VERSION} && \ pyenv rehash && \ pip install --no-cache-dir -U pip setuptools wheel RUN pip install packaging && \ pip install -r ${HOME}/app/requirements.txt && \ pip install Cython==0.29.36 && \ pip install spacy && \ pip install -U flash-attn gradio transformers fastapi tyro julius audiocraft tiktoken hf-transfer && \ pip install -U --pre torch torch torchaudio --index-url https://download.pytorch.org/whl/nightly/cu121 ENV PYTHONPATH=${HOME}/app \ PYTHONUNBUFFERED=1 \ HF_HUB_ENABLE_HF_TRANSFER=1 \ GRADIO_ALLOW_FLAGGING=never \ GRADIO_NUM_PORTS=1 \ GRADIO_SERVER_NAME=0.0.0.0 \ GRADIO_THEME=huggingface \ TQDM_POSITION=-1 \ TQDM_MININTERVAL=1 \ SYSTEM=spaces CMD python fam/llm/serving.py --huggingface_repo_id kotoba-tech/kotoba-speech-v0.1 & python fam/ui/app.py