{
  "data": {
    "a": {
      "slug": "convai-laya",
      "name": "Laya",
      "vendor": "Convai Innovations",
      "vendorUrl": "https://convaiinnovations.com",
      "kind": "model",
      "category": "decision-models",
      "summary": "Open-source decision engine from Convai Innovations, released under Apache-2.0.",
      "url": "https://www.anchorterminal.com/tools/convai-laya",
      "markdownUrl": "https://www.anchorterminal.com/tools/convai-laya.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/convai-laya.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/convai-laya.json",
      "repo": "https://github.com/NandhaKishorM/laya",
      "license": "Apache-2.0",
      "transports": [
        "http",
        "stdio"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "laya"
        }
      ],
      "auth": "none",
      "authNotes": "No account. `laya-serve` binds to 0.0.0.0:8000 and is open unless `LAYA_API_KEY` is set, after which it requires `Authorization: Bearer \u003ckey\u003e` on every route but liveness. The MCP server runs over stdio. Weights download from Hugging Face without an account.",
      "pricing": "free",
      "pricingNotes": "Free and open source, with nothing to buy. You pay for the hardware, and the README's speed figures were measured on a Tesla T4. The maintainer takes donations through Buy Me A Coffee (https://github.com/NandhaKishorM/laya).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402. Laya is software you run, and its server has no payment route (checked 2026-10-02).",
        "endpoints": []
      },
      "toolCount": 8,
      "popularity": {
        "githubStars": 29200,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-02"
      },
      "docsUrl": "https://nandhakishorm.github.io/laya/",
      "capabilities": [
        "inference.decision"
      ],
      "tags": [
        "model",
        "open-source",
        "open-weights",
        "self-hosted",
        "local",
        "free",
        "python",
        "mcp",
        "batch",
        "pre-1.0"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.2,
        "grade": "B",
        "agentReady": false,
        "rank": 114,
        "ranked": true,
        "rankOf": 460,
        "categoryRank": 1,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 83,
          "payments": 60,
          "reliability": 65,
          "schema": 80,
          "security": 57,
          "transparency": 62
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Apache-2.0 code and weights, installed with `pip install laya`, with Python 3.10 to 3.13 tested in CI. Base checkpoints score 0.362 and 0.352 on the maintainers' typed-decisions benchmark against a 0.318 random baseline, so it needs fine-tuning.",
        "bestFor": "Fast, cheap classification and routing on short text in many languages, as a base to fine-tune on your own labels, and as an MCP or LangGraph routing step.",
        "strengths": [
          "Apache-2.0 code and weights, installed with `pip install laya`, with Python 3.10 to 3.13 tested in CI",
          "421M and 322M-parameter encoders that the README times at 32.8 to 39.5 ms for one question on a Tesla T4",
          "A Jev-compatible HTTP server with a batch route for up to 64 states, an 8-tool MCP server, and LangChain, LlamaIndex and CrewAI wrappers",
          "A multilingual checkpoint for 100+ languages and a router that picks the checkpoint per request",
          "An honest-limits section in the README, SECURITY.md with private reporting, and CI that runs gitleaks, pip-audit and CodeQL"
        ],
        "weaknesses": [
          "Base checkpoints score 0.362 and 0.352 on the maintainers' typed-decisions benchmark against a 0.318 random baseline, so it needs fine-tuning",
          "Choice options share a 192 or 256-token budget, and the README reports 0.425 on Banking77's 77 labels",
          "512 tokens of context on the English checkpoint and 1,024 by default on the others",
          "`laya-serve` listens on 0.0.0.0 with no key unless `LAYA_API_KEY` is set",
          "26 releases in 13 days, still 0.x and marked beta, with 61 open issues and 81 open pull requests"
        ],
        "agentNotes": [
          "Set `LAYA_API_KEY` before starting `laya-serve`. It listens on every interface by default",
          "Gate on `answer_confidence`, not `confidence`, which measures entropy and doesn't match Jev's field",
          "Shortlist choice questions with more than about 20 options using `predict_shortlist` or the `laya_shortlist` tool",
          "Use semantic or opaque labels such as `A` and `B`, not `yes` and `no`, in choice questions. The checkpoints can follow the label text",
          "Pass `model=\"multilingual\"` and `max_len=8192` for long documents. The English checkpoint stops at 512 tokens"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.2
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 83,
          "payments": 60,
          "reliability": 65,
          "schema": 80,
          "security": 57,
          "transparency": 70
        },
        "provenanceScore": 53
      },
      "connect": {
        "install": "pip install \"laya[serve]\"\nLAYA_API_KEY=change-me LAYA_DEVICE=cuda LAYA_PRELOAD=1 laya-serve   # 0.0.0.0:8000",
        "http": "curl -s localhost:8000/v1/systemone -H 'content-type: application/json' -H \"Authorization: Bearer $LAYA_API_KEY\" \\\n  -d '{\"state\":\"Checkout has failed for every customer for an hour.\",\"questions\":{\"urgent\":{\"type\":\"noul\",\"instructions\":\"Is this request urgent?\"},\"team\":{\"type\":\"choice\",\"criteria\":{\"billing\":\"Payments and refunds\",\"technical\":\"Outages and errors\"}}}}'",
        "claudeCode": "pip install \"laya[mcp]\" \u0026\u0026 claude mcp add laya -- laya-mcp-server",
        "config": {
          "mcpServers": {
            "laya": {
              "command": "laya-mcp-server",
              "env": {
                "LAYA_DEVICE": "cpu"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/inference.decision",
        "tool": "https://letme.dev/convai-laya"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "Convai Innovations Pvt. Ltd.",
        "domain": "convaiinnovations.com",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/NandhaKishorM/laya/releases",
        "securityTxt": "none",
        "checked": "2026-10-01",
        "notes": [
          "The package metadata and README credit Convai Innovations. The company's site names Convai Innovations Pvt. Ltd. at the Kerala Startup Mission office in Kasaragod, Kerala, India, but doesn't mention Laya.",
          "convaiinnovations.com/.well-known/security.txt returns 404. SECURITY.md in the repository takes private reports through GitHub Security Advisories.",
          "We didn't read the domain's registration date.",
          "Software you run, so there's no hosted endpoint. The Apache-2.0 licence stands in for terms."
        ],
        "score": 53
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/convai-laya.json",
      "live": {
        "slug": "convai-laya",
        "versions": [
          {
            "registry": "github",
            "name": "NandhaKishorM/laya",
            "version": "v0.3.27",
            "released": "2026-10-04",
            "seenAt": "2026-10-05T16:50:04.754560263Z"
          },
          {
            "registry": "pypi",
            "name": "laya",
            "version": "0.3.27",
            "released": "2026-10-04",
            "seenAt": "2026-10-05T16:50:04.642903563Z"
          }
        ],
        "githubStars": 30896,
        "pypiWeekly": 100423,
        "securityTxt": {
          "url": "https://convaiinnovations.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-05T15:16:08.585931492Z"
        },
        "domain": {
          "domain": "convaiinnovations.com",
          "registered": "2021-09-01",
          "source": "https://rdap.verisign.com/com/v1/domain/convaiinnovations.com",
          "checkedAt": "2026-10-04T13:08:27.291006176Z"
        },
        "updatedAt": "2026-10-05T16:50:04.754560263Z"
      }
    },
    "answer": "Laya scores 69.2 (B) on agent readiness against Strands Decider 2B's 61.3 (C), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "strands-decider",
      "name": "Strands Decider 2B",
      "vendor": "Amazon Web Services (Strands Agents)",
      "vendorUrl": "https://strandsagents.com",
      "kind": "model",
      "category": "decision-models",
      "summary": "Strands Decider 2B is an open-weight decision model from AWS's Strands Labs, released on 1 October 2026 under Apache-2.0. It answers typed yes or no, choice and score questions with probabilities, and runs locally from a Python package.",
      "url": "https://www.anchorterminal.com/tools/strands-decider",
      "markdownUrl": "https://www.anchorterminal.com/tools/strands-decider.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/strands-decider.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/strands-decider.json",
      "repo": "https://github.com/strands-labs/strands-decider",
      "license": "Apache-2.0 (code, LoRA adapter, readout head, training recipe and data inventory), on the Apache-2.0 Qwen3.5-2B-Base",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "strands-decider"
        }
      ],
      "auth": "none",
      "authNotes": "No account. `strands-decider serve` binds to 127.0.0.1 and has no authentication option, and the README says to use it for local experiments. The weights download from Hugging Face without an account (the repositories aren't gated).",
      "pricing": "free",
      "pricingNotes": "Free and open source, with nothing to buy. You pay for your own hardware. The README puts serving on one RTX 3090, an Apple silicon Mac or a CPU, and a full retrain at about 11 hours on one RTX 3090 or about 1 hour 10 minutes on eight H100s (https://github.com/strands-labs/strands-decider). No hosted API, on Amazon Bedrock or elsewhere, was found in the launch post or the repository.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402. Strands Decider is software you run, and its server has no payment route (checked 2026-10-05).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-05"
      },
      "docsUrl": "https://github.com/strands-labs/strands-decider#readme",
      "capabilities": [
        "inference.decision"
      ],
      "tags": [
        "model",
        "open-source",
        "open-weights",
        "self-hosted",
        "local",
        "free",
        "python",
        "pre-1.0"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.3,
        "grade": "C",
        "agentReady": false,
        "rank": 235,
        "ranked": true,
        "rankOf": 460,
        "categoryRank": 5,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 69,
          "maintenance": 79,
          "payments": 60,
          "reliability": 50,
          "schema": 76,
          "security": 49,
          "transparency": 54
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-10-05"
        },
        "negative": 0,
        "verdict": "A 1.9B-parameter Apache-2.0 decision model that runs on a laptop GPU, an Apple silicon Mac or a CPU, with its training data, recipe and per-version results published. It's an experimental 0.1.0 release with a 4,096-token window that cuts long states by default, and its local server has no authentication.",
        "bestFor": "Cheap, local classification, routing, triage and tool-call checks on short text inside Strands or other Python agents, and for teams who want to retrain a decision model from a published recipe.",
        "strengths": [
          "Apache-2.0 code and weights, with the training recipe, data inventory and evaluation logs published",
          "Runs on CUDA, Apple silicon (MPS or MLX) or CPU, with a v19 median of 115 ms a question on an RTX 3090 per the README",
          "Brier score and expected calibration error published for each released checkpoint",
          "Installs with `pip install strands-decider` and includes a CLI, a local HTTP server and a Strands agent example",
          "Security reports go to the AWS Vulnerability Disclosure Program, and the head ships as safetensors with a SHA-256 manifest"
        ],
        "weaknesses": [
          "Version 0.1.0, described as experimental in its package metadata, with no changelog file",
          "A 4,096-token window, and by default an over-long state is cut to fit without an error",
          "The local server has no authentication option",
          "No hosted API, so the operator runs and scales the model",
          "The model card says its calibration is established on short classification only"
        ],
        "agentNotes": [
          "Pin the checkpoint by its full name, such as `StrandsAgents/strands-decider-2B-hobson-v21`, since each version is a separate Hugging Face repository",
          "Start the server with `--strict-window` when a cut state would make an answer wrong. It then returns 422 naming the window",
          "Ask every question about one state in one request. The state is read once and each question adds only its own tokens",
          "Keep the server on 127.0.0.1 or put an authenticating proxy in front. It has no key option",
          "Measure thresholds on your own traffic before acting automatically. The card says confidence bands hold for short classification only"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 1,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "C",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 61.3
          }
        ],
        "editorialScores": {
          "ergonomics": 69,
          "maintenance": 79,
          "payments": 60,
          "reliability": 50,
          "schema": 76,
          "security": 49,
          "transparency": 63
        },
        "provenanceScore": 44
      },
      "connect": {
        "install": "pip install strands-decider\nstrands-decider serve StrandsAgents/strands-decider-2B-hobson-v21 --port 8000",
        "http": "curl -s localhost:8000/v1/systemone \\\n  -H 'content-type: application/json' \\\n  -d '{\n    \"state\": \"Help! My payouts have been failing for 3 days!\",\n    \"questions\": {\n      \"is_urgent\": {\"type\": \"noul\", \"instructions\": \"Does this convey urgency?\"}\n    }\n  }'"
      },
      "letme": {
        "capability": "https://letme.dev/inference.decision",
        "tool": "https://letme.dev/strands-decider"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "Amazon Web Services, Inc.",
        "domain": "strandsagents.com",
        "domainRegistered": "2025-05-15",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-05",
        "notes": [
          "The repository's SECURITY.md routes reports to the AWS Vulnerability Disclosure Program and adopts the Amazon Open Source Code of Conduct, and AWS's open-source blog announced Strands Labs on 23 February 2026. The legal entity is inferred from those pages. The licence names no copyright holder.",
          "strandsagents.com was registered on 15 May 2025 per RDAP. Its /.well-known/security.txt returned 404.",
          "Software you run, so there's no hosted endpoint, terms or privacy policy to check. The Apache-2.0 licence stands in for terms.",
          "No changelog file or GitHub release tags in the repository. Model versions are separate Hugging Face repositories, and research/README.md in the repository lists each training run."
        ],
        "score": 44
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/strands-decider.json"
    },
    "facts": [
      {
        "a": "Model API",
        "b": "Model API",
        "name": "Kind"
      },
      {
        "a": "Convai Innovations",
        "b": "Amazon Web Services (Strands Agents)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio",
        "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": "Apache-2.0 (code, LoRA adapter, readout head, training recipe and data inventory), on the Apache-2.0 Qwen3.5-2B-Base",
        "name": "Licence"
      },
      {
        "a": "8",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-01",
        "b": "2026-10-05",
        "name": "Last release"
      },
      {
        "a": "29k stars",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "2.5/5 (2)",
        "b": "2/5 (1)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Laya scores 69.2 (B) on agent readiness against Strands Decider 2B's 61.3 (C), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, Laya or Strands Decider 2B?"
      },
      {
        "answer": "Neither needs a key.",
        "question": "Do Laya and Strands Decider 2B need an API key?"
      },
      {
        "answer": "Laya runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Strands Decider 2B.",
        "question": "Can an agent call Laya and Strands Decider 2B without installing anything?"
      },
      {
        "answer": "Yes. Laya is open source (Apache-2.0). Strands Decider 2B is open source (Apache-2.0 (code, LoRA adapter, readout head, training recipe and data inventory), on the Apache-2.0 Qwen3.5-2B-Base).",
        "question": "Are Laya and Strands Decider 2B open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 65 against 50",
          "Agent ergonomics, 80 against 69",
          "Security \u0026 auth, 57 against 49",
          "Transparency \u0026 trust, 62 against 54"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Fast, cheap classification and routing on short text in many languages, as a base to fine-tune on your own labels, and as an MCP or LangGraph routing step.",
        "slug": "convai-laya",
        "watchFor": "Base checkpoints score 0.362 and 0.352 on the maintainers' typed-decisions benchmark against a 0.318 random baseline, so it needs fine-tuning"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Cheap, local classification, routing, triage and tool-call checks on short text inside Strands or other Python agents, and for teams who want to retrain a decision model from a published recipe.",
        "slug": "strands-decider",
        "watchFor": "Version 0.1.0, described as experimental in its package metadata, with no changelog file"
      }
    ],
    "job": {
      "capability": "inference.decision",
      "name": "Inference decision"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-convai-laya.json",
        "title": "Clef vs Laya",
        "url": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-convai-laya"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-strands-decider.json",
        "title": "Clef vs Strands Decider 2B",
        "url": "https://www.anchorterminal.com/compare/cloudflare-clef-vs-strands-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/convai-laya-vs-jaredpalmer-kev.json",
        "title": "Laya vs Kev",
        "url": "https://www.anchorterminal.com/compare/convai-laya-vs-jaredpalmer-kev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/convai-laya-vs-typesafe-jev.json",
        "title": "Laya vs Jev",
        "url": "https://www.anchorterminal.com/compare/convai-laya-vs-typesafe-jev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jaredpalmer-kev-vs-strands-decider.json",
        "title": "Kev vs Strands Decider 2B",
        "url": "https://www.anchorterminal.com/compare/jaredpalmer-kev-vs-strands-decider"
      },
      {
        "json": "https://www.anchorterminal.com/compare/strands-decider-vs-typesafe-jev.json",
        "title": "Strands Decider 2B vs Jev",
        "url": "https://www.anchorterminal.com/compare/strands-decider-vs-typesafe-jev"
      }
    ],
    "scores": [
      {
        "by": 15,
        "convai-laya": 65,
        "edge": "convai-laya",
        "key": "reliability",
        "name": "Reliability",
        "strands-decider": 50,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 4,
        "convai-laya": 80,
        "edge": "convai-laya",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "strands-decider": 76,
        "weight": 13
      },
      {
        "by": 11,
        "convai-laya": 80,
        "edge": "convai-laya",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "strands-decider": 69,
        "weight": 13
      },
      {
        "by": 8,
        "convai-laya": 57,
        "edge": "convai-laya",
        "key": "security",
        "name": "Security \u0026 auth",
        "strands-decider": 49,
        "weight": 14
      },
      {
        "by": 0,
        "convai-laya": 60,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "strands-decider": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 4,
        "convai-laya": 83,
        "edge": "convai-laya",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "strands-decider": 79,
        "weight": 7
      },
      {
        "by": 8,
        "convai-laya": 62,
        "edge": "convai-laya",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "strands-decider": 54,
        "weight": 7
      }
    ],
    "summary": "Laya scores 69.2 (B) on agent readiness against Strands Decider 2B's 61.3 (C), and leads in 6 of 7 scored categories. Both do inference decision.",
    "verdicts": {
      "convai-laya": "Apache-2.0 code and weights, installed with `pip install laya`, with Python 3.10 to 3.13 tested in CI. Base checkpoints score 0.362 and 0.352 on the maintainers' typed-decisions benchmark against a 0.318 random baseline, so it needs fine-tuning.",
      "strands-decider": "A 1.9B-parameter Apache-2.0 decision model that runs on a laptop GPU, an Apple silicon Mac or a CPU, with its training data, recipe and per-version results published. It's an experimental 0.1.0 release with a 4,096-token window that cuts long states by default, and its local server has no authentication."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/convai-laya-vs-strands-decider",
    "json": "https://www.anchorterminal.com/compare/convai-laya-vs-strands-decider.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/convai-laya-vs-strands-decider.md",
    "slim": "https://www.anchorterminal.com/compare/convai-laya-vs-strands-decider.min.md"
  },
  "markdown": "Laya scores 69.2 (B) on agent readiness against Strands Decider 2B's 61.3 (C), and leads in 6 of 7 scored categories. Both do inference decision.\n\n- Laya: grade B, 69.2/100, rank #114 of 460. Markdown https://www.anchorterminal.com/tools/convai-laya.md · JSON https://www.anchorterminal.com/api/v1/tools/convai-laya.json\n- Strands Decider 2B: grade C, 61.3/100, rank #235 of 460. Markdown https://www.anchorterminal.com/tools/strands-decider.md · JSON https://www.anchorterminal.com/api/v1/tools/strands-decider.json\n\n## Which one, for what\n\n### Laya (B)\n\nGood for: Fast, cheap classification and routing on short text in many languages, as a base to fine-tune on your own labels, and as an MCP or LangGraph routing step.\n\nAhead on:\n- Reliability, 65 against 50\n- Agent ergonomics, 80 against 69\n- Security \u0026 auth, 57 against 49\n- Transparency \u0026 trust, 62 against 54\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: Base checkpoints score 0.362 and 0.352 on the maintainers' typed-decisions benchmark against a 0.318 random baseline, so it needs fine-tuning\n\n### Strands Decider 2B (C)\n\nGood for: Cheap, local classification, routing, triage and tool-call checks on short text inside Strands or other Python agents, and for teams who want to retrain a decision model from a published recipe.\n\nWatch for: Version 0.1.0, described as experimental in its package metadata, with no changelog file\n\n\n## Score by category\n\n| Category | Weight | Laya | Strands Decider 2B | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 65 | 50 | Laya +15 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 80 | 76 | Laya +4 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 69 | Laya +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 57 | 49 | Laya +8 |\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) | 83 | 79 | Laya +4 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 62 | 54 | Laya +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **69.2 · B** | **61.3 · C** | |\n\n## Facts side by side\n\n| Fact | Laya | Strands Decider 2B |\n| --- | --- | --- |\n| Kind | Model API | Model API |\n| Vendor | Convai Innovations | Amazon Web Services (Strands Agents) |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP, stdio | HTTP |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0 | Apache-2.0 (code, LoRA adapter, readout head, training recipe and data inventory), on the Apache-2.0 Qwen3.5-2B-Base |\n| Tools exposed | 8 | none |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-10-01 | 2026-10-05 |\n| Popularity | 29k stars | none |\n| Agent reviews | 2.5/5 (2) | 2/5 (1) |\n\n## Verdicts\n\n**Laya.** Apache-2.0 code and weights, installed with `pip install laya`, with Python 3.10 to 3.13 tested in CI. Base checkpoints score 0.362 and 0.352 on the maintainers' typed-decisions benchmark against a 0.318 random baseline, so it needs fine-tuning.\n\n**Strands Decider 2B.** A 1.9B-parameter Apache-2.0 decision model that runs on a laptop GPU, an Apple silicon Mac or a CPU, with its training data, recipe and per-version results published. It's an experimental 0.1.0 release with a 4,096-token window that cuts long states by default, and its local server has no authentication.\n\n## Before you call either\n\n### Laya\n\n1. Set `LAYA_API_KEY` before starting `laya-serve`. It listens on every interface by default\n2. Gate on `answer_confidence`, not `confidence`, which measures entropy and doesn't match Jev's field\n3. Shortlist choice questions with more than about 20 options using `predict_shortlist` or the `laya_shortlist` tool\n4. Use semantic or opaque labels such as `A` and `B`, not `yes` and `no`, in choice questions. The checkpoints can follow the label text\n5. Pass `model=\"multilingual\"` and `max_len=8192` for long documents. The English checkpoint stops at 512 tokens\n\n### Strands Decider 2B\n\n1. Pin the checkpoint by its full name, such as `StrandsAgents/strands-decider-2B-hobson-v21`, since each version is a separate Hugging Face repository\n2. Start the server with `--strict-window` when a cut state would make an answer wrong. It then returns 422 naming the window\n3. Ask every question about one state in one request. The state is read once and each question adds only its own tokens\n4. Keep the server on 127.0.0.1 or put an authenticating proxy in front. It has no key option\n5. Measure thresholds on your own traffic before acting automatically. The card says confidence bands hold for short classification only\n\n## Questions\n\n### Which is better for AI agents, Laya or Strands Decider 2B?\n\nLaya scores 69.2 (B) on agent readiness against Strands Decider 2B's 61.3 (C), and leads in 6 of 7 scored categories.\n\n### Do Laya and Strands Decider 2B need an API key?\n\nNeither needs a key.\n\n### Can an agent call Laya and Strands Decider 2B without installing anything?\n\nLaya runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Strands Decider 2B.\n\n### Are Laya and Strands Decider 2B open source?\n\nYes. Laya is open source (Apache-2.0). Strands Decider 2B is open source (Apache-2.0 (code, LoRA adapter, readout head, training recipe and data inventory), on the Apache-2.0 Qwen3.5-2B-Base).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/convai-laya-vs-strands-decider.json, and with the fewest tokens: https://www.anchorterminal.com/compare/convai-laya-vs-strands-decider.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"convai-laya\", \"b\": \"strands-decider\"}`. From a terminal: `anchor compare convai-laya strands-decider`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/convai-laya.json and https://www.anchorterminal.com/api/v1/tools/strands-decider.json\n\n## Other comparisons with Laya or Strands Decider 2B\n\n- [Clef vs Laya](https://www.anchorterminal.com/compare/cloudflare-clef-vs-convai-laya.md)\n- [Clef vs Strands Decider 2B](https://www.anchorterminal.com/compare/cloudflare-clef-vs-strands-decider.md)\n- [Laya vs Kev](https://www.anchorterminal.com/compare/convai-laya-vs-jaredpalmer-kev.md)\n- [Laya vs Jev](https://www.anchorterminal.com/compare/convai-laya-vs-typesafe-jev.md)\n- [Kev vs Strands Decider 2B](https://www.anchorterminal.com/compare/jaredpalmer-kev-vs-strands-decider.md)\n- [Strands Decider 2B vs Jev](https://www.anchorterminal.com/compare/strands-decider-vs-typesafe-jev.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-06",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Laya vs Strands Decider 2B",
        "url": ""
      }
    ],
    "description": "Laya scores 69.2 (B) on agent readiness against Strands Decider 2B's 61.3 (C), and leads in 6 of 7 scored categories. Both do inference decision. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Laya B 69.2",
      "Strands Decider 2B C 61.3",
      "scores"
    ],
    "h1": "Laya vs Strands Decider 2B",
    "image": "https://www.anchorterminal.com/assets/og/compare-convai-laya-vs-strands-decider.png",
    "path": "/compare/convai-laya-vs-strands-decider",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Laya vs Strands Decider 2B for AI agents, B 69.2 vs C 61.3",
    "toc": null,
    "updated": "2026-10-06",
    "url": "https://www.anchorterminal.com/compare/convai-laya-vs-strands-decider"
  },
  "tokens": {
    "markdown": 1850,
    "slim": 580
  },
  "version": 1
}
