Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Token RecycleBin

LLM 代码能力 Benchmark 平台 -- 通过真实代码执行检测 AI API 中转站的模型质量。

在线体验: https://token-recyclebin.com

工作原理

  1. 用户将一句提示词发给 AI Agent(Claude Code、ChatGPT、Cursor 等)
  2. Agent 读取操作手册,逐题作答 21 道 Python 代码题
  3. 每道题的代码在服务器端 Python 沙箱中真实执行并评分
  4. 完成后生成报告,与官方渠道 Baseline 对比

核心设计:API Key 永远不经过服务器。 Agent 在用户本地环境调用待测 API,只把代码提交给平台评分。

题目覆盖

21 道题,5 个类别:

类别 题数 权重 示例
高级算法 6 30% 迷宫钥匙最短路、CSV解析、依赖版本解析
语言深度 4 20% 异步任务调度器、描述符协议、TTL缓存
系统实现 4 20% Mini SQL引擎、事务KV存储、正则引擎
Bug猎手 4 15% 线程安全LRU、JSON合并、Dijkstra缺陷
极限优化 3 15% KMP O(n)、滑动窗口、单调栈

评级:S(>=80) / A(>=65) / B(>=50) / C(>=35) / D(<35)

快速开始

环境要求

  • Node.js 18+
  • Python 3.8+

安装与运行

# 后端
npm install
node server.js        # 默认端口 20026

# 前端(开发模式)
cd frontend
npm install
npm run dev           # Vite 开发服务器,端口 5173

# 前端(生产构建)
cd frontend
npm run build         # 输出到 frontend/dist/

生产环境中 Express 直接服务 frontend/dist/ 静态文件。

环境变量

变量 说明 默认值
PORT 服务器端口 20026
BASE_URL 公网基础 URL http://localhost:20026
ADMIN_TOKEN 管理员 API Token (空,管理接口不可用)

API 端点

POST /api/benchmark/start                  - 声明模型,获取第一题
POST /api/benchmark/sessions/:id/reply     - 提交代码回答,评分+返回下一题
GET  /api/benchmark/sessions/:id/status    - 查询进度
GET  /api/benchmark/sessions/:id/stream    - SSE 实时进度推送
GET  /api/benchmark/sessions/:id/result    - 获取完整报告
POST /api/benchmark/sessions/:id/end       - 提前终止
POST /api/benchmark/sessions/:id/meta      - 补充中转站信息
GET  /api/benchmark/skill                  - Agent 操作手册
GET  /api/benchmark/questions              - 题目概览
GET  /api/benchmark/stats                  - 全局统计
GET  /api/benchmark/leaderboard            - 排行榜
GET  /api/benchmark/baselines              - 官方 Baseline 列表
GET  /api/benchmark/recent                 - 最近测试结果
PUT  /api/admin/baselines/:model           - 设置 Baseline (需 ADMIN_TOKEN)
DELETE /api/admin/baselines/:model         - 删除 Baseline (需 ADMIN_TOKEN)

技术栈

  • 后端: Node.js + Express (ESM) + Python3 沙箱
  • 前端: React 18 + React Router v6 + Vite + Tailwind CSS + Framer Motion + Recharts
  • 持久化: JSONL 文件存储

项目结构

├── server.js              # Express 服务器
├── lib/
│   ├── questions.js       # 21 道题目定义与测试用例
│   ├── sessions.js        # Session 管理与评分逻辑
│   ├── sandbox.js         # Python 代码执行沙箱
│   ├── leaderboard.js     # 排行榜 JSONL 持久化
│   └── baselines.js       # 官方 Baseline 管理
├── frontend/
│   └── src/
│       ├── App.jsx        # 路由
│       ├── pages/         # Landing、Progress、Result、Leaderboard
│       └── components/    # Header
├── data/                  # 运行时数据(.gitignore)
│   ├── results.jsonl      # 测试结果
│   └── baselines.json     # Baseline 数据
└── package.json

许可证

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages