{
  "data": {
    "a": {
      "slug": "hyperqwen",
      "name": "HyperQwen",
      "vendor": "syv.ai (syv-ai on GitHub)",
      "vendorUrl": "https://syv.ai",
      "kind": "http-api",
      "category": "local-ai",
      "summary": "HyperQwen is syv.ai's open-source serving setup for Qwen3.8-27B on one 24 GB NVIDIA GPU. A patch series against a pinned vLLM, a requantisation pipeline and Docker Compose profiles run vLLM's OpenAI-compatible API on port 18020.",
      "url": "https://www.anchorterminal.com/tools/hyperqwen",
      "markdownUrl": "https://www.anchorterminal.com/tools/hyperqwen.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/hyperqwen.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/hyperqwen.json",
      "repo": "https://github.com/syv-ai/HyperQwen",
      "license": "Apache-2.0",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "oci",
          "name": "ghcr.io/syv-ai/hyperqwen"
        }
      ],
      "auth": "none",
      "authNotes": "No credential by default. `VLLM_API_KEY` in `.env` (or an `api_key.txt` file) turns on vLLM's Bearer check. With no key, the launcher binds 127.0.0.1 outside a container, and Docker Compose publishes the port on 127.0.0.1 unless `BIND` is changed. With a key set, the launcher binds every interface. The key is vLLM's own, one static key with no scopes, which vLLM checks only under `/v1`, `/v2`, `/inference` and `/cohere` (per the vLLM listing's check of 9 October 2026, 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. The README links a Ko-fi page for donations towards GPU time. The owner pays for a 24 GB NVIDIA GPU, about 40 GB of disk and electricity.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, the docs or the launch scripts (checked 2026-10-30). Nothing is sold.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 2400,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-30"
      },
      "docsUrl": "https://github.com/syv-ai/HyperQwen#readme",
      "capabilities": [
        "inference.local",
        "inference.open-weights"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "apache-2.0",
        "openai-compatible",
        "docker",
        "tool-calling",
        "reasoning",
        "pre-1.0"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.9,
        "grade": "C",
        "agentReady": false,
        "rank": 738,
        "ranked": true,
        "rankOf": 1239,
        "categoryRank": 11,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 68,
          "payments": 60,
          "reliability": 59,
          "schema": 56,
          "security": 41,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-30"
        },
        "negative": 0,
        "verdict": "HyperQwen packages a patched vLLM 0.32.0 and requantised Qwen3.8-27B weights into one container with tool calling preset and a loopback bind when no key is set. It runs one model family, its speed figures come from one RTX 3090, and it has no versioned releases, changelog or security policy.",
        "bestFor": "An operator with one 24 GB NVIDIA card who wants Qwen3.8-27B behind an OpenAI-compatible endpoint for a coding or tool-calling agent, with long context.",
        "strengths": [
          "Prebuilt image on ghcr.io with an immutable tag per commit, built by CI that applies all 60 patches and runs the build-time tests",
          "Tool calling on by default with the `qwen3_coder` parser and argument schemas enforced (`TOOL_STRICT=parameter`)",
          "With no API key the server listens on 127.0.0.1 only, and a CI check tests that default",
          "Five documented setups from 64k to 240k context, with the measured cost of each knob",
          "Apache-2.0 throughout, with vendored kernels and patches carrying their upstream references"
        ],
        "weaknesses": [
          "Serves Qwen3.8-27B and checkpoints derived from it only. Other models are on the roadmap",
          "No tags, releases or changelog. Changes reach users through `latest` on every push to main",
          "No SECURITY.md or disclosure route, and the base weights come from a third-party repository with no pinned revision",
          "vLLM's key covers only `/v1`-style prefixes, so control routes such as `/pause` answer without it",
          "First start pulls a 9.5 GB image and about 20 GB of weights and can take over 30 minutes"
        ],
        "agentNotes": [
          "Call http://127.0.0.1:18020/v1 with model `qwen3.8-27b` and the `VLLM_API_KEY` value, or any string if no key was set",
          "Poll `/health` before the first request. A first start downloads and prepares the model and compiles kernels, which can take over 30 minutes",
          "Declare the context window your setup uses (65,536 by default, 131,072 for `CTX=long`, 245,760 for `CTX=huge`) so the client doesn't truncate",
          "Ask the owner to set `VLLM_API_KEY` before setting `BIND=0.0.0.0`, and to front the port with a proxy that allowlists routes",
          "Treat the README's tokens-per-second figures as the project's measurements on one RTX 3090 at 250 W"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 56.9
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 68,
          "payments": 60,
          "reliability": 59,
          "schema": 56,
          "security": 41,
          "transparency": 60
        },
        "provenanceScore": 49,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-30",
            "maintenance": "2026-10-30",
            "payments": "2026-10-30",
            "reliability": "2026-10-30",
            "schema": "2026-10-30",
            "security": "2026-10-30",
            "transparency": "2026-10-30"
          },
          "last": "2026-10-30",
          "oldest": "2026-10-30",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "git clone https://github.com/syv-ai/HyperQwen \u0026\u0026 cd HyperQwen\ncp .env.example .env\n\ndocker compose --profile single up -d     # one or a few people chatting\ndocker compose --profile batch  up -d     # API backend, many concurrent requests"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/hyperqwen"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "syv.ai (Copenhagen, CVR DK44671247)",
        "domain": "syv.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "https://syv.ai/privatlivspolitik",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-30",
        "notes": [
          "The Hugging Face organisation syvai, full name syv.ai, links https://syv.ai and github.com/syv-ai, and hosts the drafter files HyperQwen downloads. syv.ai's own pages don't mention HyperQwen.",
          "syv.ai's contact page gives the address in Copenhagen and CVR DK44671247. The Danish CVR register answered with a bot check and wasn't read.",
          "No terms, SECURITY.md or changelog for HyperQwen. The Apache-2.0 licence stands in for terms. The privacy policy listed is syv.ai's website policy and doesn't cover the software, which runs on the owner's machine.",
          "syv.ai answers 404 at /.well-known/security.txt and /security.txt."
        ],
        "score": 49
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/hyperqwen.json"
    },
    "answer": "HyperQwen scores 56.9 (C) on agent readiness against MLX LM's 52.5 (D), and leads in 4 of 7 scored categories. MLX LM leads on reliability and transparency \u0026 trust.",
    "b": {
      "slug": "mlx-lm",
      "name": "MLX LM",
      "vendor": "Apple Inc.",
      "vendorUrl": "https://opensource.apple.com/projects/mlx/",
      "kind": "http-api",
      "category": "local-ai",
      "summary": "Open-source Python package and command-line tools from Apple's MLX team for running, quantising and fine-tuning language models on Apple silicon. `mlx_lm.server` exposes a local HTTP API modelled on OpenAI's chat completions.",
      "url": "https://www.anchorterminal.com/tools/mlx-lm",
      "markdownUrl": "https://www.anchorterminal.com/tools/mlx-lm.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mlx-lm.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mlx-lm.json",
      "repo": "https://github.com/ml-explore/mlx-lm",
      "license": "MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "mlx-lm"
        }
      ],
      "auth": "none",
      "authNotes": "No credential, and no option to add one. `mlx_lm.server` binds 127.0.0.1:8080 by default, and `--allowed-origins` defaults to `*`, so any origin's requests are answered. Access control is left to the network or a proxy in front (https://github.com/ml-explore/mlx-lm/blob/main/mlx_lm/SERVER.md).",
      "pricing": "free",
      "pricingNotes": "Free under MIT, with no account, key or card. Nothing is sold. The owner pays for the 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-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 7300,
        "npmWeekly": null,
        "pypiWeekly": 139915,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://github.com/ml-explore/mlx-lm/blob/main/mlx_lm/SERVER.md",
      "capabilities": [
        "inference.local",
        "inference.open-weights"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "openai-compatible",
        "python",
        "pre-1.0",
        "no-auth",
        "no-telemetry"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.5,
        "grade": "D",
        "agentReady": false,
        "rank": 883,
        "ranked": true,
        "rankOf": 1239,
        "categoryRank": 15,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 54,
          "maintenance": 61,
          "payments": 60,
          "reliability": 66,
          "schema": 37,
          "security": 32,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "MIT, with no telemetry found in the source, and the tests passed on the last eight pushes to main. `mlx_lm.server` has no API key option, answers any origin by default and loads whichever model a request names, and its own docs say it is not recommended for production.",
        "bestFor": "An owner with an Apple silicon Mac who wants MLX-format models, local fine-tuning and quantisation from Python or the command line, with a simple local chat completions server.",
        "strengths": [
          "MIT, with no telemetry, analytics or update check found in the source",
          "Installs from PyPI (`mlx-lm` 0.32.0, Python 3.11 or later) and conda-forge, with releases published to PyPI by trusted publishing from a GitHub workflow",
          "The Build and Test workflow passed on the last eight pushes to main, with 21 test files run on a macOS runner",
          "`mlx_lm.server` binds 127.0.0.1:8080 by default, caps output at 512 tokens unless told otherwise and validates field types and ranges with a 400",
          "127 commits from 82 authors on main in the 90 days to 8 October 2026"
        ],
        "weaknesses": [
          "`mlx_lm.server` has no API key or other credential option, and `--allowed-origins` defaults to `*`",
          "A request's `model` and `adapters` fields make the server download or load any Hugging Face repository or local path, with no allow-list (open issue #1892)",
          "The docs and a start-up warning say the server is not recommended for production because it has only basic security checks",
          "No OpenAPI file or llms.txt, and `SERVER.md` leaves out `tools`, `seed`, `/health` and the error responses",
          "One PyPI release in 90 days (0.32.0 on 1 October 2026, the first since 0.31.3 on 22 April), and the version is still 0.x"
        ],
        "agentNotes": [
          "Keep `mlx_lm.server` on 127.0.0.1 and pass `--allowed-origins` with the origins you trust. There is no API key, and the default answers every origin",
          "Treat any caller as able to load any model. The `model` and `adapters` request fields accept any Hugging Face repository or local path",
          "Send `max_tokens` or `max_completion_tokens` when you need more than 512 tokens, the server default",
          "Read errors as `{\"error\": \"\u003ctext\u003e\"}` with 400 for a bad field and 404 for a model that failed to load. They are not OpenAI error objects",
          "Poll `GET /health` before the first request. It answers 503 with `unavailable` when the generation thread has stopped"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 52.5
          }
        ],
        "editorialScores": {
          "ergonomics": 54,
          "maintenance": 61,
          "payments": 60,
          "reliability": 66,
          "schema": 37,
          "security": 32,
          "transparency": 65
        },
        "provenanceScore": 72,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-08",
            "maintenance": "2026-10-08",
            "payments": "2026-10-08",
            "reliability": "2026-10-08",
            "schema": "2026-10-08",
            "security": "2026-10-08",
            "transparency": "2026-10-08"
          },
          "last": "2026-10-08",
          "lastMoved": "2026-10-27",
          "oldest": "2026-10-08",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install mlx-lm\nmlx_lm.server --model mlx-community/Mistral-7B-Instruct-v0.3-4bit   # listens on 127.0.0.1:8080",
        "http": "curl localhost:8080/v1/chat/completions \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n     \"messages\": [{\"role\": \"user\", \"content\": \"Say this is a test!\"}],\n     \"temperature\": 0.7\n   }'"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/mlx-lm"
      },
      "sameCompany": [
        "apple-ads"
      ],
      "area": "models",
      "provenance": {
        "legalEntity": "Apple Inc.",
        "domain": "apple.com",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/ml-explore/mlx-lm/releases",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The `LICENSE` file reads Copyright 2023 Apple Inc., and the package author on PyPI is MLX Contributors at a group.apple.com address. The repository sits in GitHub's ml-explore organisation and has no website of its own.",
          "opensource.apple.com/projects/mlx describes the MLX framework and does not name MLX LM. Its footer links Apple's website terms and general privacy policy, which do not govern this software, so terms and privacy are left empty.",
          "www.apple.com/.well-known/security.txt is valid until 6 October 2027 and is Apple's corporate file. The repository's own policy takes reports through GitHub private vulnerability reporting.",
          "There is no shared hosted endpoint. The server runs on the owner's machine."
        ],
        "score": 72
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mlx-lm.json",
      "live": {
        "slug": "mlx-lm",
        "versions": [
          {
            "registry": "github",
            "name": "ml-explore/mlx-lm",
            "version": "v0.32.2",
            "released": "2026-10-16",
            "seenAt": "2026-10-30T14:29:40.574840805Z"
          },
          {
            "registry": "pypi",
            "name": "mlx-lm",
            "version": "0.32.2",
            "released": "2026-10-16",
            "seenAt": "2026-10-30T14:29:40.43187658Z"
          }
        ],
        "githubStars": 7509,
        "pypiWeekly": 140180,
        "securityTxt": {
          "url": "https://apple.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-19T01:00:00.000Z",
          "checkedAt": "2026-10-30T15:37:59.229277282Z"
        },
        "domain": {
          "domain": "apple.com",
          "registered": "1987-02-19",
          "source": "https://rdap.verisign.com/com/v1/domain/apple.com",
          "checkedAt": "2026-10-25T14:02:07.025217459Z"
        },
        "github": {
          "repo": "ml-explore/mlx-lm",
          "checkedAt": "2026-10-26T07:47:13.819572771Z",
          "stars": 7476,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-24T00:10:47Z",
          "openIssues": 156,
          "openPRs": 91,
          "issuesOpened90d": 102,
          "issuesClosed90d": 148,
          "prsMerged90d": 142,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 47,
            "failure": 3,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-10-24T00:15:08Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 14,
            "medianDays": 5.8
          }
        },
        "updatedAt": "2026-10-30T15:37:59.229277282Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "syv.ai (syv-ai on GitHub)",
        "b": "Apple Inc.",
        "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",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "none",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "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": "2.4k stars",
        "b": "7.3k stars, 140k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "HyperQwen scores 56.9 (C) on agent readiness against MLX LM's 52.5 (D), and leads in 4 of 7 scored categories. MLX LM leads on reliability and transparency \u0026 trust.",
        "question": "Which is better for AI agents, HyperQwen or MLX LM?"
      },
      {
        "answer": "Neither needs a key.",
        "question": "Do HyperQwen and MLX LM need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for HyperQwen. No hosted endpoint is listed for MLX LM.",
        "question": "Can an agent call HyperQwen and MLX LM without installing anything?"
      },
      {
        "answer": "Yes. HyperQwen is open source (Apache-2.0). MLX LM is open source (MIT).",
        "question": "Are HyperQwen and MLX LM open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 56 against 37",
          "Agent ergonomics, 65 against 54",
          "Security \u0026 auth, 41 against 32",
          "Maintenance \u0026 community, 68 against 61"
        ],
        "also": null,
        "goodFor": "An operator with one 24 GB NVIDIA card who wants Qwen3.8-27B behind an OpenAI-compatible endpoint for a coding or tool-calling agent, with long context.",
        "slug": "hyperqwen",
        "watchFor": "Serves Qwen3.8-27B and checkpoints derived from it only. Other models are on the roadmap"
      },
      {
        "aheadOn": [
          "Reliability, 66 against 59",
          "Transparency \u0026 trust, 69 against 55"
        ],
        "also": null,
        "goodFor": "An owner with an Apple silicon Mac who wants MLX-format models, local fine-tuning and quantisation from Python or the command line, with a simple local chat completions server.",
        "slug": "mlx-lm",
        "watchFor": "`mlx_lm.server` has no API key or other credential option, and `--allowed-origins` defaults to `*`"
      }
    ],
    "job": {
      "capability": "inference.local",
      "name": "Local inference"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-hyperqwen.json",
        "title": "AnythingLLM vs HyperQwen",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-hyperqwen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-mlx-lm.json",
        "title": "AnythingLLM vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-hyperqwen.json",
        "title": "Berth vs HyperQwen",
        "url": "https://www.anchorterminal.com/compare/berth-vs-hyperqwen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-mlx-lm.json",
        "title": "Berth vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/berth-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-hyperqwen.json",
        "title": "BitRun vs HyperQwen",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-hyperqwen"
      },
      {
        "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/docker-model-runner-vs-hyperqwen.json",
        "title": "Docker Model Runner vs HyperQwen",
        "url": "https://www.anchorterminal.com/compare/docker-model-runner-vs-hyperqwen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-model-runner-vs-mlx-lm.json",
        "title": "Docker Model Runner vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/docker-model-runner-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/foundry-local-vs-hyperqwen.json",
        "title": "Foundry Local vs HyperQwen",
        "url": "https://www.anchorterminal.com/compare/foundry-local-vs-hyperqwen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/foundry-local-vs-mlx-lm.json",
        "title": "Foundry Local vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/foundry-local-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ghost-core-vs-hyperqwen.json",
        "title": "Core vs HyperQwen",
        "url": "https://www.anchorterminal.com/compare/ghost-core-vs-hyperqwen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ghost-core-vs-mlx-lm.json",
        "title": "Core vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/ghost-core-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-hyperqwen.json",
        "title": "GPT4All vs HyperQwen",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-hyperqwen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-mlx-lm.json",
        "title": "GPT4All vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-jan.json",
        "title": "HyperQwen vs Jan",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-jan"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-khoj.json",
        "title": "HyperQwen vs Khoj",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-khoj"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-koboldcpp.json",
        "title": "HyperQwen vs KoboldCpp",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-koboldcpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-lemonade.json",
        "title": "HyperQwen vs Lemonade",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-lemonade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-llama-cpp.json",
        "title": "HyperQwen vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-lm-studio.json",
        "title": "HyperQwen vs LM Studio",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-lm-studio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-localai.json",
        "title": "HyperQwen vs LocalAI",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-localai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-ollama.json",
        "title": "HyperQwen vs Ollama",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-ollama"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-open-webui.json",
        "title": "HyperQwen vs Open WebUI",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-open-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-screenpipe.json",
        "title": "HyperQwen vs screenpipe",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-screenpipe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-text-generation-webui.json",
        "title": "HyperQwen vs TextGen",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-text-generation-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-vllm.json",
        "title": "HyperQwen vs vLLM",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jan-vs-mlx-lm.json",
        "title": "Jan vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/jan-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/khoj-vs-mlx-lm.json",
        "title": "Khoj vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/khoj-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/koboldcpp-vs-mlx-lm.json",
        "title": "KoboldCpp vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/koboldcpp-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lemonade-vs-mlx-lm.json",
        "title": "Lemonade vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/lemonade-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-mlx-lm.json",
        "title": "llama.cpp vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lm-studio-vs-mlx-lm.json",
        "title": "LM Studio vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/lm-studio-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/localai-vs-mlx-lm.json",
        "title": "LocalAI vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/localai-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mlx-lm-vs-ollama.json",
        "title": "MLX LM vs Ollama",
        "url": "https://www.anchorterminal.com/compare/mlx-lm-vs-ollama"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mlx-lm-vs-open-webui.json",
        "title": "MLX LM vs Open WebUI",
        "url": "https://www.anchorterminal.com/compare/mlx-lm-vs-open-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mlx-lm-vs-screenpipe.json",
        "title": "MLX LM vs screenpipe",
        "url": "https://www.anchorterminal.com/compare/mlx-lm-vs-screenpipe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mlx-lm-vs-text-generation-webui.json",
        "title": "MLX LM vs TextGen",
        "url": "https://www.anchorterminal.com/compare/mlx-lm-vs-text-generation-webui"
      },
      {
        "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/hyperqwen-vs-underdog.json",
        "title": "HyperQwen vs Underdog",
        "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-underdog"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mlx-lm-vs-underdog.json",
        "title": "MLX LM vs Underdog",
        "url": "https://www.anchorterminal.com/compare/mlx-lm-vs-underdog"
      }
    ],
    "scores": [
      {
        "by": 7,
        "edge": "mlx-lm",
        "hyperqwen": 59,
        "key": "reliability",
        "mlx-lm": 66,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 19,
        "edge": "hyperqwen",
        "hyperqwen": 56,
        "key": "schema",
        "mlx-lm": 37,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 11,
        "edge": "hyperqwen",
        "hyperqwen": 65,
        "key": "ergonomics",
        "mlx-lm": 54,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 9,
        "edge": "hyperqwen",
        "hyperqwen": 41,
        "key": "security",
        "mlx-lm": 32,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "hyperqwen": 60,
        "key": "payments",
        "mlx-lm": 60,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "edge": "hyperqwen",
        "hyperqwen": 68,
        "key": "maintenance",
        "mlx-lm": 61,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 14,
        "edge": "mlx-lm",
        "hyperqwen": 55,
        "key": "transparency",
        "mlx-lm": 69,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "HyperQwen scores 56.9 (C) on agent readiness against MLX LM's 52.5 (D), and leads in 4 of 7 scored categories. MLX LM leads on reliability and transparency \u0026 trust. Both do local inference.",
    "tutorials": [],
    "verdicts": {
      "hyperqwen": "HyperQwen packages a patched vLLM 0.32.0 and requantised Qwen3.8-27B weights into one container with tool calling preset and a loopback bind when no key is set. It runs one model family, its speed figures come from one RTX 3090, and it has no versioned releases, changelog or security policy.",
      "mlx-lm": "MIT, with no telemetry found in the source, and the tests passed on the last eight pushes to main. `mlx_lm.server` has no API key option, answers any origin by default and loads whichever model a request names, and its own docs say it is not recommended for production."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/hyperqwen-vs-mlx-lm",
    "json": "https://www.anchorterminal.com/compare/hyperqwen-vs-mlx-lm.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/hyperqwen-vs-mlx-lm.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/hyperqwen-vs-mlx-lm.min.md"
  },
  "markdown": "HyperQwen scores 56.9 (C) on agent readiness against MLX LM's 52.5 (D), and leads in 4 of 7 scored categories. MLX LM leads on reliability and transparency \u0026 trust. Both do local inference.\n\n- HyperQwen: grade C, 56.9/100, rank #738 of 1239. Markdown https://www.anchorterminal.com/tools/hyperqwen.md · JSON https://www.anchorterminal.com/api/v1/tools/hyperqwen.json\n- MLX LM: grade D, 52.5/100, rank #883 of 1239. Markdown https://www.anchorterminal.com/tools/mlx-lm.md · JSON https://www.anchorterminal.com/api/v1/tools/mlx-lm.json\n- Best local AI models and assistants: https://www.anchorterminal.com/best/local-ai/index.md\n- All 253 local ai comparisons: https://www.anchorterminal.com/compare/local-ai/index.md\n\n## Which one, for what\n\n### HyperQwen (C)\n\nGood for: An operator with one 24 GB NVIDIA card who wants Qwen3.8-27B behind an OpenAI-compatible endpoint for a coding or tool-calling agent, with long context.\n\nAhead on:\n- Schema \u0026 documentation, 56 against 37\n- Agent ergonomics, 65 against 54\n- Security \u0026 auth, 41 against 32\n- Maintenance \u0026 community, 68 against 61\n\nWatch for: Serves Qwen3.8-27B and checkpoints derived from it only. Other models are on the roadmap\n\n### MLX LM (D)\n\nGood for: An owner with an Apple silicon Mac who wants MLX-format models, local fine-tuning and quantisation from Python or the command line, with a simple local chat completions server.\n\nAhead on:\n- Reliability, 66 against 59\n- Transparency \u0026 trust, 69 against 55\n\nWatch for: `mlx_lm.server` has no API key or other credential option, and `--allowed-origins` defaults to `*`\n\n\n## Score by category\n\n| Category | Weight | HyperQwen | MLX LM | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 59 | 66 | MLX LM +7 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 56 | 37 | HyperQwen +19 |\n| Agent ergonomics | 13% (16.2 this run) | 65 | 54 | HyperQwen +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 41 | 32 | HyperQwen +9 |\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) | 68 | 61 | HyperQwen +7 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 55 | 69 | MLX LM +14 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **56.9 · C** | **52.5 · D** | |\n\n## Facts side by side\n\n| Fact | HyperQwen | MLX LM |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | syv.ai (syv-ai on GitHub) | Apple Inc. |\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 | MIT |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | none | 2026-10-01 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no date given | 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 | 2.4k stars | 7.3k stars, 140k PyPI/wk |\n\n## Verdicts\n\n**HyperQwen.** HyperQwen packages a patched vLLM 0.32.0 and requantised Qwen3.8-27B weights into one container with tool calling preset and a loopback bind when no key is set. It runs one model family, its speed figures come from one RTX 3090, and it has no versioned releases, changelog or security policy.\n\n**MLX LM.** MIT, with no telemetry found in the source, and the tests passed on the last eight pushes to main. `mlx_lm.server` has no API key option, answers any origin by default and loads whichever model a request names, and its own docs say it is not recommended for production.\n\n## Before you call either\n\n### HyperQwen\n\n1. Call http://127.0.0.1:18020/v1 with model `qwen3.8-27b` and the `VLLM_API_KEY` value, or any string if no key was set\n2. Poll `/health` before the first request. A first start downloads and prepares the model and compiles kernels, which can take over 30 minutes\n3. Declare the context window your setup uses (65,536 by default, 131,072 for `CTX=long`, 245,760 for `CTX=huge`) so the client doesn't truncate\n4. Ask the owner to set `VLLM_API_KEY` before setting `BIND=0.0.0.0`, and to front the port with a proxy that allowlists routes\n5. Treat the README's tokens-per-second figures as the project's measurements on one RTX 3090 at 250 W\n\n### MLX LM\n\n1. Keep `mlx_lm.server` on 127.0.0.1 and pass `--allowed-origins` with the origins you trust. There is no API key, and the default answers every origin\n2. Treat any caller as able to load any model. The `model` and `adapters` request fields accept any Hugging Face repository or local path\n3. Send `max_tokens` or `max_completion_tokens` when you need more than 512 tokens, the server default\n4. Read errors as `{\"error\": \"\u003ctext\u003e\"}` with 400 for a bad field and 404 for a model that failed to load. They are not OpenAI error objects\n5. Poll `GET /health` before the first request. It answers 503 with `unavailable` when the generation thread has stopped\n\n## Questions\n\n### Which is better for AI agents, HyperQwen or MLX LM?\n\nHyperQwen scores 56.9 (C) on agent readiness against MLX LM's 52.5 (D), and leads in 4 of 7 scored categories. MLX LM leads on reliability and transparency \u0026 trust.\n\n### Do HyperQwen and MLX LM need an API key?\n\nNeither needs a key.\n\n### Can an agent call HyperQwen and MLX LM without installing anything?\n\nNo hosted endpoint is listed for HyperQwen. No hosted endpoint is listed for MLX LM.\n\n### Are HyperQwen and MLX LM open source?\n\nYes. HyperQwen is open source (Apache-2.0). MLX LM is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/hyperqwen-vs-mlx-lm.json, and with the fewest tokens: https://www.anchorterminal.com/compare/hyperqwen-vs-mlx-lm.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"hyperqwen\", \"b\": \"mlx-lm\"}`. From a terminal: `anchor compare hyperqwen mlx-lm`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/hyperqwen.json and https://www.anchorterminal.com/api/v1/tools/mlx-lm.json\n\n## Other comparisons with HyperQwen or MLX LM\n\n- [AnythingLLM vs HyperQwen](https://www.anchorterminal.com/compare/anythingllm-vs-hyperqwen.md)\n- [AnythingLLM vs MLX LM](https://www.anchorterminal.com/compare/anythingllm-vs-mlx-lm.md)\n- [Berth vs HyperQwen](https://www.anchorterminal.com/compare/berth-vs-hyperqwen.md)\n- [Berth vs MLX LM](https://www.anchorterminal.com/compare/berth-vs-mlx-lm.md)\n- [BitRun vs HyperQwen](https://www.anchorterminal.com/compare/bitrun-vs-hyperqwen.md)\n- [BitRun vs MLX LM](https://www.anchorterminal.com/compare/bitrun-vs-mlx-lm.md)\n- [Docker Model Runner vs HyperQwen](https://www.anchorterminal.com/compare/docker-model-runner-vs-hyperqwen.md)\n- [Docker Model Runner vs MLX LM](https://www.anchorterminal.com/compare/docker-model-runner-vs-mlx-lm.md)\n- [Foundry Local vs HyperQwen](https://www.anchorterminal.com/compare/foundry-local-vs-hyperqwen.md)\n- [Foundry Local vs MLX LM](https://www.anchorterminal.com/compare/foundry-local-vs-mlx-lm.md)\n- [Core vs HyperQwen](https://www.anchorterminal.com/compare/ghost-core-vs-hyperqwen.md)\n- [Core vs MLX LM](https://www.anchorterminal.com/compare/ghost-core-vs-mlx-lm.md)\n- [GPT4All vs HyperQwen](https://www.anchorterminal.com/compare/gpt4all-vs-hyperqwen.md)\n- [GPT4All vs MLX LM](https://www.anchorterminal.com/compare/gpt4all-vs-mlx-lm.md)\n- [HyperQwen vs Jan](https://www.anchorterminal.com/compare/hyperqwen-vs-jan.md)\n- [HyperQwen vs Khoj](https://www.anchorterminal.com/compare/hyperqwen-vs-khoj.md)\n- [HyperQwen vs KoboldCpp](https://www.anchorterminal.com/compare/hyperqwen-vs-koboldcpp.md)\n- [HyperQwen vs Lemonade](https://www.anchorterminal.com/compare/hyperqwen-vs-lemonade.md)\n- [HyperQwen vs llama.cpp](https://www.anchorterminal.com/compare/hyperqwen-vs-llama-cpp.md)\n- [HyperQwen vs LM Studio](https://www.anchorterminal.com/compare/hyperqwen-vs-lm-studio.md)\n- [HyperQwen vs LocalAI](https://www.anchorterminal.com/compare/hyperqwen-vs-localai.md)\n- [HyperQwen vs Ollama](https://www.anchorterminal.com/compare/hyperqwen-vs-ollama.md)\n- [HyperQwen vs Open WebUI](https://www.anchorterminal.com/compare/hyperqwen-vs-open-webui.md)\n- [HyperQwen vs screenpipe](https://www.anchorterminal.com/compare/hyperqwen-vs-screenpipe.md)\n- [HyperQwen vs TextGen](https://www.anchorterminal.com/compare/hyperqwen-vs-text-generation-webui.md)\n- [HyperQwen vs vLLM](https://www.anchorterminal.com/compare/hyperqwen-vs-vllm.md)\n- [Jan vs MLX LM](https://www.anchorterminal.com/compare/jan-vs-mlx-lm.md)\n- [Khoj vs MLX LM](https://www.anchorterminal.com/compare/khoj-vs-mlx-lm.md)\n- [KoboldCpp vs MLX LM](https://www.anchorterminal.com/compare/koboldcpp-vs-mlx-lm.md)\n- [Lemonade vs MLX LM](https://www.anchorterminal.com/compare/lemonade-vs-mlx-lm.md)\n- [llama.cpp vs MLX LM](https://www.anchorterminal.com/compare/llama-cpp-vs-mlx-lm.md)\n- [LM Studio vs MLX LM](https://www.anchorterminal.com/compare/lm-studio-vs-mlx-lm.md)\n- [LocalAI vs MLX LM](https://www.anchorterminal.com/compare/localai-vs-mlx-lm.md)\n- [MLX LM vs Ollama](https://www.anchorterminal.com/compare/mlx-lm-vs-ollama.md)\n- [MLX LM vs Open WebUI](https://www.anchorterminal.com/compare/mlx-lm-vs-open-webui.md)\n- [MLX LM vs screenpipe](https://www.anchorterminal.com/compare/mlx-lm-vs-screenpipe.md)\n- [MLX LM vs TextGen](https://www.anchorterminal.com/compare/mlx-lm-vs-text-generation-webui.md)\n- [MLX LM vs vLLM](https://www.anchorterminal.com/compare/mlx-lm-vs-vllm.md)\n- [HyperQwen vs Underdog](https://www.anchorterminal.com/compare/hyperqwen-vs-underdog.md)\n- [MLX LM vs Underdog](https://www.anchorterminal.com/compare/mlx-lm-vs-underdog.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-31",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "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": "HyperQwen vs MLX LM",
        "url": ""
      }
    ],
    "description": "HyperQwen scores 56.9 (C) to MLX LM's 52.5 (D) for local inference. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "HyperQwen C 56.9",
      "MLX LM D 52.5",
      "scores"
    ],
    "h1": "HyperQwen vs MLX LM",
    "image": "https://www.anchorterminal.com/assets/og/compare-hyperqwen-vs-mlx-lm.png",
    "path": "/compare/hyperqwen-vs-mlx-lm",
    "published": "2026-10-01",
    "section": "tools",
    "title": "HyperQwen vs MLX LM for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-30",
    "url": "https://www.anchorterminal.com/compare/hyperqwen-vs-mlx-lm"
  },
  "tokens": {
    "markdown": 2650,
    "slim": 530
  },
  "version": 1
}
