{"data":{"kind":"file","path":"README.md","version_id":"zesgy5xouehmopmabqztncg2","entry":{"name":"README.md","path":"README.md","is_directory":false,"size":2262,"modified_at":"2025-12-07T23:23:25.422000","content_hash":"395b16f580419fa1621701c84f3b813f9be2fa3c864f6d5efa15d0f478d1a221"},"entries":[],"content":"# blackjack\n\nMulti-turn blackjack environment where the model manages a bankroll, places bets, and chooses HIT or STAND while following strict response formatting.\n\n### Overview\n- **Environment ID**: `blackjack`\n- **Short description**: Casino blackjack session simulation with betting and play phases until the shoe is mostly exhausted or the bankroll hits zero.\n- **Tags**: games, blackjack, multi-turn, eval\n\n### Datasets\n- **Primary dataset(s)**: Synthetic deck shuffles driven by seeded RNG values; each example only carries a seed and blank prompt content.\n- **Source links**: Generated in-code; no external data.\n- **Split sizes**: Single eval split; size controlled by `tool.verifiers.eval.num_examples` (default 500).\n\n### Task\n- **Type**: multi-turn\n- **Parser**: `XMLParser` expecting `<answer>` tags (system prompt also asks for reasoning in `<think>` tags before the answer).\n- **Gameplay flow**: Two states per hand—`BET` expects an integer bet, `PLAY` expects `HIT` or `STAND`. Blackjacks pay 150%, doubling is disabled. Session ends when ≥80% of the shoe is dealt or the balance is depleted.\n- **Rubric overview**: Single `total_reward` metric equal to the environment’s running reward: +0.1 for valid actions, ±bet for wins/losses, +1.5×bet for natural blackjack wins, and identical changes to balance.\n\n### Quickstart\nRun an evaluation with default settings:\n\n```bash\nuv run vf-eval blackjack\n```\n\nConfigure model and sampling:\n\n```bash\nuv run vf-eval blackjack \\\n  -m gpt-4.1-mini \\\n  -n 20 -r 3 -t 1024 -T 0.7 \\\n  -a '{\"starting_balance\": 1000, \"num_decks\": 1}'\n```\n\nNotes:\n- Use `-a` / `--env-args` to pass environment-specific configuration as a JSON object.\n- Adjust `tool.verifiers.eval.num_examples` in `pyproject.toml` to change dataset size (defaults to 500).\n\n### Environment Arguments\n\n| Arg | Type | Default | Description |\n| --- | ---- | ------- | ----------- |\n| `starting_balance` | int | `1000` | Initial bankroll before the first bet. |\n| `num_decks` | int | `1` | Number of decks in the shoe; affects game length and card distribution. |\n\n### Metrics\n\n| Metric | Meaning |\n| ------ | ------- |\n| `reward` | Total reward accumulated across the session (mirrors bankroll changes plus small bonuses for valid actions). |\n","encoding":"utf-8","truncated":false,"total_bytes":2262},"status":null}