Dify AI Ӧ�ÿ�����Ŀ

performance-baseline.md 4.0KB

性能基线指标

西安云美电子科技有限公司 - 企业知识库 版本:v1.0 | 创建时间:2026-06-06


1. 测试环境

项目 规格
服务器 8 核 CPU / 16 GB RAM / 100 GB SSD
部署方式 Docker Compose
Dify 版本 最新社区版(v1.x)
模型 DeepSeek-Chat
知识库文档数 100-500 篇(初期)
知识库分段方式 自动分段,500 tokens/段

2. 响应时间基线

场景 指标 目标值 可接受值
首次响应(首 token) TTFB ≤ 3s ≤ 5s
简单问题完整回答 总耗时 ≤ 8s ≤ 15s
复杂问题(跨分类检索) 总耗时 ≤ 12s ≤ 20s
多轮对话第 N 轮(N≤10) 总耗时 ≤ 10s ≤ 15s
流式输出首字延迟 TTFB ≤ 2s ≤ 4s
知识库索引构建(单文档) 索引耗时 ≤ 10s ≤ 30s
知识库索引构建(批量100篇) 索引耗时 ≤ 5min ≤ 10min

3. 准确率基线

场景 指标 目标值 可接受值
P0 核心问题回答准确率 Top-1 准确率 ≥ 95% ≥ 85%
制度流程类问题 回答准确率 ≥ 98% ≥ 90%
产品技术类问题 回答准确率 ≥ 95% ≥ 85%
FAQ 类问题 回答准确率 ≥ 98% ≥ 90%
不相关问题拒绝率 拒绝准确率 ≥ 95% ≥ 85%
来源标注准确率 标注准确率 ≥ 90% ≥ 80%
多轮对话上下文保持率 一致性 ≥ 90% ≥ 80%

4. 并发与容量基线

场景 指标 目标值 可接受值
并发用户数 最大并发 ≥ 20 ≥ 10
并发响应时间(10用户) P95 延迟 ≤ 10s ≤ 20s
并发响应时间(20用户) P95 延迟 ≤ 15s ≤ 30s
单知识库文档上限 最大文档数 1000 篇 500 篇
单知识库分段上限 最大分段数 50000 段 20000 段
单次检索返回 Top-K 相关文档 3-5 段 3-10 段

5. 可用性基线

场景 指标 目标值
服务可用性 Uptime ≥ 99%
计划外停机 月均 ≤ 1 次
故障恢复时间 MTTR ≤ 30 min
数据库备份频率 RPO 每日
数据恢复测试 频率 季度

6. 模型资源消耗基线

场景 指标 估算值
单次问答(简单) DeepSeek Token 消耗 ~500-1000 tokens
单次问答(复杂) DeepSeek Token 消耗 ~1500-3000 tokens
每日 50 次问答 日 Token 消耗 ~50K-100K tokens
每月预估 月 Token 消耗 ~1.5M-3M tokens

7. 基线测量方法

7.1 响应时间测量

# 使用 curl 测量 TTFB
curl -o /dev/null -s -w "TTFB: %{time_starttransfer}s\nTotal: %{time_total}s\n" \
  -X POST http://<dify-host>/v1/chat-messages \
  -H "Authorization: Bearer <api-key>" \
  -H "Content-Type: application/json" \
  -d '{"query":"差旅报销标准是什么?","inputs":{},"response_mode":"blocking","user":"test-user"}'

7.2 准确率测量

使用 tests/test-cases.md 中的 37 个测试用例,逐条执行并记录结果。

计算公式:

  • Top-1 准确率 = 正确回答数 / 总测试问题数 × 100%
  • 拒绝准确率 = 正确拒绝无关问题数 / 总无关问题数 × 100%

7.3 并发测量

# 使用 ab(Apache Benchmark)模拟并发
ab -n 20 -c 10 -p request.json -T application/json \
  -H "Authorization: Bearer <api-key>" \
  http://<dify-host>/v1/chat-messages

8. 性能调优建议

问题方向 调优手段
响应慢 优化知识库分段大小、调整 Top-K 参数、升级服务器
准确率低 优化分段策略、增加元数据标签、调整检索权重
并发不足 扩展 Worker 实例数、增加 Redis 内存、升级 CPU
Token 消耗高 优化 System Prompt 长度、调整上下文窗口、启用缓存

最后更新: 2026-06-06