基于https://github.com/xy200303/AiCodeAudit项目改进
- 克隆项目到本地:
git clone https://github.com/echo0d/AICodeAuditPro.git
cd AICodeAuditPro- 安装依赖:
pip install -r requirements.txtpython main.py -d <target_dir> -o <output_dir> -b <batch_size>参数说明:
-d:目标项目目录路径(默认:"./演示项目/openssh-9.9p1")-o:输出文件目录(默认:"./output")-b:并发处理数量(默认:100)
# 使用默认参数审计示例项目
python main.py
# 指定目标目录和输出目录
python main.py -d ./your-project -o ./audit-results
# 调整并发数量
python main.py -d ./your-project -b 50审计完成后,在输出目录中会生成以下文件:
<project_md5>.graphml:项目依赖关系图<project_md5>_审计结果.log:详细的审计报告
项目依赖关系图可以用PyVis.py生成为html文件
项目配置在config.yaml文件中,可以根据需要调整相关参数。
支持的LLM提供商
- OpenAI (默认)
- Anthropic Claude
- Azure OpenAI
- 阿里通义千问 (Qwen)
- 智谱GLM
- DeepSeek
在 config.yaml 文件中,设置 llm.provider 字段来选择要使用的LLM:
llm:
provider: openai # 可选: openai, anthropic, azure, qwen, glm, deepseek然后配置对应的API密钥和参数。
根据您选择的LLM提供商,可能需要安装额外的依赖包:如果使用 Anthropic Claude
pip install anthropic- 每个LLM提供商的API调用格式可能略有不同,但本项目已经封装了这些差异
- 不同的模型可能有不同的token限制和定价
- 建议在生产环境中使用环境变量来管理API密钥,而不是直接写在配置文件中