mcore-linting-and-formatting

作者: nvidia

針對 Megatron-LM 的 linting 與格式化。涵蓋執行 autoformat.sh、工具(ruff、black、isort、pylint、mypy)以及程式碼風格規則。

npx skills add https://github.com/nvidia/megatron-lm --skill mcore-linting-and-formatting

Linting and Formatting


Running the Formatter

Run before opening a PR:

# Check mode (no changes applied)
BASE_REF=main CHECK_ONLY=true SKIP_DOCS=false bash tools/autoformat.sh

# Fix mode
BASE_REF=main CHECK_ONLY=false bash tools/autoformat.sh

Tools invoked: black, isort, pylint, ruff, mypy.


Import Ordering

After editing imports in any Python files, always run uv run isort on those files before committing:

uv run isort <file1>.py <file2>.py

Setting Up the Linting Group

Inside the container:

uv sync --locked --only-group linting

This installs ruff, black, isort, pylint — the same tools used by tools/autoformat.sh and CI's linting job.


Code Style Rules

Follow style-guide.md.

來自 nvidia 的更多技能