Paper · 2024-03-13 · cs.CL, cs.AI
Gemma: Open Models Based on Gemini Research and Technology
Gemma: open 2B and 7B decoder-only Transformers trained on 3T and 6T tokens with Gemini-derived architecture and recipes, released as pretrained and instruction-tuned checkpoints. Author-reported: the 7B model averages 56.9 on 18 academic benchmarks vs 54.5 for Mistral 7B.
Language model pretrainingInstruction tuningReinforcement learning from human feedback (RLHF)Multi-query attention (MQA)pretrainingopen-weightstransformer-architectureinstruction-tuningsafety
arXivPDFCodeMarkdown15 min read
AI-compiled by claude-haiku-5-5 on 2026-10-19, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.
In plain words
Gemma is a family of language models from Google DeepMind that anyone can download and run. Two sizes are released: a model with about 2 billion parameters and one with about 7 billion. For each size there is a raw "pretrained" version, which only learned to continue text, and a version tuned to follow instructions and hold a conversation.
The authors built the models with the same ideas and training recipes they used for their larger Gemini models, but scaled down. The bigger model was trained on more text than the smaller one. Both use a large shared vocabulary, and both were tuned afterwards with example conversations and with human preference ratings. The smaller model uses a simpler attention layout in which all query heads share one key and one value head.
The point of the release is that engineers can run, fine-tune and study these models themselves. The report also checks how often the models repeat their training text word for word, and it measures behaviour on safety tests. The authors describe the release as a careful choice, because open weights cannot be taken back once published.
TL;DR
- Gemma 2B and 7B are open decoder-only Transformers, pretrained on 3T and 6T tokens respectively, with instruction-tuned and RLHF-tuned variants § Pretraining § Instruction Tuning.
- The paper is a technical report: it gives architecture sizes and benchmark results, but no training hyperparameters such as learning rate or batch size § Training Infrastructure.
- Author-reported: the 7B pretrained model averages 56.9 over 18 academic benchmarks, against 54.5 for Mistral 7B tab. 6.
- Use this card for architecture facts, baseline numbers and known gaps. The linked repository is a later library, so its code does not confirm Gemma 1 settings directly (see Paper vs code).
Problem
The paper asks how to release a strong, small, openly available language model family. It targets the 2B and 7B scales for deployment on GPU, TPU, CPU and on-device hardware § Introduction. Its claim is that the models outperform similarly sized open models on 11 of 18 text-based tasks [abstract]. The paper's scope assumes primarily English text; the models are not multimodal and are not tuned for multilingual tasks § Training Data.
Because weights are published, the paper also treats misuse as a problem it cannot prevent: it notes that bad actors can fine-tune the models for harmful ends. It states that users should run safety testing specific to their use case before deployment § Introduction § Risks.
Method
The paper is a technical report with no algorithm box and no numbered equations. Sections are unnumbered in the compiled paper, so citations below use section titles instead of numbers.
Architecture § Model Architecture tab. 1. Gemma is a Transformer decoder with a context length of 8192 tokens. Relative to the original Transformer it uses:
- Multi-query attention: the 2B model has one key/value head shared by 8 query heads; the 7B model uses full multi-head attention with 16 heads § Model Architecture tab. 1.
- Rotary position embeddings (RoPE), applied in every layer; absolute position embeddings are not used. Input and output embeddings are shared § Model Architecture.
- GeGLU feed-forward activations, in the approximated form § Model Architecture.
- RMSNorm applied to the input of the attention and feed-forward sublayers § Model Architecture.
Training infrastructure § Training Infrastructure. The models are trained on TPUv5e pods of 256 chips in a 2D torus of 16 by 16. The 7B model runs on 16 pods (4096 chips), with 16-way model sharding and 16-way data replication inside a pod. The 2B model runs on 2 pods (512 chips) with 256-way data replication. Optimizer state is sharded in a way the paper describes as similar to ZeRO-3. Across pods, a data-replica reduce runs over the data-centre network, using the Pathways approach. The authors estimate about 131 tCO2eq for pretraining § Carbon Footprint.
Pretraining data § Training Data. The 2B model sees 3T tokens and the 7B model 6T tokens, primarily English web documents, mathematics and code. The tokenizer is a subset of the Gemini SentencePiece tokenizer with a 256k vocabulary. It splits digits, keeps whitespace, and falls back to byte-level encodings for unknown text. The mixture was chosen with ablations on both sizes, and training is staged so that higher-quality data gets more weight near the end § Training Data.
Filtering § Pretraining, Filtering. Pretraining data is filtered with heuristics and model-based classifiers for harmful, low-quality and personal content. Evaluation sets are removed from the mixture, and contamination checks are run § Pretraining, Filtering.
Supervised fine-tuning § Supervised Fine-Tuning § Formatting. The instruction-tuned models are fine-tuned on a mix of text-only, English-only synthetic and human-written prompt-response pairs. Mixtures are selected with side-by-side LM-based evaluations: responses from a test model and a baseline are shuffled, and a larger model picks the preferred one. The authors also filter synthetic data for personal information, unsafe outputs, self-identification errors and duplicates § Instruction Tuning, Filtering.
Formatter § Formatting tab. 3 tab. 4. Instruction-tuned models expect a control-token format. Roles are marked with user and model. Each turn starts with <start_of_turn> and ends with <end_of_turn>. The paper says output without the formatter is out of distribution and will very likely be worse.
RLHF § Reinforcement Learning from Human Feedback. A reward model is trained on human preference pairs under the Bradley-Terry model. The policy is then optimized against it with a reinforcement-learning algorithm that the paper calls novel but does not name. An automatic high-capacity rater is used to tune hyperparameters and to limit reward hacking.
The forward pass below is the paper's description, with details the paper leaves out taken from the official code, which is cited on each line.
# Gemma decoder forward pass (paper description, code-checked details)
# Input: tokens (B, T) with ids in [0, 256128)
# Output: logits (B, T, 256128)
def forward(tokens):
# Look up the shared embedding table and scale by sqrt(d_model)
# [§ Model Architecture] [code: gemma/gm/nn/_modules.py#L99]
hidden = embedding_table[tokens] * sqrt(d_model) # (B, T, d)
for layer in layers:
# Normalize the attention input with RMSNorm
# [§ Model Architecture] [code: gemma/gm/nn/_modules.py#L466]
normed = rms_norm(hidden) # (B, T, d)
# Project to queries, keys and values; 2B uses one K/V head
# [§ Model Architecture] [tab. 1]
# [code: gemma/gm/nn/_modules.py#L137-L142]
queries = normed @ w_query # (B, T, H, dh)
keys = normed @ w_key # (B, T, K, dh)
values = normed @ w_value # (B, T, K, dh)
# Apply rotary position embeddings to queries and keys
# [§ Model Architecture] [code: gemma/gm/nn/_modules.py#L196-L208]
queries = rope(queries, positions)
keys = rope(keys, positions)
# Scale queries by head_dim ** -0.5 (paper silent; code default)
# [code: gemma/gm/nn/_config.py#L73-L75]
# [code: gemma/gm/nn/_modules.py#L202]
queries = queries * head_dim ** -0.5
# Causal self-attention, grouped by key/value head
# [§ Model Architecture]
# [code: gemma/gm/nn/_modules.py#L240-L256]
attn_out = causal_attention(queries, keys, values) @ w_out
# Add the attention output back to the residual stream
# [code: gemma/gm/nn/_modules.py#L482]
hidden = hidden + attn_out # (B, T, d)
# Normalize the feed-forward input with RMSNorm
# [§ Model Architecture] [code: gemma/gm/nn/_modules.py#L435]
normed = rms_norm(hidden) # (B, T, d)
# GeGLU: GELU of one projection gates a second projection
# [§ Model Architecture] [code: gemma/gm/nn/_modules.py#L380]
gate = normed @ w_gate # (B, T, 2, F)
mlp_out = (gelu(gate[..., 0, :]) * gate[..., 1, :]) @ w_down
hidden = hidden + mlp_out # (B, T, d)
# Final RMSNorm, then reuse the embedding table as the output projection
# [§ Model Architecture] [code: gemma/gm/nn/_transformer.py#L303]
# [code: gemma/gm/nn/_modules.py#L112]
hidden = rms_norm(hidden)
return hidden @ embedding_table.T # (B, T, vocab)Equations. The paper contains no numbered equations. Its only formulas are the Bradley-Terry preference model named in the RLHF text and the verbatim-memorization definitions, which are stated in words.
Figures. No figure is reproduced here. fig. 1 is an average-score chart for Gemma 7B by capability. fig. 2 compares memorization across model families by size, and fig. 3 and fig. 4 show sensitive-data and approximate-memorization rates.
Hyperparameters
Only architecture values, data sizes and infrastructure are stated. Training and tuning hyperparameters are not given.
| Name | Value | Where | Notes |
|---|---|---|---|
| d_model (embed dim) | 2B: 2048; 7B: 3072 | tab. 1 | |
| Layers | 2B: 18; 7B: 28 | tab. 1 | |
| Feed-forward hidden dims | 2B: 32768; 7B: 49152 | tab. 1 | Whether this counts both GeGLU branches is not stated; see Pitfalls |
| Attention heads | 2B: 8; 7B: 16 | tab. 1 | |
| Key/value heads | 2B: 1 (multi-query); 7B: 16 (multi-head) | tab. 1 § Model Architecture | |
| Head size | 256 (both) | tab. 1 | |
| Vocabulary size | 256128 (both) | tab. 1 | Text says "256k" § Training Data |
| Context length | 8192 tokens | § Model Architecture | Training length; RoPE base not stated |
| Pretraining tokens | 2B: 3T; 7B: 6T | § Training Data | Intro says "up to 6T" |
| Pretraining chips | 2B: 512 TPUv5e (2 pods); 7B: 4096 TPUv5e (16 pods) | § Training Infrastructure | |
| Sharding (7B) | 16-way model, 16-way data replication per pod | § Training Infrastructure | |
| Sharding (2B) | 256-way data replication | § Training Infrastructure | |
| Embedding parameters | 2B: 524,550,144; 7B: 786,825,216 | tab. 2 | |
| Non-embedding parameters | 2B: 1,981,884,416; 7B: 7,751,248,896 | tab. 2 | |
| Learning rate, schedule, warmup | not stated | Pretraining and SFT | |
| Batch size, optimizer, steps | not stated | ||
| SFT hyperparameters | not stated | § Instruction Tuning | Described only as "tuned" |
| RL algorithm and its parameters | not stated | § Reinforcement Learning from Human Feedback | Called "novel", not named |
| Reward model | Bradley-Terry on human preference pairs | § Reinforcement Learning from Human Feedback | Model size not stated |
| Positional embedding base frequency | not stated | Code default is 10000 (Paper vs code) | |
| RMSNorm epsilon | not stated | Code uses 1e-6 (Paper vs code) |
Results
Author-reported throughout. Each row below was checked against the paper's table; the paper does not state hardware for the evaluations.
Pretrained models, academic benchmarks tab. 6. Setup: each pretrained model is evaluated on 18 benchmarks with the metric and shot count listed; baselines are LLaMA-2 7B and 13B, Mistral 7B, and Gemma 2B and 7B. Values for Mistral 7B marked "(a)" were run by the authors; LLaMA-2 values are copied from the LLaMA-2 report.
| Benchmark | Metric | LLaMA-2 7B | LLaMA-2 13B | Mistral 7B | Gemma 2B | Gemma 7B |
|---|---|---|---|---|---|---|
| MMLU | 5-shot, top-1 | 45.3 | 54.8 | 62.5 | 42.3 | 64.3 |
| HellaSwag | 0-shot | 77.2 | 80.7 | 81.0 | 71.4 | 81.2 |
| PIQA | 0-shot | 78.8 | 80.5 | 82.2 | 77.3 | 81.2 |
| SIQA | 0-shot | 48.3 | 50.3 | 47.0 (a) | 49.7 | 51.8 |
| BoolQ | 0-shot | 77.4 | 81.7 | 83.2 (a) | 69.4 | 83.2 |
| Winogrande | partial scoring | 69.2 | 72.8 | 74.2 | 65.4 | 72.3 |
| CommonsenseQA | 7-shot | 57.8 | 67.3 | 66.3 (a) | 65.3 | 71.3 |
| OpenBookQA | (not stated) | 58.6 | 57.0 | 52.2 | 47.8 | 52.8 |
| ARC-e | (not stated) | 75.2 | 77.3 | 80.5 | 73.2 | 81.5 |
| ARC-c | (not stated) | 45.9 | 49.4 | 54.9 | 42.1 | 53.2 |
| TriviaQA | 5-shot | 72.1 | 79.6 | 62.5 | 53.2 | 63.4 |
| NQ | 5-shot | 25.7 | 31.2 | 23.2 | 12.5 | 23.0 |
| HumanEval | pass@1 | 12.8 | 18.3 | 26.2 | 22.0 | 32.3 |
| MBPP (split differs for Mistral) | 3-shot | 20.8 | 30.6 | 40.2 (a) | 29.2 | 44.4 |
| GSM8K | maj@1 | 14.6 | 28.7 | 35.4 (a) | 17.7 | 46.4 |
| MATH | 4-shot | 2.5 | 3.9 | 12.7 | 11.8 | 24.3 |
| AGIEval | (not stated) | 29.3 | 39.1 | 41.2 (a) | 24.2 | 41.7 |
| BBH | (not stated) | 32.6 | 39.4 | 56.1 (a) | 35.2 | 55.1 |
| Average | 46.9 | 52.4 | 54.5 | 45.0 | 56.9 |
Bold marks the best of the five columns as the paper prints it. The caption says Mistral reports 50.2 on a different MBPP split, and that on that split the authors' 7B model scores 54.5 tab. 6. The table lists Mistral at 40.2 (a).
Hugging Face H6 benchmarks tab. 7. Run independently by Hugging Face on the 7B models.
| Benchmark | Mistral 7B | Gemma 7B |
|---|---|---|
| ARC-c | 60.0 | 61.9 |
| HellaSwag | 83.3 | 82.2 |
| MMLU | 64.2 | 64.6 |
| TruthfulQA | 42.2 | 44.8 |
| Winogrande | 78.4 | 79.0 |
| GSM8K | 37.8 | 50.9 |
| Average | 61.0 | 63.8 |
Human preference, instruction-tuned models tab. 5. Win rate against Mistral v0.2 7B Instruct with 95% confidence intervals and win/tie/loss breakdowns (ties split evenly). Safety prompts: about 400 held-out prompts. Instruction-following prompts: about 1000 held-out prompts covering creative writing, coding and instructions.
| Model | Safety win rate (95% CI) | Safety W/T/L | Instruction-following win rate (95% CI) | Instruction-following W/T/L |
|---|---|---|---|---|
| Gemma 1.1 IT 7B | 63.5% (60.7–66.1) | 51.5 / 23.9 / 24.6 | 61.2% (59.3–63.0) | 52.2 / 18.1 / 29.8 |
| Gemma 1.1 IT 2B | 60.1% (57.3–62.8) | 48.5 / 23.2 / 28.3 | 45% (43.1–46.9) | 37.1 / 15.8 / 47.1 |
Safety benchmarks, Gemma 1.1 IT tab. 8. Evaluations run by the authors. Bold marks the best of the three columns as printed. The table does not give a metric direction for each row.
| Benchmark | Metric | Mistral v0.2 7B | Gemma 1.1 IT 2B | Gemma 1.1 IT 7B |
|---|---|---|---|---|
| RealToxicity | avg | 8.44 | 7.03 | 8.04 |
| BOLD | 46.0 | 47.76 | 45.2 | |
| CrowS-Pairs | top-1 | 32.76 | 45.89 | 49.67 |
| BBQ Ambig | 1-shot, top-1 | 97.53 | 58.97 | 86.06 |
| BBQ Disambig | top-1 | 84.45 | 53.9 | 85.08 |
| Winogender | top-1 | 64.3 | 50.14 | 57.64 |
| TruthfulQA | 48.54 | 44.24 | 45.34 | |
| Winobias 1_2 | 65.72 | 55.93 | 59.22 | |
| Winobias 2_2 | 84.53 | 89.46 | 89.2 | |
| Toxigen | 61.77 | 29.64 | 38.75 |
Appendix, Gemma 1.0 IT. The human-preference results for the first release tab. 9: Gemma 7B IT wins 58% on safety (CI 55.9–60.1) and 51.7% on instruction following (CI 49.6–53.8) against Mistral v0.2 7B Instruct. Gemma 2B IT wins 56.5% (CI 54.4–58.6) and 41.6% (CI 39.5–43.7). The safety benchmark table for 1.0 tab. 10:
| Benchmark | Metric | Mistral v0.2 7B | Gemma IT 2B | Gemma IT 7B |
|---|---|---|---|---|
| RealToxicity | avg | 8.44 | 6.86 | 7.90 |
| BOLD | 46.0 | 45.57 | 49.08 | |
| CrowS-Pairs | top-1 | 32.76 | 45.82 | 51.33 |
| BBQ Ambig | 1-shot, top-1 | 97.53 | 62.58 | 92.54 |
| BBQ Disambig | top-1 | 84.45 | 54.62 | 71.99 |
| Winogender | top-1 | 64.3 | 51.25 | 54.17 |
| TruthfulQA | 48.54 | 31.81 | 44.84 | |
| Winobias 1_2 | 65.72 | 56.12 | 59.09 | |
| Winobias 2_2 | 84.53 | 91.1 | 92.23 | |
| Toxigen | 61.77 | 29.77 | 39.59 |
Memorization § Memorization Evaluations fig. 2 fig. 3 fig. 4. The paper gives no numbers in text beyond these: about 50% more data is approximately memorized than exactly memorized fig. 4; no memorized sensitive data was found fig. 3; total memorization across the pretraining set is comparable to PaLM fig. 2. Method: 10,000 documents per corpus, first 50 tokens as prompt, exact memorization when the next 50 tokens match, approximate memorization at a 10% edit-distance threshold.
Paper vs code
Repository. The paper links no code repository. The official code was located by GitHub search in the google-deepmind organisation, whose name matches the paper's author line "Gemma Team, Google DeepMind" [title block]. The introduction mentions an "open-source codebase for inference and serving" without a link § Introduction. The code is Apache-2.0 LICENSE.
Later library. The repository at code_commit is a later version of the library. It defines Gemma 2, Gemma 3 and later models. It contains no Gemma 1 2B or 7B model class. The only Gemma 1 values are the layer counts _NUM_LAYERS_GEMMA_2B = 18 and _NUM_LAYERS_GEMMA_7B = 28 _gemma.py, which match tab. 1 but are not referenced elsewhere in the repository. Gemma 1 settings are therefore not verified against code. Several behaviours below come from the shared layer code and may differ for Gemma 1 checkpoints.
Architecture comparison.
- Attention layout: the paper uses multi-query attention for 2B and multi-head for 7B tab. 1. The code selects multi-head when key/value heads equal query heads, grouped-query attention when they lie between 1 and the query-head count, and the multi-query case otherwise _modules.py. The mechanism matches the paper; no Gemma 1 config confirms the values.
- RMSNorm: the paper does not give the form. The code uses
x / rms(x)scaled by(1 + scale)with a zero-initializedscaleand epsilon 1e-6 _layers.py. - Embedding scaling: the paper is silent. The code multiplies the embedding lookup by
sqrt(embed_dim)_modules.py. - Tied embeddings: the paper says embeddings are shared between input and output § Model Architecture. The code computes logits as the hidden state times the transposed embedding table _modules.py. Consistent.
- GeGLU: the paper says "approximated" GeGLU § Model Architecture. The code computes
gelu(gate_0) * gate_1using the library'snn.geluwith its default arguments _modules.py. Whether this is the tanh approximation depends on the library default and is not checked here. - Residual and block order: pre-normalization before attention and before the feed-forward layer, with residual additions after each _modules.py. Consistent with "normalize the input of each sublayer" § Model Architecture.
- Query scaling: the paper does not mention it. The default in the code is
head_dim ** -0.5_config.py _config.py. - Post-normalization, soft-capping of logits or attention, and sliding-window attention exist in the code. They belong to later Gemma configs and are not in the paper; do not add them for Gemma 1 on the basis of this code.
Training. The repository contains inference, sampling and fine-tuning code. No pretraining recipe or training hyperparameters were found in the files checked, so the paper's training settings cannot be compared with code. The paper's sharding and TPU setup § Training Infrastructure has no code counterpart here.
No discrepancies found for the architecture points the code covers. Gemma 1 specifics are unverified (see above).
Pitfalls
- No training hyperparameters. Learning rate, schedule, warmup, batch size, optimizer settings, step count, SFT learning rate and epochs are all absent § Training Infrastructure § Instruction Tuning. An implementer must find them elsewhere or mark them as unknown.
- RL algorithm unnamed. The RLHF policy update is described only as a "novel" algorithm § Reinforcement Learning from Human Feedback. Clipping, KL control and rollout settings are not stated.
- Judge model unnamed. The side-by-side evaluation uses "a larger, high capability model" as judge, but its identity and prompt are not given § Instruction Tuning.
- Feed-forward width is ambiguous. The table lists 32768 and 49152 as "feedforward hidden dims" tab. 1. GeGLU uses two projections. The paper does not say whether these numbers are per branch or summed. The current code's
hidden_dimis per branch _modules.py, but no Gemma 1 config confirms the convention. Check against the released checkpoint shapes before implementing. - Code-only details. Embedding scaling by sqrt(d_model), the RMSNorm
(1 + scale)form and epsilon, and the query scale come from the code, not the paper _modules.py _layers.py. Verify them against Gemma 1 weights before relying on them. - RoPE base and scaling. Neither base frequency nor any scale factor is stated for Gemma 1. The code default is 10000 _modules.py; this is a library default, not a confirmed Gemma 1 value.
- Vocabulary numbers. Table 1 gives 256128; the text says "256k" § Training Data. Use 256128 when sizing the embedding table.
- Tokenizer reproduction. The tokenizer is a subset of Gemini's SentencePiece model with specific behaviour: digits split, whitespace kept, byte fallback § Training Data. The paper does not say whether the tokenizer model is released or how it was subset.
- Format matters. The paper states that generations without the control-token formatter are out of distribution and will very likely be worse § Formatting. Implementers must use the
<start_of_turn>/<end_of_turn>format for the tuned models. - Small model sensitivity. The HF H6 caption warns that small-model scores are sensitive to prompt changes tab. 7. Benchmark numbers are not directly reproducible without the same prompts.
- Mixed baseline methodology. LLaMA-2 values are copied from the LLaMA-2 report, not re-run; the authors could not run LLaMA-2 under its licence terms § Automated Benchmarks. Mistral values marked (a) were run by the authors. ARC, CommonsenseQA, BBH and AGIEval follow the Mistral report's methodology as closely as possible § Automated Benchmarks.
- The "11 of 18" claim. The abstract says the models outperform similarly sized open models on 11 of 18 tasks. In tab. 6, Gemma 7B is the bold best in 11 rows, which matches, but the paper does not state this rule. Check the table before quoting the count.
- "6 standard safety benchmarks". The conclusion says the models outperform competitors on 6 standard safety benchmarks § Discussion and Conclusion. The paper does not list which 6.
- Memorization numbers are plot-only. The memorization rates are given only in fig. 2–fig. 4; the text gives relative statements. Do not quote numbers beyond those in the text.
- Compute cost. The 131 tCO2eq estimate combines measured energy and a data-centre overhead the authors scale for; the method for that scaling is described only briefly § Carbon Footprint.
Lineage
- Builds on: Gemini (arXiv:2312.11805), whose architecture, data and recipes the paper says it draws on § Introduction; the Transformer decoder (arXiv:1706.03762) § Model Architecture; multi-query attention (arXiv:1911.02150), RoPE (arXiv:2104.09864), GeGLU (arXiv:2002.05202) and RMSNorm (arXiv:1910.07467), all cited in § Model Architecture.
- Compared against: Mistral 7B (arXiv:2310.06825) in tab. 5–tab. 10; LLaMA-2 (arXiv:2307.09288) in tab. 6; the paper also cites Falcon, CodeLLaMA and PaLM-family models in the text § Automated Benchmarks.
- Superseded by: not stated in this wiki. The linked repository contains later Gemma model families (see Paper vs code).
Source and license
Adapted from “Gemma: Open Models Based on Gemini Research and Technology” by Gemma Team, Thomas Mesnard, Cassidy Hardin, Robert Dadashi, Surya Bhupatiraju, Shreya Pathak, Laurent Sifre, Morgane Rivière, Mihir Sanjay Kale, Juliette Love, Pouya Tafti, Léonard Hussenot, Pier Giuseppe Sessa, Aakanksha Chowdhery, Adam Roberts, Aditya Barua, Alex Botev, Alex Castro-Ros, Ambrose Slone, Amélie Héliou, Andrea Tacchetti, Anna Bulanova, Antonia Paterson, Beth Tsai, Bobak Shahriari, Charline Le Lan, Christopher A. Choquette-Choo, Clément Crepy, Daniel Cer, Daphne Ippolito, David Reid, Elena Buchatskaya, Eric Ni, Eric Noland, Geng Yan, George Tucker, George-Christian Muraru, Grigory Rozhdestvenskiy, Henryk Michalewski, Ian Tenney, Ivan Grishchenko, Jacob Austin, James Keeling, Jane Labanowski, Jean-Baptiste Lespiau, Jeff Stanway, Jenny Brennan, Jeremy Chen, Johan Ferret, Justin Chiu, Justin Mao-Jones, Katherine Lee, Kathy Yu, Katie Millican, Lars Lowe Sjoesund, Lisa Lee, Lucas Dixon, Machel Reid, Maciej Mikuła, Mateo Wirth, Michael Sharman, Nikolai Chinaev, Nithum Thain, Olivier Bachem, Oscar Chang, Oscar Wahltinez, Paige Bailey, Paul Michel, Petko Yotov, Rahma Chaabouni, Ramona Comanescu, Reena Jana, Rohan Anil, Ross McIlroy, Ruibo Liu, Ryan Mullins, Samuel L Smith, Sebastian Borgeaud, Sertan Girgin, Sholto Douglas, Shree Pandya, Siamak Shakeri, Soham De, Ted Klimenko, Tom Hennigan, Vlad Feinberg, Wojciech Stokowiec, Yu-hui Chen, Zafarali Ahmed, Zhitao Gong, Tris Warkentin, Ludovic Peran, Minh Giang, Clément Farabet, Oriol Vinyals, Jeff Dean, Koray Kavukcuoglu, Demis Hassabis, Zoubin Ghahramani, Douglas Eck, Joelle Barral, Fernando Pereira, Eli Collins, Armand Joulin, Noah Fiedel, Evan Senter, Alek Andreev, Kathleen Kenealy (arXiv:2403.08295), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors. Code citations refer to https://github.com/google-deepmind/gemma at commit 9e1f74131ba9 (Apache-2.0). Any quoted code is shown under that license.