这是怎么工作的?

本页说明「能跑吗?」如何检测硬件、计算评分以及给出兼容性判断。

工作原理

① 检测
WebGL / WebGPU
② 匹配
查 GPU 数据库
③ 评分
速度 + 内存余量
④ 等级
S / A / B / C / D / F

硬件检测

本站完全在浏览器端运行,通过三个标准 Web API 读取硬件信息,无需安装任何程序。

WebGL · GPU 型号识别
const canvas = document.createElement('canvas');
const gl = canvas.getContext('webgl');
const ext = gl.getExtension('WEBGL_debug_renderer_info');
const renderer = gl.getParameter(ext.UNMASKED_RENDERER_WEBGL);
// → "NVIDIA GeForce RTX 4090/PCIe/SSE2"
WebGPU · 适配器信息
const adapter = await navigator.gpu.requestAdapter();
const info = await adapter.requestAdapterInfo();
info.device; // "NVIDIA GeForce RTX 4090"
info.architecture; // "ampere"
Navigator · 系统内存
navigator.hardwareConcurrency; // CPU 核心数,如 16
navigator.deviceMemory; // 系统内存 GB(近似值),如 16

GPU 数据库

内置数据库覆盖约 90 款主流桌面 GPU(NVIDIA / AMD / Intel Arc)及 Apple Silicon(M1–M4 全系列)。每条记录存储 VRAM、理论带宽和核心数。

独立显卡(GPU_DB 示例)
型号 VRAM 带宽 核心数
RTX 4090 24 GB 1008 GB/s 16384
RTX 4060 8 GB 272 GB/s 3072
RX 7900 XTX 24 GB 960 GB/s 6144
Apple Silicon(APPLE_DB 示例)
芯片 统一内存 带宽
M4 Max 36–128 GB 546 GB/s
M4 Pro 24–64 GB 273 GB/s
M4 16–32 GB 120 GB/s

VRAM 需求计算

模型 VRAM 需求由参数量和量化精度共同决定:

// 理论公式
VRAM(GB) ≈ params(B) × bits ÷ 8 ÷ 1024³ + overhead
// 各量化比例(相对 FP16 基准)
Q4_K_M ≈ 0.55× base    Q8_0 ≈ 0.50× base
Q6_K ≈ 0.41× base    Q2_K ≈ 0.19× base
// 示例:70B 模型 Q4_K_M
70 × 4 ÷ 8 ÷ 1 ≈ 35 GB + ~2 GB 开销 = ~37 GB

本站存储的是各模型实测 GGUF 文件大小,精度优于理论公式估算。评分和兼容性判断均以 Q4_K_M 为统一基准。

评分算法

总评分(0–100)由三个分量加权合成:

55%
速度得分
根据估算的生成速度(tok/s)打分。速度越快,得分越高;低于可用阈值的结果几乎为零分。
35%
显存余量得分
根据模型占用显存的比例打分。余量越充裕,得分越高;占用接近上限时得分大幅下降。
+加成
参数规模质量加成
模型参数量越大,额外加分越多(对数增长,有上限)。鼓励在显存允许时优先选用更大规模的模型。

勉强能跑(显存紧张)的情况会对最终得分施加额外惩罚;完全无法运行时评级固定为 F。
具体算法参数会随数据积累持续调整,以下分级体系保持稳定。

评级体系

评级 分数 含义
S ≥ 85 极优,高速流畅,显存充裕
A 70–84 优秀,速度快,体验良好
B 55–69 良好,速度尚可,可正常使用
C 40–54 中等,速度较慢,勉强可用
D 20–39 差,速度很慢或显存紧张
F 0–19 无法运行或极度受限

兼容性分类

独立显卡(离散 GPU)
CAN RUN modelVRAM ≤ VRAM × 85%
显存充裕,完整装入,速度最优
TIGHT 85% < modelVRAM ≤ VRAM × 110%
勉强装入,需关闭其他程序,上下文受限
CAN'T RUN modelVRAM > VRAM × 110%
显存不足,无法完整载入,不建议尝试
Apple Silicon(以总 RAM 为基准)
CAN RUN modelVRAM ≤ 总RAM × 52.5%
TIGHT 52.5% < modelVRAM ≤ 总RAM × 63%
CAN'T RUN modelVRAM > 总RAM × 63%

Tokens/s 估算

LLM 推理是内存带宽密集型任务。每生成一个 token,GPU 几乎需要完整读取一遍模型权重——带宽决定速度。

tok/s ≈ bandwidth(GB/s) ÷ modelVRAM(GB) × efficiency
平台 效率系数 原因
离散 GPU(NVIDIA / AMD) 0.70 专用显存,调度开销较小
Apple Silicon 0.65 统一内存,GPU 核心数相对较少
移动 GPU 0.40 功耗限制,带宽利用率低

数据来源

  • HuggingFace API:构建时(服务器端 Node.js)批量拉取模型元数据,包括量化文件大小、下载量、点赞数
  • Ollama Library:Ollama 支持的模型列表及量化选项
  • 模型卡 / 论文:架构参数(参数量、激活参数量、上下文长度)
  • GPU 厂商规格:NVIDIA、AMD、Intel 官方规格表及 TechPowerUp GPU 数据库
  • Apple 官方:M 系列芯片内存带宽规格

HuggingFace 统计数据

下载量和点赞数在构建时通过 HuggingFace API 获取,存储为静态数据,不影响浏览器运行时性能:

const res = await fetch("https://huggingface.co/api/models/" + modelId);
const data = await res.json();
data.downloads; // 2,450,000
data.likes; // 12,500

数据在每次站点构建(deploy)时自动刷新,确保下载量和热度数据保持相对新鲜。

Apple Silicon:统一内存

Apple Silicon 采用统一内存架构(UMA),CPU 与 GPU 共享同一块物理内存。这让本地 AI 推理受益于远超传统独立显卡的可用内存空间。

// 有效内存计算
effectiveVRAM = 总 RAM × 75% × 70%
// 75% = 系统预留后可用  |  70% = 推理框架开销后可用
// 示例:M2 Max 32 GB
32 × 0.75 × 0.70 = 16.8 GB 有效 VRAM
优势
大内存容量可跑超大模型(如 70B),无独显显存上限瓶颈
局限
带宽低于顶级独显(RTX 4090 1008 GB/s vs M4 Max 546 GB/s),速度相对较慢

隐私与透明度

所有硬件检测完全在你的浏览器内完成。 GPU 型号、VRAM 容量、系统内存等任何硬件信息均不会被发送到服务器,也不会被收集或存储。 评分计算在本地 JavaScript 中实时执行,无需额外网络请求。

WebGL / WebGPU 检测在浏览器沙箱内运行
GPU 数据库、模型数据在构建时打包到静态文件
无 Cookie、无追踪、无第三方分析脚本(除 CDN 字体外)
源代码完全开放,可自行审计