Laya for Cabo

A fine-tune of convaiinnovations/laya (Apache-2.0) that plays the card game Cabo, used for the "Laya" AI seats of Game Night.

Each decision is a multiple-choice question: the text describes the position as one player sees it (own known and unknown cards, opponents' card counts, discard, drawn card) and the options are the legal moves. The model returns the move it thinks most likely to win.

Training

Three rounds, all with soft targets (win rates of each move estimated by rollouts) rather than single labels:

  1. v1: rollout teacher (64 heuristic-bot rollouts per move) on 3-player games.
  2. v2: v1 plus 2- and 4-player teacher data, 512-token context.
  3. v3 (this model): v2 fine-tuned on 76,610 self-play positions (Laya-guided rollouts for six plies, then the heuristic bot, 8 rollouts per move) mixed one-to-one with replayed v2 teacher data; 2 epochs, effective batch 64.

Results

Win rate from seat 1 against heuristic bots (1,000 games each, 95% Wilson intervals):

Players Heuristic bot v2 v3
2 49.3% 63.5% 64.5% [61.5, 67.4]
3 29.3% 41.3% 41.2% [38.1, 44.2]
4 21.9% 28.9% 29.4% [26.6, 32.3]

Against two v2 players (3 players, 600 games) v3 wins 31.5% [27.9, 35.3]; v2 in the same seat wins 29.1% [25.6, 32.8]. About 30 ms per decision on a GPU, 0.3-1.5 s on a few CPU cores.

Use

import laya
agent = laya.load("Ojas-Singh/laya-cabo", device="cpu")
r = agent.predict(state_text, questions)          # questions: {"move": {"type": "choice", "criteria": {...}}}

The exact prompt format is produced by packages/agent-bots/src/laya-cabo.ts in the Game Night repository.

Downloads last month
-
Safetensors
Model size
0.4B params
Tensor type
F16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Ojas-Singh/laya-cabo

Finetuned
(206)
this model