#!/usr/bin/env bash # Stop SGLang multi-node server (both nodes) through the shared deployment layer. # Usage: stop_sglang_multinode.sh [--dry-run] set -Eeuo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # shellcheck source=/dev/null source "${SCRIPT_DIR}/config.env" # shellcheck source=/dev/null source "${SCRIPT_DIR}/../../../scripts/common/lib.sh" # shellcheck source=/dev/null source "${SCRIPT_DIR}/../../../scripts/common/platform.sh" # shellcheck source=/dev/null source "${SCRIPT_DIR}/../../../scripts/common/deploy_cli.sh" DRY_RUN="${DRY_RUN:-0}" DEPLOY_PROFILE="${DEPLOY_PROFILE:-pro6000/dsv4_pro6000_sglang_tp16}" log "=== Stopping SGLang multi-node via deploy profile ${DEPLOY_PROFILE} ===" if [[ "$DRY_RUN" == "1" ]]; then PYTHONPATH="${ROOT_DIR}/src" "${DEPLOY_PYTHON:-python3}" -m sskj.deploy stop \ --profile "$(deploy_profile_abs "$DEPLOY_PROFILE")" \ --tp "$TP_SIZE" --dp "1" \ --port "${SGLANG_PORT:-30000}" \ --model-path "$MODEL_PATH" \ --container-name "$EXPERIMENT" \ --dry-run else deploy_stop \ "$DEPLOY_PROFILE" "$TP_SIZE" "1" \ "${SGLANG_PORT:-30000}" \ "$MODEL_PATH" \ "$EXPERIMENT" fi log "Done."