Files
model-eval-site/API.md
T

90 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 模型评测网站 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 状态码。