一个面向 LLM API 的监控、巡检与对比平台。
它不是聊天产品,核心目标是:
- 管理不同供应商接入配置
- 管理供应商下的模型定义
- 维护可重复执行的测试场景与用例
- 创建手动执行和定时巡检任务
- 保存运行结果并分析成功率、耗时、TTFT、吞吐、缓存命中等指标
llm-api-check/
├── backend/
├── frontend/
├── docs/
├── docker-compose.yml
└── README.md
backend/: FastAPI + SQLAlchemy Async + Alembic + JWT Auth + APSchedulerfrontend/: React + TypeScript + Vite + React Query + React Router + shadcn/ui + i18n
- 后台认证登录
- Providers / Models / Scenarios / Tasks / Runs 后台管理
- Provider 连接调试与业务调试
- Model 临时 prompt 调试与场景调试
- Task 手动运行、调试运行、批量创建、定时调度
- Run 详情、Case 时间线、快照和指标分析
- Dashboard 总览、趋势、失败明细、供应商对比
- 根目录
.env.example用于docker compose backend/.env.example用于本地后端开发frontend/.env.example用于本地前端开发
cd backend
cp .env.example .env
# 生成一个至少 32 字节的本地 JWT_SECRET 和独立加密密钥
openssl rand -hex 32
# 将生成的值分别写入 backend/.env 中的 JWT_SECRET / SECRET_ENCRYPTION_KEY
# 再设置 INITIAL_ADMIN_PASSWORD,首次启动会自动创建 INITIAL_ADMIN_USERNAME 对应的管理员账号
uv sync
uv run python -m alembic upgrade head
uv run uvicorn src.main:app --reload默认服务地址:http://127.0.0.1:8000
cd frontend
cp .env.example .env
npm install
npm run dev默认前端地址:http://127.0.0.1:5173
cp .env.example .env
# 将 JWT_SECRET / SECRET_ENCRYPTION_KEY 改成至少 32 字节的随机值
# 并设置 INITIAL_ADMIN_PASSWORD
docker compose up --build -d默认访问地址:
- 前端:
http://127.0.0.1:8080 - 后端:
http://127.0.0.1:8000 - API 文档:
http://127.0.0.1:8080/docs
停止服务:
docker compose down如果要同时删除数据库卷:
docker compose down -v项目设计与实现说明位于 docs:
后端测试:
cd backend
JWT_SECRET=test_local_secret_0123456789_abcdefghijklmnopqrstuvwxyz uv run pytest前端构建验证:
cd frontend
npm run build