miayon/EvalLoom
GitHub: miayon/EvalLoom
EvalLoom 是一个自动化 LLM 代码评估与红队测试框架,通过沙箱执行和加权评分系统对多个大语言模型的代码输出进行基准对比评测。
Stars: 0 | Forks: 0
# EvalLoom — 自动化 LLM 代码评估与红队测试套件
EvalLoom 是一个高性能的 Python 评估和基准测试框架,旨在执行、沙箱化,并针对真实测试用例、边缘条件、效率限制以及红队检查,对大型语言模型 (LLM) 的代码输出进行评估。
## 功能
- **多模型并发**:通过 `asyncio` 实现并排并发 prompt 执行。
- **纯净代码提取**:由 Regex 和 AST 支持的 Python、JS 和 C++ 解析。
- **隔离沙箱子进程执行**:在严格超时(默认 5 秒)下安全执行,进行返回码分析以及 stdout/stderr 指标跟踪。
- **加权评分算法**:
- **指令遵循 (30%)**
- **正确性与边缘用例通过率 (40%)**
- **效率与执行速度 (20%)**
- **安全与红队测试 (10%)**
- **Markdown 审计报告**:自动生成代码并排对比、通过率以及评价说明 (`outputs/EVALUATION_REPORT.md`)。
- **模拟与实时模式**:无需依赖 API key 即可进行无缝的离线测试,或者使用 Google Gemini、OpenAI 或 Anthropic 进行实时评估。
## 文件结构
```
evalloom/
├── benchmarks/
│ └── coding_prompts.json # Benchmark prompts & test cases
├── evalloom/
│ ├── __init__.py
│ ├── api_runner.py # Async LLM connector & Mock provider
│ ├── code_parser.py # AST & Regex code block extractor
│ ├── sandbox.py # Subprocess isolated execution engine
│ ├── evaluator.py # Weighted 0-100 scoring logic
│ └── reporter.py # Markdown report builder
├── tests/
│ ├── test_sandbox.py # Unit tests for sandbox engine
│ └── test_evaluator.py # Unit tests for scoring engine
├── outputs/
│ └── EVALUATION_REPORT.md # Auto-generated markdown evaluation report
├── .env.example # Environment variables template
├── main.py # CLI entrypoint
├── requirements.txt # Dependencies
└── README.md # Project documentation
```
## 快速开始
### 1. 安装
```
pip install -r requirements.txt
```
### 2. 运行离线基准测试(模拟模式)
```
python main.py --mock
```
### 3. 使用 API key 运行实时基准测试
在 `.env` 或环境变量中设置你的 API key:
```
cp .env.example .env
# 使用 GEMINI_API_KEY、OPENAI_API_KEY 等编辑 .env
```
运行实时评估:
```
python main.py --live --model-a gemini-2.5-flash --model-b gpt-4o-mini
```
## 运行单元测试
```
python -m unittest discover -s tests
```
标签:DLL 劫持, 代码评估, 反取证, 大语言模型, 安全评估, 文档结构分析, 自动化payload嵌入, 计算机取证, 逆向工具