# AgenticCodingBench：为智能体编程场景设计的LLM推理基准测试工具

> SwarmOne开源的AgenticCodingBench是首个专门针对智能体编程工作负载的LLM推理基准测试工具，能够模拟真实编码会话中的多轮上下文增长场景，测量TTFT、token吞吐量和缓存命中率等关键指标。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-10T11:04:24.000Z
- 最近活动: 2026-04-10T11:16:06.182Z
- 热度: 161.8
- 关键词: LLM, benchmark, agentic-coding, inference, RAG, performance-testing, SwarmOne, vLLM, SGLang
- 页面链接: https://www.zingnex.cn/forum/thread/agenticcodingbench-llm
- Canonical: https://www.zingnex.cn/forum/thread/agenticcodingbench-llm
- Markdown 来源: ingested_event

---

# AgenticCodingBench：为智能体编程场景设计的LLM推理基准测试工具

## 背景：为什么需要专门的智能体编程基准？

当Claude Code打开一个文件、读取2000行代码、编辑三个函数、运行测试并读取错误输出时，这背后涉及5轮以上的LLM交互，每轮上下文窗口从40K到83K token不等，且随着会话进行不断累积。这种场景与普通的聊天机器人请求有着本质区别。

现有的基准测试存在明显局限：

- **SWE-bench** 专注于模型在GitHub issue上的解决能力，但不测量推理速度
- **LMSys/Chatbot Arena** 在约2K上下文的场景下测试吞吐量，而智能体编程的上下文通常是20-80倍于此
- **通用LLM基准** 发送均匀分布的请求，而智能体编程包含系统提示、工具模式定义、多轮对话历史、代码文件和不断增长的上下文窗口

AgenticCodingBench正是为了填补这一空白而诞生，它能够针对Claude Code、Cursor、Windsurf和Copilot等工具生成的真实访问模式，对LLM服务栈进行基准测试。

## 核心设计理念

### 真实的智能体编程上下文

AgenticCodingBench的请求填充了逼真的编码会话内容，包括：

- 带有工具定义的系统提示（Read、Write、Edit、Bash、Grep等）
- 包含文件内容的先前对话轮次
- 工具调用结果和错误追踪
- 模拟真实会话演化的不断增长上下文

### 动态上下文增长模拟

该工具能够模拟编码会话中上下文的增长过程：

| 上下文配置 | Token数 | 模拟场景 |
|-----------|---------|---------|
| fresh | ~6K | 刚打开项目——系统提示+第一个问题 |
| short | ~20K | 几轮对话后——读取了几个文件，做了一次编辑 |
| medium | ~40K | 会话中期——多次文件读取、工具调用、错误追踪 |
| long | ~70K | 深度会话——多次编辑、测试运行、调试循环 |
| full | ~83K | 接近上下文限制的长会话——所有累积内容 |

### 前缀缓存失效机制

每个请求都包含唯一的随机盐值，确保测量的是真正的冷启动推理性能，而非缓存命中。这对于准确评估推理成本至关重要。

### 缓存影响测量

通过`--cache-mode both`参数，工具会先运行冷启动测试，再运行热启动测试，展示精确的前缀缓存加速效果。以Anthropic为例，缓存token的成本是未缓存的1/10（$0.30 vs $3.00/百万token）。

### 推理Token检测

自动检测响应中的`reasoning_content`，支持DeepSeek R1、o3和Claude Extended Thinking等推理模型，报告思考开销与可见输出延迟的对比。

## 三大运行模式

AgenticCodingBench提供三种互补的测试模式：

### 1. Speed模式（速度测试）

直接向端点发送流式请求，测量：
- **TTFT**（首Token时间）
- **tok/s**（每用户解码token速度）
- **prefill tok/s**（预填充token速度）
- **ITL**（token间延迟，p50/p95/p99）
- **聚合吞吐量**
- **推理token开销**

示例命令：
```bash
# 快速测试——1和8个并发代理在fresh（6K）上下文
acb speed --endpoint http://localhost:8000 --model my-model --suite quick

# 完整测试套件——扫描所有上下文大小和并发级别
acb speed --endpoint http://localhost:8000 --model my-model --suite full --output report.md

# 测量缓存影响——先冷启动再热启动
acb speed --endpoint http://localhost:8000 --model my-model --cache-mode both
```

### 2. Eval模式（正确性验证）

发送智能体编程任务并验证生成代码的三个层级：

- **语法验证**：代码是否能解析？
- **执行验证**：代码是否能运行？
- **功能验证**：输出是否正确？

示例命令：
```bash
# 功能验证（最高级别）
acb eval --endpoint http://localhost:8000 --model my-model --tasks p1-p25 --validation functional
```

### 3. Agent模式（代理录制）

在真实编码代理（Claude Code）和端点之间运行录制代理，测量实际的多轮智能体会话：

```bash
acb agent --endpoint http://localhost:8000 --model my-model --tasks p1-p10
```

代理会将Anthropic Messages API转换为OpenAI Chat Completions API，并记录每轮请求的时序、上下文增长和工具调用模式。

## 110个智能体编程任务

基准测试包含110个任务，覆盖5个难度层级和5种编程语言：

| 层级 | 范围 | 模拟场景 |
|-----|------|---------|
| 1 - Trivial | P1-P10 | 快速修复：重命名变量、添加类型提示、写单行代码 |
| 2 - Easy | P11-P25 | 单文件任务：实现函数、写CLI工具、解析文件 |
| 3 - Medium | P26-P50 | 多功能工作：构建API端点、写测试、重构模块 |
| 4 - Hard | P51-P75 | 复杂任务：网络、并发、数据库查询、完整程序 |
| 5 - Expert | P76-P100 | 真实项目：多文件应用、分布式系统、全栈 |
| Multi-lang | P101-P110 | TypeScript、Rust、Go、SQL任务跨所有难度 |

语言支持：Python（P1-P100）、TypeScript、Rust、Go、SQL（P101-P110）。

## 典型性能参考数据

以下是常见配置的参考范围（实际数字因硬件、模型大小和服务栈而异）：

| 配置 | 上下文 | 用户数 | TTFT | Tok/s/用户 | 备注 |
|-----|--------|--------|------|-----------|------|
| vLLM on 1x A100 (80GB), 7B模型 | 6K | 1 | ~100ms | ~80-120 | 基线：快速模型，短上下文 |
| vLLM on 1x A100 (80GB), 7B模型 | 40K | 8 | ~2-4s | ~20-40 | 典型智能体工作负载 |
| vLLM on 1x A100 (80GB), 7B模型 | 83K | 32 | ~8-15s | ~5-15 | 压力测试 |
| SGLang on 1x H100, 70B模型 | 6K | 1 | ~200ms | ~40-60 | 更大模型，更快GPU |
| SGLang on 1x H100, 70B模型 | 40K | 8 | ~3-6s | ~10-25 | 智能体甜点配置 |

### 智能体编程的经验法则

- **TTFT < 30ms/用户** → 代码显示流畅
- **TTFT > 100ms/用户** → 明显延迟，影响编辑体验
- **tok/s > 30** → 输出感觉实时
- **tok/s < 10** → 明显的逐字显示效果

## 快速开始

### 安装

```bash
pip install agentic-coding-bench
```

或带代理支持：
```bash
pip install "agentic-coding-bench[proxy]"
```

### 运行公开端点测试

```bash
acb speed \
  --endpoint https://api.swarmone.ai/LWLX7N3s \
  --model Qwen/Qwen2-1.5B \
  --api-key 7nQdjDAX7J \
  --api-key-header X-API-Key \
  --suite quick
```

### Docker运行

```bash
docker run --rm -v $(pwd)/results:/results \
  swarmone/agentic-coding-bench speed \
  --endpoint http://host.docker.internal:8000 \
  --model my-model \
  --suite quick \
  --output /results/report.md
```

## 项目架构

AgenticCodingBench采用模块化设计：

```
agentic_coding_bench/
├── cli.py                 # Click CLI入口
├── config.py              # 配置管理（CLI > env > YAML > defaults）
├── tasks/                 # 任务定义和注册
│   ├── tasks.json         # 110个智能体编程任务
│   └── registry.py        # 按层级、范围、标签、语言加载/过滤
├── context/               # 上下文生成
│   └── codebase_context.py # 智能体会话上下文
├── runner/                # 运行器
│   ├── direct.py          # Speed模式
│   ├── eval_runner.py     # Eval模式
│   └── claude_code.py     # Agent模式
├── proxy/                 # 录制代理
│   ├── server.py          # FastAPI代理服务
│   ├── padding.py         # 上下文填充
│   └── translators.py     # API格式转换
├── metrics/               # 指标收集
│   ├── collector.py       # 每请求指标
│   └── stats.py           # 统计分析
└── report/                # 报告生成
    └── markdown.py        # Markdown报告
```

## 实用价值与意义

AgenticCodingBench填补了LLM基准测试领域的关键空白：

1. **真实场景模拟**：不同于理论测试，它模拟了开发者实际使用AI编码工具时的完整工作流程

2. **全栈性能评估**：不仅测量模型生成质量，更重要的是测量端到端的推理性能指标

3. **成本优化指导**：通过缓存命中率测量，帮助团队优化推理成本

4. **基础设施选型**：提供客观数据支持，帮助团队在vLLM、SGLang、TGI等推理框架间做出选择

5. **容量规划**：通过并发测试，帮助确定支撑特定用户规模所需的硬件配置

## 结语

随着AI编码助手成为开发者日常工作流的核心组成部分，理解这些工具背后的LLM推理性能特征变得至关重要。AgenticCodingBench为这一需求提供了专业、全面的解决方案，是任何构建或评估智能体编程基础设施的团队的必备工具。

项目采用Apache 2.0许可证开源，由SwarmOne团队维护。
