Local LLMs & Ollama
Trace a worked example
Read the evidence step by step: explain local LLMs by connecting a concrete decision to observable evidence.
Before you start
Why this matters
Imagine you own an offline clinical note assistant and must explain one decision to a teammate who knows basic AI vocabulary but has never operated this feature. Write two sentences: what problem does local LLMs solve, and what evidence would show it is solving that problem? Do not name a vendor or model yet. This separates the enduring idea from one implementation.
1Learn the idea
Read
Scenario
You operate an offline clinical note assistant. A teammate proposes a change that sounds beneficial, but you require a trace connecting configuration to evidence. Here is the observed run:
A 7B model at 4-bit needs roughly 3.5 GB just for raw weights, plus runtime overhead and KV cache. It runs one 4k-token chat in 6 GB, but four concurrent 16k chats trigger OOM. Limiting concurrency to two and context to 8k stabilizes service; a queue makes the capacity limit explicit.
Read
Reconstruct the trace
First identify the input and scope. Which user, segment, document, image, query, hardware profile, or task was involved? Next record the exact configuration: model or checkpoint, prompt, index, context policy, sampler, thresholds, and tool versions that matter for local LLMs. Then preserve the intermediate artifact that explains the result. Finally attach the user-visible output and measured consequence.
Write the trace as a sequence rather than a conclusion:
request + configuration
-> intermediate evidence
-> model or policy decision
-> validation / fusion / routing
-> user-visible action
-> measured outcome
This format prevents hindsight from collapsing several stages into “AI error.” It also exposes where a deterministic check could have stopped propagation.
Read
Calculate before interpreting
Use absolute counts alongside percentages. If success falls from 78 of 100 to 62 of 100, that is a 16 percentage-point decrease, not merely “16% worse.” If cost rises from $0.006 to $0.018 for one million requests, variable spend rises from $6,000 to $18,000. If a sample contains only ten cases from a critical language, one miss moves its rate by ten points; collect more evidence before claiming stability.
Test task quality at the exact quantization, tokens per second, time to first token, peak memory, concurrent throughput, energy, startup time, and failure recovery. Verify network egress, license terms, model provenance, and behavior on target hardware—not a vendor GPU. Pick one primary metric and list gates separately. Do not average a privacy breach, severe unsafe action, or failed authorization with stylistic quality.
Read
Competing hypotheses
Generate at least three explanations: input mix changed; a component configuration changed; or measurement changed. Then propose a discriminating test for each. Replay the same cases on old and new configurations, compare intermediate artifacts, and rescore both with the same rubric. This controls more variables than debating outputs by eye.
Weights fit but KV cache causes out-of-memory under concurrency; thermal throttling slows laptops; permissive endpoints expose the model; an incompatible prompt template causes nonsense; licenses prohibit the intended use; and “no cloud” claims fail when telemetry or embeddings leave the device. The likely failure should match the earliest divergent artifact. If it does not, revise the hypothesis.
Read
Decision and follow-up
Choose among keep, roll back, canary, route, or collect more data. State the owner and deadline. A rollback restores safety but does not explain root cause; preserve the failed configuration for offline reproduction. A successful fix adds the case to a regression set and updates the runbook.
The expert habit is modest: claim only what the trace supports. One run can demonstrate a mechanism, not a universal advantage. A coherent sequence with inspectable evidence teaches more than a polished before-and-after screenshot.