Skip to content

Commit be1e807

Browse files
committed
test(ascend): validate documented Qwen3.6 models
1 parent 407acef commit be1e807

4 files changed

Lines changed: 111 additions & 13 deletions

File tree

.github/scripts/ascend/download_models.sh

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,19 +21,24 @@ export FL_MODEL_BASE_PATH="${FL_MODEL_BASE_PATH:-/data/models}"
2121
export HF_ENDPOINT="${HF_ENDPOINT:-https://hf-mirror.com}"
2222

2323
QWEN_ROOT="${FL_MODEL_BASE_PATH}/Qwen"
24-
MODEL_ID="Qwen/Qwen3-0.6B"
25-
MODEL_DIR="${QWEN_ROOT}/Qwen3-0.6B"
24+
MODEL_IDS=(
25+
"Qwen/Qwen3-0.6B"
26+
"Qwen/Qwen3.6-27B"
27+
"Qwen/Qwen3.6-35B-A3B"
28+
)
2629

2730
mkdir -p "${QWEN_ROOT}"
2831

29-
if [[ -f "${MODEL_DIR}/config.json" ]]; then
30-
echo "Model already available: ${MODEL_DIR}"
31-
exit 0
32-
fi
32+
for MODEL_ID in "${MODEL_IDS[@]}"; do
33+
MODEL_DIR="${QWEN_ROOT}/${MODEL_ID#Qwen/}"
34+
if [[ -f "${MODEL_DIR}/config.json" ]]; then
35+
echo "Model already available: ${MODEL_DIR}"
36+
continue
37+
fi
3338

34-
export MODEL_ID MODEL_DIR
35-
echo "Downloading ${MODEL_ID} from ${HF_ENDPOINT} to ${MODEL_DIR}"
36-
python - <<'PY'
39+
export MODEL_ID MODEL_DIR
40+
echo "Downloading ${MODEL_ID} from ${HF_ENDPOINT} to ${MODEL_DIR}"
41+
python - <<'PY'
3742
import os
3843
3944
from huggingface_hub import snapshot_download
@@ -45,5 +50,6 @@ snapshot_download(
4550
)
4651
PY
4752

48-
test -f "${MODEL_DIR}/config.json"
49-
echo "Model ready: ${MODEL_DIR}"
53+
test -f "${MODEL_DIR}/config.json"
54+
echo "Model ready: ${MODEL_DIR}"
55+
done
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
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+
# Qwen3.6-27B Ascend 910C validation from the platform verification guide.
16+
17+
llm:
18+
model: "/data/models/Qwen/Qwen3.6-27B"
19+
tensor_parallel_size: 2
20+
pipeline_parallel_size: 1
21+
max_model_len: 4096
22+
gpu_memory_utilization: 0.8
23+
enforce_eager: true
24+
trust_remote_code: true
25+
enable_chunked_prefill: false
26+
async_scheduling: false
27+
enable_prefix_caching: false
28+
29+
generate:
30+
prompts:
31+
- "Introduce large language models briefly."
32+
sampling:
33+
max_tokens: 100
34+
temperature: 0.0
35+
36+
serve:
37+
served_model_name: "qwen"
38+
startup_retries: 180
39+
endpoints: ["chat"]
40+
stream: true
41+
max_tokens: 1024
42+
chat_messages:
43+
- role: "user"
44+
content: "Introduce large language models briefly."
45+
sampling:
46+
temperature: 0.0
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
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+
# Qwen3.6-35B-A3B Ascend 910C validation from the platform verification guide.
16+
17+
llm:
18+
model: "/data/models/Qwen/Qwen3.6-35B-A3B"
19+
tensor_parallel_size: 2
20+
pipeline_parallel_size: 1
21+
max_model_len: 4096
22+
gpu_memory_utilization: 0.8
23+
enforce_eager: true
24+
trust_remote_code: true
25+
enable_chunked_prefill: false
26+
async_scheduling: false
27+
enable_prefix_caching: false
28+
29+
generate:
30+
prompts:
31+
- "Introduce large language models briefly."
32+
sampling:
33+
max_tokens: 100
34+
temperature: 0.0
35+
36+
serve:
37+
served_model_name: "qwen"
38+
startup_retries: 180
39+
endpoints: ["chat"]
40+
stream: true
41+
max_tokens: 1024
42+
chat_messages:
43+
- role: "user"
44+
content: "Introduce large language models briefly."
45+
sampling:
46+
temperature: 0.0

tests/platforms/ascend.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,9 @@ env_defaults: {}
6363
e2e:
6464
# Add or remove test cases per model
6565
inference:
66-
qwen3: ["06b_tp2"]
66+
qwen3_6: ["27b_tp2_eager_ascend", "35b_a3b_tp2_eager_ascend"]
6767
serving:
68-
qwen3: ["06b_tp2"]
68+
qwen3_6: ["27b_tp2_eager_ascend", "35b_a3b_tp2_eager_ascend"]
6969
functional:
7070
# Include patterns: "*" for all, or list specific paths
7171
include: "*"

0 commit comments

Comments
 (0)