Weights and GGUF Files

What is inside a model file?

A model's weights are the actual numeric parameter values it learned during training - the same "parameters" mentioned back in the foundations section, just now thought of as data sitting on disk rather than an abstract count. Those numbers alone aren't enough to run the model, though; you also need to know the model's architecture (how its layers are connected), its tokenizer (the rules for splitting text into tokens, mentioned earlier), and a handful of special control tokens the model uses internally (like markers for "start of text" or "end of turn").

GGUF bundles all of that into a single, self-describing file. The name originally stood for GPT-Generated Unified Format, but today it's simply the common single-file format used by llama.cpp and the many local-model tools built on top of it (Ollama included). Having everything - weights, architecture info, tokenizer, control tokens - packaged in one file is what lets a completely different computer load the model correctly without needing a separate matching set of configuration files.

Ollama doesn't expose one tidy model.gguf file for you to browse directly, though. Internally it stores blobs - files named after a hash (a repeatable digital fingerprint calculated from a file's exact contents, so any change to the content produces a different hash, making tampering or corruption detectable) - alongside small manifests, which are records listing exactly which blobs and settings together make up one named model.

Analogy: Think of a GGUF file as a sealed appliance box: the machine itself, its control-panel labels, and its setup card, all shrink-wrapped together so nothing gets separated in shipping. A manifest, then, is the warehouse's inventory sheet, telling the runtime exactly which sealed boxes (blobs) need to be pulled together to assemble one specific model.