version: '3' services: h2ogpt: build: context: . dockerfile: Dockerfile restart: always shm_size: '2gb' depends_on: vllm: condition: service_healthy ports: - '${H2OGPT_PORT}:7860' volumes: - cache:/workspace/.cache - save:/workspace/save networks: - h2ogpt command: - /workspace/generate.py - --inference_server="vllm:vllm:5000" - --base_model=${H2OGPT_BASE_MODEL} - --langchain_mode=UserData deploy: resources: reservations: devices: - driver: nvidia device_ids: ['2', '3'] capabilities: [gpu] vllm: build: context: . dockerfile: Dockerfile restart: always shm_size: '64gb' expose: - 5000 volumes: - cache:/workspace/.cache networks: - h2ogpt entrypoint: /h2ogpt_conda/vllm_env/bin/python3.10 command: -m vllm.entrypoints.openai.api_server --port=5000 --host=0.0.0.0 ${H2OGPT_VLLM_ARGS} environment: - NCCL_IGNORE_DISABLED_P2P=1 healthcheck: test: [ "CMD", "curl", "-f", "http://0.0.0.0:5000/v1/models" ] interval: 30s timeout: 5s retries: 20 deploy: resources: reservations: devices: - driver: nvidia device_ids: ['0', '1'] capabilities: [gpu] volumes: cache: save: networks: h2ogpt: