大语言模型基准测试工具

MetriLLM是一款用于本地大语言模型性能和质量基准测试的工具,支持生成综合评分并分享至公共排行榜。

  • by MetriLLM
  • TypeScript
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 MetriLLM/metrillm

使用说明

MetriLLM

在一个命令中对本地LLM模型进行基准测试。 速度、质量、硬件适应性——具有可分享的分数和公开排行榜。

想想Geekbench,但对于您实际硬件上的本地LLM。

npm install -g metrillm@latest
metrillm bench

所得

  • 性能指标:令牌/秒、到达第一个令牌的时间、内存使用情况、加载时间
  • 质量评估:推理、编码、数学、指令遵循、结构化输出、多语言(14个提示,6个类别)
  • 全球得分 (0-100):30%硬件匹配+70%质量
  • 裁决:优秀/良好/勉强/不推荐
  • 一键分享: --share 上传您的结果,并为您提供公共URL+排行榜排名

真实基准结果

从 公开排行榜 --以下所有结果均已提交 metrillm bench --share.

型号 机器 CPU RAM tok/s TTFT 全局 判决
llama3.2:最新版本 Mac Mini 苹果M4 Pro 64 GB 98.9 125毫秒 77 良好
mistral:最新 Mac Mini 苹果M4 Pro 64 GB 54.3 124毫秒 76 良好
gemma3:4b MacBook Air 苹果M4 32 GB 35.9 303毫秒 72 良好
gemma3:1b MacBook Air 苹果M4 32 GB 39.4 362毫秒 72 良好
qwen3:1.7b MacBook Air 苹果M4 32 GB 37.9 3.1秒 70 良好
llama3.2:3b MacBook Air 苹果M4 32 GB 27.8 285毫秒 69 良好
gemma3:12b MacBook Air 苹果M4 32 GB 12.3 656毫秒 67 良好
phi4:14b MacBook Air 苹果M4 32 GB 11.1 515毫秒 65 良好
mistral:7b MacBook Air 苹果M4 32 GB 13.6 517毫秒 61 良好
deepseek-r1:14b MacBook Air 苹果M4 32 GB 10.8 30.0秒 25 不推荐

关键要点:小型型号(1-4B)在Apple Silicon上飞行。具有思维链的较大型号(14B+)即使在功能强大的硬件上也会窒息。 查看完整排行榜→

安装

需要 节点20+ 以及本地运行时: 奥拉玛 或 LM 工作室.

# Install globally
npm install -g metrillm@latest
metrillm bench

# Alternative package managers
pnpm add -g metrillm@latest
bun add -g metrillm@latest

# Homebrew
brew install MetriLLM/metrillm/metrillm

# Or run without installing
npx metrillm@latest bench

用法

# Interactive mode — pick models from a menu
metrillm bench

# Benchmark a specific model
metrillm bench --model gemma3:4b

# Benchmark with LM Studio backend
metrillm bench --backend lm-studio --model qwen3-8b

# Benchmark all installed models
metrillm bench --all

# Share your result (upload + public URL + leaderboard rank)
metrillm bench --share

# CI/non-interactive mode
metrillm bench --ci-no-menu --share

# Force unload after each model (useful for memory isolation)
metrillm bench --all --unload-after-bench

# Export results locally
metrillm bench --export json
metrillm bench --export csv

上传配置(CLI+MCP)

默认情况下,生产构建会将共享结果上传到MetriLLM官方排行榜(https://metrillm.dev).

  • 标准版本不需要CI秘密注射。
  • 本地/dev运行使用相同的默认行为。
  • 自托管或临时部署可以用以下方式覆盖端点:
    • METRILLM_SUPABASE_URL
    • METRILLM_SUPABASE_ANON_KEY
    • METRILLM_PUBLIC_RESULT_BASE_URL

如果这些变量设置为占位符值(来自模板),MetriLLM将恢复为官方默认值。

windows用户

PowerShell的默认执行策略阻止npm全局脚本。如果你看到 PSSecurityException 或 UnauthorizedAccess 跑步时 metrillm,运行一次:

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

或者,使用 npx metrillm@latest 这完全绕过了这个问题。

运行时后端

后端 标记 默认URL 必需环境
奥拉马 --backend ollama http://127.0.0.1:11434 OLLAMA_HOST (可选)
LM工作室 --backend lm-studio http://127.0.0.1:1234 LM_STUDIO_BASE_URL (可选), LM_STUDIO_API_KEY (可选)

共享运行时环境:

  • METRILLM_STREAM_STALL_TIMEOUT_MS (可选):所有后端的流监视程序,默认 30000, 0 禁用它

LM Studio基准测试现在使用本机REST推理端点运行(/api/v1/chat)用于流媒体和非流媒体生成。 之前的OpenAI兼容推理路径(/v1/chat/completions)已从MetriLLM退役,因此tok/s和TTFT可以在可用时依赖本地LM Studio统计数据。 如果LM Studio响应忽略了本机令牌统计信息,MetriLLM仍会计算一个分数,并将吞吐量显示为 estimated.

对于非常大的型号,调整超时标志:

  • --perf-warmup-timeout-ms (默认值 300000)
  • --perf-prompt-timeout-ms (默认值 120000)
  • --quality-timeout-ms (默认值 120000)
  • --coding-timeout-ms (默认值 240000)
  • --stream-stall-timeout-ms (默认值 30000, 0 禁用任何后端的暂停超时)

基准配置文件v1(应用于所有基准提示):

  • temperature=0
  • top_p=1
  • seed=42
  • thinking 遵循您的基准模式(--thinking / --no-thinking)
  • 上下文窗口保持运行时默认值(context=runtime-default)并以此方式记录在元数据中。

LM工作室无思维警卫:

  • 当基准模式要求不思考时(--no-thinking 如果模型仍然发出推理痕迹(用于结果可比性),MetriLLM现在将中止。
  • 要在LM Studio中为受影响的模型禁用它,请将其放在模型聊天模板的顶部: {%- set enable_thinking = false %} 然后弹出/重新加载模型。

评分工作原理

硬件匹配度得分 (0-100)--模型在您的机器上的运行情况:

  • 速度:50%(相对于您的硬件层,令牌/秒)
  • TTFT:20%(首次代币时间)
  • 内存:30%(RAM效率)

质量评分 (0-100)——模型的回答有多好:

  • 推理:20分|编码:20分
  • 结构化输出:15pts |数学:15pts|多语言:10pts

全球得分 =30%硬件匹配+70%质量

硬件会自动检测,评分会根据您的级别(入门/平衡/高端)进行调整。在8GB机器上达到10 tok/s的型号与在64GB钻机上的得分不同。

完整的方法论→

分享您的结果

您分享的每个基准都丰富了 公开排行榜.无需帐户--选择适合您工作流程的方法:

方法 命令/动作 最适合
命令行界面 metrillm bench --share 终端用户
主控程序 呼叫 share_result 工具 AI编码助手
插件 /benchmark 股票期权技巧 克劳德代码/光标

所有方法都会产生相同的结果:

  • A. 公共URL 对于您的基准
  • 你的 排名:“全球排名前X%,[您的CPU]排名前Y%”
  • A. 共享卡 社交媒体
  • A. 挑战链接 发送给朋友

在排行榜上比较您的结果→

MCP服务器

使用Claude Code、Cursor、Windsurf或任何MCP客户端的MetriLLM,无需CLI。

# Claude Code
claude mcp add metrillm -- npx metrillm-mcp@latest

# Claude Desktop / Cursor / Windsurf — add to MCP config:
# { "command": "npx", "args": ["metrillm-mcp@latest"] }
工具 说明
list_models 列出本地可用的LLM型号
run_benchmark 在模型上运行完整的基准测试(性能+质量)
get_results 检索以前的基准测试结果
share_result 将结果上传到公共排行榜

完整的MCP文档→

技能

Slash命令在AI编码助手中工作——不需要服务器,只需要一个Markdown文件。

技能 触发器 描述
/benchmark 用户调用 以交互方式运行完整基准测试
metrillm-guide 自动调用 模型选择和结果的上下文指导

技能包括在 插件 下面,或者可以独立安装:

# Claude Code
cp -r plugins/claude-code/skills/* ~/.claude/skills/

# Cursor
cp -r plugins/cursor/skills/* ~/.cursor/skills/

插件

预构建的捆绑包(MCP+技能+代理)用于更深入的IDE集成。

组件 描述
MCP配置 自动连接到 metrillm-mcp 服务器
技能 /benchmark + metrillm-guide
代理商 benchmark-advisor --分析您的硬件并推荐型号

安装:

# Claude Code
cp -r plugins/claude-code/.claude/* ~/.claude/

# Cursor
cp -r plugins/cursor/.cursor/* ~/.cursor/

看 Claude代码插件 和 光标插件 了解详情。

集成

集成 包 状态 文档
CLI metrillm 稳定 用法
MCP服务器 metrillm-mcp 稳定 MCP文件
技能 -- 稳定 技能
克劳德代码插件 -- 稳定 插件文档
游标插件 -- 稳定 插件文档

发展

npm ci
npm run ci:verify     # typecheck + tests + build
npm run dev           # run from source
npm run test:watch    # vitest watch mode

自制配方奶粉维护

tap公式适用于 Formula/metrillm.rb.

# Refresh Formula/metrillm.rb with latest npm tarball + sha256
./scripts/update-homebrew-formula.sh

# Or pin a specific version
./scripts/update-homebrew-formula.sh 0.2.1

更新公式后,提交并推送,以便用户可以安装/更新:

brew tap MetriLLM/metrillm
brew install metrillm
brew upgrade metrillm

贡献

欢迎投稿!请阅读 贡献指南 在提交pull请求之前。所有提交都必须包括DCO签核。

许可证

Apache许可证2.0 --看 通知 获取商标信息。