Skip to main content
Some of the content you want to classify can’t leave your Mac: customer exports, meeting notes, screenshots of internal tools, logs with tokens in them. Decider for Mac runs pplx-decider-flash-v1.2, Perplexity’s 4B decision model, on your Mac and serves the Decisions API at http://127.0.0.1:8080/v1/decisions. The model reads your content on your machine. There’s no API key and no usage bill. You send the same JSON as the hosted Decisions API: content as state, a named question, and you get back probabilities. Build and test against your Mac, then point the same code at https://api.perplexity.ai/v1/decisions when you need hosted scale or the larger pplx-decider-v1.2 model.

Download Decider for Mac

Decider.dmg for Macs with Apple silicon running macOS 13 or later. The app downloads the 5.8 GB model on first launch.

What you get

  • Private content stays on your Mac. The model reads state on your machine, so you can classify files you can’t send to a hosted API.
  • No API key and no bill. Run thousands of labels while you tune questions and thresholds.
  • Text and images. The menu shows Ready (text + images) when the model is loaded, so you can send screenshots and photos as well as text.
  • The same request as the hosted API. Moving code to the hosted API is a URL change and an Authorization header.
Downloading the app and the model needs a network connection.

Requirements

  • A Mac with Apple silicon (M1 or later)
  • macOS 13 or later
  • 16 GB of memory
  • About 6 GB of free disk space

Install the app

1

Download the app

Download Decider.dmg.
2

Move it to Applications

Open the DMG and drag Decider to your Applications folder.
3

Open Decider and wait for the model to download

Open Decider from Applications. Its icon appears in the menu bar, not the Dock, and the setup window shows the one-time model download (about 5.8 GB). When the download finishes, the window shows Ready to use and the menu shows Ready. Closing the setup window keeps Decider running; click the menu bar icon to see the status or reopen the window.If Decider asks for a Hugging Face token, paste one with read access. You can create one in your Hugging Face token settings. If you already signed in with hf auth login, Decider uses that login instead.
Set up Decider window pointing to the Decider icon in the menu bar, with The model marked Downloaded and loaded and Ready to use showing the local address http://127.0.0.1:8080/v1/decisions

The setup window after the model is downloaded and the local API is ready.

Send your first request

When the menu shows Ready, run this in Terminal. It asks which team should handle a support message:
The answer for route has choice (the most likely team), probabilities (one value per team), and confidence. See the Decisions API quickstart for how to read each answer type and Question types for noul (yes or no), choice (one of your options), and score (a level on your rubric). The menu’s Copy Example curl gives you a ready-to-run request, and Copy API URL gives you the address. Send one question per request. pplx-decider-flash-v1.2 answers each question on its own; see Grouping questions in one request.

Examples

Every example below uses only what comes with macOS: Python 3 from the Command Line Tools, plus the built-in screencapture and sips commands. If python3 isn’t installed, macOS offers to install the Command Line Tools the first time you run it. Each script sends one question per request and reads one answer.

Label a folder of private files

You have a folder of exported support emails, meeting notes, or user feedback, and you want a label on every file without uploading any of it. This script sends each .txt file in a folder to Decider and writes the labels to labels.csv. Save it as label_folder.py and run python3 label_folder.py ~/path/to/folder:
Sort labels.csv by confidence and read the lowest rows first. Those are the files where the model was least sure, which is where your category descriptions need work. Edit the descriptions in QUESTION and run it again. Nothing stops you from running it fifty times.

Block commits that contain secrets

A regex scanner catches secrets with a known format, like an AWS key or a private key header. It misses the ones without a format: a database password in a config file or a token pasted into a comment. This pre-commit hook runs both checks on the lines you’re adding. A pattern match blocks the commit on its own, and Decider is asked about everything else. Save this as .git/hooks/pre-commit in your repository and run chmod +x .git/hooks/pre-commit:
Each staged file’s added lines go to Decider as one noul question, and the commit stops if the probability of a secret is THRESHOLD or higher. A false positive costs you a second look, but a missed secret ends up in your Git history, so the cutoff starts low at 0.2. Run the hook on commits you’ve already reviewed and raise the cutoff only if it flags too many clean ones. The hook fails closed. If Decider isn’t running or can’t answer for a file, the commit stops and names the file. When you’ve checked a flagged file yourself, commit with git commit --no-verify to skip the hook once. The hook doesn’t read binary files, and it only sees what you commit from this Mac. For full coverage, run a dedicated secret scanner in CI as well.

Sort a folder of screenshots

Screenshots pile up: receipts, error dialogs, chat threads, code. Decider reads images, so it can sort them by what’s in them. This script asks one choice question about each image and moves it into a folder named after the answer. Save it as sort_screenshots.py and run python3 sort_screenshots.py ~/Desktop/screenshots:
sips -Z 1440 ... --out writes a copy with its longest side at 1440 pixels, which keeps every image inside the image size limit and keeps the request small. Your originals move, but they’re never resized. Add a category by adding a line to criteria. Your screenshots never leave your Mac.

Watch your screen for an error

Decider can answer questions about what’s on your screen right now. This script takes a screenshot, shrinks it, and asks whether an error is showing. Save it as check_screen.py and run python3 check_screen.py:
screencapture -x saves the screen without the shutter sound, and sips -Z 1440 shrinks the file in place. The first time you run it, macOS asks you to allow Screen Recording for Terminal under System Settings > Privacy & Security. Without that permission, the screenshot contains only your desktop background. Run it in a loop to watch a long build or a flaky deploy, and change the question to check for whatever you care about. The screenshots never leave your Mac.

Move the same code to the hosted API

When you need hosted throughput or the larger pplx-decider-v1.2 model, keep the request and change two things: the URL and an Authorization header with your API key.
The weights on your Mac are a q8_0 GGUF build of the model, not the hosted deployment. If you tuned a threshold locally, check it on a sample of your data against the hosted model before you rely on it in production.

The menu

Decider menu showing Ready (text + images), the address http://127.0.0.1:8080/v1/decisions, Retry, Set Up Decider, Copy API URL, Copy Example curl, Port 8080, Allow Network Access, Start at Login, Set Hugging Face Token, Open Config File, Show Model Files, and Quit Decider

The Decider menu when the model is loaded.

Config file

Open Config File opens ~/Library/Application Support/ai.perplexity.decider/config.toml. You don’t need to edit it: the menu sets the port for you. These are the defaults:
host and port are the address the server listens on; Port in the menu sets the port. Leave host at 127.0.0.1. The [model] table names the Hugging Face repo and the two files Decider downloads, which are the files you see under Show Model Files. Leave the other keys at their defaults.

Model files

Show Model Files opens the folder with the two files Decider downloaded:
  • decider-flash-v1.2-q8_0.gguf: the model weights, a q8_0 GGUF build of pplx-decider-flash-v1.2.
  • mmproj-decider-flash-v1.2-f16.gguf: the multimodal projector, the part that lets the model read images.
Each file has a matching .lock file. Leave all four in place while Decider is running.

Not supported

Decider for Mac requires Apple silicon. On Windows, Linux, or an Intel Mac, use the hosted Decisions API instead.