llmfit 安装与使用
open-source Large Language Models (LLMs) fit your computer
1. 背景
项目地址:https://github.com/AlexsJones/llmfit
AI时代,大模型已经变成了必需品,本地部署对于数据安全来说至关重要,对于流程化的可以使用简单的模型来运行,但是每个人电脑硬件配置不同,大模型能调用的资源也不同。
在HuggingFace上看到一个闪亮的新模型,下载下来,启动它——然后看着你的系统陷入停顿。更糟糕的是,它加载了但推理速度慢到每秒2个token,完全无法使用
llmfit是一个用Rust编写的基于终端的工具,,找出您的硬件可以轻松运行的开源大型语言模型(llm)。llmfit检查您的CPU、系统RAM、GPU、VRAM和加速器配置,以推荐流行量化的模型
功能特性
- 硬件自动检测:自动检测 CPU 核心数、系统 RAM、可用的独立/集成 GPU、显存(VRAM)以及统一内存架构(NVIDIA CUDA、Apple Silicon、AMD ROCm、Intel OneAPI)
- 模型兼容性引擎:深入分析模型参数量、上下文长度及量化格式(GGUF、AWQ、GPTQ、EXL2),精准预估内存占用与每秒生成 Token 速度(tokens-per-second)
- 交互式 TUI 与 Web 控制台:可在轻量级、零依赖的终端界面与功能丰富的 Web 仪表盘之间自由选择
- REST API 接口:对外暴露标准 HTTP JSON 端点(/api/v1/system、/api/v1/models),便于无缝集成至编排器、控制台和自动化部署流水线中
- 多平台支持:支持 macOS(Apple Silicon 与 Intel)、Linux(x86_64 与 ARM64)以及 Windows(x86_64)
- 数百款模型与服务提供商。一条命令即可找出最适合你硬件的模型
内置交互式 TUI(默认)和经典 CLI 模式。支持多 GPU 配置、MoE(混合专家)架构、动态量化选择、速度估算,以及本地运行时提供商(Ollama、llama.cpp、MLX、Docker Model Runner、LM Studio)
LLMfit 评分算法原理
LLMFit 会对每个模型在四个维度上分别打分(0–100),再根据具体用途使用不同权重合成综合评分。
| 维度 | 打分依据 |
|---|---|
| 质量 Quality | 参数量、模型架构、基准测试成绩(MMLU、HumanEval 等) |
| 速度 Speed | 基于显存带宽、参数量、量化精度估算 tok/s;有实测数据则优先使用实测 |
| 适配度 Fit | 内存利用率效率;最佳区间是可用内存的 50%–80%,占用太满或太浪费都会扣分 |
| 上下文 Context | 模型最大上下文长度与用途需求的匹配度 |
不同用途的权重会有差异
| 用途 | Quality | Speed | Fit | Context |
|---|---|---|---|---|
| 通用 general | 中 | 中 | 高 | 中 |
| 编码 coding | 高 | 中 | 中 | 高 |
| 推理 reasoning | 高 | 低 | 中 | 高 |
| 聊天 chat | 中 | 高 | 高 | 中 |
| 多模态 multimodal | 高 | 中 | 中 | 中 |
同一个模型在「编码」和「聊天」场景下的排名可能完全不同,因为不同用途对质量、速度、适配度和上下文的重视程度不一样
2. 安装
内置交互式 TUI(默认)和经典 CLI 模式。支持多 GPU 配置、MoE(混合专家)架构、动态量化选择、速度估算,以及本地运行时提供商(Ollama、llama.cpp、MLX、Docker Model Runner、LM Studio)
scoop install llmfit
brew install AlexsJones/llmfit/llmfit brew install llmfit
curl -fsSL https://llmfit.axjns.dev/install.sh | sh curl -fsSL https://llmfit.axjns.dev/install.sh | sh -s – –local
uv tool install -U llmfit
docker run ghcr.io/alexsjones/llmfit podman run ghcr.io/alexsjones/llmfit recommend –use-case coding | jq ‘.models[].name’
3. 使用
3.1 TUI使用
直接在终端运行llmfit,即可进入默认的交互接面TUI
TUI 界面顶部会显示检测到的硬件配置,并针对每个模型从适配度、速度、质量和上下文四个维度进行打分。有关导航、规划、模拟、下载、社区排行榜和基准测试的说明
- 顶部:你的硬件配置(CPU/RAM/GPU/VRAM/后端)
- 中间:模型表格(按综合评分排序,可滚动)
- 底部:当前模式、帮助提示
TUI 常用快捷键:
b:打开社区基准测试 选中一个模型之后,按b跳到别人测试的树结果
| 列 | 含义 |
|---|---|
| Model | HuggingFace 模型 ID |
| Engine | 推理运行时,例如 llama.cpp、vLLM、Ollama、MLX 等 |
| Quant | 量化格式 |
| tok/s | 实测输出 token 生成速度 |
| Total t/s | 总吞吐量,包括提示词处理 + 生成 |
| TTFT | 首次 Token 响应时间,延迟敏感场景更看重这个指标 |
| VRAM | 推理期间的峰值显存占用 |
| Ctx | 基准测试时使用的上下文长度 |
| User | 提交者,带 * 表示已验证用户 |
j / k或↑ ↓用来上下浏览模型/用来搜索,输入模型名、供应商,参数量q退出Esc:清除搜索 / 返回上一级h:显示帮助与快捷键列表
3.2 CLI 快速获取推荐
# 列出完美适配的前 5 个模型
llmfit fit --perfect -n 5
# 搜索 llama 3 相关的模型
llmfit search "llama 3"
# 查看单个模型的详细信息
llmfit info "Mistral-7B"
# 针对编码场景获取 JSON 格式推荐(给脚本/Agent 用)
llmfit recommend --json --use-case coding --limit 3
# 估算保留 3 个可运行模型所需的 SSD 磁盘容量
llmfit storage --keep 3 --selection largest --json
# 启动原生 HTTP API 服务器
llmfit serve --host 0.0.0.0 --port 87873.3 TUI基础设置使用
- 主题切换
按 t 循环切换,可以切换背景和主题,自带了6种主题
| 主题 | 风格 |
|---|---|
| Default | llmfit 原始配色 |
| Dracula | 深紫色背景 + 柔和色调 |
| Solarized | Solarized Dark 经典方案 |
| Nord | 极地冷蓝灰调 |
| Monokai | Monokai Pro 暖色语法 |
| Gruvbox | 复古暖色大地色系 |
| Catppuccin Latte | 浅色主题 |
| Catppuccin Frappé | 🪴 低对比深色 |
| Catppuccin Macchiato | 中对比深色 |
| Catppuccin Mocha | 最深暗色系(推荐) |
- 模式切换
左下角状态栏会显示当前模式:NORMAL / VISUAL / SELECT
Normal 模式(默认)
模式就是标准操作模式,适用于基础的操作
Visual 模式(v 键)—— 多选对比
选中连续的多个模型做批量对比
- 光标移到起始行,按 v 设置锚点
- 用
j / k扩展选区(行高亮) - 按
c打开多模型对比视图(表格横向排列,最优值高亮) - 对比视图下用 h / l 水平滚动(模型太多时)
- Esc 或再按 v 退出
{fig-align=“center” fig}
Select 模式(V 键)—— 按列过滤
- 按
V(Shift-v)进入 - 用
h / l在列标题间移动(当前列高亮) - 按
Enter或Space触发该列的过滤动作
3.4 全局按键速查表(Normal 模式)
按 h 随时在界面内打开完整帮助弹窗
- 基础操作
| 按键 | 操作 |
|---|---|
Up / Down 或 j / k |
浏览模型 |
PgUp / PgDn |
翻页(10 行) |
g / G |
跳到顶部 / 底部 |
/ |
进入搜索模式(模糊匹配名称/提供商/参数量/用途) |
Esc / Enter |
退出搜索 |
Ctrl-U |
清除搜索内容 |
Enter |
展开/收起选中行的详细信息 |
q |
退出 |
- 过滤和操作
每次按键都会进行一次切换
| 按键 | 操作 |
|---|---|
f |
每次按一下切换适配度过滤:全部 → 可运行 → 完美 → 良好 → 勉强 |
a |
切换可用性过滤:全部 → GGUF 可用 → 已安装 |
s |
切换排序列:评分 → 参数量 → 内存% → 上下文 → 日期 → 用途 |
P |
打开提供商过滤弹窗(输入模糊过滤) |
U |
打开用途过滤弹窗(general/coding/reasoning/chat/multimodal…) |
C |
打开能力过滤弹窗(文本/代码/多模态/嵌入/音频…) |
L |
打开许可证过滤弹窗 |
R |
打开运行时/后端过滤弹窗(llama.cpp / MLX / vLLM) |
i |
切换「已安装的模型优先排序」 |
r |
从运行时提供商刷新已安装模型列表 |
GGUF(GPT-Generated Unified Format) 可用”意思是:这个模型有 GGUF 量化版本,可以被 llama.cpp / Ollama / LM Studio 这类本地推理工具直接加载运行
| 概念 | 含义 |
|---|---|
| GGUF | 一种本地大模型文件格式,把模型权重、词表、配置、量化信息打包成一个文件 |
| 量化 | 把原本 FP16/BF16 的权重压缩成 INT4、INT8 等,体积更小、更省内存 |
| GGUF 可用 | 该模型存在这种本地可加载的量化版本,但不一定已经下载到你的机器上 |
llmfit 里按 R 打开的“运行时/后端过滤”,意思是:按“你本地用哪个推理引擎来跑模型”来筛选
| 后端 | 含义 | 典型场景 |
|---|---|---|
| llama.cpp | 通用本地推理引擎,跨平台,主要跑 GGUF 模型 | 个人本地跑模型、CPU/GPU 混合推理 |
| MLX | Apple Silicon 专用推理框架,只在 Mac 上跑 | M1/M2/M3/M4 Mac 本地推理 |
| vLLM | 高并发服务引擎,适合部署成 API | 多人调用、生产服务、高吞吐推理 |
- 对比与下载
| 按键 | 操作 |
|---|---|
v |
进入 Visual 模式(多选模型) |
V |
进入 Select 模式(按列过滤) |
m |
标记当前模型用于双模型对比 |
c |
打开对比视图(已标记 vs 当前选中) |
x |
清除对比标记 |
d |
下载选中模型(多提供商时弹出选择器) |
D |
打开下载管理器(历史/删除/配置目录) |
- 高级功能
| 按键 | 操作 |
|---|---|
p |
Plan 模式:选中模型需要什么硬件? |
S |
硬件模拟:覆盖 RAM/VRAM/CPU 做评估 |
A |
高级配置:调整 TPS 效率、运行模式系数 |
b |
社区排行榜:同硬件用户的真实性能数据 |
I |
推理基准测试:本地实测你的模型性能 |
t |
切换颜色主题(10 种内置主题) |
- Plan 模式:反过来问——“要跑这个模型,我需要什么样的硬件?”它会估算最低/推荐的 VRAM、RAM 和 CPU 核心数
- 硬件模拟:手动输入 RAM/VRAM/CPU 参数,模拟另一台机器上能跑哪些模型,适合采购前评估
- 高级配置:调整 TPS 效率因子、运行模式系数等底层参数
- 社区排行榜:查看同硬件配置用户的真实 tok/s 和显存占用数据
- 推理基准测试:在你自己的机器上实测模型性能,结果可以贡献回社区
4. 实际使用
4.1 Plan功能–反向推算硬件需求
我想跑这个模型(特定上下文/量化/目标速度),需要买什么配置的电脑/服务器?
- 光标移到目标模型行,按 p
- 用 Tab / j / k 在三个可编辑字段间切换
- Context:上下文长度(如 8192 / 32768 / 128k)
- Quant:量化格式(如 Q4_K_M / MLX-4bit / Q8_0)
- Target TPS:目标每秒 token 数(如 20 / 40 / 80)
- 直接输入数字修改,按 Enter 应用
- 界面会实时显示:
- 最低配置(勉强能跑)
- 推荐配置(流畅运行)
4.2 硬件模拟
- 按
S打开弹窗(大写的S) - Tab / j / k 切换字段,输入数字
- RAM:系统内存(GB)
- VRAM:显存(GB,统一内存架构下同 RAM)
- CPU:核心数
- 按 Enter 应用 → 整个模型表格立刻按新硬件重新评分
- 状态栏和系统栏会显示红色 SIM 标识,提醒你当前是模拟数据
Ctrl-R重置为真实硬件,Esc取消
等价bash命令
# 覆盖 GPU 显存(单位支持 G/GB/GiB、M/MB/MiB、T/TB/TiB,不区分大小写)
llmfit --memory=32G
# 覆盖系统内存
llmfit --ram=128G
# 覆盖 CPU 核心数
llmfit --cpu-cores=16
# 组合使用:模拟 24GB 显存 + 64GB 内存 + 8 核的机器
llmfit --memory=24G --ram=64G --cpu-cores=84.3 高级配置
默认参数对大多数模型是准确的,但个别模型(如 Qwen3 30B)可能存在 tok/s 高估的情况。此时可以手动校准参数。
按A就能进去即时修改生效的设置
| 字段 | 含义 | 默认值 |
|---|---|---|
| Efficiency | 全局 TPS 效率系数,用于扣除推理时的计算开销 | 0.55 |
| GPU factor | 纯 GPU 推理速度乘数 | 1.0 |
| CPU Offload | 权重溢出到系统 RAM 时的速度乘数 | 0.5 |
| MoE Offload | MoE 模型专家切换时的速度惩罚系数 | 0.8 |
| Tensor Par | 张量并行推理速度乘数(多 GPU 场景) | 0.9 |
| CPU Only | 纯 CPU 执行速度乘数 | 0.3 |
| Context cap | 内存估算用的最大上下文长度上限 | auto |
- Efficiency 0.55 是全局基准,llmfit 估算 tok/s 时默认认为 GPU 推理只能达到理论带宽上限的 55%
- CPU Offload 0.5 表示一旦模型溢出到系统内存,速度直接腰斩——因为 PCIe 带宽远低于显存带宽
- CPU Only 0.3 是纯 CPU 模式,最慢的兜底方案
- MoE Offload 0.8 针对 Mixtral 这类 MoE 模型,专家切换有额外开销
- Tensor Par 0.9 多卡张量并行时,通信会吃掉约 10% 的速度
4.4 推理基准测试(I)—— 本地实测你的模型
社区排行榜是别人的数据,你自己的模型到底跑多快? 按 I(大写 i)对本地运行的模型做实时推理基准测试,测真实的 TTFT、TPS、总延迟
支持的运行时:Ollama、vLLM、MLX
| 按键 | 作用 |
|---|---|
I |
打开基准测试(自动检测所有可用的运行时和已安装模型) |
I(再按一次) |
在视图内重新运行测试 |
Enter |
查看单个模型的详细结果 |
r |
切换到路由矩阵视图(使用 --quality 参数时更有用) |
- I 第一次按:llmfit 会自动扫描你本地装好的模型和可用的运行时(llama.cpp / MLX / vLLM 等),然后逐个跑基准测试,测出实际的 tok/s、显存占用等数据
- I 再按一次:不退出界面,直接重新跑一遍测试,适合调整配置后复测
- Enter:进入某个模型的详情页,看更细的逐层性能数据
# 自动检测运行时,对所有已发现模型做基准测试
llmfit bench
# 测试所有(包括未运行的?需要确认运行)
llmfit bench --all
# 只测 Ollama 上的 llama3.2
llmfit bench --provider ollama llama3.2
# 覆盖 Ollama 端点(比如测远程服务器)
llmfit bench --provider ollama --url http://my-server:11434 llama3.2
# 覆盖 vLLM 端点
llmfit bench --provider vllm --url http://localhost:8000
# JSON 输出
llmfit bench --json
# 质量基准测试(基于角色的路由评分)
llmfit bench --quality
# 输出路由矩阵
llmfit bench --quality --routing