@julien_c: 周五项目:对 @midudev 的 canirun-ai 背后的硬件检测模块进行可读的重写。相同的启发式规则、着色器…
摘要
对 canirun.ai 背后的硬件检测模块进行可读的重写,提供了描述性名称、JSDoc 和更清晰的代码,同时保留了原有的启发式规则和规格表。
查看缓存全文
缓存时间: 2026/05/16 07:16
周五项目:@midudev 的 canirun-ai 背后硬件检测模块的可读重写。相同的启发式方法、着色器与规格表——只是换成了描述性名称 + JSDoc。https://t.co/A4Xjb6z7vv
julien-c/canirun.ai
来源:https://github.com/julien-c/canirun.ai
canirun-ai.js
canirun.ai(https://www.canirun.ai/)所用浏览器端硬件检测模块的可读重写——该网站可告诉你当前机器能运行哪些本地 AI 模型。
原始模块以压缩形式发布为 hardware-ui..js。这里是同一份代码,带有描述性名称、分节、JSDoc 以及命名常量,替代了魔法数字。行为、阈值、着色器和规格表均未改变。
功能
-
读取浏览器所披露的信息:
- WebGL
WEBGL_debug_renderer_info→ GPU 厂商 + 渲染器字符串 - WebGPU
adapter.info→ 设备 + 架构(可用时) navigator.deviceMemory、navigator.hardwareConcurrency、User-Agent
- WebGL
-
在设备上执行基准测试:
- CPU:一个约 30ms 的
sqrt + sin + cos循环 - GPU 计算(WebGPU):FMA 循环 → 估算 GPU 核心数
- GPU 内存带宽:WebGPU 缓冲区拷贝,WebGL 纹理采样作为回退方案
- CPU:一个约 30ms 的
-
当 API 被屏蔽或信息模糊时回退到规格表查找:Apple GPU 仅报告 “Apple GPU”;iOS 隐藏所有信息;移动端厂商拒绝暴露适配器信息。包含桌面独立 GPU、Apple Silicon、移动 SoC GPU 和单板计算机的规格表。
-
评估模型适配度:将模型分类为
can-run、can-run-slow、tight、cannot-run或unknown;估算 tokens/秒;计算 0–100 的分数和 S–F 的等级。所有检测均在浏览器本地运行,无需网络请求。
用法
这是一个 ES 模块:
import { detectHardware, scoreModel, describeDevice } from "./canirun-ai.js";
const hw = await detectHardware();
console.log(describeDevice(hw), hw);
// 评分一个 7B 模型,大约需要 4.5 GB 内存
const result = scoreModel(4.5, hw, 4.5);
console.log(result); // { status, toksPerSec, memPct, score, grade }
致谢
原作者为 midudev(https://midu.dev)。本仓库是为教育目的进行的代码可读性重写;其中的方法、启发式方法和规格表均为他的工作。
相似文章
@julien_c: 什么硬件真正驱动着开源AI?不是基准测试。不是供应商营销。真实世界的社区使用。我们正在…
Hugging Face 推出新的硬件资源,用于追踪开源AI社区中GPU、CPU、VRAM及推理硬件趋势的真实使用情况。
@tom_doerr: 使用源码映射解码Claude Code架构 https://github.com/alejandrobalderas/claude-code-from-source…
一条推文宣布了一个GitHub仓库,该仓库使用源码映射解析Claude Code的架构,提供了一本关于Anthropic的AI编程代理内部机制的18章节教育书籍。
我用 Vibe Coding 写了一个让工程师在 GitHub 上关注的东西
作者宣布了 iai-mcp,这是一款专为 Claude Code 设计的本地记忆工具,能够跨会话保留上下文。作者还反思了该项目在 GitHub 发布后收到的积极社区反馈以及随之而来的快速迭代。
@injaneity:我逆向了 @OpenAI 的 Codex Computer Use,做了 pi-computer-use:一款模型无关的 macOS 电脑自动化工具,送给所有 π 爱好者
一位开发者逆向 OpenAI 的 Codex Computer Use,开源打造 pi-computer-use:支持任意模型的 macOS 自动化工具,优先走 AX 导航,并为兼容模型提供视觉回退。
@_mattata: Anthropic 发布了一个相当简洁的代码审计工具,用于识别具有潜在安全影响的漏洞。它…
Anthropic 发布了一个开源代码审计参考工具,用于使用 Claude 进行自主漏洞发现和修复,涵盖了 recon→find→triage→report→patch 流程,主要针对 C/C++ 内存漏洞。它是一个模板/参考实现,而非生产就绪产品,同时还提供名为 Claude Security 的托管选项。