用途:为 Megatron-LM 项目提供代码检查(linting)与格式化(formatting)流程,帮助在提交 PR 前统一代码风格。
主要能力:覆盖运行 tools/autoformat.sh 脚本,以及 black、isort、pylint、ruff、mypy 等工具的使用方式,并说明导入排序与代码风格规则。
使用方式:提交 PR 前运行格式化脚本。检查模式(不修改文件):BASE_REF=main CHECK_ONLY=true SKIP_DOCS=false bash tools/autoformat.sh;修复模式:BASE_REF=main CHECK_ONLY=false bash tools/autoformat.sh。脚本会调用 black、isort、pylint、ruff、mypy。修改任意 Python 文件的导入后,提交前需对相关文件运行 uv run isort <file1>.py <file2>.py。在容器内可通过 uv sync --locked --only-group linting 安装 linting 组,包含 ruff、black、isort、pylint,与 autoformat.sh 及 CI linting 任务所用工具一致。
适用场景:Megatron-LM 仓库的日常开发、PR 提交前的本地检查与自动修复、CI 代码检查准备。
限制:代码风格需遵循 style-guide.md;资料未提供各工具的具体配置、版本要求、支持平台及更多细节。