Skip to content

chatterbox_defaults(): hardware-adaptive setup, 6GB jit validation#13

Open
TroyHernandez wants to merge 4 commits into
mainfrom
adaptive-defaults
Open

chatterbox_defaults(): hardware-adaptive setup, 6GB jit validation#13
TroyHernandez wants to merge 4 commits into
mainfrom
adaptive-defaults

Conversation

@TroyHernandez

Copy link
Copy Markdown
Contributor

Closes the hardware-matrix → adaptive-defaults arc with the fresh 6GB numbers.

New export: chatterbox_defaults(vram_gb = NULL) — detects the GPU via nvidia-smi (CPU when absent or < 4GB, which can't hold the ~4.6GB model) and returns a classed list: GC options (apply with do.call(options, ...) before torch loads), backend, max_new_tokens, chunk_chars, and a measured flag. The print method emits a ready-to-paste setup snippet per tier; projected tiers (8/12GB) are labeled as such.

6GB validation (GTX 1660 Ti, long-form ~22s audio, GC 0.75):

path ms/token VRAM
container (Python) 30 ~5.5GB
jit 35-38 4.7GB
traced 99 — but truncates at 120 tokens (350-position cap) 4.4GB
pure R 254-287 4.6GB

jit is fastest on every measured card; the old "traced wins on 6GB" guidance predated the jit backend and is corrected in chatterbox_gc_options()'s 6GB note, the performance vignette, and CLAUDE.md. 12GB projected row added to the tier table.

Tier-logic tests run CPU-only (test_defaults.R); full suite passes. Version 0.1.0.9 + NEWS as separate bump commit.

…esults

- New chatterbox_defaults(vram_gb = NULL): detects the GPU (CPU when
  absent or under 4GB) and returns GC options, backend, max_new_tokens,
  and chunking threshold as a classed object; print method emits a
  ready-to-paste setup snippet. Measured tiers labeled vs projected.
- 6GB validation results (GTX 1660 Ti, June 2026) folded into
  gc_options 6GB note, the performance vignette, and CLAUDE.md:
  jit 35-38 ms/token (4.7GB) vs container 30 - jit is fastest on every
  measured card; traced additionally truncates long-form at its
  350-position cap. The old 'traced wins on 6GB' guidance predated the
  jit backend.
- 12GB projected row added to the tier table.
…card threshold

- Vignette no longer claims jit is un-revalidated on 6GB (it was, this PR).
- 'jit wins/fastest' tightened to 'fastest native path/backend' - it
  does not beat the container.
- Cards under 5GB are treated as CPU (model floor ~4.6GB, measured 6GB
  peak 4.7GB); measured flag no longer sweeps 4-5.5GB or 13GB into
  measured tiers.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant