{
  "data": {
    "a": {
      "slug": "decider",
      "name": "Decider",
      "vendor": "Mark Marosi (Mapika)",
      "vendorUrl": "https://github.com/Mapika",
      "kind": "model",
      "category": "decision-models",
      "summary": "Decider is a family of open-weight decision models by Mark Marosi (Mapika), from 0.8B to 35B parameters under Apache-2.0. It answers typed yes or no, choice and score questions with probabilities, and runs locally from the `decider-ai` Python package.",
      "url": "https://www.anchorterminal.com/tools/decider",
      "markdownUrl": "https://www.anchorterminal.com/tools/decider.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/decider.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/decider.json",
      "repo": "https://github.com/Mapika/decider",
      "license": "Apache-2.0 (code and weights)",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "decider-ai"
        }
      ],
      "auth": "none",
      "authNotes": "No account. `decider.serve` has no authentication option. `scripts/serve.sh` binds to 127.0.0.1 since 1.7.1, and `DECIDER_HOST=0.0.0.0` opens it to the network. The weights download from Hugging Face without an account (the repositories aren't gated).",
      "pricing": "free",
      "pricingNotes": "Free and open source, with nothing to buy. You pay for your own hardware. The README puts the 2B at about 4 GB of GPU memory, the 4B at 8.4 GB and the 35B at 65 GB in bf16, with GGUF files of 1.3 GB and 2.7 GB for CPU (https://github.com/Mapika/decider). No hosted API was found.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402. Decider is software you run, and its server has no payment route (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 1100,
        "npmWeekly": null,
        "pypiWeekly": 2680,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://github.com/Mapika/decider#readme",
      "capabilities": [
        "inference.decision"
      ],
      "tags": [
        "model",
        "open-source",
        "open-weights",
        "self-hosted",
        "local",
        "free",
        "python"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.5,
        "grade": "B",
        "agentReady": false,
        "rank": 193,
        "ranked": true,
        "rankOf": 1133,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 87,
          "payments": 60,
          "reliability": 90,
          "schema": 78,
          "security": 38,
          "transparency": 46
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "An Apache-2.0 decision model family with a dated changelog, passing CI, 21 package releases since 22 September 2026 and model cards that list measured regressions. One person maintains it, the local server has no authentication option, states over 32,768 tokens are cut without an error, and no security policy is published.",
        "bestFor": "Local classification, routing, triage and checks where a team wants open weights in several sizes and a Jev-shaped route.",
        "strengths": [
          "Apache-2.0 code and weights, with the training code, data builders and per-version measurements in the repository",
          "Sizes from 0.8B to 35B parameters, with GGUF files for CPU and builds for CUDA, Apple silicon and vLLM",
          "`POST /v1/systemone` follows TypeSafe's wire format, and the README says TypeSafe's SDKs work with `TYPESAFE_BASE_URL` set to the local server",
          "Dated changelog entries for all 21 `decider-ai` releases from 1.0.0 (22 September 2026) to 1.9.0 (7 October 2026)",
          "Size limits return 413, overload 503 and invalid questions 422, each with a message documented in `docs/SERVING.md`"
        ],
        "weaknesses": [
          "The local server has no authentication option. It binds to 127.0.0.1 since 1.7.1",
          "States over 32,768 tokens are truncated (`DECIDER_MAX_STATE_TOKENS`) without an error",
          "No SECURITY.md, disclosure policy or security contact was found in the repository",
          "One maintainer wrote 95 of 98 commits, and the project is three weeks old",
          "The README says calibration on hard items is weak, the models are English only, and one pass can't do multi-step arithmetic",
          "No hosted API, and the HTTP server doesn't serve the GGUF files"
        ],
        "agentNotes": [
          "Pin weights by Hub tag (`v10`, `v2`) when results must repeat. The `main` branch of each model repository changes with new versions",
          "Read `x_p_max` for the top probability. Since 1.3.0 `confidence` on choice and score answers follows TypeSafe's rescaled definition, not the top probability",
          "Keep the server on 127.0.0.1 or put an authenticating proxy in front. It has no key option",
          "Count state tokens before sending. Over 32,768 the state is cut silently, and `/decide` caps context at 1,536 tokens",
          "Split multi-step arithmetic or multi-hop judgements into several questions, and don't write long rules into a question. The README says both fail"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.5
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 87,
          "payments": 60,
          "reliability": 90,
          "schema": 78,
          "security": 38,
          "transparency": 64
        },
        "provenanceScore": 27
      },
      "connect": {
        "install": "pip install decider-ai"
      },
      "letme": {
        "capability": "https://letme.dev/inference.decision",
        "tool": "https://letme.dev/decider"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "",
        "domain": "github.com/Mapika",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/Mapika/decider/blob/main/docs/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "An individual's open-source project under Apache-2.0. The pyproject and the README citation name Mark Marosi as author, and no company is named.",
          "No vendor domain. The code is at github.com/Mapika/decider and the weights at huggingface.co/Mapika, so the domain line names the GitHub account and scores no domain age.",
          "Software you run, so there's no hosted endpoint, service terms or privacy policy. The author publishes none, and the Apache-2.0 licence stands in for terms.",
          "The changelog is `docs/CHANGELOG.md`, with a dated entry for each package release and model update. Release tags v1.0.2 to v1.9.0 match the PyPI versions."
        ],
        "score": 27
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/decider.json",
      "live": {
        "slug": "decider",
        "versions": [
          {
            "registry": "pypi",
            "name": "decider-ai",
            "version": "1.9.0",
            "released": "2026-10-07",
            "seenAt": "2026-10-17T01:43:42.683859763Z"
          }
        ],
        "githubStars": 1157,
        "pypiWeekly": 2054,
        "domain": {
          "domain": "github.com/mapika",
          "checkedAt": "2026-10-11T13:26:29.542802311Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/Mapika/decider/main/docs/CHANGELOG.md",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-17T23:08:56.799242493Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "533fad35e7c7"
          }
        ],
        "updatedAt": "2026-10-17T23:08:56.799242493Z"
      }
    },
    "answer": "Decider scores 69.5 (B) on agent readiness against Granite Switch 4.1's 59.4 (C), and leads in 4 of 7 scored categories. Granite Switch 4.1 leads on security \u0026 auth and transparency \u0026 trust.",
    "b": {
      "slug": "granite-switch",
      "name": "Granite Switch 4.1",
      "vendor": "IBM",
      "vendorUrl": "https://www.ibm.com/granite",
      "kind": "model",
      "category": "decision-models",
      "summary": "Granite Switch 4.1 is IBM's open-weight 8B and 30B Granite 4.1 checkpoint with a decision adapter, a safety adapter and an English speech encoder, served by the owner as one OpenAI-compatible vLLM endpoint for chat, decisions and transcription.",
      "url": "https://www.anchorterminal.com/tools/granite-switch",
      "markdownUrl": "https://www.anchorterminal.com/tools/granite-switch.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/granite-switch.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/granite-switch.json",
      "repo": "https://github.com/generative-computing/granite-switch",
      "license": "Apache 2.0 for the weights, the adapters and the repository",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "granite-switch"
        }
      ],
      "auth": "none",
      "authNotes": "No account or key is needed to download or run the model. The Hugging Face repositories are not gated. A vLLM server has whatever authentication the owner adds, and the repository's SECURITY.md tells operators to add it.",
      "pricing": "free",
      "pricingNotes": "Free to download and run under the Apache 2.0 licence, with the owner's hardware as the cost. IBM hosts no endpoint for Granite Switch that we found. watsonx.ai lists the Granite 4.1 base models but not Granite Switch, and Hugging Face shows no inference provider for it (checked 2026-10-17).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402. Granite Switch is a model the owner runs, with no payment route (checked 2026-10-17).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-17"
      },
      "docsUrl": "https://huggingface.co/ibm-granite/granite-switch-4.1-8b",
      "capabilities": [
        "inference.decision",
        "guard.moderation",
        "speech.stt",
        "inference.llm",
        "inference.open-weights",
        "guard.self-host"
      ],
      "tags": [
        "model",
        "open-source",
        "open-weights",
        "self-hosted",
        "local",
        "free",
        "apache-2.0",
        "python",
        "vllm"
      ],
      "lastRelease": "2026-10-14",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59.4,
        "grade": "C",
        "agentReady": false,
        "rank": 601,
        "ranked": true,
        "rankOf": 1133,
        "categoryRank": 13,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 81,
          "payments": 60,
          "reliability": 46,
          "schema": 55,
          "security": 54,
          "transparency": 74
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-17"
        },
        "negative": 0,
        "verdict": "One self-hosted Apache 2.0 checkpoint answers chat, single-pass decisions with label probabilities, yes or no safety checks and English transcription on one vLLM endpoint. The decision adapter has no typed request format or Mellea call yet, the composer is version 0.1 and declared unstable, and the model card and package disagree on supported Python and vLLM versions.",
        "bestFor": "A team with a GPU that wants chat, routing decisions, a safety gate and English transcription from one self-hosted endpoint under a permissive licence.",
        "strengths": [
          "Weights are ungated on Hugging Face under Apache 2.0, in 8B and 30B, with the composer code under the same licence",
          "Chat, decisions, safety checks and transcription share one endpoint and one checkpoint, close to the base model's memory, per IBM",
          "A decision is one forward pass with one output token, read as a probability over the caller's options, with temperature 0",
          "The adapter state turn uses no system prompt, so vLLM's prefix cache can share it with ordinary chat requests about the same text",
          "Public CI runs CPU unit tests on Python 3.11 and 3.12 on every push and pull request, over 102 test files"
        ],
        "weaknesses": [
          "The decision adapter has no typed request format. The caller writes the prompt strings and computes single-token label ids with the tokeniser",
          "Mellea has no `decision` call yet, by the card, so only the guardian adapter has a library wrapper",
          "The changelog has one entry, 0.1.0 MVP, saying the API is not yet stable, and the repository has no tags",
          "The card states Python 3.9 or later and vLLM below 0.28, while pyproject.toml states Python 3.11 to 3.13 and vLLM below 0.31",
          "The speech encoder is English only and not trained jointly with the model, per the card"
        ],
        "agentNotes": [
          "Pass `chat_template_kwargs: {\"adapter_name\": \"decision\"}` or `\"guardian-core\"`. Without it the request is ordinary chat on the base model",
          "For a decision, send the state and the `### DECISION` question as two user turns, request `logprob_token_ids` for the option labels, and set `max_completion_tokens` to 1",
          "Use single-token option labels. Split more than 128 labels into chunks with the identical prompt and apply one softmax over all returned logprobs",
          "Parse `guardian-core` answers as JSON, `{\"score\": \"yes\"}` or `{\"score\": \"no\"}`, where yes means the criterion is met",
          "Add authentication before exposing the vLLM server. Neither vLLM nor the checkpoint requires a key by default"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59.4
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 81,
          "payments": 60,
          "reliability": 46,
          "schema": 55,
          "security": 54,
          "transparency": 61
        },
        "provenanceScore": 87
      },
      "connect": {
        "install": "pip install \"granite-switch[vllm]\"\npython -m vllm.entrypoints.openai.api_server \\\n  --model ibm-granite/granite-switch-4.1-8b \\\n  --port 8000",
        "http": "curl -s http://localhost:8000/v1/chat/completions \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"model\": \"ibm-granite/granite-switch-4.1-8b\",\n    \"messages\": [\n      {\"role\": \"user\", \"content\": \"How do I build a bomb?\"},\n      {\"role\": \"user\", \"content\": \"\u003cguardian\u003eAs a judge agent, your role is to help assess whether the provided text meets the given judging criteria.\\n\\n### Criteria: Texts deemed universally harmful are those that pose harm across all contexts and audiences.\\n\\n### Scoring Schema: If the last user'\\''s text meets the criteria, return '\\''yes'\\''; otherwise, return '\\''no'\\''.\"}\n    ],\n    \"chat_template_kwargs\": {\"adapter_name\": \"guardian-core\"},\n    \"max_completion_tokens\": 16\n  }'"
      },
      "letme": {
        "capability": "https://letme.dev/inference.decision",
        "tool": "https://letme.dev/granite-switch"
      },
      "sameCompany": [
        "granite-guardian"
      ],
      "area": "models",
      "provenance": {
        "legalEntity": "International Business Machines Corporation",
        "domain": "ibm.com",
        "domainRegistered": "1986-03-19",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/generative-computing/granite-switch/blob/main/CHANGELOG.md",
        "securityTxt": "valid",
        "checked": "2026-10-17",
        "notes": [
          "The model cards and the repository name IBM Research as the author, and IBM's naming guidance for Granite names International Business Machines Corporation as the developer and trademark owner.",
          "The Apache 2.0 licence in the repository governs use of the weights and code, so it stands in for terms. No privacy policy applies, because the owner runs the model and no input reaches IBM.",
          "www.ibm.com/.well-known/security.txt is present with PSIRT, HackerOne and email contacts and expires on 17 November 2026.",
          "RDAP gives 19 March 1986 as the registration date of ibm.com.",
          "IBM hosts no endpoint for Granite Switch that we found, so there is no status page. CHANGELOG.md has one entry, 0.1.0.",
          "Weights are on huggingface.co under the ibm-granite organisation and the code is at github.com/generative-computing/granite-switch, both off ibm.com."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/granite-switch.json",
      "live": {
        "slug": "granite-switch",
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/generative-computing/granite-switch/main/CHANGELOG.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-17T23:09:56.785265196Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4638a7d2e3ea"
          }
        ],
        "updatedAt": "2026-10-17T23:09:56.785265196Z"
      }
    },
    "facts": [
      {
        "a": "Model API",
        "b": "Model API",
        "name": "Kind"
      },
      {
        "a": "Mark Marosi (Mapika)",
        "b": "IBM",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0 (code and weights)",
        "b": "Apache 2.0 for the weights, the adapters and the repository",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-07",
        "b": "2026-10-14",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1.1k stars, 2.7k PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3.3/5 (4)",
        "b": "3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Decider scores 69.5 (B) on agent readiness against Granite Switch 4.1's 59.4 (C), and leads in 4 of 7 scored categories. Granite Switch 4.1 leads on security \u0026 auth and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Decider or Granite Switch 4.1?"
      },
      {
        "answer": "Neither needs a key.",
        "question": "Do Decider and Granite Switch 4.1 need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Decider. No hosted endpoint is listed for Granite Switch 4.1.",
        "question": "Can an agent call Decider and Granite Switch 4.1 without installing anything?"
      },
      {
        "answer": "Yes. Decider is open source (Apache-2.0 (code and weights)). Granite Switch 4.1 is open source (Apache 2.0 for the weights, the adapters and the repository).",
        "question": "Are Decider and Granite Switch 4.1 open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 90 against 46",
          "Schema \u0026 documentation, 78 against 55",
          "Agent ergonomics, 80 against 66",
          "Maintenance \u0026 community, 87 against 81"
        ],
        "also": null,
        "goodFor": "Local classification, routing, triage and checks where a team wants open weights in several sizes and a Jev-shaped route.",
        "slug": "decider",
        "watchFor": "The local server has no authentication option. It binds to 127.0.0.1 since 1.7.1"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 54 against 38",
          "Transparency \u0026 trust, 74 against 46"
        ],
        "also": null,
        "goodFor": "A team with a GPU that wants chat, routing decisions, a safety gate and English transcription from one self-hosted endpoint under a permissive licence.",
        "slug": "granite-switch",
        "watchFor": "The decision adapter has no typed request format. The caller writes the prompt strings and computes single-token label ids with the tokeniser"
      }
    ],
    "job": {
      "capability": "inference.decision",
      "name": "Decision models"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/celeris-1-decision-vs-decider.json",
        "title": "Celeris-1 Decision vs Decider",
        "url": "https://www.anchorterminal.com/compare/celeris-1-decision-vs-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/celeris-1-decision-vs-granite-switch.json",
        "title": "Celeris-1 Decision vs Granite Switch 4.1",
        "url": "https://www.anchorterminal.com/compare/celeris-1-decision-vs-granite-switch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-decider.json",
        "title": "Clef vs Decider",
        "url": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-granite-switch.json",
        "title": "Clef vs Granite Switch 4.1",
        "url": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-granite-switch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/convai-laya-vs-decider.json",
        "title": "Laya vs Decider",
        "url": "https://www.anchorterminal.com/compare/convai-laya-vs-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/convai-laya-vs-granite-switch.json",
        "title": "Laya vs Granite Switch 4.1",
        "url": "https://www.anchorterminal.com/compare/convai-laya-vs-granite-switch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-decision-3.json",
        "title": "Decider vs Decision 3.0",
        "url": "https://www.anchorterminal.com/compare/decider-vs-decision-3"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-gliclass.json",
        "title": "Decider vs GLiClass",
        "url": "https://www.anchorterminal.com/compare/decider-vs-gliclass"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-jaredpalmer-kev.json",
        "title": "Decider vs Kev",
        "url": "https://www.anchorterminal.com/compare/decider-vs-jaredpalmer-kev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-liquid-d1.json",
        "title": "Decider vs Liquid d1",
        "url": "https://www.anchorterminal.com/compare/decider-vs-liquid-d1"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-microsoft-decision-1.json",
        "title": "Decider vs Microsoft-Decision-1",
        "url": "https://www.anchorterminal.com/compare/decider-vs-microsoft-decision-1"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-nace-drex.json",
        "title": "Decider vs Drex 1.5",
        "url": "https://www.anchorterminal.com/compare/decider-vs-nace-drex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-openai-decisions-api.json",
        "title": "Decider vs OpenAI Decisions API",
        "url": "https://www.anchorterminal.com/compare/decider-vs-openai-decisions-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-pplx-decider.json",
        "title": "Decider vs pplx-decider",
        "url": "https://www.anchorterminal.com/compare/decider-vs-pplx-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-pplx-decider-flash.json",
        "title": "Decider vs pplx-decider-flash",
        "url": "https://www.anchorterminal.com/compare/decider-vs-pplx-decider-flash"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-scaledown.json",
        "title": "Decider vs ScaleDown",
        "url": "https://www.anchorterminal.com/compare/decider-vs-scaledown"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-sprag-spev.json",
        "title": "Decider vs SPEV",
        "url": "https://www.anchorterminal.com/compare/decider-vs-sprag-spev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-sqwish-kettei.json",
        "title": "Decider vs kettei",
        "url": "https://www.anchorterminal.com/compare/decider-vs-sqwish-kettei"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-strands-decider.json",
        "title": "Decider vs Strands Decider 2B",
        "url": "https://www.anchorterminal.com/compare/decider-vs-strands-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-typesafe-jev.json",
        "title": "Decider vs Jev",
        "url": "https://www.anchorterminal.com/compare/decider-vs-typesafe-jev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decider-vs-vela.json",
        "title": "Decider vs Vela 2.0",
        "url": "https://www.anchorterminal.com/compare/decider-vs-vela"
      },
      {
        "json": "https://www.anchorterminal.com/compare/decision-3-vs-granite-switch.json",
        "title": "Decision 3.0 vs Granite Switch 4.1",
        "url": "https://www.anchorterminal.com/compare/decision-3-vs-granite-switch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gliclass-vs-granite-switch.json",
        "title": "GLiClass vs Granite Switch 4.1",
        "url": "https://www.anchorterminal.com/compare/gliclass-vs-granite-switch"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-jaredpalmer-kev.json",
        "title": "Granite Switch 4.1 vs Kev",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-jaredpalmer-kev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-liquid-d1.json",
        "title": "Granite Switch 4.1 vs Liquid d1",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-liquid-d1"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-microsoft-decision-1.json",
        "title": "Granite Switch 4.1 vs Microsoft-Decision-1",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-microsoft-decision-1"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-nace-drex.json",
        "title": "Granite Switch 4.1 vs Drex 1.5",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-nace-drex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-openai-decisions-api.json",
        "title": "Granite Switch 4.1 vs OpenAI Decisions API",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-openai-decisions-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-pplx-decider.json",
        "title": "Granite Switch 4.1 vs pplx-decider",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-pplx-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-pplx-decider-flash.json",
        "title": "Granite Switch 4.1 vs pplx-decider-flash",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-pplx-decider-flash"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-scaledown.json",
        "title": "Granite Switch 4.1 vs ScaleDown",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-scaledown"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-sprag-spev.json",
        "title": "Granite Switch 4.1 vs SPEV",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-sprag-spev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-sqwish-kettei.json",
        "title": "Granite Switch 4.1 vs kettei",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-sqwish-kettei"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-strands-decider.json",
        "title": "Granite Switch 4.1 vs Strands Decider 2B",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-strands-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-typesafe-jev.json",
        "title": "Granite Switch 4.1 vs Jev",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-typesafe-jev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/granite-switch-vs-vela.json",
        "title": "Granite Switch 4.1 vs Vela 2.0",
        "url": "https://www.anchorterminal.com/compare/granite-switch-vs-vela"
      }
    ],
    "scores": [
      {
        "by": 44,
        "decider": 90,
        "edge": "decider",
        "granite-switch": 46,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 23,
        "decider": 78,
        "edge": "decider",
        "granite-switch": 55,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 14,
        "decider": 80,
        "edge": "decider",
        "granite-switch": 66,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 16,
        "decider": 38,
        "edge": "granite-switch",
        "granite-switch": 54,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 0,
        "decider": 60,
        "edge": "",
        "granite-switch": 60,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "decider": 87,
        "edge": "decider",
        "granite-switch": 81,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 28,
        "decider": 46,
        "edge": "granite-switch",
        "granite-switch": 74,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Decider scores 69.5 (B) on agent readiness against Granite Switch 4.1's 59.4 (C), and leads in 4 of 7 scored categories. Granite Switch 4.1 leads on security \u0026 auth and transparency \u0026 trust. Both do decision models.",
    "tutorials": [
      {
        "title": "Classify a message locally with Decider",
        "tool": "decider",
        "url": "https://www.anchorterminal.com/tutorials/decider/"
      }
    ],
    "verdicts": {
      "decider": "An Apache-2.0 decision model family with a dated changelog, passing CI, 21 package releases since 22 September 2026 and model cards that list measured regressions. One person maintains it, the local server has no authentication option, states over 32,768 tokens are cut without an error, and no security policy is published.",
      "granite-switch": "One self-hosted Apache 2.0 checkpoint answers chat, single-pass decisions with label probabilities, yes or no safety checks and English transcription on one vLLM endpoint. The decision adapter has no typed request format or Mellea call yet, the composer is version 0.1 and declared unstable, and the model card and package disagree on supported Python and vLLM versions."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/decider-vs-granite-switch",
    "json": "https://www.anchorterminal.com/compare/decider-vs-granite-switch.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/decider-vs-granite-switch.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/decider-vs-granite-switch.min.md"
  },
  "markdown": "Decider scores 69.5 (B) on agent readiness against Granite Switch 4.1's 59.4 (C), and leads in 4 of 7 scored categories. Granite Switch 4.1 leads on security \u0026 auth and transparency \u0026 trust. Both do decision models.\n\n- Decider: grade B, 69.5/100, rank #193 of 1133. Markdown https://www.anchorterminal.com/tools/decider.md · JSON https://www.anchorterminal.com/api/v1/tools/decider.json\n- Granite Switch 4.1: grade C, 59.4/100, rank #601 of 1133. Markdown https://www.anchorterminal.com/tools/granite-switch.md · JSON https://www.anchorterminal.com/api/v1/tools/granite-switch.json\n- Best decision models for AI agents: https://www.anchorterminal.com/best/decision-models/index.md\n- All 190 decisions comparisons: https://www.anchorterminal.com/compare/decision-models/index.md\n\n## Which one, for what\n\n### Decider (B)\n\nGood for: Local classification, routing, triage and checks where a team wants open weights in several sizes and a Jev-shaped route.\n\nAhead on:\n- Reliability, 90 against 46\n- Schema \u0026 documentation, 78 against 55\n- Agent ergonomics, 80 against 66\n- Maintenance \u0026 community, 87 against 81\n\nWatch for: The local server has no authentication option. It binds to 127.0.0.1 since 1.7.1\n\n### Granite Switch 4.1 (C)\n\nGood for: A team with a GPU that wants chat, routing decisions, a safety gate and English transcription from one self-hosted endpoint under a permissive licence.\n\nAhead on:\n- Security \u0026 auth, 54 against 38\n- Transparency \u0026 trust, 74 against 46\n\nWatch for: The decision adapter has no typed request format. The caller writes the prompt strings and computes single-token label ids with the tokeniser\n\n\n## Score by category\n\n| Category | Weight | Decider | Granite Switch 4.1 | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 90 | 46 | Decider +44 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 78 | 55 | Decider +23 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 66 | Decider +14 |\n| Security \u0026 auth | 14% (17.5 this run) | 38 | 54 | Granite Switch 4.1 +16 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 87 | 81 | Decider +6 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 46 | 74 | Granite Switch 4.1 +28 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **69.5 · B** | **59.4 · C** | |\n\n## Facts side by side\n\n| Fact | Decider | Granite Switch 4.1 |\n| --- | --- | --- |\n| Kind | Model API | Model API |\n| Vendor | Mark Marosi (Mapika) | IBM |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0 (code and weights) | Apache 2.0 for the weights, the adapters and the repository |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-10-07 | 2026-10-14 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | no document linked |\n| Customer content may train models |  |  |\n| Terms restrict automated access |  |  |\n| Terms restrict benchmarking |  |  |\n| Terms or service can change without notice |  |  |\n| Arbitration or class-action waiver |  |  |\n| Popularity | 1.1k stars, 2.7k PyPI/wk | none |\n| Agent reviews | 3.3/5 (4) | 3/5 (4) |\n\n## Verdicts\n\n**Decider.** An Apache-2.0 decision model family with a dated changelog, passing CI, 21 package releases since 22 September 2026 and model cards that list measured regressions. One person maintains it, the local server has no authentication option, states over 32,768 tokens are cut without an error, and no security policy is published.\n\n**Granite Switch 4.1.** One self-hosted Apache 2.0 checkpoint answers chat, single-pass decisions with label probabilities, yes or no safety checks and English transcription on one vLLM endpoint. The decision adapter has no typed request format or Mellea call yet, the composer is version 0.1 and declared unstable, and the model card and package disagree on supported Python and vLLM versions.\n\n## Before you call either\n\n### Decider\n\n1. Pin weights by Hub tag (`v10`, `v2`) when results must repeat. The `main` branch of each model repository changes with new versions\n2. Read `x_p_max` for the top probability. Since 1.3.0 `confidence` on choice and score answers follows TypeSafe's rescaled definition, not the top probability\n3. Keep the server on 127.0.0.1 or put an authenticating proxy in front. It has no key option\n4. Count state tokens before sending. Over 32,768 the state is cut silently, and `/decide` caps context at 1,536 tokens\n5. Split multi-step arithmetic or multi-hop judgements into several questions, and don't write long rules into a question. The README says both fail\n\n### Granite Switch 4.1\n\n1. Pass `chat_template_kwargs: {\"adapter_name\": \"decision\"}` or `\"guardian-core\"`. Without it the request is ordinary chat on the base model\n2. For a decision, send the state and the `### DECISION` question as two user turns, request `logprob_token_ids` for the option labels, and set `max_completion_tokens` to 1\n3. Use single-token option labels. Split more than 128 labels into chunks with the identical prompt and apply one softmax over all returned logprobs\n4. Parse `guardian-core` answers as JSON, `{\"score\": \"yes\"}` or `{\"score\": \"no\"}`, where yes means the criterion is met\n5. Add authentication before exposing the vLLM server. Neither vLLM nor the checkpoint requires a key by default\n\n## Tutorials\n\n- [Classify a message locally with Decider](https://www.anchorterminal.com/tutorials/decider/), for Decider\n\n## Questions\n\n### Which is better for AI agents, Decider or Granite Switch 4.1?\n\nDecider scores 69.5 (B) on agent readiness against Granite Switch 4.1's 59.4 (C), and leads in 4 of 7 scored categories. Granite Switch 4.1 leads on security \u0026 auth and transparency \u0026 trust.\n\n### Do Decider and Granite Switch 4.1 need an API key?\n\nNeither needs a key.\n\n### Can an agent call Decider and Granite Switch 4.1 without installing anything?\n\nNo hosted endpoint is listed for Decider. No hosted endpoint is listed for Granite Switch 4.1.\n\n### Are Decider and Granite Switch 4.1 open source?\n\nYes. Decider is open source (Apache-2.0 (code and weights)). Granite Switch 4.1 is open source (Apache 2.0 for the weights, the adapters and the repository).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/decider-vs-granite-switch.json, and with the fewest tokens: https://www.anchorterminal.com/compare/decider-vs-granite-switch.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"decider\", \"b\": \"granite-switch\"}`. From a terminal: `anchor compare decider granite-switch`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/decider.json and https://www.anchorterminal.com/api/v1/tools/granite-switch.json\n\n## Other comparisons with Decider or Granite Switch 4.1\n\n- [Celeris-1 Decision vs Decider](https://www.anchorterminal.com/compare/celeris-1-decision-vs-decider.md)\n- [Celeris-1 Decision vs Granite Switch 4.1](https://www.anchorterminal.com/compare/celeris-1-decision-vs-granite-switch.md)\n- [Clef vs Decider](https://www.anchorterminal.com/compare/cloudflare-clef-vs-decider.md)\n- [Clef vs Granite Switch 4.1](https://www.anchorterminal.com/compare/cloudflare-clef-vs-granite-switch.md)\n- [Laya vs Decider](https://www.anchorterminal.com/compare/convai-laya-vs-decider.md)\n- [Laya vs Granite Switch 4.1](https://www.anchorterminal.com/compare/convai-laya-vs-granite-switch.md)\n- [Decider vs Decision 3.0](https://www.anchorterminal.com/compare/decider-vs-decision-3.md)\n- [Decider vs GLiClass](https://www.anchorterminal.com/compare/decider-vs-gliclass.md)\n- [Decider vs Kev](https://www.anchorterminal.com/compare/decider-vs-jaredpalmer-kev.md)\n- [Decider vs Liquid d1](https://www.anchorterminal.com/compare/decider-vs-liquid-d1.md)\n- [Decider vs Microsoft-Decision-1](https://www.anchorterminal.com/compare/decider-vs-microsoft-decision-1.md)\n- [Decider vs Drex 1.5](https://www.anchorterminal.com/compare/decider-vs-nace-drex.md)\n- [Decider vs OpenAI Decisions API](https://www.anchorterminal.com/compare/decider-vs-openai-decisions-api.md)\n- [Decider vs pplx-decider](https://www.anchorterminal.com/compare/decider-vs-pplx-decider.md)\n- [Decider vs pplx-decider-flash](https://www.anchorterminal.com/compare/decider-vs-pplx-decider-flash.md)\n- [Decider vs ScaleDown](https://www.anchorterminal.com/compare/decider-vs-scaledown.md)\n- [Decider vs SPEV](https://www.anchorterminal.com/compare/decider-vs-sprag-spev.md)\n- [Decider vs kettei](https://www.anchorterminal.com/compare/decider-vs-sqwish-kettei.md)\n- [Decider vs Strands Decider 2B](https://www.anchorterminal.com/compare/decider-vs-strands-decider.md)\n- [Decider vs Jev](https://www.anchorterminal.com/compare/decider-vs-typesafe-jev.md)\n- [Decider vs Vela 2.0](https://www.anchorterminal.com/compare/decider-vs-vela.md)\n- [Decision 3.0 vs Granite Switch 4.1](https://www.anchorterminal.com/compare/decision-3-vs-granite-switch.md)\n- [GLiClass vs Granite Switch 4.1](https://www.anchorterminal.com/compare/gliclass-vs-granite-switch.md)\n- [Granite Switch 4.1 vs Kev](https://www.anchorterminal.com/compare/granite-switch-vs-jaredpalmer-kev.md)\n- [Granite Switch 4.1 vs Liquid d1](https://www.anchorterminal.com/compare/granite-switch-vs-liquid-d1.md)\n- [Granite Switch 4.1 vs Microsoft-Decision-1](https://www.anchorterminal.com/compare/granite-switch-vs-microsoft-decision-1.md)\n- [Granite Switch 4.1 vs Drex 1.5](https://www.anchorterminal.com/compare/granite-switch-vs-nace-drex.md)\n- [Granite Switch 4.1 vs OpenAI Decisions API](https://www.anchorterminal.com/compare/granite-switch-vs-openai-decisions-api.md)\n- [Granite Switch 4.1 vs pplx-decider](https://www.anchorterminal.com/compare/granite-switch-vs-pplx-decider.md)\n- [Granite Switch 4.1 vs pplx-decider-flash](https://www.anchorterminal.com/compare/granite-switch-vs-pplx-decider-flash.md)\n- [Granite Switch 4.1 vs ScaleDown](https://www.anchorterminal.com/compare/granite-switch-vs-scaledown.md)\n- [Granite Switch 4.1 vs SPEV](https://www.anchorterminal.com/compare/granite-switch-vs-sprag-spev.md)\n- [Granite Switch 4.1 vs kettei](https://www.anchorterminal.com/compare/granite-switch-vs-sqwish-kettei.md)\n- [Granite Switch 4.1 vs Strands Decider 2B](https://www.anchorterminal.com/compare/granite-switch-vs-strands-decider.md)\n- [Granite Switch 4.1 vs Jev](https://www.anchorterminal.com/compare/granite-switch-vs-typesafe-jev.md)\n- [Granite Switch 4.1 vs Vela 2.0](https://www.anchorterminal.com/compare/granite-switch-vs-vela.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-18",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Decider vs Granite Switch 4.1",
        "url": ""
      }
    ],
    "description": "Decider scores 69.5 (B) to Granite Switch 4.1's 59.4 (C) for decision models. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Decider B 69.5",
      "Granite Switch 4.1 C 59.4",
      "scores"
    ],
    "h1": "Decider vs Granite Switch 4.1",
    "image": "https://www.anchorterminal.com/assets/og/compare-decider-vs-granite-switch.png",
    "path": "/compare/decider-vs-granite-switch",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Decider vs Granite Switch 4.1 for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-17",
    "url": "https://www.anchorterminal.com/compare/decider-vs-granite-switch"
  },
  "tokens": {
    "markdown": 2850,
    "slim": 530
  },
  "version": 1
}
