v1.0.0 模型评测网站:模型运行速度排行(解码/预填充/首字) + 账号体系 + 接收llm-speed-tester一键发送 + 演示数据 + 图表(16016)

This commit is contained in:
2026-09-02 13:14:16 +08:00
commit 1b08c95929
13 changed files with 1757 additions and 0 deletions
+89
View File
@@ -0,0 +1,89 @@
# 模型评测网站 API 文档
Base: `http://<IP>:16066`(端口 16066
## 1. 接收提交(llm-speed-tester 一键发送)
`POST /api/submit`
Header: `Content-Type: application/json``X-Token: meval16066`
```bash
curl -X POST http://127.0.0.1:16066/api/submit \
-H "Content-Type: application/json" \
-H "X-Token: meval16066" \
-d '{
"account": "性能评测组", # 账号,不存在自动创建
"source_test_id": 25, # llm-speed-tester 测试ID
"source_site": "llm-speed-tester",
"provider": "openai",
"model": "nvidia/Qwen3.6-35B-A3B-NVFP4",
"test_name": "我的测试",
"summary": { "samples_ok":2, "samples_total":2, "avg_ttft_ms":180,
"avg_prefill_speed":320.5, "avg_decode_speed":88.2,
"avg_output_tokens":128, "avg_total_ms":2500,
"concurrency_levels":[1],
"by_length": {"2048": {"avg_ttft_ms":150,"avg_prefill_speed":350,
"avg_decode_speed":92,"avg_prompt_tokens":1500,
"avg_output_tokens":128,"avg_total_ms":2000}},
"by_concurrency": {} },
"gen": {"context_lengths":[2048,8192], "max_tokens":128, "samples":2, "concurrency_levels":[1]},
"runs": []
}'
```
响应:
```json
{ "ok": true, "id": 21, "account_id": 2, "account": "性能评测组",
"model": "nvidia/Qwen3.6-35B-A3B-NVFP4",
"url": "/model.html?provider=openai&model=nvidia/Qwen3.6-35B-A3B-NVFP4" }
```
## 2. 排行 / 统计
```bash
# 模型速度排行(按 provider+model 聚合)
GET /api/leaderboard?sort=avg_decode_speed&order=desc&limit=200
# sort 可选: avg_decode_speed / avg_prefill_speed / avg_ttft_ms / best_decode / cnt / accounts / last_tested
GET /api/stats # 统计卡片
GET /api/health # 健康检查 + stats
```
## 3. 模型详情
```bash
GET /api/model?provider=openai&model=nvidia/Qwen3.6-35B-A3B-NVFP4
```
返回:该模型全部提交(submissions,含账号)+ 按上下文长度聚合(by_length+ 折线图数据(line_csv/line_payload)。
## 4. 提交管理
```bash
GET /api/submissions?page=1&page_size=20&q=关键词&account_id=2&model=xxx&provider=xxx
GET /api/submissions/<id> # 单条详情
DELETE /api/submissions/<id> # 删除
GET /api/submissions/<id>/chart # 上下文长度→速度折线图 PNG
```
## 5. 账号管理
```bash
GET /api/accounts
POST /api/accounts {"name":"xxx","remark":"yyy"} # 新增(重名 400
PUT /api/accounts/<id> {"name":"xxx","remark":"yyy"} # 改名/备注
DELETE /api/accounts/<id> # 删除(连带其提交)
```
## 6. 其他
```bash
POST /api/seed-demo # 🎲 生成演示评测数据
POST /api/chart # 图表代理(转发 data-chart-tool 16016,返回 PNG
```
## 错误
所有接口失败返回 `{"ok": false, "error": "..."}` + 对应 HTTP 状态码。