whichllm:开源大模型选型辅助工具,显存算力测算一键获取最优本地模型
一、whichllm是什么
whichllm 是一款开源Python命令行工具,基于硬件参数与公开大模型评测数据,自动评估本地硬件运行能力,筛选出适配本机、综合表现优秀的开源大模型。
市面上很多本地大模型选择工具仅依靠显存大小、参数量判断模型是否可运行,容易出现“显存装得下,但推理速度慢、模型实际效果差”的问题。whichllm不再单纯依赖参数量做判断,结合多套权威公开评测、显存与KV缓存开销测算、硬件算力,给出经过加权后的综合评分,帮助用户快速选出适合自己设备的GGUF、AWQ、GPTQ格式开源大模型。项目采用MIT开源协议,支持NVIDIA、AMD、Apple Silicon、CPU多类硬件平台。

二、功能特色
证据驱动模型评分
整合Chatbot Arena ELO、LiveBench、Open LLM Leaderboard等公开评测数据生成0‑100综合分数,区分评测数据源可信度,过滤自报跑分、无效老旧评测;针对MoE模型区分总参数与激活参数,避免参数误导。精细化硬件算力显存测算
不只统计模型权重占用,同时计算KV缓存、激活值、运行时额外开销;支持设置显存预留冗余,减少OOM显存溢出报错;支持全显存加载、内存卸载、纯CPU三种运行模式。硬件模拟与硬件规划
无需真实硬件即可模拟多款显卡,可单卡、多卡模拟;支持反向查询,输入目标模型,输出运行该模型需要的最低硬件配置;支持多显卡横向对比,为硬件升级提供参考。多维度筛选过滤
支持按运行模式、推理速度、模型用途(代码、数学、多模态)、上下文窗口、量化等级做筛选;可限定输出结果数量,过滤过时低质量模型。一键运行与开发输出
run子命令自动处理模型下载,直接启动对话交互;可输出可直接复制的Python推理代码片段;输出支持表格、Markdown、JSON格式,便于对接Ollama、Shell脚本实现自动化。缓存与提示优化
评测数据、模型元数据本地缓存,减少重复网络请求;推理速度使用颜色标记,直观区分低速、可用、流畅、高速区间。
三、技术细节
项目基于Python开发,CLI交互层使用Typer构建,整体采用分层模块化架构。
硬件层hardware:实现跨平台GPU、CPU、内存识别,内置显卡模拟器,可模拟未持有的硬件参数。
模型数据层models:拉取HuggingFace模型元信息,拉取公开基准评测,做可信度分级,本地缓存数据。
引擎层engine:完成显存、KV缓存、激活内存计算,预估token生成速度,执行多因子加权打分排序。
命令交互层cli:实现run、snippet、plan、upgrade等子命令,处理参数解析。
输出层output:完成表格、Markdown、JSON多格式渲染输出。
执行流程:
获取本机硬件信息或者读取模拟硬件参数;
请求HuggingFace模型库与公开评测数据集;
计算每个候选模型的内存占用、预估推理速度;
根据评测可信度、模型质量、硬件适配、速度等权重计算综合得分;
根据用户传入过滤条件过滤,输出排序后的模型列表。
缓存策略:模型元数据缓存6小时,评测基准数据缓存24小时,可手动强制刷新缓存。
支持模型格式:GGUF、AWQ、GPTQ、FP16。Python最低版本要求3.11。
四、应用场景
普通本地大模型使用者:自动检测本机电脑硬件,直接拿到适配本机、效果较好的本地大模型候选,不用翻阅大量评测文档对比。
购机硬件选型参考:模拟目标显卡,查看该显卡可以流畅跑哪些大模型;也可以输入模型反向查询需要什么配置,辅助选购显卡。
本地LLM开发者:一键生成推理代码片段;JSON输出对接Ollama,编写自动化脚本,批量筛选适配模型。
硬件升级对比:同时模拟多款显卡,横向对比不同硬件跑大模型的速度与可运行模型上限,辅助硬件升级决策。

五、使用方法
环境要求
Python ≥3.11,支持uv/pip包管理器。
安装运行
uvx直接运行(无需安装)
uvx whichllm
pip安装
pip install whichllm whichllm
常用命令示例
# 检测本机硬件,输出推荐模型列表 whichllm # 模拟显卡,查看RTX4090适配模型 whichllm --gpu "RTX 4090" # 查询运行Qwen3.6‑27B所需硬件 whichllm plan Qwen3.6‑27B # 输出可直接运行的python代码片段 whichllm snippet # 筛选代码方向模型,输出markdown格式 whichllm --profile coding --format markdown # 一键启动模型对话 whichllm run
六、竞品对比
| 项目 | whichllm | llm‑hardware‑calculator | Ollama model library |
|---|---|---|---|
| 核心定位 | 硬件检测+评测加权综合推荐 | 显存占用计算器 | 大模型拉取运行工具 |
| 硬件模拟 | 支持单卡、多卡模拟,反向硬件规划 | 仅显存占用计算,无硬件模拟 | 无硬件模拟功能 |
| 评测数据驱动 | 集成多套公开评测,加权打分排序 | 无评测数据,仅计算显存 | 依靠社区标签,无自动评测打分 |
| 输出能力 | 表格、Markdown、JSON、Python代码 | 文本输出 | 命令行交互 |
| 额外能力 | 一键运行对话、速度评估、缓存机制 | 仅内存占用估算 | 模型下载、本地推理 |
七、常见问题解答
whichllm会自动下载大模型吗?
普通查询模式不会下载模型,只有执行whichllm run命令时,才会自动下载对应模型文件。
预估的token速度和实际跑起来速度不一致是什么原因?
工具为理论预估速度,实际速度会受驱动版本、后台进程占用、量化版本、上下文长度影响,存在合理偏差。
为什么部分热门模型没有出现在推荐列表?
工具会过滤评测可信度低、老旧失效模型;同时会根据硬件条件过滤掉显存无法承载的模型,可调整筛选参数放宽条件。
可以离线使用whichllm吗?
首次运行需要联网拉取模型元数据与评测基准;缓存生效后短时间断网可以使用旧缓存数据,长时间离线数据会过期。
支持Windows、Mac、Linux全部系统吗?
支持三大操作系统,Python版本必须满足3.11及以上;AMD显卡在Windows平台部分推理库兼容性会受限。
修改--vram‑headroom参数的作用是什么?
该参数设置显存预留空间,预留一部分显存给系统与驱动,降低显存溢出OOM报错概率,显存较小的设备建议调高。
八、相关链接
九、总结
whichllm是一款面向本地大模型用户的开源命令行工具,跳出单纯依靠参数量、显存大小筛选模型的传统思路,结合硬件算力测算与多源公开评测数据完成加权推荐,同时提供硬件模拟、反向硬件规划、代码片段输出等实用能力,既适合普通用户快速找到适配自己电脑的开源大模型,也可以为开发者提供脚本化的数据输出能力。
版权及免责申明:本文由@人工智能研究所原创发布。该文章观点仅代表作者本人,不代表本站立场。本站不承担任何相关法律责任。
如若转载,请注明出处:https://www.aipuzi.cn/ai-news/whichllm.html

