开发 LLM Compressor
LLM Compressor 使用 Python 3.8-3.11 开发和测试。要开发 LLM Compressor,您还需要开发依赖项并遵循样式指南。
以下是一些入门的详细信息。
基本命令
开发安装
git clone https://github.com/vllm-project/llm-compressor
cd llm-compressor
python3 -m pip install -e "./[dev]"
这将克隆 LLM Compressor 仓库,安装它,并安装开发依赖项。
代码样式和格式检查
这将使用 ruff 运行自动代码样式检查,以测试仓库的代码是否符合其标准。
示例:在本地测试更改
这将运行针对指定框架的 LLM Compressor 单元测试。
在更改之前,请将发现的任何错误作为 Issue 提交,并在提交 Pull Request 之前修复所做的更改后发现的任何错误。
GitHub 工作流程
-
将
llm-compressor仓库 fork 到您的 GitHub 账户:https://github.com/vllm-project/llm-compressor。 -
克隆您的 GitHub 仓库 fork,将
<username>替换为您的 GitHub 用户名。
使用 ssh(推荐)
git clone [email protected]:<username>/llm-compressor.git
或 https
- 添加一个远程以跟上上游更改。
如果您已有副本,请获取上游更改。
- 创建一个功能分支进行工作。
- 在您的功能分支中工作。
- 定期 rebase 您的更改
- 完成后,将相关提交合并(“squash”)为一个。
这将打开您的编辑器,允许您重新排序提交并合并它们:- 重新排序行以更改提交顺序(在不引起冲突的情况下尽可能)- 使用 s(squash)或 f(fixup)前缀提交以合并多余的提交。
- 提交一个 Pull Request
转到您的 fork 主页
如果您最近推送了更改,GitHub 将自动弹出 Compare & pull request 按钮,用于您最近推送的任何分支。如果您单击该按钮,它将自动提供向 vllm-project/llm-compressor 仓库提交您的 Pull Request。
- 为您的 Pull Request 提供一个有意义的标题。一旦
Semantic Pull RequestGitHub 检查的状态从“pending”变为“passed”,您就知道您的标题格式正确。 -
在描述中,解释您的更改以及它们正在解决的问题。
-
处理代码审查意见
重复步骤 5. 到 7. 来处理任何代码审查意见,并在必要时 rebase 您的更改。
推送您更新的更改以更新 Pull Request
如果您的提交历史在执行 rebase 时被更改,可能需要使用 --force 来覆盖您现有的 Pull Request。
注意:在使用 --force 时要小心,因为如果不小心可能会丢失数据。