Add support for Gemma 4
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 20/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- kotlin
- Bereich
- ai-infra-agents
Rechercherichtung
Start with the Gemma3n implementation and the listed child issue files, ISSUE-skainet-gemma4-text-only.md and ISSUE-skainet-gemma4-multimodal.md, to map existing runtime entry points and split the work into milestones. The parent issue defines end-to-end inference, CLI detection, backward compatibility, tests, and attribution as acceptance criteria; its scope spans model loading, attention, and multimodal capabilities.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
[Parent] Gemma 4 Support for SKaiNET-transformers
Summary
Add full Gemma 4 model family support to SKaiNET-transformers, starting with text-only inference and progressing to multimodal capabilities. Gemma 4 introduces hybrid attention (sliding + global), proportional RoPE (p-RoPE), Per-Layer Embeddings (PLE), new control tokens, and (optionally) Mixture-of-Experts — all requiring new config parsing, weight loading, prompt formatting, and runtime extensions beyond the existing Gemma3n implementation.
Motivation
Gemma 4 (Apache-2.0) offers up to 256K context, on-device efficiency via PLE, and broad model sizes (E2B, E4B, 31B dense; 26B A4B MoE). Supporting it positions SKaiNET-transformers as a competitive Kotlin Multiplatform inference runtime for the latest open models.
Scope
This parent issue tracks the overall Gemma 4 integration. Work is split into child issues:
- Text-Only Support — Config, weight loading, tokenizer, prompt formatter, hybrid attention, kgemma CLI integration, tests
- Multimodal & Advanced Features — Vision/audio encoders, MoE dispatcher, multimodal prompt handling, fine-tuning adapter ingestion
Key Architectural Decisions
- Gemma3n code path remains untouched;
kgemmadifferentiates at runtime viamodel_typeinconfig.json InferenceRuntime.generate(...)API stays generic — newGemma4Runtimeplugs into existing call sites- SafeTensors (single + sharded) and GGUF loading paths are both required
- KV-cache compression (TurboQuant) integration planned for long-context performance phase
Acceptance Criteria
- Gemma 4 E2B and E4B models load and run text inference end-to-end from HF SafeTensors
- Existing Gemma3n functionality is unaffected (backward compatibility)
-
kgemmaCLI auto-detects Gemma 4 vs Gemma3n based on model artifacts - CI passes with new Gemma 4 test suite (unit, integration, smoke)
- Multimodal roadmap is outlined with clear milestones
- Apache-2.0 license attribution and responsible-use references are documented
Child Issues
ISSUE-skainet-gemma4-text-only.md— Text-Only SupportISSUE-skainet-gemma4-multimodal.md— Multimodal & Advanced Features
References
- Vorherrschende Sprache
- Kotlin
- Sterne
- 8
- Forks
- 3
- Ø Merge
- 19 Std. 45 Min.
- Gemergte PRs (30 T.)
- 38
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus SKaiNET-developers/SKaiNET-transformers
-
documentation good first issue size:xs skill:docs sub-issue
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
SKaiNET-developers/SKaiNET-transformers#478 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
SKaiNET-developers/SKaiNET-transformers#483 ·
Maintainer antworten meist innerhalb von 1 Tag
-
coding good first issue size:s skill:kotlin-core sub-issue
Schwierigkeit 4/5 1-2 Tage Anfängerfreundlichkeit 64/100
SKaiNET-developers/SKaiNET-transformers#477 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
coding good first issue size:s skill:numerics sub-issue
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
SKaiNET-developers/SKaiNET-transformers#476 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
moonshine stream: the final encoder window is zero-padded and the encoder has no attention maskOffen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
SKaiNET-developers/SKaiNET-transformers#458 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in SKaiNET-developers/SKaiNET-transformers
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
PostHog/posthog-kmp#100 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Feature request
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
keiyoushi/extensions-source#20102 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
"Check mod" buttonOffenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
yairm210/Unciv#15803 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement triaged
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 63/100
Maintainer antworten meist innerhalb von 1 Tag