感谢你考虑为 LLM-Local 项目做出贡献!
如果你发现了 bug,请创建一个 Issue 并包含:
- Bug 的详细描述
- 复现步骤
- 期望的行为
- 实际的行为
- 系统环境 (操作系统、Python 版本等)
如果你有新功能的想法:
- 先检查是否已有相关 Issue
- 创建一个新的 Feature Request Issue
- 详细描述功能和使用场景
- Fork 项目
- 创建你的特性分支 (
git checkout -b feature/AmazingFeature) - 提交你的更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 创建一个 Pull Request
- 遵循 PEP 8 规范
- 使用 Black 进行代码格式化
- 使用类型提示
# 安装开发依赖
pip install black flake8 isort
# 格式化代码
black src/
# 检查代码风格
flake8 src/
# 排序导入
isort src/使用清晰的提交信息:
feat: 添加新功能
fix: 修复bug
docs: 文档更新
style: 代码格式调整
refactor: 重构代码
test: 添加测试
chore: 构建或辅助工具的变动
# 克隆项目
git clone https://github.com/Dajucoder/LLM-Local.git
cd LLM-Local
# 创建虚拟环境
python -m venv venv
source venv/bin/activate
# 安装开发依赖
pip install -e ".[dev]"
# 运行测试
pytest tests/在提交 PR 之前,请确保:
- 所有测试通过
- 新功能有相应的测试
- 代码覆盖率不降低
如果你的更改影响了用户使用方式:
- 更新 README.md
- 更新相关的文档文件
- 添加使用示例
- 尊重所有贡献者
- 保持友善和专业
- 接受建设性的批评
- 关注项目的最佳利益
提交代码即表示你同意你的贡献使用 MIT 许可证。