File size: 4,938 Bytes
ce3c376
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#!/usr/bin/env bash

ENV_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
VGEN_ROOT_DEFAULT="$(cd "$ENV_DIR/../.." && pwd)"
WORKSPACE_ROOT_DEFAULT="$(cd "$VGEN_ROOT_DEFAULT/.." && pwd)"
SHARED_DEV_ROOT_DEFAULT="/apdcephfs_sgxy/share_304169095/hunyuan/juliayxzhu/dev"

VGEN_ROOT="${VGEN_ROOT:-$VGEN_ROOT_DEFAULT}"
WORKSPACE_ROOT="${WORKSPACE_ROOT:-$WORKSPACE_ROOT_DEFAULT}"
DEV_ROOT="${DEV_ROOT:-$WORKSPACE_ROOT}"
SHARED_DEV_ROOT="${SHARED_DEV_ROOT:-$SHARED_DEV_ROOT_DEFAULT}"
LOCAL_MODELS_ROOT="${LOCAL_MODELS_ROOT:-$WORKSPACE_ROOT/models}"
SHARED_MODELS_ROOT="${SHARED_MODELS_ROOT:-$SHARED_DEV_ROOT/Models}"
MODELS_ROOT="${MODELS_ROOT:-$LOCAL_MODELS_ROOT}"
CONDA_ROOT="${CONDA_ROOT:-$SHARED_DEV_ROOT/miniconda3}"
CONDA_SH="${CONDA_SH:-$CONDA_ROOT/etc/profile.d/conda.sh}"
DIFFSYNTH_ROOT="${DIFFSYNTH_ROOT:-$VGEN_ROOT/third_party/DiffSynth-Studio}"

DIFF_ENV="${DIFF_ENV:-diff}"

resolve_model_path() {
  local explicit_var="$1"
  local relative_name="$2"
  local explicit_value="${!explicit_var:-}"
  if [[ -n "$explicit_value" ]]; then
    printf '%s\n' "$explicit_value"
    return
  fi
  if [[ -e "$LOCAL_MODELS_ROOT/$relative_name" ]]; then
    printf '%s\n' "$LOCAL_MODELS_ROOT/$relative_name"
    return
  fi
  printf '%s\n' "$SHARED_MODELS_ROOT/$relative_name"
}

resolve_workspace_dir() {
  local explicit_var="$1"
  shift
  local explicit_value="${!explicit_var:-}"
  if [[ -n "$explicit_value" ]]; then
    printf '%s\n' "$explicit_value"
    return
  fi
  local first_candidate="$1"
  local candidate
  for candidate in "$@"; do
    if [[ -e "$candidate" ]]; then
      printf '%s\n' "$candidate"
      return
    fi
  done
  printf '%s\n' "$first_candidate"
}

QWEN_IMAGE_MODEL="${QWEN_IMAGE_MODEL:-$(resolve_model_path QWEN_IMAGE_MODEL Qwen-Image)}"
BERNINI_IMAGE_CONFIG="${BERNINI_IMAGE_CONFIG:-$(resolve_model_path BERNINI_IMAGE_CONFIG Bernini-Diffusers)}"
IMAGE_BACKEND="${IMAGE_BACKEND:-auto}"
PERSISTENT_VIDEO_BACKENDS="${PERSISTENT_VIDEO_BACKENDS:-1}"
COSYVOICE_MODEL="${COSYVOICE_MODEL:-$(resolve_model_path COSYVOICE_MODEL CosyVoice3-0.5B-2512)}"
WAN_I2V_MODEL="${WAN_I2V_MODEL:-$(resolve_model_path WAN_I2V_MODEL Wan2.2-I2V-A14B)}"
WAN_VACE_MODEL="${WAN_VACE_MODEL:-$(resolve_model_path WAN_VACE_MODEL Wan2.2-VACE-Fun-A14B)}"
BINDWEAVE_ROOT="${BINDWEAVE_ROOT:-$(resolve_workspace_dir BINDWEAVE_ROOT "$VGEN_ROOT/third_party/BindWeave")}"
BINDWEAVE_SOURCE_MODEL="${BINDWEAVE_SOURCE_MODEL:-$(resolve_model_path BINDWEAVE_SOURCE_MODEL BindWeave)}"
BINDWEAVE_CHECKPOINT="${BINDWEAVE_CHECKPOINT:-$(resolve_model_path BINDWEAVE_CHECKPOINT BindWeave-MM)}"
BINDWEAVE_WAN21_MODEL="${BINDWEAVE_WAN21_MODEL:-$(resolve_model_path BINDWEAVE_WAN21_MODEL Wan2.1-I2V-14B-720P-Diffusers)}"
BINDWEAVE_QWEN_MODEL="${BINDWEAVE_QWEN_MODEL:-$(resolve_model_path BINDWEAVE_QWEN_MODEL Qwen2.5-VL-7B-Instruct)}"
BINDWEAVE_PYTHON="${BINDWEAVE_PYTHON:-}"
BINDWEAVE_DEVICE="${BINDWEAVE_DEVICE:-npu}"
BINDWEAVE_NPROC_PER_NODE="${BINDWEAVE_NPROC_PER_NODE:-8}"
BINDWEAVE_CONTEXT_PARALLEL_SIZE="${BINDWEAVE_CONTEXT_PARALLEL_SIZE:-0}"
BINDWEAVE_MASTER_PORT="${BINDWEAVE_MASTER_PORT:-6000}"
QWEN35_27B_MODEL="${QWEN35_27B_MODEL:-$(resolve_model_path QWEN35_27B_MODEL qwen3.5-27b)}"
BERNINI_CONFIG="${BERNINI_CONFIG:-$(resolve_model_path BERNINI_CONFIG Bernini-Diffusers)}"
BERNINI_R_CONFIG="${BERNINI_R_CONFIG:-$(resolve_model_path BERNINI_R_CONFIG Bernini-R-Diffusers)}"
HUNYUANVIDEO_MODEL="${HUNYUANVIDEO_MODEL:-$(resolve_model_path HUNYUANVIDEO_MODEL HunyuanVideo-1.5)}"
COMFYUI_ROOT="${COMFYUI_ROOT:-$(resolve_workspace_dir COMFYUI_ROOT "$WORKSPACE_ROOT/ComfyUI" "$WORKSPACE_ROOT/ComfyUI-master")}"
BERNINI_ROOT="${BERNINI_ROOT:-$(resolve_workspace_dir BERNINI_ROOT "$WORKSPACE_ROOT/Bernini" "$WORKSPACE_ROOT/Bernini-main")}"
BERNINI_PYTHON="${BERNINI_PYTHON:-$WORKSPACE_ROOT/venv/bernini/bin/python}"
HUNYUANVIDEO_ROOT="${HUNYUANVIDEO_ROOT:-$(resolve_workspace_dir HUNYUANVIDEO_ROOT "$WORKSPACE_ROOT/HunyuanVideo-1.5-local" "$SHARED_DEV_ROOT/HunyuanVideo-1.5")}"
HUNYUANVIDEO_PYTHON="${HUNYUANVIDEO_PYTHON:-$CONDA_ROOT/envs/$DIFF_ENV/bin/python}"

LOG_DIR="${LOG_DIR:-$VGEN_ROOT/logs}"
RUNTIME_DIR="${RUNTIME_DIR:-$VGEN_ROOT/runtime}"
LOCAL_OUTPUT_ROOT="${LOCAL_OUTPUT_ROOT:-$VGEN_ROOT/outputs/poetry_teaching}"

export VGEN_ROOT WORKSPACE_ROOT DEV_ROOT SHARED_DEV_ROOT CONDA_ROOT CONDA_SH DIFFSYNTH_ROOT MODELS_ROOT LOCAL_MODELS_ROOT SHARED_MODELS_ROOT
export DIFF_ENV
export QWEN_IMAGE_MODEL BERNINI_IMAGE_CONFIG IMAGE_BACKEND PERSISTENT_VIDEO_BACKENDS COSYVOICE_MODEL WAN_I2V_MODEL WAN_VACE_MODEL QWEN35_27B_MODEL
export BERNINI_CONFIG BERNINI_R_CONFIG BERNINI_PYTHON
export HUNYUANVIDEO_MODEL HUNYUANVIDEO_ROOT HUNYUANVIDEO_PYTHON
export BINDWEAVE_ROOT BINDWEAVE_SOURCE_MODEL BINDWEAVE_CHECKPOINT BINDWEAVE_WAN21_MODEL BINDWEAVE_QWEN_MODEL
export BINDWEAVE_PYTHON BINDWEAVE_DEVICE BINDWEAVE_NPROC_PER_NODE BINDWEAVE_CONTEXT_PARALLEL_SIZE BINDWEAVE_MASTER_PORT
export COMFYUI_ROOT BERNINI_ROOT
export LOG_DIR RUNTIME_DIR LOCAL_OUTPUT_ROOT