llmfit README

The project's README from github.com/AlexsJones/llmfit. As one markdown file: README.md.

llmfit

llmfit icon

English · 中文 · 日本語

CI Crates.io License Signed with SignPath

Find out which open-source Large Language Models (LLMs) your hardware can comfortably run. llmfit inspects your CPU, system RAM, GPU(s), VRAM, and accelerator configuration to recommend models across popular quantizations.

📊 New: benchmark & share — real numbers from your machine, better estimates for everyone. Download a model, serve it, and measure real tok/s on your hardware — then contribute the results back to the project as a PR, straight from the TUI. No gh CLI, no third-party account. Every run is saved locally first, your own measurements replace estimates in the fit table, and each merged submission ships in the next release: anyone on identical hardware gets measured ✓ numbers before they ever run a benchmark. Follow the step-by-step benchmarking guide →

Previously: llmfit 1.0 — the release where the numbers became verifiable →

Features

A terminal tool that right-sizes LLM models to your system's RAM, CPU, and GPU. Detects your hardware, scores each model across quality, speed, fit, and context dimensions, and tells you which ones will actually run well on your machine.

Ships with an interactive TUI (default) and a classic CLI mode. Supports multi-GPU setups, MoE architectures, dynamic quantization selection, speed estimation, and local runtime providers (Ollama, llama.cpp, MLX, Docker Model Runner, LM Studio).


Sister projects

demo


Documentation

Get started Install · Usage · How it works
Guides TUI guide · Benchmarking step-by-step · CLI & automation · Runtime providers · OpenClaw integration
Reference How it works (full) · Platform & GPU support · Custom models · Development
Project Contributing · Alternatives · Code signing · License

Install

Windows

scoop install llmfit

If Scoop is not installed, follow the Scoop installation guide.

macOS / Linux

Homebrew

Prebuilt binary (recommended, works on all macOS/Linux versions):

brew install AlexsJones/llmfit/llmfit

Or from the homebrew-core formula, which builds from source on macOS versions without a bottle:

brew install llmfit

MacPorts

port install llmfit

Quick install

curl -fsSL https://llmfit.axjns.dev/install.sh | sh

Downloads the latest release binary from GitHub and installs it to /usr/local/bin (or ~/.local/bin if no sudo).

Install to ~/.local/bin without sudo:

curl -fsSL https://llmfit.axjns.dev/install.sh | sh -s -- --local

uv / pip

To install or update llmfit:

uv tool install -U llmfit

To run without installing:

uvx llmfit

You can also install llmfit as a Python package in the normal way with tools such as pip or uv.

Pre-built Binaries

Download signed release binaries for Linux, macOS, and Windows directly from the GitHub Releases page.


Container Deployment

llmfit provides a multi-architecture Docker image (ghcr.io/alexsjones/llmfit) supporting both interactive CLI/TUI and headless Web UI / API server modes.

Interactive TUI

To launch the interactive TUI instead, pass the global --tui flag:

docker run -it --rm ghcr.io/alexsjones/llmfit --tui

Non-Interactive

This prints JSON from llmfit recommend command.

docker run ghcr.io/alexsjones/llmfit

This prints JSON from llmfit recommend command. The JSON could be further queried with jq.

podman run ghcr.io/alexsjones/llmfit recommend --use-case coding | jq '.models[].name'

To launch the interactive TUI instead, pass the global --tui flag:

docker run --rm -it ghcr.io/alexsjones/llmfit --tui

From source

git clone https://github.com/AlexsJones/llmfit.git
cd llmfit
cargo build --release
# binary is at target/release/llmfit

Usage

Terminal Interface (TUI)

Launch llmfit in your terminal without flags to start the interactive browser:

llmfit          # interactive TUI: your hardware, every model, ranked

The TUI shows your detected specs at the top and every model scored for fit, speed, quality, and context. See the TUI guide for navigation, planning, simulation, downloads, the community leaderboard, and benchmarking.

Keybindings inside the TUI:

Command Line Options

# Print hardware telemetry and recommended models to standard output
llmfit recommend

# Output system profile and recommendations in raw JSON format
llmfit recommend --json

# Start the native HTTP API server
llmfit serve --host 0.0.0.0 --port 8787

Web UI & API Server

docker run -d -p 8787:8787 ghcr.io/alexsjones/llmfit serve

Docker Compose

---
services:
  llmfit:
    image: ghcr.io/alexsjones/llmfit:latest
    container_name: llmfit
    restart: unless-stopped
    command: ["serve", "--host", "0.0.0.0", "--port", "8787"]
    ports:
      - "8787:8787"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8787/health"]
      interval: 15s
      timeout: 5s
      retries: 3
      start_period: 10s

For scripts, agents, and classic terminal output:

llmfit fit                    # table of all models ranked by fit
llmfit recommend --json       # top picks as JSON (agent/script consumption)
llmfit info "<model>"         # one model: fit analysis, estimate basis, verify commands
llmfit bench                  # measure real tok/s/TTFT against your running provider
llmfit doctor                 # hardware detection report for bug reports
llmfit serve                  # start the api and web user interface

Full reference: CLI & automation.


Community & Benchmarks

llmfit includes hardware detection and performance benchmarks contributed by the community. You can share your hardware benchmark results using:

llmfit bench --share

How it works

llmfit detects your hardware (RAM, CPU, GPU/VRAM, backend), then scores every model in its catalog across four dimensions: memory fit, estimated speed, quality, and context. Speed estimates come from a memory-bandwidth model grounded in runtime sampling and real community measurements — and every estimate ships its inputs, so llmfit info shows exactly what a number assumes and how to verify it on your machine.

Full detail, including the estimation formulas and the model database: How llmfit works.


Contributing

Contributions are welcome, especially new models.

Before submitting a PR

Please run cargo fmt before pushing your changes. Most CI check failures are caused by unformatted code:

cargo fmt

Guides for adding models — locally (no rebuild) or to the built-in catalog: Custom models.


Alternatives

If you're looking for a different approach, check out llm-checker -- a Node.js CLI tool with Ollama integration that can pull and benchmark models directly. It takes a more hands-on approach by actually running models on your hardware via Ollama, rather than estimating from specs. Good if you already have Ollama installed and want to test real-world performance. Note that it doesn't support MoE (Mixture-of-Experts) architectures -- all models are treated as dense, so memory estimates for models like Mixtral or DeepSeek-V3 will reflect total parameter count rather than the smaller active subset.


Code signing

llmfit's Windows release binaries are digitally signed (Authenticode) via SignPath.io, with a free code signing certificate provided by the SignPath Foundation.

Signing happens automatically in the release pipeline: only artifacts built by GitHub Actions from this repository are submitted for signing, and signing requests are approved by the project maintainer (@AlexsJones).

Code signing policy: see the SignPath Foundation code signing policy and terms.

Privacy: this program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it. llmfit only contacts external services when you explicitly use the corresponding feature (e.g. model downloads, runtime provider queries, or the community leaderboard).


License

MIT

llmfit (AlexsJones/llmfit)

Searching Database…

38.1K ·GitHub
这是什么?llmfit 会检测你的 CPU、内存、GPU、显存和加速器配置,然后告诉你哪些开源大语言模型及其量化版本能在你的机器上流畅运行。
这是命令行工具,还是也有图形界面?它默认提供交互式 TUI,同时保留经典的 CLI 模式;另外还有可选的网页仪表盘,以及供脚本和仪表盘调用的 REST API(/api/v1/system、/api/v1/models)。
我该怎么安装和运行?在 macOS/Linux 上可通过 Homebrew 或 MacPorts 安装,Windows 上用 Scoop 安装,也可以用 uv/pip 作为 Python 包安装,或从 GitHub Releases 下载已签名的可执行文件,还可以使用 ghcr.io/alexsjones/llmfit Docker 镜像;不带任何参数直接运行 llmfit 即可打开交互式 TUI。
使用前我需要先安装 Ollama 或 llama.cpp 吗?不需要,llmfit 可以独立运行,检测硬件并给模型打分。如果你已安装 Ollama、llama.cpp、MLX、Docker Model Runner 或 LM Studio 等本地运行时提供方,它还可以选择性地与之对接。
它显示的匹配度和速度数字准确吗?不准确。这些数字最初是基于内存带宽模型的估算值。你可以在自己的机器上运行内置基准测试,并通过 PR 提交实际的 tok/s 结果;对于硬件完全相同的用户,实测数据会取代估算值。
我必须有 NVIDIA 显卡吗?只用 CPU 或 Apple Silicon 的机器也能用吗?它会自动检测你所拥有的硬件,包括 NVIDIA CUDA、Apple Silicon、AMD ROCm 或 Intel OneAPI,支持 macOS、Linux(x86_64/ARM64)和 Windows(x86_64)。
它会把我的硬件信息发送到别处吗?不会,除非你明确触发联网功能,比如下载模型、查询运行时提供方,或把基准测试结果提交到社区排行榜,否则数据都只保存在本地。
它支持哪些模型格式和架构?它会分析参数量、上下文长度,以及量化格式,包括 GGUF、AWQ、GPTQ 和 EXL2,并明确支持多 GPU 配置和 MoE(混合专家,Mixture-of-Experts)架构。
llmfit-gui 是什么?它是一个独立的姊妹项目:基于 PowerShell 和 WinForms 构建的原生 Windows 桌面图形界面,让你无需使用终端,通过点击即可浏览 llmfit 的推荐结果、把模型下载到 LM Studio/Ollama,并进行基准测试。
它和 llm-checker 有什么不同?llm-checker 会通过 Ollama 实际下载并运行模型,以测量真实性能,但它把所有模型都当作稠密模型处理(不支持 MoE);而 llmfit 则根据硬件规格估算匹配度和速度,无需事先安装任何运行时。
同一作者还有其他相关工具吗?有。sympozium 用于在 Kubernetes 中管理智能体,llmserve 是一个 TUI,用于选择并提供本地模型/后端服务,llama-panel 则是一个原生 macOS 应用,用于管理本地 llama-server 实例。
Creator
AlexsJones
Size
33.8 MB
Stars
38.1K
Age
8mo
Commits · 90 Days