45
45
type : choice
46
46
options :
47
47
- main
48
- - v0.7.3-dev
49
48
- v0.9.1-dev
49
+ - v0.7.3-dev
50
50
models :
51
51
description : ' model:'
52
52
required : true
@@ -183,7 +183,28 @@ jobs:
183
183
PIP_EXTRA_INDEX_URL : https://mirrors.huaweicloud.com/ascend/repos/pypi
184
184
run : |
185
185
pip install -r requirements-dev.txt
186
- pip install -e .
186
+ pip install -v -e .
187
+
188
+ - name : Get vLLM commit hash and URL
189
+ working-directory : ./vllm-empty
190
+ run : |
191
+ VLLM_COMMIT=$(git rev-parse HEAD)
192
+ echo "VLLM_COMMIT=$VLLM_COMMIT" >> $GITHUB_ENV
193
+ echo "VLLM_COMMIT_URL=https://github.com/vllm-project/vllm/commit/$VLLM_COMMIT" >> $GITHUB_ENV
194
+
195
+ - name : Get vLLM-Ascend commit hash and URL
196
+ working-directory : ./vllm-ascend
197
+ run : |
198
+ VLLM_ASCEND_COMMIT=$(git rev-parse HEAD)
199
+ echo "VLLM_ASCEND_COMMIT=$VLLM_ASCEND_COMMIT" >> $GITHUB_ENV
200
+ echo "VLLM_ASCEND_COMMIT_URL=https://github.com/vllm-project/vllm-ascend/commit/$VLLM_ASCEND_COMMIT" >> $GITHUB_ENV
201
+
202
+ - name : Print resolved hashes and URLs
203
+ run : |
204
+ echo "vLLM : ${{ env.VLLM_COMMIT }}"
205
+ echo "vLLM link : ${{ env.VLLM_COMMIT_URL }}"
206
+ echo "vLLM-Ascend: ${{ env.VLLM_ASCEND_COMMIT }}"
207
+ echo "Ascend link: ${{ env.VLLM_ASCEND_COMMIT_URL }}"
187
208
188
209
- name : Install lm-eval, ray, and datasets
189
210
run : |
@@ -239,7 +260,12 @@ jobs:
239
260
--cann_version "${{ env.GHA_CANN_VERSION }}" \
240
261
--torch_npu_version "${{ env.GHA_TORCH_NPU_VERSION }}" \
241
262
--torch_version "${{ env.GHA_TORCH_VERSION }}" \
242
- --vllm_version "${{ env.GHA_VLLM_VERSION }}"
263
+ --vllm_version "${{ env.GHA_VLLM_VERSION }}" \
264
+ --vllm_commit "${{ env.VLLM_COMMIT }}" \
265
+ --vllm_ascend_commit "${{ env.VLLM_ASCEND_COMMIT }}" \
266
+ --vllm_commit_url "${{ env.VLLM_COMMIT_URL }}" \
267
+ --vllm_ascend_commit_url "${{ env.VLLM_ASCEND_COMMIT_URL }}" \
268
+ --vllm_use_v1 "$VLLM_USE_V1"
243
269
244
270
- name : Generate step summary
245
271
if : ${{ always() }}
@@ -251,12 +277,122 @@ jobs:
251
277
SAFE_VLLM_ASCEND_VERSION="${GHA_VLLM_ASCEND_VERSION//\//-}"
252
278
echo "SAFE_VLLM_ASCEND_VERSION=$SAFE_VLLM_ASCEND_VERSION" >> "$GITHUB_ENV"
253
279
280
+ - name : Check report first line for failure
281
+ id : check_report
282
+ run : |
283
+ REPORT_PATH="./benchmarks/accuracy/${{ steps.report.outputs.markdown_name }}.md"
284
+ echo "Scanning $REPORT_PATH for ❌ …"
285
+ if grep -q '❌' "$REPORT_PATH"; then
286
+ echo "contains_fail=true" >> $GITHUB_OUTPUT
287
+ else
288
+ echo "contains_fail=false" >> $GITHUB_OUTPUT
289
+ fi
290
+
254
291
- name : Upload Report for V${{ matrix.vllm_use_version }}
255
- if : ${{ github.event_name == 'workflow_dispatch' }}
292
+ if : ${{ github.event_name == 'workflow_dispatch' && steps.check_report.outputs.contains_fail == 'false' }}
256
293
uses : actions/upload-artifact@v4
257
294
with :
258
- name : " ${{ env.SAFE_VLLM_ASCEND_VERSION }}-${{ steps.report.outputs.markdown_name }}-report "
295
+ name : " report- ${{ env.SAFE_VLLM_ASCEND_VERSION }}-${{ steps.report.outputs.markdown_name }}"
259
296
path : ./benchmarks/accuracy/${{ steps.report.outputs.markdown_name }}.md
260
297
if-no-files-found : warn
261
298
retention-days : 90
262
299
overwrite : true
300
+
301
+ create_pr :
302
+ runs-on : ubuntu-latest
303
+ needs : accuracy_tests
304
+ if : ${{ github.event_name == 'workflow_dispatch' }}
305
+ env :
306
+ UPSTREAM_REPO : vllm-project/vllm-ascend
307
+ steps :
308
+ - name : Checkout repository
309
+ uses : actions/checkout@v4
310
+ with :
311
+ repository : vllm-ascend-ci/vllm-ascend
312
+ token : ${{ secrets.PAT_TOKEN }}
313
+ ref : main
314
+
315
+ - name : Add upstream remote
316
+ run : |
317
+ git remote add upstream https://github.com/${{ env.UPSTREAM_REPO }}.git
318
+ git fetch upstream
319
+ git remote -v
320
+
321
+ - name : Set Git user info dynamically
322
+ run : |
323
+ git config user.name "${{ github.actor }}"
324
+ git config user.email "${{ github.actor }}@users.noreply.github.com"
325
+
326
+ - name : Create or switch to branch
327
+ run : |
328
+ TIMESTAMP=$(date +%Y%m%d%H%M%S)
329
+ BRANCH_NAME="auto-pr/accuracy-report-${TIMESTAMP}"
330
+ echo "BRANCH_NAME=${BRANCH_NAME}" >> $GITHUB_ENV
331
+ git checkout -B "${BRANCH_NAME}" upstream/${{ github.event.inputs.vllm-ascend-version }}
332
+
333
+ - name : Download only current run reports
334
+ uses : actions/download-artifact@v4
335
+ with :
336
+ path : ./docs/source/developer_guide/evaluation/accuracy_report
337
+ pattern : report-*
338
+ github-token : ${{ secrets.GITHUB_TOKEN }}
339
+ run-id : ${{ github.run_id }}
340
+
341
+ - name : Delete old report
342
+ run : |
343
+ find ./docs/source/developer_guide/evaluation/accuracy_report -maxdepth 1 -type f -name '*.md' ! -name 'index.md' -delete
344
+ find ./docs/source/developer_guide/evaluation/accuracy_report -mindepth 2 -type f -name '*.md' -exec mv -f {} ./docs/source/developer_guide/evaluation/accuracy_report \;
345
+ find ./docs/source/developer_guide/evaluation/accuracy_report -mindepth 1 -type d -empty -delete
346
+
347
+ - name : Update accuracy_report/index.md
348
+ run : |
349
+ REPORT_DIR="./docs/source/developer_guide/evaluation/accuracy_report"
350
+ INDEX_MD="$REPORT_DIR/index.md"
351
+ {
352
+ echo "# Accuracy Report"
353
+ echo ""
354
+ echo ":::{toctree}"
355
+ echo ":caption: Accuracy Report"
356
+ echo ":maxdepth: 1"
357
+
358
+ for report in "$REPORT_DIR"/*.md; do
359
+ filename="$(basename "$report" .md)"
360
+ if [ "$filename" != "index" ]; then
361
+ echo "$filename"
362
+ fi
363
+ done
364
+ echo ":::"
365
+ } > "$INDEX_MD"
366
+
367
+ - name : push accuracy report
368
+ env :
369
+ GITHUB_TOKEN : ${{ secrets.PAT_TOKEN }}
370
+ run : |
371
+ git add ./docs/source/developer_guide/evaluation/accuracy_report/*.md
372
+ git commit -s -m "[Doc] Update accuracy reports for ${{ github.event.inputs.vllm-ascend-version }}"
373
+ git push -f origin "${{ env.BRANCH_NAME }}"
374
+
375
+ - name : Create PR in upstream via API
376
+ uses : actions/github-script@v6
377
+ with :
378
+ github-token : ${{ secrets.PAT_TOKEN }}
379
+ script : |
380
+ const pr = await github.rest.pulls.create({
381
+ owner: 'vllm-project',
382
+ repo: 'vllm-ascend',
383
+ head: `${{ github.actor }}:${{ env.BRANCH_NAME }}`,
384
+ base: '${{ github.event.inputs.vllm-ascend-version }}',
385
+ title: `[Doc] Update accuracy reports for ${{ github.event.inputs.vllm-ascend-version }}`,
386
+ body: `The accuracy results running on NPU Altlas A2 have changed, updating reports for:
387
+ ${{
388
+ github.event.inputs.models == 'all'
389
+ && 'All models (Qwen2.5-7B-Instruct, Qwen2.5-VL-7B-Instruct, Qwen3-8B-Base)'
390
+ || github.event.inputs.models
391
+ }}
392
+
393
+ - [Workflow run][1]
394
+
395
+ [1]: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}`
396
+ });
397
+ core.info(`Created PR #${pr.data.number}`);
398
+
0 commit comments