How-to guide

Set up Ollama (local AI)

Run the analysis on your own machine with no API key.

Ollama runs a model on your own machine, so the analysis pass needs no API key and nothing is sent to a cloud provider. Choose it when transcript text must not leave the machine. This page covers getting set up and what to expect when you run it; for how local compares with a cloud provider, see Cloud or local AI.

Before you start

  • A recent machine with enough memory. The smallest model needs about 4 GB of free RAM and a 2 GB download; larger models need more (see the next section).
  • Ollama installed and running. Bristlenose does not bundle it.

Choose a model for your hardware

Model size is the main lever on both quality and speed: a larger model finds better quotes and groups them into clearer themes, but it uses more memory and runs more slowly. Pick the largest model your machine can hold comfortably alongside everything else.

macOS app
  1. Open Settings (⌘,), go to the LLM tab, and select Ollama.
  2. Turn on Use the local Ollama model. A toolbar pill then walks you through choosing a model, getting Ollama if it isn't installed, and downloading the model.
  3. The recommended model is chosen for your Mac's memory, and download sizes are shown before anything is fetched.
Command line

The default model is llama3.2:3b — small, and runs almost anywhere. To use a larger one, pull it and point Bristlenose at it:

ollama pull gemma4:e4b
export BRISTLENOSE_LOCAL_MODEL=gemma4:e4b

Set BRISTLENOSE_LOCAL_MODEL in your environment or a .env file in the folder you run from. It takes any model you have pulled — for example qwen2.5:7b for stronger multilingual support.

The app recommends a model by available memory; on the command line, choose from these:

Your machine Model Download Notes
Under 16 GB Llama 3.2 3B (llama3.2:3b) ~2 GB The fallback when memory is tight. Runs almost anywhere.
16–32 GB Gemma 4 E4B (gemma4:e4b) ~3 GB The app's default on most Macs. Leaves memory for your other apps.
36–47 GB Gemma 4 26B (gemma4:26b) ~16 GB More capable, where there's memory to spare.
48 GB or more Gemma 4 31B (gemma4:31b) ~20 GB The most capable of the four; needs the most memory.

Gemma 4 is an open model from Google (Apache 2.0 licence) that runs entirely on your machine — nothing is sent to Google.

To reach an Ollama server on another host, set BRISTLENOSE_LOCAL_URL (default http://localhost:11434/v1).

Run an analysis locally

macOS app

With Ollama selected in Settings, start an analysis as you normally would — it runs against your local model.

Command line

Run bristlenose run interviews --llm local. If Ollama is not installed or running, Bristlenose offers to install it (via Homebrew, Snap, or the official installer), start it, and pull a model.

The Run an analysis page covers the full flow and how to open the report.

What to expect when you run it

  • Speed depends on the model and your machine. A model sized to your memory (see the table) runs comfortably; one that only just fits swaps to disk and runs far more slowly, so leave headroom. Ollama uses your GPU automatically — Metal on Apple Silicon, CUDA on a supported NVIDIA card — and otherwise runs on the CPU, which works but is the slowest. A run is a background job: start it and step away.
  • The first run downloads the model once, and the first transcription downloads a transcription model once. After that, both run offline. Transcription is always local, with or without Ollama.
  • Malformed output is retried, not fatal. A local model sometimes returns structured data Bristlenose can't parse; it retries up to three times, so a stumble costs time rather than the run.
  • Check the results. A local model can miss a quote, or group themes loosely, on the steps that need judgement. Every quote links back to its place in the transcript — check the ones you rely on.
  • AutoCode is not available locally. Proposing tags from a codebook needs the whole codebook in the model's context at once, which local models cannot hold, so AutoCode requires a cloud provider.

Troubleshooting

Symptom Cause and fix
Bristlenose can't reach Ollama Ollama isn't running. Open the Ollama app, or run ollama serve, then try again.
model not found The model isn't pulled. Run ollama pull <model>, for example ollama pull gemma4:e4b.
The run is very slow or stalls The model is large for your memory. Pick a smaller one from the table above.

Run bristlenose doctor to check Ollama, the model, and the rest of your setup in one step.

For what each option sends to a provider, see Cloud or local AI and Privacy and data.