Skip to content
OTFotf
All posts

Use Laya for structured decisions in your app

D
DaveAuthor
8 min read
Use Laya for structured decisions in your app

Should I use Laya, the decision model now free on Vercel AI Gateway, to make yes/no, routing or scoring calls in my app, and how do I try it before the free window ends? If your app has shared context and a clearly framed decision to make, Laya is designed to return a structured answer with probabilities instead of free form text. The Vercel changelog dated 1 October 2026 says it is free on AI Gateway through 31 October 2026 when served by Boundless; this draft uses information fetched on 3 October 2026.

What Laya is for

Vercel describes Laya from Convai as an evaluation and decision model. Give it shared context and ask yes or no, choice, or scoring questions; it returns structured answers with probabilities. That shape is useful when the next step in your product depends on a defined decision, rather than a conversational answer that a person must interpret.

The AI Gateway evaluation documentation describes evaluation models as returning choices, scores, and boolean probabilities rather than free form text. It also says several questions can be answered in parallel in one request against the same state. That gives an engineer a clear unit to inspect: the state sent, the question definitions, and the returned structured answers. If you have been building an assistant flow with multiple hand written classification prompts, first write down the decisions and their expected answer types. Then see whether they map to evaluation questions.

Use a decision model when the app has a bounded question and an answer type your code can handle. The announcement does not establish Laya as a fit for open ended conversation. Our suggested practice is to tie each question to an app action. For context, see how teams delegate work through AI Gateway and how to think about model choices on AI Gateway.

Four places a structured answer can fit

Vercel gives four concrete examples. They are useful because each starts with context already available to an app and ends with a next action that the app can define.

  • Triage support requests. A support message can be checked for a refund request and routed to a billing team. The example is a boolean question, so the app can use the returned result as one input to routing.
  • Route agent work. Ask which tool or workflow should handle a request. The returned choice can select among paths your application already provides.
  • Check guardrails. Check a request or response for a possible policy violation and flag it for review. The page frames this as flagging for review; it does not say a model result should automatically block a user or replace a policy process.
  • Score against a rubric. Rate a ticket’s urgency or an answer’s quality against a defined scale. A score can help order work or request another look, as long as the app defines what each score means.

Two people sort blank cards with colored tabs into a wooden tray grid.

Your application still owns the context, available routes, review path, and meaning of a score. Our suggested practice is to test question wording on representative cases before relying on a result in a live path.

Same component. Web and mobile. One codebase.

The free, open-source SDK gives you components that work the same on web and mobile — one codebase. github.com/otf-kit/sdk

Get the free SDK

Three ways to call Laya

The changelog lists three paths: the AI SDK evaluation API, a native HTTP API, and a TypeSafe-compatible API. It gives the model identifiers convaiinnovations/laya and convaiinnovations/laya-free. The AI SDK example uses experimental_evaluate (renamed locally to evaluate), passes a state string and a typed boolean question, and limits the gateway provider to Boundless. The example’s relevant shape is:

import { experimental_evaluate as evaluate } from 'ai';

const result = await evaluate({
  model: 'convaiinnovations/laya',
  state: 'Please refund my duplicate payment.',
  questions: {
    refund: {
      type: 'boolean',
      instructions: 'Is the customer asking for a refund?',
    },
  },
  providerOptions: {
    gateway: { only: ['boundless'] },
  },
});

The native HTTP and TypeSafe-compatible choices are also shown on the page as API call paths. The page includes examples for them, but the simplest first experiment is to start with the documented AI SDK shape if your project already uses that SDK. For details on evaluation requests and supported models, use Vercel’s evaluation documentation. The post also points to AI Gateway documentation for the gateway itself.

The changelog says both IDs are free through 31 October 2026 when served by Boundless. It says the -free ID routes to Boundless and stops serving after the promotion, while the standard ID begins billing then. It does not give later pricing. Use the exact identifier and provider behavior deliberately; do not assume the free identifier will continue to respond after the stated date.

Try it before 31 October

Our suggested practice for a small, reversible evaluation:

  1. Pick one decision from an owned app, such as whether a support message asks for a refund. Write down the context you will pass and the exact output type you need.
  2. Use your own AI Gateway key, or the provider key setup described in the AI Gateway docs. Keep credentials in your local secret manager or environment configuration; do not put them in source control or in a prompt shared with teammates.
  3. Follow the evaluation quickstart and changelog example. Keep the test narrow: one state, one typed question, and the documented convaiinnovations/laya model ID, with Boundless selected as shown.
  4. Review the returned answer alongside the original input. Our suggested practice is to record the question, the answer, and the application action you took, while excluding unnecessary personal data.
  5. Before any broader rollout, try representative cases and a human review path. Our suggested practice is especially important for guardrail flags: route them for review instead of treating a model result as a final policy decision.

This checklist is a suggested way to learn what the request and response look like in your code, not a claim about accuracy, speed, or production suitability.

Two people review a blank grid sheet, a blank checklist and a stack of decision cards at a table.

Decide what happens after the free window

The changelog gives a date and behavior, not a complete operating plan. It states that the standard model ID begins billing after the promotion and that the -free ID stops serving after it. It does not state the later price, a replacement ID, or terms after 31 October. Do not build a cost estimate from this announcement alone.

Our suggested practice is to write a short decision record before you depend on Laya: which feature calls it, which model ID it uses, what the app does with each answer, who reviews flagged cases, and what happens if the call becomes unavailable or paid. Before the end date, check the current provider and model details and decide whether to continue, change the route, or disable that feature until you have an approved budget. This is planning guidance, not a statement of later Vercel or Boundless terms.

Our suggested practice is to log the question version, model ID, outcome category, and whether a person changed the next action. Set retention and access rules for your data, and avoid logging raw sensitive context unnecessarily. For a live model availability example, see the Gemini 3.8 live model guide.

What the announcement does not say

The fetched changelog identifies the model, response shape, example uses, APIs, identifiers, provider, and free period. It does not report benchmark results, comparative accuracy, latency, or a price after 31 October 2026. It also does not promise that a particular workflow will be safe or effective without testing. Those are decisions to make with your own task, data, and product controls; they should not be inferred from the free period or from the words decision model.

The practical question is whether your application has a bounded decision with known context and an answer your code can handle. If so, a small trial can show how it fits. If not, this announcement alone is not a reason to redesign a working flow.

If you want a codebase to add a decision step to, the Arcade kit is a $99 Expo + Hono games-store template that ships as editable source code you own, with a CLAUDE.md in the repo, and you can try the free demo first. It is simply a codebase to practise changing; this kit is not presented as using Laya or AI Gateway. The SaaS Dashboard and Fitness kits are other options.

FAQ

What does Laya return?

Vercel describes structured answers with probabilities for yes or no, choice, and scoring questions over shared context.

Which model IDs does the announcement list?

It lists convaiinnovations/laya and convaiinnovations/laya-free.

How long is Laya free on AI Gateway?

The announcement says both IDs are free through 31 October 2026 when served by Boundless.

What happens to the free ID after that date?

The announcement says the -free ID stops serving after the promotion and the standard ID begins billing.

Sources

ai-gatewayverceldecision-model
OTF SDK + Kits

Buy once, own the code. Ship with the agent you already use.

  • Free, open-source SDK — same component, web and mobile
  • Paid kits include AI configs + 40+ tested prompts — your agent reads the whole project
  • $99/kit or $149 for everything. No subscription, no sandbox limit.
Need more than components?

Full-stack kits.
Pay once, own the code.

Auth, database, and payments already connected — so you ship product, not setup. Or take every kit in the Bundle.

Everything Bundle — $149See full pricing

Get the free AI configs pack

Pre-tuned AI configs for Cursor, Claude, and Lovable — drop them in and your AI tool instantly understands your project.

No spam. Unsubscribe any time.

Prefer the free SDK? Star it on GitHub →