LLMStorm 从单请求开始逐档提升压力,把中转站的成功率、吞吐量、TTFT、P95 延迟、HTTP 状态分布与失败详情实时呈现出来,并给出经过实测的建议稳定并发。无需上传 Key,无需外部数据库,几分钟内即可看清真实容量边界。
| 🌩️ 逐档加压 按 1 → 25% → 50% → 75% → 最大值自动探测,避免一开始就冲击上游。 |
📡 实时观测 通过 SSE 持续展示进度、成功请求、状态码、吞吐和 P95 延迟。 |
🎯 容量结论 以成功率阈值为依据,输出建议稳定并发与完整分档结果。 |
| 🔌 多协议适配 原生支持 OpenAI Chat Completions、Anthropic Messages 与 Gemini 流式协议。 |
💰 价格对比 在线刷新模型价格,对照中转站输入、输出和缓存单价,并按真实 Token 用量估算成本。 |
🛡️ 本地优先 Key 仅在单次请求内存中使用,不写入日志、文件或浏览器存储。 |
| 协议 | 厂商与模型系列 | 能力 |
|---|---|---|
| OpenAI Chat Completions | GPT、DeepSeek、Qwen、GLM、Kimi、MiniMax、Grok、Mistral 及兼容中转站 | 流式输出、推理内容、精确/自定义模型 ID |
| Anthropic Messages | Claude、Claude Code 别名 | 原生请求头、Messages 流式解析 |
| Gemini Native | Gemini 文本模型 | streamGenerateContent 原生流式解析 |
所有厂商都支持手动输入自定义模型 ID。模型预设统一维护在 static/model_catalog.json,新增模型无需修改主界面逻辑。
需要 Python 3.11 或更高版本:
git clone https://github.com/lien0219/LLMStorm.git
cd LLMStorm
python -m pip install -r requirements.txt
python web_app.py浏览器打开 http://127.0.0.1:8765。
git clone https://github.com/lien0219/LLMStorm.git
cd LLMStorm
docker compose up -d --buildCompose 默认启用公网安全模式,单次最大并发为 500。服务器可直接拉取带版本号的 GHCR 镜像;发布、升级与回滚流程见 生产部署指南。
flowchart LR
UI[Web Console] -->|POST /api/test| API[aiohttp API]
API --> ENGINE[Load Engine]
ENGINE --> RAMP[Progressive Ramp]
RAMP --> ADAPTER{Provider Adapter}
ADAPTER --> OPENAI[OpenAI Compatible]
ADAPTER --> CLAUDE[Anthropic Messages]
ADAPTER --> GEMINI[Gemini Native]
OPENAI --> RELAY[LLM Relay]
CLAUDE --> RELAY
GEMINI --> RELAY
ENGINE -->|SSE events| UI
当最大并发为 N 时,系统测试去重后的 1、25% N、50% N、75% N、N。每档发送一轮与该档并发数相等的请求,建议值取成功率不低于配置阈值的最高已测档位。
Note
这是一轮快速容量探测,并非长时间稳定性压测。真实模型调用可能产生费用,请从小并发开始。
llmstorm/providers/ 厂商协议适配器
llmstorm/policy.py 压测阈值与限制
static/model_catalog.json 共享厂商与模型目录
static/api.js SSE 与 API 传输
static/monitor.js 结果和日志渲染
load_test_engine.py 并发调度与指标计算
web_app.py Web API 与生产安全边界
模块职责、兼容契约和新增厂商步骤见 ARCHITECTURE.md。
- 不持久化 API Key、提示词或测试结果。
- 仅将总浏览量和总点赞量保存到本地 SQLite;实时在线会话只保存在内存中。
- 公网模式阻止私有、回环、链路本地及保留地址,并强制使用 HTTPS 上游。
- 服务端提供单次并发上限和全局任务数限制。
- 托管实例运营者仍可能在服务器网络边界观察流量;敏感 Key 建议使用自托管实例。
- 仅可测试自己拥有或已获得明确授权的服务。
安全问题请通过 GitHub Security Advisory 私下报告,详见 SECURITY.md。
项目通过以下门禁持续验证:
- Python 3.11 / 3.13 测试矩阵
- Ruff 静态检查与 Mypy 类型检查
- 分支覆盖率门槛
- Playwright 桌面端、移动端与国际化回归
- Docker 镜像构建检查
- Dependabot 依赖更新
展开本地验证命令
python -m pip install -r requirements-dev.txt
python -m ruff check .
python -m mypy
python -m coverage run -m unittest discover -s tests -v
python -m coverage report
npm install
npx playwright install chromium
npm run check
npm run test:e2e如果 LLMStorm 帮你更快地摸清了服务容量,欢迎通过 Star、分享、反馈或赞助支持项目持续维护。
| 方式 | 信息 | 适合场景 |
|---|---|---|
1824851183 |
即时沟通、赞助咨询 | |
| 邮箱 | 1824851183@qq.com | 问题反馈、功能建议、合作说明 |
| GitHub | lien0219/LLMStorm | Star、Issue 与 Pull Request |
一次性或长期赞助请先通过 QQ 或邮箱联系,以确认当前可用的赞助方式。项目不会在网页中收集付款信息,请谨防非官方账号。完整说明见 SUPPORT.md,在线运行时也可访问 /support 页面。
欢迎提交 Issue 和 Pull Request。开始贡献前请阅读 CONTRIBUTING.md 与 ARCHITECTURE.md。
LLMStorm 使用 MIT License 发布。原有命令行压测工具仍可通过 python gpt_concurrency_test.py --help 使用。