{
  "data": {
    "a": {
      "slug": "bitrun",
      "name": "BitRun",
      "vendor": "Abhishek Khanra (IshekKhal on GitHub)",
      "vendorUrl": "https://github.com/IshekKhal",
      "kind": "http-api",
      "category": "local-ai",
      "summary": "BitRun is an open-source command-line runner for 1-bit and 1.58-bit ternary language models such as BitNet b1.58, Falcon3 1.58-bit and Bonsai on CPUs, with a model downloader and a local OpenAI-compatible server.",
      "url": "https://www.anchorterminal.com/tools/bitrun",
      "markdownUrl": "https://www.anchorterminal.com/tools/bitrun.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bitrun.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bitrun.json",
      "repo": "https://github.com/IshekKhal/bitrun",
      "license": "MIT",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "none",
      "authNotes": "No credential. `bitrun serve` starts a patched llama-server on 127.0.0.1 (default port 11435, changed with `--port`) and passes no `--api-key`, so any process on the machine can call it. The bind address is fixed in the code, with no flag to expose it on the network. The README's SDK example sets `api_key` to any string.",
      "pricing": "free",
      "pricingNotes": "Free under MIT with nothing to buy. Models are downloaded from Hugging Face under each model's own licence.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the source, the README or the release notes (checked 2026-10-15). Nothing is sold.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 5,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-15"
      },
      "docsUrl": "https://github.com/IshekKhal/bitrun#readme",
      "capabilities": [
        "inference.local",
        "inference.open-weights"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "mit",
        "openai-compatible",
        "go",
        "pre-1.0",
        "macos",
        "windows",
        "cli"
      ],
      "lastRelease": "2026-10-15",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 37.9,
        "grade": "F",
        "agentReady": false,
        "rank": 1018,
        "ranked": true,
        "rankOf": 1094,
        "categoryRank": 18,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 40,
          "maintenance": 59,
          "payments": 60,
          "reliability": 38,
          "schema": 30,
          "security": 28,
          "transparency": 50
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-15"
        },
        "negative": -3,
        "negativeNotes": [
          "Misleading claim, 15 October 2026. The README's \"Verified Hardware Benchmarks\", described as physical hardware runs, list package power of 11.70 W, 22.60 W and 8.50 W for every model on each machine, and joules per token from them. These equal the fixed estimates in power.go (2.5 + 1.15 per thread on macOS without battery data, 5.0 + 2.2 per thread on Windows, 4.5 + 2.0 per thread on Linux without RAPL) at the default thread counts of 8, 8 and 2. The README also says Windows power is measured through PPM and that `pull` resumes downloads, and the source does neither (https://github.com/IshekKhal/bitrun/blob/0fec65a/pkg/telemetry/power.go#L137-L163, https://github.com/IshekKhal/bitrun/blob/0fec65a/pkg/models/downloader.go#L57-L60, https://github.com/IshekKhal/bitrun/blob/0fec65a/README.md). Judgement call, -3."
        ],
        "verdict": "BitRun packages patched llama.cpp builds for ternary models into one download for macOS on Apple silicon, Windows and Linux, with a loopback-only OpenAI-compatible server. It is three days old with three pre-release versions, one maintainer and no CI, and its published power figures come from a fixed formula rather than measurement.",
        "bestFor": "A developer who wants to try ternary models on a laptop CPU behind an OpenAI-style endpoint without building bitnet.cpp.",
        "strengths": [
          "One archive per platform (macOS arm64, Linux amd64, Windows amd64) with llama-server, so no compiler, Python or Docker is needed",
          "The server binds 127.0.0.1 with no flag to expose it, and works with OpenAI SDKs by changing the base URL",
          "A catalogue of six ternary and compact models, 79 MB to 2.08 GB, pulled from their Hugging Face repositories by tag",
          "MIT licence, and no network telemetry found in the Go source. Outbound calls are model downloads on `pull`"
        ],
        "weaknesses": [
          "First released on 12 October 2026. Three pre-release versions in four days, one maintainer and no CI workflow",
          "The README's package power and joules-per-token figures match a fixed per-thread formula in the code, not a counter reading",
          "No API key option, so any local process can call the server, and model downloads and the installer verify no checksum",
          "The server documentation covers one route, `/v1/chat/completions`, with no error responses, OpenAPI file or llms.txt",
          "Context windows of the catalogue models run from 768 to 8,192 tokens, and one server process serves one model"
        ],
        "agentNotes": [
          "Ask the user to install BitRun and run `bitrun pull \u003ctag\u003e` and `bitrun serve \u003ctag\u003e` first. Then call http://127.0.0.1:11435/v1 with any API key string",
          "Poll `/health` before the first request. The server loads the model in the background and answers only when ready",
          "Use a model tag from the catalogue (bitnet-70m, bonsai-1.7b, falcon3-1b, bitnet-2b, falcon3-3b, bonsai-8b) and keep prompts within its context window",
          "Treat the README's energy figures as estimates, and don't report them as measured power",
          "Expect small research checkpoints. Check outputs before relying on them for code or facts"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "F",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 37.9
          }
        ],
        "editorialScores": {
          "ergonomics": 40,
          "maintenance": 59,
          "payments": 60,
          "reliability": 38,
          "schema": 30,
          "security": 28,
          "transparency": 46
        },
        "provenanceScore": 53
      },
      "connect": {
        "install": "curl -fsSL https://raw.githubusercontent.com/IshekKhal/bitrun/main/install.sh | sh\nbitrun pull falcon3-1b\nbitrun serve falcon3-1b --port 11435",
        "http": "curl -s http://127.0.0.1:11435/v1/chat/completions \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"model\": \"falcon3-1b\", \"messages\": [{\"role\": \"user\", \"content\": \"How do 1-bit models conserve memory bandwidth?\"}], \"temperature\": 0.2}'"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/bitrun"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "Abhishek Khanra (IshekKhal on GitHub)",
        "domain": "",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/IshekKhal/bitrun/releases",
        "securityTxt": "none",
        "checked": "2026-10-15",
        "notes": [
          "The project has no website. The GitHub account IshekKhal (created 17 December 2024) gives the name Abhishek Khanra, and the licence reads Copyright (c) 2026 Abhishek. The Show HN post was made by the HN account ishekofficial.",
          "No terms, privacy policy, SECURITY.md or security.txt. The repository has no .github folder.",
          "The software runs on the owner's machine, so there is no vendor endpoint or status page to check."
        ],
        "score": 53
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bitrun.json"
    },
    "answer": "vLLM scores 57.7 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "vllm",
      "name": "vLLM",
      "vendor": "vLLM project (PyTorch Foundation)",
      "vendorUrl": "https://vllm.ai",
      "kind": "http-api",
      "category": "local-ai",
      "summary": "vLLM is an open-source inference and serving engine for open-weight language models. `vllm serve` runs an HTTP server with OpenAI-compatible, Anthropic Messages, embedding, reranking and transcription routes on the owner's own GPUs or CPUs.",
      "url": "https://www.anchorterminal.com/tools/vllm",
      "markdownUrl": "https://www.anchorterminal.com/tools/vllm.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/vllm.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vllm.json",
      "repo": "https://github.com/vllm-project/vllm",
      "license": "Apache-2.0",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "vllm"
        },
        {
          "registry": "oci",
          "name": "vllm/vllm-openai"
        }
      ],
      "auth": "none",
      "authNotes": "No credential by default. `--api-key` (one or several keys) or `VLLM_API_KEY` turns on a Bearer check for paths under `/v1`, `/v2`, `/inference` and `/cohere` only, so `/invocations`, `/pooling`, `/classify`, `/score`, `/rerank` and control routes such as `/pause` stay open. Keys have no scopes and change with a restart. The key is read from the `Authorization` header, never the query string. gRPC has no authentication (https://github.com/vllm-project/vllm/blob/main/docs/usage/security.md).",
      "pricing": "free",
      "pricingNotes": "Free under Apache-2.0, with no account, key or card. Nothing is sold by the project. You pay for your own hardware and electricity.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the source (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 93444,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.vllm.ai/en/stable/",
      "capabilities": [
        "inference.local",
        "inference.open-weights",
        "embed.text",
        "rerank",
        "speech.stt",
        "inference.decision",
        "agent.mcp-client"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "openai-compatible",
        "docker",
        "pre-1.0",
        "telemetry-default-on"
      ],
      "lastRelease": "2026-10-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 57.7,
        "grade": "C",
        "agentReady": false,
        "rank": 641,
        "ranked": true,
        "rankOf": 1094,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 88,
          "payments": 60,
          "reliability": 62,
          "schema": 68,
          "security": 50,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": -6,
        "negativeNotes": [
          "2026-06-02. GHSA-94f4-hr76-p5j6 (CVE-2026-48746, 9.1), a crafted Host header bypassed the API key check on the OpenAI routes, fixed in 0.22.0. With GHSA-4r2x-xpjr-7cvv (CVE-2026-22778, 9.8) of 2 February 2026, code execution through video decoding fixed in 0.14.1, these are the two critical advisories of the last 12 months. Both were fixed and published with CVEs, so they decay, -3. https://github.com/vllm-project/vllm/security/advisories/GHSA-94f4-hr76-p5j6; https://github.com/vllm-project/vllm/security/advisories/GHSA-4r2x-xpjr-7cvv",
          "2026-10-06. GHSA-h3rc-6mm3-gc2m (8.1), a request field could select the processor code a server started with `--trust-remote-code` imports, fixed in 0.31.0, one of 50 advisories published since 11 July 2026 (10 high, 36 medium, 4 low), most of them requests that crash or exhaust the engine. All name a fixed version, and eleven were published on 9 October 2026 months after their fixes, -3. https://github.com/vllm-project/vllm/security/advisories/GHSA-h3rc-6mm3-gc2m; https://github.com/vllm-project/vllm/security/advisories"
        ],
        "verdict": "Apache-2.0 software with a release about every two weeks, each with notes that list breaking changes and security fixes. The optional API key covers only some path prefixes, so `/invocations` and control routes such as `/pause` answer without it, and at least 81 security advisories were published in the 12 months to 9 October 2026.",
        "bestFor": "An owner with a GPU server who wants many concurrent requests against one open-weight model behind OpenAI or Anthropic compatible routes.",
        "strengths": [
          "OpenAI chat, completions, responses and embeddings, Anthropic `/v1/messages`, Cohere embed and rerank, transcription and `/v1/systemone` from one server",
          "Apache-2.0, with a written three-stage deprecation policy and release notes that carry a breaking changes section",
          "Eight stable releases between 12 July and 2 October 2026, and v0.31.0 lists 717 commits from 307 contributors",
          "A 650-line security guide names every route the API key does and does not protect, and the limits of multi-tenant use",
          "Usage statistics are documented field by field, with `VLLM_NO_USAGE_STATS`, `DO_NOT_TRACK` or a file as opt-outs"
        ],
        "weaknesses": [
          "`--api-key` guards only the `/v1`, `/v2`, `/inference` and `/cohere` prefixes. `/invocations`, `/pooling`, `/classify`, `/score`, `/rerank`, `/pause` and `/update_weights` answer without it",
          "No key by default, the server binds every interface when `--host` is unset, and CORS allows any origin",
          "At least 81 GitHub security advisories in 12 months, two critical, most of them remote crashes or resource exhaustion",
          "Pre-1.0 (0.31.0), with breaking changes in each fortnightly release and compatibility kept for a limited number of minor versions",
          "Usage statistics are sent to stats.vllm.ai by default, and no privacy policy or retention period for them was found"
        ],
        "agentNotes": [
          "Put a reverse proxy that allowlists routes in front of the server. `--api-key` leaves `/invocations` and the control routes open",
          "Pass `--host 127.0.0.1` for single-machine use. With no `--host` the server listens on every interface",
          "Set `VLLM_NO_USAGE_STATS=1` or `DO_NOT_TRACK=1` before starting if nothing should be sent to stats.vllm.ai",
          "Start with `--enable-auto-tool-choice` and the `--tool-call-parser` for the model before sending tools. Tool calling is off without them",
          "Send `max_tokens` on every request, and read the breaking changes section of the release notes before upgrading a minor version"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 57.7
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 88,
          "payments": 60,
          "reliability": 62,
          "schema": 68,
          "security": 50,
          "transparency": 80
        },
        "provenanceScore": 53
      },
      "connect": {
        "install": "uv pip install vllm --torch-backend=auto\nvllm serve Qwen/Qwen2.5-1.5B-Instruct   # listens on port 8000",
        "http": "curl http://localhost:8000/v1/chat/completions \\\n    -H \"Content-Type: application/json\" \\\n    -d '{\n        \"model\": \"Qwen/Qwen2.5-1.5B-Instruct\",\n        \"messages\": [\n            {\"role\": \"system\", \"content\": \"You are a helpful assistant.\"},\n            {\"role\": \"user\", \"content\": \"Who won the world series in 2020?\"}\n        ]\n    }'",
        "claudeCode": "ANTHROPIC_BASE_URL=http://localhost:8000 \\\nANTHROPIC_API_KEY=dummy \\\nANTHROPIC_AUTH_TOKEN=dummy \\\nANTHROPIC_DEFAULT_OPUS_MODEL=my-model \\\nANTHROPIC_DEFAULT_SONNET_MODEL=my-model \\\nANTHROPIC_DEFAULT_HAIKU_MODEL=my-model \\\nclaude"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/vllm"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "The Linux Foundation (vLLM is a PyTorch Foundation project)",
        "domain": "vllm.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/vllm-project/vllm/releases",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "vllm.ai links no terms and no privacy policy, and its footer reads © 2026 vLLM. The project publishes none for the software or for stats.vllm.ai, so the Apache-2.0 licence stands in for terms.",
          "pytorch.org/projects/vllm/ lists vLLM among PyTorch Foundation projects and says UC Berkeley contributed it to the Linux Foundation in July 2024. The Linux Foundation's policies are linked from that page and are not specific to vLLM.",
          "vllm.ai/.well-known/security.txt and docs.vllm.ai/.well-known/security.txt return 404. SECURITY.md asks for private reports through GitHub.",
          "There's no shared hosted endpoint. The server runs on the owner's hardware. The software posts usage statistics to stats.vllm.ai unless turned off."
        ],
        "score": 53
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/vllm.json",
      "live": {
        "slug": "vllm",
        "versions": [
          {
            "registry": "github",
            "name": "vllm-project/vllm",
            "version": "v0.31.0",
            "released": "2026-10-05",
            "seenAt": "2026-10-15T00:29:32.432566885Z"
          },
          {
            "registry": "pypi",
            "name": "vllm",
            "version": "0.31.0",
            "released": "2026-10-05",
            "seenAt": "2026-10-15T00:29:32.171672574Z"
          }
        ],
        "githubStars": 93802,
        "pypiWeekly": 463948,
        "securityTxt": {
          "url": "https://vllm.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-14T15:46:17.629479354Z"
        },
        "domain": {
          "domain": "vllm.ai",
          "registered": "2023-06-19",
          "source": "https://rdap.identitydigital.services/rdap/domain/vllm.ai",
          "checkedAt": "2026-10-11T13:23:17.875773705Z"
        },
        "updatedAt": "2026-10-15T00:29:32.432566885Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Abhishek Khanra (IshekKhal on GitHub)",
        "b": "vLLM project (PyTorch Foundation)",
        "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": "MIT",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-15",
        "b": "2026-10-02",
        "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": "5 stars",
        "b": "93k stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "vLLM scores 57.7 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, BitRun or vLLM?"
      },
      {
        "answer": "Neither needs a key.",
        "question": "Do BitRun and vLLM need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for BitRun. No hosted endpoint is listed for vLLM.",
        "question": "Can an agent call BitRun and vLLM without installing anything?"
      },
      {
        "answer": "Yes. BitRun is open source (MIT). vLLM is open source (Apache-2.0).",
        "question": "Are BitRun and vLLM open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "A developer who wants to try ternary models on a laptop CPU behind an OpenAI-style endpoint without building bitnet.cpp.",
        "slug": "bitrun",
        "watchFor": "First released on 12 October 2026. Three pre-release versions in four days, one maintainer and no CI workflow"
      },
      {
        "aheadOn": [
          "Reliability, 62 against 38",
          "Schema \u0026 documentation, 68 against 30",
          "Agent ergonomics, 64 against 40",
          "Security \u0026 auth, 50 against 28",
          "Maintenance \u0026 community, 88 against 59",
          "Transparency \u0026 trust, 67 against 50"
        ],
        "also": null,
        "goodFor": "An owner with a GPU server who wants many concurrent requests against one open-weight model behind OpenAI or Anthropic compatible routes.",
        "slug": "vllm",
        "watchFor": "`--api-key` guards only the `/v1`, `/v2`, `/inference` and `/cohere` prefixes. `/invocations`, `/pooling`, `/classify`, `/score`, `/rerank`, `/pause` and `/update_weights` answer without it"
      }
    ],
    "job": {
      "capability": "inference.local",
      "name": "Local inference"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-bitrun.json",
        "title": "AnythingLLM vs BitRun",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-bitrun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-vllm.json",
        "title": "AnythingLLM vs vLLM",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-docker-model-runner.json",
        "title": "BitRun vs Docker Model Runner",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-docker-model-runner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-foundry-local.json",
        "title": "BitRun vs Foundry Local",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-foundry-local"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-ghost-core.json",
        "title": "BitRun vs Core",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-ghost-core"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-gpt4all.json",
        "title": "BitRun vs GPT4All",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-gpt4all"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-jan.json",
        "title": "BitRun vs Jan",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-jan"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-khoj.json",
        "title": "BitRun vs Khoj",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-khoj"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-koboldcpp.json",
        "title": "BitRun vs KoboldCpp",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-koboldcpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-lemonade.json",
        "title": "BitRun vs Lemonade",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-lemonade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp.json",
        "title": "BitRun vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-lm-studio.json",
        "title": "BitRun vs LM Studio",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-lm-studio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-localai.json",
        "title": "BitRun vs LocalAI",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-localai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-mlx-lm.json",
        "title": "BitRun vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-ollama.json",
        "title": "BitRun vs Ollama",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-ollama"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-open-webui.json",
        "title": "BitRun vs Open WebUI",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-open-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-screenpipe.json",
        "title": "BitRun vs screenpipe",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-screenpipe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-text-generation-webui.json",
        "title": "BitRun vs TextGen",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-text-generation-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-model-runner-vs-vllm.json",
        "title": "Docker Model Runner vs vLLM",
        "url": "https://www.anchorterminal.com/compare/docker-model-runner-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/foundry-local-vs-vllm.json",
        "title": "Foundry Local vs vLLM",
        "url": "https://www.anchorterminal.com/compare/foundry-local-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ghost-core-vs-vllm.json",
        "title": "Core vs vLLM",
        "url": "https://www.anchorterminal.com/compare/ghost-core-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-vllm.json",
        "title": "GPT4All vs vLLM",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jan-vs-vllm.json",
        "title": "Jan vs vLLM",
        "url": "https://www.anchorterminal.com/compare/jan-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/khoj-vs-vllm.json",
        "title": "Khoj vs vLLM",
        "url": "https://www.anchorterminal.com/compare/khoj-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/koboldcpp-vs-vllm.json",
        "title": "KoboldCpp vs vLLM",
        "url": "https://www.anchorterminal.com/compare/koboldcpp-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lemonade-vs-vllm.json",
        "title": "Lemonade vs vLLM",
        "url": "https://www.anchorterminal.com/compare/lemonade-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-vllm.json",
        "title": "llama.cpp vs vLLM",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lm-studio-vs-vllm.json",
        "title": "LM Studio vs vLLM",
        "url": "https://www.anchorterminal.com/compare/lm-studio-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/localai-vs-vllm.json",
        "title": "LocalAI vs vLLM",
        "url": "https://www.anchorterminal.com/compare/localai-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mlx-lm-vs-vllm.json",
        "title": "MLX LM vs vLLM",
        "url": "https://www.anchorterminal.com/compare/mlx-lm-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ollama-vs-vllm.json",
        "title": "Ollama vs vLLM",
        "url": "https://www.anchorterminal.com/compare/ollama-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/open-webui-vs-vllm.json",
        "title": "Open WebUI vs vLLM",
        "url": "https://www.anchorterminal.com/compare/open-webui-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/screenpipe-vs-vllm.json",
        "title": "screenpipe vs vLLM",
        "url": "https://www.anchorterminal.com/compare/screenpipe-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/text-generation-webui-vs-vllm.json",
        "title": "TextGen vs vLLM",
        "url": "https://www.anchorterminal.com/compare/text-generation-webui-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-underdog.json",
        "title": "BitRun vs Underdog",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-underdog"
      },
      {
        "json": "https://www.anchorterminal.com/compare/underdog-vs-vllm.json",
        "title": "Underdog vs vLLM",
        "url": "https://www.anchorterminal.com/compare/underdog-vs-vllm"
      }
    ],
    "scores": [
      {
        "bitrun": 38,
        "by": 24,
        "edge": "vllm",
        "key": "reliability",
        "name": "Reliability",
        "vllm": 62,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bitrun": 30,
        "by": 38,
        "edge": "vllm",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "vllm": 68,
        "weight": 13
      },
      {
        "bitrun": 40,
        "by": 24,
        "edge": "vllm",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "vllm": 64,
        "weight": 13
      },
      {
        "bitrun": 28,
        "by": 22,
        "edge": "vllm",
        "key": "security",
        "name": "Security \u0026 auth",
        "vllm": 50,
        "weight": 14
      },
      {
        "bitrun": 60,
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "vllm": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bitrun": 59,
        "by": 29,
        "edge": "vllm",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "vllm": 88,
        "weight": 7
      },
      {
        "bitrun": 50,
        "by": 17,
        "edge": "vllm",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "vllm": 67,
        "weight": 7
      }
    ],
    "summary": "vLLM scores 57.7 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories. Both do local inference.",
    "verdicts": {
      "bitrun": "BitRun packages patched llama.cpp builds for ternary models into one download for macOS on Apple silicon, Windows and Linux, with a loopback-only OpenAI-compatible server. It is three days old with three pre-release versions, one maintainer and no CI, and its published power figures come from a fixed formula rather than measurement.",
      "vllm": "Apache-2.0 software with a release about every two weeks, each with notes that list breaking changes and security fixes. The optional API key covers only some path prefixes, so `/invocations` and control routes such as `/pause` answer without it, and at least 81 security advisories were published in the 12 months to 9 October 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bitrun-vs-vllm",
    "json": "https://www.anchorterminal.com/compare/bitrun-vs-vllm.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bitrun-vs-vllm.md",
    "slim": "https://www.anchorterminal.com/compare/bitrun-vs-vllm.min.md"
  },
  "markdown": "vLLM scores 57.7 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories. Both do local inference.\n\n- BitRun: grade F, 37.9/100, rank #1018 of 1094. Markdown https://www.anchorterminal.com/tools/bitrun.md · JSON https://www.anchorterminal.com/api/v1/tools/bitrun.json\n- vLLM: grade C, 57.7/100, rank #641 of 1094. Markdown https://www.anchorterminal.com/tools/vllm.md · JSON https://www.anchorterminal.com/api/v1/tools/vllm.json\n- Best local AI models and assistants: https://www.anchorterminal.com/best/local-ai/index.md\n- All 204 local ai comparisons: https://www.anchorterminal.com/compare/local-ai/index.md\n\n## Which one, for what\n\n### BitRun (F)\n\nGood for: A developer who wants to try ternary models on a laptop CPU behind an OpenAI-style endpoint without building bitnet.cpp.\n\nWatch for: First released on 12 October 2026. Three pre-release versions in four days, one maintainer and no CI workflow\n\n### vLLM (C)\n\nGood for: An owner with a GPU server who wants many concurrent requests against one open-weight model behind OpenAI or Anthropic compatible routes.\n\nAhead on:\n- Reliability, 62 against 38\n- Schema \u0026 documentation, 68 against 30\n- Agent ergonomics, 64 against 40\n- Security \u0026 auth, 50 against 28\n- Maintenance \u0026 community, 88 against 59\n- Transparency \u0026 trust, 67 against 50\n\nWatch for: `--api-key` guards only the `/v1`, `/v2`, `/inference` and `/cohere` prefixes. `/invocations`, `/pooling`, `/classify`, `/score`, `/rerank`, `/pause` and `/update_weights` answer without it\n\n\n## Score by category\n\n| Category | Weight | BitRun | vLLM | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 38 | 62 | vLLM +24 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 30 | 68 | vLLM +38 |\n| Agent ergonomics | 13% (16.2 this run) | 40 | 64 | vLLM +24 |\n| Security \u0026 auth | 14% (17.5 this run) | 28 | 50 | vLLM +22 |\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) | 59 | 88 | vLLM +29 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 50 | 67 | vLLM +17 |\n| Negative events | ≤15 | -3 | -6 | |\n| **Total** | | **37.9 · F** | **57.7 · C** | |\n\n## Facts side by side\n\n| Fact | BitRun | vLLM |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Abhishek Khanra (IshekKhal on GitHub) | vLLM project (PyTorch Foundation) |\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 | MIT | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-10-15 | 2026-10-02 |\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 | 5 stars | 93k stars |\n\n## Verdicts\n\n**BitRun.** BitRun packages patched llama.cpp builds for ternary models into one download for macOS on Apple silicon, Windows and Linux, with a loopback-only OpenAI-compatible server. It is three days old with three pre-release versions, one maintainer and no CI, and its published power figures come from a fixed formula rather than measurement.\n\n**vLLM.** Apache-2.0 software with a release about every two weeks, each with notes that list breaking changes and security fixes. The optional API key covers only some path prefixes, so `/invocations` and control routes such as `/pause` answer without it, and at least 81 security advisories were published in the 12 months to 9 October 2026.\n\n## Before you call either\n\n### BitRun\n\n1. Ask the user to install BitRun and run `bitrun pull \u003ctag\u003e` and `bitrun serve \u003ctag\u003e` first. Then call http://127.0.0.1:11435/v1 with any API key string\n2. Poll `/health` before the first request. The server loads the model in the background and answers only when ready\n3. Use a model tag from the catalogue (bitnet-70m, bonsai-1.7b, falcon3-1b, bitnet-2b, falcon3-3b, bonsai-8b) and keep prompts within its context window\n4. Treat the README's energy figures as estimates, and don't report them as measured power\n5. Expect small research checkpoints. Check outputs before relying on them for code or facts\n\n### vLLM\n\n1. Put a reverse proxy that allowlists routes in front of the server. `--api-key` leaves `/invocations` and the control routes open\n2. Pass `--host 127.0.0.1` for single-machine use. With no `--host` the server listens on every interface\n3. Set `VLLM_NO_USAGE_STATS=1` or `DO_NOT_TRACK=1` before starting if nothing should be sent to stats.vllm.ai\n4. Start with `--enable-auto-tool-choice` and the `--tool-call-parser` for the model before sending tools. Tool calling is off without them\n5. Send `max_tokens` on every request, and read the breaking changes section of the release notes before upgrading a minor version\n\n## Questions\n\n### Which is better for AI agents, BitRun or vLLM?\n\nvLLM scores 57.7 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories.\n\n### Do BitRun and vLLM need an API key?\n\nNeither needs a key.\n\n### Can an agent call BitRun and vLLM without installing anything?\n\nNo hosted endpoint is listed for BitRun. No hosted endpoint is listed for vLLM.\n\n### Are BitRun and vLLM open source?\n\nYes. BitRun is open source (MIT). vLLM is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bitrun-vs-vllm.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bitrun-vs-vllm.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bitrun\", \"b\": \"vllm\"}`. From a terminal: `anchor compare bitrun vllm`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bitrun.json and https://www.anchorterminal.com/api/v1/tools/vllm.json\n\n## Other comparisons with BitRun or vLLM\n\n- [AnythingLLM vs BitRun](https://www.anchorterminal.com/compare/anythingllm-vs-bitrun.md)\n- [AnythingLLM vs vLLM](https://www.anchorterminal.com/compare/anythingllm-vs-vllm.md)\n- [BitRun vs Docker Model Runner](https://www.anchorterminal.com/compare/bitrun-vs-docker-model-runner.md)\n- [BitRun vs Foundry Local](https://www.anchorterminal.com/compare/bitrun-vs-foundry-local.md)\n- [BitRun vs Core](https://www.anchorterminal.com/compare/bitrun-vs-ghost-core.md)\n- [BitRun vs GPT4All](https://www.anchorterminal.com/compare/bitrun-vs-gpt4all.md)\n- [BitRun vs Jan](https://www.anchorterminal.com/compare/bitrun-vs-jan.md)\n- [BitRun vs Khoj](https://www.anchorterminal.com/compare/bitrun-vs-khoj.md)\n- [BitRun vs KoboldCpp](https://www.anchorterminal.com/compare/bitrun-vs-koboldcpp.md)\n- [BitRun vs Lemonade](https://www.anchorterminal.com/compare/bitrun-vs-lemonade.md)\n- [BitRun vs llama.cpp](https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp.md)\n- [BitRun vs LM Studio](https://www.anchorterminal.com/compare/bitrun-vs-lm-studio.md)\n- [BitRun vs LocalAI](https://www.anchorterminal.com/compare/bitrun-vs-localai.md)\n- [BitRun vs MLX LM](https://www.anchorterminal.com/compare/bitrun-vs-mlx-lm.md)\n- [BitRun vs Ollama](https://www.anchorterminal.com/compare/bitrun-vs-ollama.md)\n- [BitRun vs Open WebUI](https://www.anchorterminal.com/compare/bitrun-vs-open-webui.md)\n- [BitRun vs screenpipe](https://www.anchorterminal.com/compare/bitrun-vs-screenpipe.md)\n- [BitRun vs TextGen](https://www.anchorterminal.com/compare/bitrun-vs-text-generation-webui.md)\n- [Docker Model Runner vs vLLM](https://www.anchorterminal.com/compare/docker-model-runner-vs-vllm.md)\n- [Foundry Local vs vLLM](https://www.anchorterminal.com/compare/foundry-local-vs-vllm.md)\n- [Core vs vLLM](https://www.anchorterminal.com/compare/ghost-core-vs-vllm.md)\n- [GPT4All vs vLLM](https://www.anchorterminal.com/compare/gpt4all-vs-vllm.md)\n- [Jan vs vLLM](https://www.anchorterminal.com/compare/jan-vs-vllm.md)\n- [Khoj vs vLLM](https://www.anchorterminal.com/compare/khoj-vs-vllm.md)\n- [KoboldCpp vs vLLM](https://www.anchorterminal.com/compare/koboldcpp-vs-vllm.md)\n- [Lemonade vs vLLM](https://www.anchorterminal.com/compare/lemonade-vs-vllm.md)\n- [llama.cpp vs vLLM](https://www.anchorterminal.com/compare/llama-cpp-vs-vllm.md)\n- [LM Studio vs vLLM](https://www.anchorterminal.com/compare/lm-studio-vs-vllm.md)\n- [LocalAI vs vLLM](https://www.anchorterminal.com/compare/localai-vs-vllm.md)\n- [MLX LM vs vLLM](https://www.anchorterminal.com/compare/mlx-lm-vs-vllm.md)\n- [Ollama vs vLLM](https://www.anchorterminal.com/compare/ollama-vs-vllm.md)\n- [Open WebUI vs vLLM](https://www.anchorterminal.com/compare/open-webui-vs-vllm.md)\n- [screenpipe vs vLLM](https://www.anchorterminal.com/compare/screenpipe-vs-vllm.md)\n- [TextGen vs vLLM](https://www.anchorterminal.com/compare/text-generation-webui-vs-vllm.md)\n- [BitRun vs Underdog](https://www.anchorterminal.com/compare/bitrun-vs-underdog.md)\n- [Underdog vs vLLM](https://www.anchorterminal.com/compare/underdog-vs-vllm.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-15",
    "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": "BitRun vs vLLM",
        "url": ""
      }
    ],
    "description": "vLLM scores 57.7 (C) to BitRun's 37.9 (F) for local inference. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "BitRun F 37.9",
      "vLLM C 57.7",
      "scores"
    ],
    "h1": "BitRun vs vLLM",
    "image": "https://www.anchorterminal.com/assets/og/compare-bitrun-vs-vllm.png",
    "path": "/compare/bitrun-vs-vllm",
    "published": "2026-10-01",
    "section": "tools",
    "title": "BitRun vs vLLM for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-15",
    "url": "https://www.anchorterminal.com/compare/bitrun-vs-vllm"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 480
  },
  "version": 1
}
