A CLI tool to check if your local hardware can run a Hugging Face LLM.
Project description
llmready
llmready is a CLI tool and Python library that analyzes your local system hardware (CPU RAM, Apple Silicon Unified Memory, and NVIDIA GPU VRAM) and accepts a Hugging Face model ID. It calculates the memory required to run that model at various quantizations (FP16, INT8, INT4) and outputs a clear "Go/No-Go" verdict.
It does not download the massive model weights to check memory; it smartly fetches only the metadata via the Hugging Face API!
Features
- Hardware Profiling: Detects Apple Silicon Unified Memory, NVIDIA VRAM, and standard System RAM.
- Fast Metadata Fetching: Retrieves model parameter counts quickly without downloading weights.
- Accurate Memory Math: Includes KV Cache / context window overheads (20%).
- Beautiful Output: Uses
richto print colorful terminal tables with clear Go/No-Go hardware verdicts.
Installation
You can install this package locally using pip:
# Clone the repository and cd into it
cd llmready
# Install the package and its dependencies in editable mode
pip install -e .
This will automatically install dependencies like psutil, huggingface-hub, and rich, and will register the llmready (and legacy llm-check) CLI command.
Usage
Simply run the command with any Hugging Face model repository ID:
llmready meta-llama/Llama-3.2-1B
Advanced Features
1. Context Window Size
By default, the tool calculates the KV Cache memory footprint for an 8192 token context window using the model's exact architecture. You can change this using --context-length or -c:
llmready meta-llama/Llama-2-7b-chat-hf -c 32000
2. Training / Fine-Tuning Memory
If you want to know if you can train a model (Full Fine-Tuning or LoRA/QLoRA), use the --train flag. This calculates the memory required for optimizer states and gradients rather than just inference.
3. Hardware Model Recommendations
Not sure what to run? Ask the tool to scan your hardware and recommend popular models that will fit locally:
llmready --recommend
Private & Gated Models
If you are trying to check a gated model (like meta-llama/Llama-3-8b) or a private repo, you must have access to it on Hugging Face and provide your access token.
You can set the standard Hugging Face token environment variable before running the tool:
export HF_TOKEN="hf_your_access_token_here"
llmready meta-llama/Llama-3-8b
How It Works
- Hardware: Uses
psutilandnvidia-smi(if applicable) to see what compute you have available. - Parameters: Uses
huggingface_hubto readsafetensors.totalmetadata (or fallback size approximation). - Calculation: Memory = Parameters * Bytes per Parameter (FP16=2, INT8=1, INT4=0.6). It also adds a 20% overhead to account for KV caching and memory footprint.
- Verdict: Compares the required memory to your available VRAM and RAM to issue a 🟢 Pass, 🟡 Warning, or 🔴 Fail.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file llmready-0.1.0.tar.gz.
File metadata
- Download URL: llmready-0.1.0.tar.gz
- Upload date:
- Size: 11.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
155d1d968eb63d9b1d86f46b8a997c3376fe352a52499cbcbb7a139455c6d70f
|
|
| MD5 |
6f7034a4efb578dd66fbe4472d5e7b7f
|
|
| BLAKE2b-256 |
8cc1731dd4c90dbe7a296e9c7cece4e6155e19ef97019b3564ca17dbd2fe854d
|
File details
Details for the file llmready-0.1.0-py3-none-any.whl.
File metadata
- Download URL: llmready-0.1.0-py3-none-any.whl
- Upload date:
- Size: 12.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7d47a55d0fadd1ba6fb786094f51d418f050a3f2204beb4738fc9dda17673511
|
|
| MD5 |
7be6b171aacfabbe7f4bff1fd846e069
|
|
| BLAKE2b-256 |
6c3b4325eb98773a5bbcb7a43d5c22a108d8b9242ebc49c0178f1421bf61e4da
|