Skip to main content

CanIRunLLM

Find out which open-source LLMs your machine can actually run — and which one you should pick — with an automatic hardware scan and a local dashboard.

CanIRunLLM inspects your real CPU, RAM, and GPU/VRAM, checks that against a registry of real open-weight models (Qwen, Llama, Mistral, Gemma, Phi, DeepSeek, and more), and gives you a plain-language verdict — not just a raw "fits/doesn't fit" table. It runs entirely on your machine: no account, no cloud calls, no telemetry.

$ canirunllm scan

CanIRunLLM

Checking your computer...
  CPU detected
  RAM detected
  GPU detected
  VRAM detected

Analyzing local AI models...
  58 models analyzed

You can run 14 model(s) comfortably.
7 more can run with CPU/RAM offload (slower).

Dashboard:
  http://127.0.0.1:8765

Opening browser...

The browser dashboard shows a friendly "what can I run / what should I run" report, with the full technical breakdown (VRAM, RAM, KV cache, quantization, runtime, confidence) available behind a "Technical details" toggle for anyone who wants it.

Install

Requires Python 3.10+.

git clone https://github.com/jashwanthsai678/CaniRunLLM.git
cd CaniRunLLM
pip install -e .

Quick start

canirunllm scan               # scan hardware, evaluate models, open the dashboard
canirunllm scan --no-browser  # same, but skip the dashboard (good for CI/headless)
canirunllm scan --technical   # also print the full technical breakdown in the terminal

canirunllm search qwen        # search the model registry
canirunllm check Qwen3-8B     # check one model or a whole family
canirunllm recommend          # ranked list of models for your hardware

canirunllm web                # launch the dashboard on its own
canirunllm web --port 9000    # on a custom port

What it actually checks

For every model + quantization pair, CanIRunLLM estimates:

  • Weight memory from parameter count and quantization (Q4_K_M, Q8_0, etc.)
  • KV cache size, which grows with context length — a model isn't just "fits" or "doesn't," it fits at a given context length
  • Runtime overhead and a safety margin, not just the raw weight size
  • Memory strategy: does it fit on a single GPU, does it need to be split across multiple GPUs, or does it need CPU/RAM offloading — each of these is a real, different scenario, not a single generic "offload" verdict
  • Runtime compatibility: is the declared runtime (llama.cpp, etc.) actually known to support that memory strategy

The result is always a verdict plus a confidence level and a plain-English reason — never a bare "cannot run" with no explanation.

Architecture

CLI / Web Dashboard  (presentation only)
        │
Application Layer   (ScannerService, RecommendationEngine)
        │
   ┌────┴─────┬──────────────┬─────────────┐
   ▼          ▼              ▼             ▼
Hardware   Model Registry  Compatibility  Performance
Scanner    + Resolver      Engine         Prediction

The CLI and the local web dashboard are two presentation layers over the same Python core — nothing about compatibility is calculated twice, and the frontend never re-derives a verdict on its own.

Current limitations (being upfront about them)

  • GPU detection currently only recognizes NVIDIA GPUs (via GPUtil/ nvidia-smi). On AMD/Intel/Apple Silicon machines it safely falls back to CPU-only mode rather than crashing, but it won't report real GPU numbers yet.
  • The model registry is a curated set of well-known open-weight models, not an exhaustive mirror of every model on Hugging Face — see src/canirunllm/registry/SOURCES.md for exactly where every number in it came from.
  • Performance numbers are a coarse, clearly-labeled estimate based on parameter count and memory strategy — there is no real benchmarking yet, and the tool never presents an estimate as a measurement.

Testing

pip install -e .
pytest -v

License

MIT — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

canirunllm-0.1.0.tar.gz (47.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

canirunllm-0.1.0-py3-none-any.whl (44.8 kB view details)

Uploaded Python 3

File details

Details for the file canirunllm-0.1.0.tar.gz.

File metadata

  • Download URL: canirunllm-0.1.0.tar.gz
  • Upload date:
  • Size: 47.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.10.11

File hashes

Hashes for canirunllm-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6890c1fedeb59f4d954f1bcbccb61d704da0a115a4b8f3c03fa0f6b24ff515b4
MD5 e4dcdd59d6b1a9c690702aec4eae5f2c
BLAKE2b-256 4a977334f63cb281b12231c8b344d1dd1acc0cb977d675856f6d0cc1e91d3799

See more details on using hashes here.

File details

Details for the file canirunllm-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: canirunllm-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 44.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.10.11

File hashes

Hashes for canirunllm-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 03c4691a789e1b89ca06965aa294d9f85df488a2bb71705db7ca1b606568fc8b
MD5 ed4392efa76b252ca2b7cd03cb901357
BLAKE2b-256 43a5ec903dc82ea6b8fa224be66618553c25d48cf2066b6ab9f2eb7f6b3fb917

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.1

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page