Add support for Gemma 4
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 20/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- kotlin
- Área
- ai-infra-agents
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
[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
- Lenguaje dominante
- Kotlin
- Estrellas
- 8
- Forks
- 3
- Merge medio
- 1 d 16 h
- PR fusionados (30 d)
- 48
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de SKaiNET-developers/SKaiNET-transformers
-
documentation good first issue size:xs skill:docs sub-issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
SKaiNET-developers/SKaiNET-transformers#478 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
enhancement skill:kotlin-core
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
SKaiNET-developers/SKaiNET-transformers#502 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
SKaiNET-developers/SKaiNET-transformers#483 ·
Los mantenedores suelen responder en 1 día
-
coding good first issue size:s skill:kotlin-core sub-issue
Dificultad 4/5 1-2 días Aptitud para principiantes 64/100
SKaiNET-developers/SKaiNET-transformers#477 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
coding good first issue size:s skill:numerics sub-issue
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
SKaiNET-developers/SKaiNET-transformers#476 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de SKaiNET-developers/SKaiNET-transformers
Issues similares
-
android bug kotlin vulkan
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
maplibre/maplibre-native-ffi#852 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 86/100
Los mantenedores suelen responder en 1 día
-
documentation importer size:S
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
enorm-labs/event-junkie#3614 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
InsertKoinIO/koin#2477 ·
-
[Submission] AI服务引擎Abiertosubmit-adaption submit-adaption-pre
Dificultad 1/5 Menos de una hora Aptitud para principiantes 76/100
BetterAndroid/android-notification-icon-project#783 · 1 comentario ·
Los mantenedores suelen responder en 1 día