|
FROM python:3.10-slim |
|
|
|
WORKDIR /app |
|
|
|
|
|
RUN apt-get update && apt-get install -y \ |
|
build-essential \ |
|
git \ |
|
&& rm -rf /var/lib/apt/lists/* |
|
|
|
|
|
COPY requirements.txt . |
|
|
|
|
|
RUN pip install --no-cache-dir -r requirements.txt |
|
|
|
|
|
RUN mkdir -p /.cache && chmod 777 /.cache |
|
RUN mkdir -p /root/.cache && chmod 777 /root/.cache |
|
RUN mkdir -p /app/.cache && chmod 777 /app/.cache |
|
RUN mkdir -p /tmp/.cache && chmod 777 /tmp/.cache |
|
RUN mkdir -p /home/.cache && chmod 777 /home/.cache |
|
|
|
|
|
RUN mkdir -p /app/models && chmod 777 /app/models |
|
|
|
|
|
COPY . . |
|
|
|
|
|
RUN mkdir -p data/documents && chmod -R 777 data/documents |
|
RUN mkdir -p data/vector_db && chmod -R 777 data/vector_db |
|
|
|
RUN mkdir -p data/vector_db_1 data/vector_db_2 data/vector_db_3 && \ |
|
chmod -R 777 data/vector_db_* |
|
|
|
|
|
ENV TRANSFORMERS_CACHE=/app/models |
|
ENV TOKENIZERS_PARALLELISM=false |
|
ENV HF_HOME=/app/.cache |
|
ENV XDG_CACHE_HOME=/app/.cache |
|
ENV HUGGINGFACEHUB_API_TOKEN="" |
|
ENV HF_API_KEY="" |
|
|
|
|
|
|
|
ENV LLM_MODEL="distilgpt2" |
|
|
|
ENV EMBEDDING_MODEL="sentence-transformers/all-MiniLM-L6-v2" |
|
|
|
|
|
ENV DEFAULT_TEMPERATURE=0.7 |
|
ENV MAX_TOKENS=256 |
|
ENV CHUNK_SIZE=512 |
|
ENV CHUNK_OVERLAP=128 |
|
|
|
|
|
ENV STREAMLIT_SERVER_MAX_MESSAGE_SIZE=200 |
|
|
|
|
|
ENV PYTHONHASHSEED=0 |
|
|
|
|
|
EXPOSE 7860 |
|
|
|
|
|
CMD ["streamlit", "run", "app/ui/streamlit_app.py", "--server.port=7860", "--server.address=0.0.0.0", "--server.maxUploadSize=10"] |