@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / e3126cd107
Fork 0

A high-throughput and memory-efficient inference and serving engine for LLMs

Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git

Synced Nov 6, 10:45 UTC

[ROCm] issue management - request information for bug issues on ROCm (#37009)

Signed-off-by: Hongxia Yang <hongxiay.yang@amd.com>

Hongxia Yang committed Mar 18, 2026 at 23:51 UTC e3126cd107460444d7fd9a1445b8d4f4393a06b2
1 file changed +104 -1
.github/workflows/issue_autolabel.yml
+104 -1
@@ -383,4 +383,107 @@ jobs:
383 core.notice(`All users for label "${label}" already mentioned, skipping comment`);
384 }
385 }
386 - }
\ No newline at end of file
386 + }
387 +
388 + - name: Request missing ROCm info from issue author
389 + if: contains(steps.label-step.outputs.labels_added, 'rocm') && contains(toJSON(github.event.issue.labels.*.name), 'bug')
390 + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
391 + with:
392 + script: |
393 + const body = (context.payload.issue.body || '').toLowerCase();
394 +
395 + // Check for existing bot comments to avoid duplicate requests
396 + const comments = await github.rest.issues.listComments({
397 + owner: context.repo.owner,
398 + repo: context.repo.repo,
399 + issue_number: context.issue.number,
400 + });
401 + const botAlreadyAsked = comments.data.some(
402 + c => c.user.type === 'Bot' && c.body.includes('<!-- rocm-info-request -->')
403 + );
404 + if (botAlreadyAsked) {
405 + core.notice('ROCm info request already posted, skipping');
406 + return;
407 + }
408 +
409 + // Define required information and detection patterns
410 + const requiredInfo = [
411 + {
412 + name: 'Reproducer',
413 + patterns: [
414 + /reproduc/i, /minimal.?example/i, /repro\b/i, /steps to reproduce/i,
415 + /code.?snippet/i, /sample.?code/i,
416 + /```python[\s\S]*?```/, /```bash[\s\S]*?```/, /```sh[\s\S]*?```/,
417 + ],
418 + ask: 'A minimal reproducer (code snippet or script that triggers the issue)',
419 + },
420 + {
421 + name: 'Error message',
422 + patterns: [
423 + /error/i, /traceback/i, /exception/i, /fault/i, /crash/i,
424 + /failed/i, /abort/i, /panic/i,
425 + ],
426 + ask: 'The full error message or traceback',
427 + },
428 + {
429 + name: 'Installation method',
430 + patterns: [
431 + /docker/i, /rocm\/pytorch/i, /dockerfile/i, /from source/i,
432 + /pip install/i, /build.?from/i, /container/i, /image/i,
433 + /wheel/i, /\.whl/i, /nightly/i,
434 + ],
435 + ask: 'How you installed vLLM (Docker image name, pip install, or build from source steps)',
436 + },
437 + {
438 + name: 'Command',
439 + patterns: [
440 + /vllm serve/i, /python\s+\S+\.py/i, /```bash[\s\S]*?```/,
441 + /```sh[\s\S]*?```/, /command/i, /launch/i, /run\s/i,
442 + /--model/i, /--tensor-parallel/i, /--gpu-memory/i,
443 + ],
444 + ask: 'The command you used to launch vLLM (e.g., `vllm serve ...` or the Python script)',
445 + },
446 + {
447 + name: 'GFX architecture',
448 + patterns: [
449 + /gfx\d{3,4}/i, /mi\d{3}/i, /mi\d{2}\b/i, /radeon/i,
450 + /gpu.?arch/i, /rocm-smi/i, /rocminfo/i, /navi/i,
451 + /instinct/i,
452 + ],
453 + ask: 'Your GPU model and GFX architecture (e.g., MI300X / gfx942) — run `rocminfo | grep gfx`',
454 + },
455 + ];
456 +
457 + const issueBody = context.payload.issue.body || '';
458 + const missing = requiredInfo.filter(info =>
459 + !info.patterns.some(p => p.test(issueBody))
460 + );
461 +
462 + if (missing.length === 0) {
463 + core.notice('All required ROCm info appears to be present');
464 + return;
465 + }
466 +
467 + const author = context.payload.issue.user.login;
468 + const checklist = requiredInfo.map(info => {
469 + const found = !missing.includes(info);
470 + return `- [${found ? 'x' : ' '}] ${info.ask}`;
471 + }).join('\n');
472 + const message = [
473 + '<!-- rocm-info-request -->',
474 + `Hi @${author}, thanks for reporting this ROCm issue!`,
475 + '',
476 + 'To help us investigate, please make sure the following information is included:',
477 + '',
478 + checklist,
479 + '',
480 + 'Please provide any unchecked items above. This will help us reproduce and resolve the issue faster. Thank you!',
481 + ].join('\n');
482 +
483 + await github.rest.issues.createComment({
484 + owner: context.repo.owner,
485 + repo: context.repo.repo,
486 + issue_number: context.issue.number,
487 + body: message,
488 + });
489 + core.notice(`Requested missing ROCm info from @${author}: ${missing.map(m => m.name).join(', ')}`);
\ No newline at end of file