# Copyright (C) 2024 Intel Corporation # SPDX-License-Identifier: Apache-2.0 services: vllm-service: image: ${REGISTRY:-opea}/vllm-gaudi:${TAG:-latest} container_name: codetrans-gaudi-vllm-service ports: - "8008:80" volumes: - "${MODEL_CACHE:-./data}:/data" environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HABANA_VISIBLE_DEVICES: all OMPI_MCA_btl_vader_single_copy_mechanism: none LLM_MODEL_ID: ${LLM_MODEL_ID} NUM_CARDS: ${NUM_CARDS} VLLM_TORCH_PROFILER_DIR: "/mnt" healthcheck: test: ["CMD-SHELL", "curl -f http://$host_ip:8008/health || exit 1"] interval: 10s timeout: 10s retries: 100 runtime: habana cap_add: - SYS_NICE ipc: host command: --model $LLM_MODEL_ID --tensor-parallel-size ${NUM_CARDS} --host 0.0.0.0 --port 80 --block-size ${BLOCK_SIZE} --max-num-seqs ${MAX_NUM_SEQS} --max-seq_len-to-capture ${MAX_SEQ_LEN_TO_CAPTURE} llm: image: ${REGISTRY:-opea}/llm-textgen:${TAG:-latest} container_name: codetrans-xeon-llm-server depends_on: vllm-service: condition: service_healthy ports: - "9000:9000" ipc: host environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} LLM_ENDPOINT: ${LLM_ENDPOINT} LLM_MODEL_ID: ${LLM_MODEL_ID} LLM_COMPONENT_NAME: ${LLM_COMPONENT_NAME} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped codetrans-gaudi-backend-server: image: ${REGISTRY:-opea}/codetrans:${TAG:-latest} container_name: codetrans-gaudi-backend-server depends_on: - vllm-service - llm ports: - "${BACKEND_SERVICE_PORT:-7777}:7777" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - MEGA_SERVICE_HOST_IP=${MEGA_SERVICE_HOST_IP} - LLM_SERVICE_HOST_IP=${LLM_SERVICE_HOST_IP} ipc: host restart: always codetrans-gaudi-ui-server: image: ${REGISTRY:-opea}/codetrans-ui:${TAG:-latest} container_name: codetrans-gaudi-ui-server depends_on: - codetrans-gaudi-backend-server ports: - "${FRONTEND_SERVICE_PORT:-5173}:5173" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - BASE_URL=${BACKEND_SERVICE_ENDPOINT} ipc: host restart: always codetrans-gaudi-nginx-server: image: ${REGISTRY:-opea}/nginx:${TAG:-latest} container_name: codetrans-gaudi-nginx-server depends_on: - codetrans-gaudi-backend-server - codetrans-gaudi-ui-server ports: - "${NGINX_PORT:-80}:80" environment: - no_proxy=${no_proxy} - https_proxy=${https_proxy} - http_proxy=${http_proxy} - FRONTEND_SERVICE_IP=${FRONTEND_SERVICE_IP} - FRONTEND_SERVICE_PORT=${FRONTEND_SERVICE_PORT} - BACKEND_SERVICE_NAME=${BACKEND_SERVICE_NAME} - BACKEND_SERVICE_IP=${BACKEND_SERVICE_IP} - BACKEND_SERVICE_PORT=${BACKEND_SERVICE_PORT} ipc: host restart: always networks: default: driver: bridge