一个用于拉取GitLab合并请求(MR)并进行AI性能分析的工具集。
- 拉取指定仓库某时间段内的所有MR及代码差异
- 将MR详情和diff内容存储为JSON文件
- 使用大模型对MR进行性能诊断分析
- 支持自定义分析prompt模板
- Python 3.8+
- GitLab访问令牌
- OpenAI API密钥
- 克隆仓库
git clone <repository-url>
cd my_first_repository- 安装依赖
pip install -r requirements.txt- 配置环境变量 复制环境变量示例文件并修改为实际值:
cp .env.example .env
# 编辑.env文件设置你的GitLab和OpenAI凭证python mr_fetcher.pyMR数据将保存在mrs/目录下,以MR ID命名的JSON文件。
python mr_analyzer.py mrs/<mr_id>.json -s-s:保存分析结果到analysis_results/目录-t:指定自定义prompt模板(位于prompts/目录)
在prompts/目录下创建YAML格式的prompt模板,使用Jinja2语法引用MR数据字段。
mr_fetcher.py:拉取MR数据的主脚本mr_analyzer.py:AI分析主脚本prompts/:存放prompt模板mrs/:存放MR数据JSON文件analysis_results/:存放分析结果
demo仓库,练手用