feat(ai): ungate Gemma 3 4B and offer Q4_K_M / Q8_0 / f16 quants - #81
Conversation
The ggml-org/gemma-3-4b-it-GGUF mirror is not gated (HF API gated:false, verified 2026-07-25), so the Best tier no longer demands a Hugging Face token. The repo also ships Q8_0 and f16 weights at the same pinned revision sharing one f16 projector; register them as separate specs (own install dir + benchmark record each) and collapse the three into a single picker card behind a Quantization radio selector. Existing gemma3-4b (Q4_K_M) installs keep their id and stay valid. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (7)
📜 Recent review details⏰ Context from checks skipped due to timeout. (2)
🧰 Additional context used📓 Path-based instructions (9)src/**/*.{ts,tsx,css}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
src/**/*.{ts,tsx}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
src/**/*.{ts,tsx,rs}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*.{ts,tsx,rs}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*.{ts,tsx}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*.test.ts📄 CodeRabbit inference engine (CLAUDE.md)
Files:
src/strings.ts📄 CodeRabbit inference engine (CLAUDE.md)
Files:
src/**/*.stories.{ts,tsx}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
🔇 Additional comments (7)
📝 WalkthroughWalkthroughGemma 3 4B now has multiple registered quant variants sharing a projector, grouped into one model card with quant selection. Picker copy, Storybook coverage, architecture documentation, exports, and registry tests were updated accordingly. ChangesVision model quantization
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant ModelPicker
participant modelCardGroups
participant ModelCard
participant PickerState
ModelPicker->>modelCardGroups: group SUPPORTED_MODELS by quantFamily
modelCardGroups-->>ModelPicker: return variant groups
ModelPicker->>ModelCard: pass per-variant PickerState entries
ModelCard->>PickerState: select busy, chosen, installed, or first variant
ModelCard-->>ModelPicker: render selected quantization actions
Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches📝 Generate docstrings
✨ Simplify code
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Textually clean merge; overlapping files (lib.rs, index.css, strings.ts, ARCHITECTURE.md, DESIGN-SYSTEM.md) touched disjoint hunks.
Retitle the staged Unreleased section to 1.7.0 and fold in the user-facing story of PRs #81–#85 (Gemma ungated + three quants, the add-friend two-column layout + cardstock texture, friendly DB errors, settings spacing) that the wave-3 staging predated. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Summary
ggml-org/gemma-3-4b-it-GGUFis not gated (HF APIgated: false, verified 2026-07-25) — drop the token requirement from the Best tier and update the stale keychain-help copy.ModelSpecentries at the same pinned revision, sharing the f16 projector manifest. Each keeps its own install dir + benchmark record; existinggemma3-4b(Q4_K_M) installs keep their id and stay valid.quantFamilygrouping collapses the three into one picker card with a Quantization radio selector (busy variant pins the card; installed variants marked in the option label).GatedNeedsTokenstory in favor ofQuantVariantInstalled.Manifest verification
Sizes + SHA256s taken from the HF API tree at pinned revision
d09762...(LFS oids):gemma-3-4b-it-Q8_0.gguf4 130 226 336 Bgemma-3-4b-it-f16.gguf7 767 474 336 BTesting
npm run build,lint,test(778 passed),check-tokens,check-strings,check-contrastall green.modelCardGroupsgrouping.🤖 Generated with Claude Code
Summary by CodeRabbit