Skip to content

Commit aea451e

Browse files
authored
Merge branch 'main' into fix/chat-template-return-compat
2 parents f458290 + 21624f3 commit aea451e

121 files changed

Lines changed: 7821 additions & 1075 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/configs/ascend.yml

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ hardware_name: ascend
2020
display_name: "Ascend NPU Tests"
2121

2222
# Docker image for this hardware
23-
ci_image: harbor.baai.ac.cn/flagscale/vllm-plugin-fl:v0.1.0-ascend-ci
24-
ci_train_image: harbor.baai.ac.cn/flagscale/vllm-plugin-fl:v0.1.0-ascend-ci
25-
ci_inference_image: harbor.baai.ac.cn/flagscale/vllm-plugin-fl:v0.1.0-ascend-ci
23+
ci_image: harbor.baai.ac.cn/flagos-dev/flagscale:manual-20260812-ascend-dev-inference
24+
ci_train_image: harbor.baai.ac.cn/flagos-dev/flagscale:manual-20260812-ascend-dev-train
25+
ci_inference_image: harbor.baai.ac.cn/flagos-dev/flagscale:manual-20260812-ascend-dev-inference
2626

2727
# Runner labels for this hardware
2828
runner_labels: ["flagscale-ascend-ascend910-gpu2-32c-128g"]
@@ -35,6 +35,35 @@ container_volumes:
3535
- /usr/local/Ascend/add-ons:/usr/local/Ascend/add-ons:ro
3636
- /usr/local/sbin/npu-smi:/usr/local/sbin/npu-smi:ro
3737

38+
# Image build contract consumed by the generic build workflow.
39+
image_build:
40+
enabled: true
41+
registry: harbor.baai.ac.cn
42+
target: dev
43+
network: host
44+
max_parallel: 1
45+
registry_login: true
46+
validation_script: tools/install/ascend/validate_image_build.sh
47+
tasks:
48+
train:
49+
dockerfile: docker/ascend/Dockerfile.train
50+
image: flagos-dev/flagscale-train
51+
test_roles: [train]
52+
base_image: harbor.baai.ac.cn/flagos-dev/megatron-lm-fl:manual-20260717-ascend-dev
53+
build_args:
54+
PKG_MGR: pip
55+
source_refs:
56+
FLAGSCALE_TE_REF: transformer_engine_fl
57+
FLAGSCALE_MEGATRON_REF: megatron_lm_fl
58+
inference:
59+
dockerfile: docker/ascend/Dockerfile.inference
60+
image: flagos-dev/flagscale-inference
61+
test_roles: [inference]
62+
base_image: harbor.baai.ac.cn/flagos-dev/flagscale:manual-20260812-ascend-dev-inference
63+
build_args: {}
64+
source_refs:
65+
VLLM_PLUGIN_FL_REF: vllm_plugin_fl
66+
FLAGGEMS_REF: flaggems
3867
# Container options for Ascend NPU (no --gpus, use --device for NPU cards)
3968
container_options: >-
4069
--device /dev/davinci_manager
@@ -55,6 +84,12 @@ container_options: >-
5584
--security-opt apparmor=unconfined
5685
--privileged
5786
87+
# Runtime allowances for the currently validated Ascend images. Keep these
88+
# values in platform configuration so common workflows remain chip-agnostic.
89+
timeouts:
90+
inference_minutes: 15
91+
serve_ready_seconds: 600
92+
5893
# =============================================================================
5994
# Package Manager Configuration
6095
# =============================================================================

.github/configs/cuda.yml

Lines changed: 68 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,76 @@ ci_image: harbor.baai.ac.cn/flagos/flagscale:cuda12.8.1-cudnn9.7.1-python3.12-to
2424
ci_train_image: harbor.baai.ac.cn/flagscale/flagscale-train:dev-cu128-py3.12-20260228210721
2525
ci_inference_image: harbor.baai.ac.cn/flagscale/flagscale-inference:dev-cu128-py3.12-20260302102033
2626

27-
# Directory to store image tar files (shared between build and push workflows)
28-
tar_dir: /mnt/airs-business/cicd/image_tar
29-
3027
# Runner labels for this hardware
3128
runner_labels: ['flagscale-nvidia-a100-gpu2-32c-128g']
3229

30+
# Image build contract consumed by the generic image-build workflow.
31+
image_build:
32+
enabled: true
33+
registry: harbor.baai.ac.cn
34+
target: dev
35+
network: default
36+
max_parallel: 1
37+
registry_login: false
38+
runner_labels: [self-hosted, Linux, X64, nvidia-0, gpus-8]
39+
validation_script: tools/install/cuda/validate_image_build.sh
40+
tasks:
41+
train:
42+
dockerfile: docker/cuda/Dockerfile.train
43+
image: flagos-dev/flagscale-train
44+
base_image: nvidia/cuda:12.8.1-devel-ubuntu22.04
45+
test_roles: [train]
46+
build_args:
47+
CUDA_VERSION: '12.8.1'
48+
UBUNTU_VERSION: '22.04'
49+
PYTHON_VERSION: '3.12'
50+
UV_VERSION: '0.7.2'
51+
PKG_MGR: conda
52+
PYTORCH_INDEX: https://download.pytorch.org/whl/cu128
53+
source_refs:
54+
FLAGSCALE_MEGATRON_REF: megatron_lm_fl
55+
FLAGSCALE_TE_REF: transformer_engine_fl
56+
inference:
57+
dockerfile: docker/cuda/Dockerfile.inference
58+
image: flagos-dev/flagscale-inference
59+
base_image: nvidia/cuda:12.8.1-devel-ubuntu22.04
60+
test_roles: [inference]
61+
build_args:
62+
CUDA_VERSION: '12.8.1'
63+
UBUNTU_VERSION: '22.04'
64+
PYTHON_VERSION: '3.12'
65+
UV_VERSION: '0.7.2'
66+
PKG_MGR: conda
67+
PYTORCH_INDEX: https://download.pytorch.org/whl/cu128
68+
all:
69+
dockerfile: docker/cuda/Dockerfile.all
70+
image: flagos-dev/flagscale-all
71+
base_image: nvidia/cuda:12.8.1-devel-ubuntu22.04
72+
test_roles: [train, inference]
73+
test_environments:
74+
train:
75+
pkg_mgr: conda
76+
env_name: flagscale-all
77+
env_path: /opt/flagscale/miniconda3
78+
inference:
79+
pkg_mgr: conda
80+
env_name: flagscale-all
81+
env_path: /opt/flagscale/miniconda3
82+
serve:
83+
pkg_mgr: conda
84+
env_name: flagscale-all
85+
env_path: /opt/flagscale/miniconda3
86+
build_args:
87+
CUDA_VERSION: '12.8.1'
88+
UBUNTU_VERSION: '22.04'
89+
PYTHON_VERSION: '3.12'
90+
UV_VERSION: '0.7.2'
91+
PKG_MGR: conda
92+
PYTORCH_INDEX: https://download.pytorch.org/whl/cu128
93+
source_refs:
94+
FLAGSCALE_MEGATRON_REF: megatron_lm_fl
95+
FLAGSCALE_TE_REF: transformer_engine_fl
96+
3397
# Container volumes (hardware-specific paths)
3498
container_volumes:
3599
- /mnt/airs-business/cicd/baai_datasets:/home/gitlab-runner/data
@@ -76,4 +140,5 @@ env_names:
76140
train: "flagscale-train"
77141
hetero_train: "flagscale-train"
78142
inference: "flagscale-inference"
143+
serve: "flagscale-inference"
79144
rl: "flagscale-rl"

.github/configs/image_sources.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Copyright 2026 FlagOS Contributors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# Source overlays shared by platform image builds. Moving refs are resolved once
16+
# per workflow; native components owned by a vendor base remain digest-pinned.
17+
sources:
18+
megatron_lm_fl:
19+
repository: https://github.com/flagos-ai/Megatron-LM-FL.git
20+
policy: branch
21+
branch: main
22+
transformer_engine_fl:
23+
repository: https://github.com/flagos-ai/TransformerEngine-FL.git
24+
policy: branch
25+
branch: main
26+
vllm_plugin_fl:
27+
repository: https://github.com/flagos-ai/vllm-plugin-FL.git
28+
policy: branch
29+
branch: main
30+
flaggems:
31+
repository: https://github.com/flagos-ai/FlagGems.git
32+
policy: latest_release

.github/configs/metax.yml

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ display_name: "MetaX C550 Tests"
2121

2222
# Docker images for MetaX C550 (MACA-based)
2323
ci_image: harbor.baai.ac.cn/flagscale/megatron-lm-with-te:202603231839
24-
ci_train_image: harbor.baai.ac.cn/flagscale/megatron-lm-with-te:202603231839
25-
ci_inference_image: harbor.baai.ac.cn/flagscale/megatron-lm-with-te:202603231839
24+
ci_train_image: harbor.baai.ac.cn/flagos-dev/flagscale:0a6cc4b-metax-train-dev
25+
ci_inference_image: harbor.baai.ac.cn/flagos-dev/flagscale-inference:86c8e54-metax-dev
2626

2727
# Runner labels for MetaX C550 hardware
2828
runner_labels: ["flagscale-metax-c550-gpu2-8c-256g"]
@@ -32,6 +32,37 @@ container_volumes:
3232
- /mnt/airs-business/cicd/baai_datasets:/home/gitlab-runner/data
3333
- /mnt/airs-business/cicd/baai_tokenizers:/home/gitlab-runner/tokenizers
3434

35+
# Image build contract consumed by the generic build workflow.
36+
image_build:
37+
enabled: true
38+
registry: harbor.baai.ac.cn
39+
target: dev
40+
network: default
41+
max_parallel: 1
42+
# The C550 runner exposes an eight-device host. Individual image smoke
43+
# tests still use runtime_smoke_nproc=2 below because the smoke collective
44+
# only needs two processes.
45+
runtime_device_count: '8'
46+
runtime_smoke_nproc: '2'
47+
registry_login: true
48+
validation_script: tools/install/metax/validate_image_build.sh
49+
tasks:
50+
train:
51+
dockerfile: docker/metax/Dockerfile.train
52+
image: flagos-dev/flagscale-train
53+
test_roles: [train]
54+
base_image: harbor.baai.ac.cn/flagscale/megatron-lm-with-te:202603231839
55+
build_args: {}
56+
source_refs:
57+
FLAGSCALE_MEGATRON_REF: megatron_lm_fl
58+
FLAGSCALE_TE_REF: transformer_engine_fl
59+
inference:
60+
dockerfile: docker/metax/Dockerfile.inference
61+
image: flagos-dev/flagscale-inference
62+
test_roles: [inference]
63+
base_image: harbor.baai.ac.cn/flagos-dev/vllm-plugin-fl:v0.20.2-metax-ci
64+
source_refs:
65+
VLLM_PLUGIN_FL_REF: vllm_plugin_fl
3566
# Container options for MetaX C550 (MACA runtime)
3667
container_options: >-
3768
--hostname=flagscale-ci
@@ -52,6 +83,13 @@ container_options: >-
5283
--cap-add NET_ADMIN
5384
--security-opt seccomp=unconfined
5485
86+
# MetaX vLLM may spend about three minutes loading the first model. Keep this
87+
# platform allowance in configuration so the common serve workflow stays
88+
# hardware-neutral.
89+
timeouts:
90+
inference_minutes: 15
91+
serve_ready_seconds: 600
92+
5593
# =============================================================================
5694
# Package Manager Configuration
5795
# =============================================================================
@@ -65,4 +103,5 @@ env_names:
65103
train: "base"
66104
hetero_train: ""
67105
inference: ""
106+
serve: ""
68107
rl: ""

.github/configs/musa.yml

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
# Copyright 2026 FlagOS Contributors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
# MThreads MUSA S5000 Hardware Configuration
16+
# This file defines CI/CD settings for MUSA-based testing.
17+
18+
hardware_name: musa
19+
display_name: "MThreads MUSA Tests"
20+
21+
# Latest train/inference images validated end-to-end on S5000.
22+
# The platform currently does not publish an all-in-one image.
23+
ci_image: harbor.baai.ac.cn/flagscale/flagscale-train:dev-musa-s5000-py3.10-8aa5314e94bc
24+
ci_train_image: harbor.baai.ac.cn/flagscale/flagscale-train:dev-musa-s5000-py3.10-8aa5314e94bc
25+
ci_inference_image: harbor.baai.ac.cn/flagscale/flagscale-inference:dev-musa-s5000-py3.10-8aa5314e94bc
26+
27+
# Runner labels for MThreads MUSA hardware
28+
runner_labels: ["flagscale-mthreads-s5000-gpu8"]
29+
30+
# Image build contract consumed by the generic image-build workflow.
31+
# max_parallel keeps the three image tasks serialized on each S5000 runner.
32+
image_build:
33+
enabled: true
34+
registry: harbor.baai.ac.cn
35+
target: dev
36+
network: default
37+
max_parallel: 1
38+
runtime_device_count: '8'
39+
registry_login: true
40+
validation_script: tools/install/musa/validate_image_build.sh
41+
tasks:
42+
train:
43+
dockerfile: docker/musa/Dockerfile.train
44+
image: flagos-dev/flagscale-train
45+
base_image: harbor.baai.ac.cn/flagos-dev/transformerengine-fl:manual-20260802-musa-torch2.7.1-e73781e-vllm29ceebd
46+
runtime_smoke_nproc: '2'
47+
test_roles: [train]
48+
build_args:
49+
PKG_MGR: pip
50+
PIP_INDEX_URL: https://pypi.org/simple
51+
PIP_DEFAULT_TIMEOUT: '300'
52+
FLAGSCALE_TE_VERSION: 2.0.0+e73781e
53+
source_refs:
54+
FLAGSCALE_MEGATRON_REF: megatron_lm_fl
55+
inference:
56+
dockerfile: docker/musa/Dockerfile.inference
57+
image: flagos-dev/flagscale-inference
58+
base_image: harbor.baai.ac.cn/flagos-dev/transformerengine-fl:manual-20260802-musa-torch2.7.1-e73781e-vllm29ceebd
59+
runtime_smoke_nproc: '2'
60+
test_roles: [inference]
61+
build_args:
62+
PKG_MGR: pip
63+
PIP_INDEX_URL: https://pypi.org/simple
64+
PIP_DEFAULT_TIMEOUT: '300'
65+
# Container volumes (hardware-specific paths)
66+
container_volumes:
67+
- /mnt/airs-business/cicd/baai_datasets:/home/gitlab-runner/data
68+
- /mnt/airs-business/cicd/baai_tokenizers:/home/gitlab-runner/tokenizers
69+
70+
# Container options for MThreads MUSA runtime
71+
container_options: >-
72+
--hostname=flagscale-ci
73+
--privileged
74+
--ipc=host
75+
--shm-size=100g
76+
--ulimit memlock=-1
77+
--env MTHREADS_VISIBLE_DEVICES=all
78+
--env MTHREADS_DRIVER_CAPABILITIES=all
79+
--user root
80+
--ulimit nofile=65535:65535
81+
82+
# Runtime allowances for models loaded from the shared network volume.
83+
timeouts:
84+
inference_minutes: 45
85+
serve_ready_seconds: 600
86+
87+
# =============================================================================
88+
# Package Manager Configuration
89+
# =============================================================================
90+
pkg_mgr: "pip"
91+
92+
# Environment path (conda installation path)
93+
env_path: ""
94+
95+
# Conda environment names
96+
env_names:
97+
train: ""
98+
hetero_train: ""
99+
inference: ""
100+
serve: ""
101+
rl: ""

0 commit comments

Comments
 (0)