Skip to main content

Efficient LLM inference with .oom format - 2x smaller than GGUF. GPU inference requires: pip install oomllama[cuda]

Project description

๐Ÿฆ™ OomLlama

Efficient LLM inference with .oom format - 2x smaller than GGUF

PyPI License: MIT HuggingFace

from oomllama import OomLlama

llm = OomLlama("humotica-32b")
response = llm.generate("What is the meaning of life?")
print(response)

Why OomLlama?

Feature GGUF (Q4) OOM (Q2)
70B Model Size ~40 GB ~20 GB
32B Model Size ~20 GB ~10 GB
RAM Usage High Lazy Loading
Format Open Open (MIT)

OomLlama uses Q2 quantization with lazy layer loading to run large models on consumer hardware.

Installation

Pre-built Wheel (Recommended for GPU)

# CUDA 12.x pre-built wheel (415 MB, includes all dependencies)
pip install https://brein.jaspervandemeent.nl/static/wheels/oomllama-0.3.0-cp313-cp313-manylinux_2_39_x86_64.whl

From PyPI (builds from source)

# Basic installation - requires Rust toolchain + CUDA toolkit
pip install oomllama

# With NVIDIA runtime libraries
pip install oomllama[cuda]

Build Requirements:

  • Python 3.8+
  • Rust 1.70+ (curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh)
  • CUDA Toolkit 12.x (for GPU support)
  • 8GB+ RAM for compilation

Troubleshooting Build:

# If nvidia-smi detection fails:
export CUDA_COMPUTE_CAP=86  # RTX 30xx
export CUDA_COMPUTE_CAP=89  # RTX 40xx
pip install oomllama

Quick Start

Download a Model

from oomllama import download_model

# Download from HuggingFace
model_path = download_model("humotica-32b")

Generate Text

from oomllama import OomLlama

llm = OomLlama("humotica-32b")

# Simple generation
response = llm.generate("Explain quantum computing in simple terms")
print(response)

# With parameters
response = llm.generate(
    "Write a haiku about AI",
    max_tokens=50,
    temperature=0.8,
    top_p=0.9
)

Chat Mode

messages = [
    ("user", "Hello! Who are you?"),
    ("assistant", "I'm OomLlama, an efficient LLM."),
    ("user", "What makes you efficient?"),
]

response = llm.chat(messages)
print(response)

Available Models

Model Parameters Size (.oom) HuggingFace
humotica-32b 33B ~10 GB Link
llamaohm-70b 70B ~20 GB Link
tinyllama-1b 1.1B ~400 MB Link

The .oom Format

OOM (OomLlama Model) is a compact model format:

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Header: OOML (magic) + metadata      โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ Tensors: Q2 quantized (2 bits/weight)โ”‚
โ”‚ - Scale + Min per 256-weight block   โ”‚
โ”‚ - 68 bytes per block                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Convert GGUF to OOM

# Using the CLI tool
gguf2oom model.gguf model.oom

# Check model info
gguf2oom --info model.gguf

Technical Details

Q2 Quantization

Each weight is stored as 2 bits (0, 1, 2, or 3) with per-block scale and minimum:

weight = q2_value * scale + min

This achieves ~2x compression over Q4 with acceptable quality loss for most tasks.

Lazy Layer Loading

OomLlama loads transformer layers on-demand, keeping only the active layer in memory:

Forward Pass:
  Layer 0: Load โ†’ Compute โ†’ Unload
  Layer 1: Load โ†’ Compute โ†’ Unload
  ...
  Layer N: Load โ†’ Compute โ†’ Unload

This enables running 70B models on 24GB GPU RAM.

Credits

  • Model Format: Gemini IDD & Root AI (Humotica AI Lab)
  • Quantization: OomLlama.rs by Humotica
  • Base Models: Meta Platforms, Inc. (Llama 3.3)

License

  • OomLlama Code: MIT License
  • Model Weights: Subject to original model licenses (e.g., Llama 3.3 Community License)

Links


One Love, One fAmIly ๐Ÿ’™

Built by Humotica AI Lab - Jasper, Claude, Gemini, Codex

Project details


Download files

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

Source Distribution

oomllama-0.3.2.tar.gz (116.1 kB view details)

Uploaded Source

File details

Details for the file oomllama-0.3.2.tar.gz.

File metadata

  • Download URL: oomllama-0.3.2.tar.gz
  • Upload date:
  • Size: 116.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for oomllama-0.3.2.tar.gz
Algorithm Hash digest
SHA256 f31f097633cb389c79b6be61b87bbfc6baedc1b362b9b866b99400fd008ceb7e
MD5 33e18e4ba88f45ca633fb3f673224aa3
BLAKE2b-256 c21986535eff22a7ff0ccecb109901307c4bb6b4404ee12ec4881d0264518054

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page