Spaces:
Running
Running
| FROM python:3.12-slim AS builder | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| build-essential \ | |
| cmake \ | |
| libboost-all-dev \ | |
| && rm -rf /var/lib/apt/lists/* | |
| WORKDIR /build | |
| COPY third_party/CityFlow ./CityFlow | |
| RUN rm -rf ./CityFlow/build | |
| RUN pip install --no-cache-dir ./CityFlow | |
| FROM python:3.12-slim AS runtime | |
| WORKDIR /app | |
| COPY --from=builder /usr/local/lib/python3.12/site-packages/cityflow* \ | |
| /usr/local/lib/python3.12/site-packages/ | |
| COPY openenv_app/requirements.txt ./requirements.txt | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| COPY __init__.py ./__init__.py | |
| COPY client.py ./client.py | |
| COPY models.py ./models.py | |
| COPY agents/ ./agents/ | |
| COPY district_llm/ ./district_llm/ | |
| COPY env/ ./env/ | |
| COPY openenv_app/ ./openenv_app/ | |
| COPY server/ ./server/ | |
| COPY training/ ./training/ | |
| COPY data/splits/ ./data/splits/ | |
| COPY data/generated/city_0002/ ./data/generated/city_0002/ | |
| COPY artifacts/dqn_shared/best_validation.pt ./artifacts/dqn_shared/best_validation.pt | |
| COPY artifacts/district_llm_adapter_v3/main_run/adapter/ ./artifacts/district_llm_adapter_v3/main_run/adapter/ | |
| RUN mkdir -p /app/data/generated /app/data/splits | |
| ENV DATA_DIR=/app/data/generated | |
| ENV SPLITS_DIR=/app/data/splits | |
| ENV CHECKPOINT_PATH=/app/artifacts/dqn_shared/best_validation.pt | |
| ENV DISTRICT_LLM_ADAPTER_PATH=/app/artifacts/district_llm_adapter_v3/main_run/adapter | |
| EXPOSE 7860 | |
| CMD ["sh", "-c", "uvicorn server.app:app --host 0.0.0.0 --port ${PORT:-7860}"] | |