模型概述
模型特點
模型能力
使用案例
🚀 Gemma 3 4B Instruct - llamafile
Gemma 3 4B Instruct - llamafile 是將 Google 的 Gemma 3 模型打包成可執行權重的形式,即 llamafile。它能讓你在 Linux、MacOS、Windows、FreeBSD、OpenBSD 和 NetBSD 等系統上輕鬆、快速地使用該模型,支持 AMD64 和 ARM64 架構。
🚀 快速開始
要開始使用,你需要獲取 Gemma 3 的權重和 llamafile 軟件,它們包含在同一個文件中,可按以下步驟下載並運行:
wget https://huggingface.co/Mozilla/gemma-3-4b-it-llamafile/resolve/main/google_gemma-3-4b-it-Q6_K.llamafile
chmod +x google_gemma-3-4b-it-Q6_K.llamafile
./google_gemma-3-4b-it-Q6_K.llamafile
這些 llamafile 的默認操作模式是新的命令行聊天機器人界面。
✨ 主要特性
多系統支持
支持 Linux、MacOS、Windows、FreeBSD、OpenBSD 和 NetBSD 等系統,涵蓋 AMD64 和 ARM64 架構。
多種使用方式
提供命令行聊天機器人界面、Web GUI 和高級 CLI 模式,滿足不同使用場景。
大上下文窗口
模型最大上下文窗口大小為 128k 令牌,默認使用 8192 令牌的上下文窗口。
GPU 加速
支持在具有足夠內存的 GPU 上使用 NVIDIA 或 AMD GPU 進行加速。
📦 安裝指南
下載並運行 llamafile
wget https://huggingface.co/Mozilla/gemma-3-4b-it-llamafile/resolve/main/google_gemma-3-4b-it-Q6_K.llamafile
chmod +x google_gemma-3-4b-it-Q6_K.llamafile
./google_gemma-3-4b-it-Q6_K.llamafile
Linux 避免運行檢測器錯誤
安裝 APE 解釋器:
sudo wget -O /usr/bin/ape https://cosmo.zip/pub/cosmos/bin/ape-$(uname -m).elf
sudo chmod +x /usr/bin/ape
sudo sh -c "echo ':APE:M::MZqFpD::/usr/bin/ape:' >/proc/sys/fs/binfmt_misc/register"
sudo sh -c "echo ':APE-jart:M::jartsr::/usr/bin/ape:' >/proc/sys/fs/binfmt_misc/register"
💻 使用示例
基礎用法
使用默認命令行聊天機器人界面:
./google_gemma-3-4b-it-Q6_K.llamafile
高級用法
使用 Web GUI
./google_gemma-3-4b-it-Q6_K.llamafile --server
使用高級 CLI 模式
./google_gemma-3-4b-it-Q6_K.llamafile --cli -p 'four score and seven' --log-disable
📚 詳細文檔
使用說明
- 多行提問:可以使用三引號進行多行提問。
- 查看運行狀態信息:可以傳遞
/stats
和/context
命令查看運行時狀態信息。 - 更改系統提示:通過
-p "new system prompt"
標誌更改系統提示。 - 中斷模型:按 CTRL - C 中斷模型。
- 退出:按 CTRL - D 退出。
上下文窗口設置
可以通過 -c 0
標誌讓 llamafile 使用最大上下文大小,也可以使用 -f book.txt
標誌與書籍進行對話。
GPU 加速設置
- NVIDIA GPU:在具有足夠內存的 NVIDIA GPU 上,傳遞
-ngl 999
標誌使用 GPU 加速。若安裝了 CUDA SDK,可傳遞--recompile
標誌構建使用 cuBLAS 的 GGML CUDA 庫以獲得最佳性能。 - AMD GPU:在 Windows 上,若使用 AMD GPU,首次運行 llamafile 時應安裝 ROCm SDK v6.1 並傳遞
--recompile --gpu amd
標誌。
🔧 技術細節
模型信息
屬性 | 詳情 |
---|---|
模型類型 | 多模態模型,處理文本和圖像輸入,生成文本輸出 |
訓練數據 | 包括網絡文檔、代碼、數學文本和圖像等多種來源的數據 |
硬件
Gemma 模型使用 [Tensor Processing Unit (TPU)][tpu] 硬件(TPUv4p、TPUv5p 和 TPUv5e)進行訓練。
軟件
使用 [JAX][jax] 和 [ML Pathways][ml-pathways] 進行訓練。
📄 許可證
許可證為 gemma,詳情見 LICENSE。
模型相關信息
模型描述
Gemma 是 Google 推出的輕量級、先進的開放模型家族,基於與 Gemini 模型相同的研究和技術構建。Gemma 3 模型是多模態的,能處理文本和圖像輸入並生成文本輸出,預訓練和指令調優變體的權重均開放。它具有 128K 的大上下文窗口,支持 140 多種語言,且有比以前版本更多的尺寸可供選擇。適用於各種文本生成和圖像理解任務,如問答、摘要和推理等。由於其相對較小的尺寸,可部署在資源有限的環境中,如筆記本電腦、臺式機或自己的雲基礎設施,使先進的 AI 模型更普及,促進創新。
輸入輸出
類型 | 詳情 |
---|---|
輸入 | 文本字符串(如問題、提示或待摘要的文檔);圖像(歸一化為 896 x 896 分辨率,每個編碼為 256 個令牌);4B、12B 和 27B 尺寸的總輸入上下文為 128K 令牌,1B 尺寸為 32K 令牌 |
輸出 | 對輸入的生成文本響應(如問題的答案、圖像內容分析或文檔摘要);總輸出上下文為 8192 令牌 |
運行示例
使用 pipeline
API 運行
from transformers import pipeline
import torch
pipe = pipeline("text-generation", model="google/gemma-3-4b-it", device="cuda", torch_dtype=torch.bfloat16)
messages = [
[
{
"role": "system",
"content": [{"type": "text", "text": "You are a helpful assistant."},]
},
{
"role": "user",
"content": [{"type": "text", "text": "Write a poem on Hugging Face, the company"},]
},
],
]
output = pipe(messages, max_new_tokens=50)
在單/多 GPU 上運行模型
from transformers import AutoTokenizer, BitsAndBytesConfig, Gemma3ForCausalLM
import torch
model_id = "google/gemma-3-4b-it"
quantization_config = BitsAndBytesConfig(load_in_8bit=True)
model = Gemma3ForCausalLM.from_pretrained(
model_id, quantization_config=quantization_config
).eval()
tokenizer = AutoTokenizer.from_pretrained(model_id)
messages = [
[
{
"role": "system",
"content": [{"type": "text", "text": "You are a helpful assistant."},]
},
{
"role": "user",
"content": [{"type": "text", "text": "Write a poem on Hugging Face, the company"},]
},
],
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device).to(torch.bfloat16)
with torch.inference_mode():
outputs = model.generate(**inputs, max_new_tokens=64)
outputs = tokenizer.batch_decode(outputs)
引用
@article{gemma_2025,
title={Gemma 3},
url={https://goo.gle/Gemma3Report},
publisher={Kaggle},
author={Gemma Team},
year={2025}
}
訓練數據集
這些模型在包含多種來源的文本數據集上進行訓練。27B 模型使用 14 萬億個令牌進行訓練,12B 模型使用 12 萬億個令牌,4B 模型使用 4 萬億個令牌,1B 模型使用 2 萬億個令牌。主要組成部分包括:
- 網絡文檔:多樣化的網絡文本集合,確保模型接觸到廣泛的語言風格、主題和詞彙,訓練數據集包含 140 多種語言的內容。
- 代碼:讓模型接觸代碼有助於學習編程語言的語法和模式,提高生成代碼和理解代碼相關問題的能力。
- 數學:在數學文本上進行訓練有助於模型學習邏輯推理、符號表示和處理數學查詢。
- 圖像:廣泛的圖像使模型能夠執行圖像分析和視覺數據提取任務。
數據預處理
對訓練數據應用的關鍵數據清理和過濾方法包括:
- CSAM 過濾:在數據準備過程的多個階段應用嚴格的 CSAM(兒童性虐待材料)過濾,確保排除有害和非法內容。
- 敏感數據過濾:作為使 Gemma 預訓練模型安全可靠的一部分,使用自動化技術從訓練集中過濾掉某些個人信息和其他敏感數據。
- 其他方法:根據 [我們的政策][safety-policies] 基於內容質量和安全性進行過濾。
評估
基準測試結果
基準測試 | 指標 | Gemma 3 PT 1B | Gemma 3 PT 4B | Gemma 3 PT 12B | Gemma 3 PT 27B |
---|---|---|---|---|---|
[HellaSwag][hellaswag] | 10 - shot | 62.3 | 77.2 | 84.2 | 85.6 |
[BoolQ][boolq] | 0 - shot | 63.2 | 72.3 | 78.8 | 82.4 |
[PIQA][piqa] | 0 - shot | 73.8 | 79.6 | 81.8 | 83.3 |
[SocialIQA][socialiqa] | 0 - shot | 48.9 | 51.9 | 53.4 | 54.9 |
[TriviaQA][triviaqa] | 5 - shot | 39.8 | 65.8 | 78.2 | 85.5 |
[Natural Questions][naturalq] | 5 - shot | 9.48 | 20.0 | 31.4 | 36.1 |
[ARC - c][arc] | 25 - shot | 38.4 | 56.2 | 68.9 | 70.6 |
[ARC - e][arc] | 0 - shot | 73.0 | 82.4 | 88.3 | 89.0 |
[WinoGrande][winogrande] | 5 - shot | 58.2 | 64.7 | 74.3 | 78.8 |
[BIG - Bench Hard][bbh] | few - shot | 28.4 | 50.9 | 72.6 | 77.7 |
[DROP][drop] | 1 - shot | 42.4 | 60.1 | 72.2 | 77.2 |
STEM 和代碼
基準測試 | 指標 | Gemma 3 PT 4B | Gemma 3 PT 12B | Gemma 3 PT 27B |
---|---|---|---|---|
[MMLU][mmlu] | 5 - shot | 59.6 | 74.5 | 78.6 |
[MMLU][mmlu] (Pro COT) | 5 - shot | 29.2 | 45.3 | 52.2 |
[AGIEval][agieval] | 3 - 5 - shot | 42.1 | 57.4 | 66.2 |
[MATH][math] | 4 - shot | 24.2 | 43.3 | 50.0 |
[GSM8K][gsm8k] | 8 - shot | 38.4 | 71.0 | 82.6 |
[GPQA][gpqa] | 5 - shot | 15.0 | 25.4 | 24.3 |
[MBPP][mbpp] | 3 - shot | 46.0 | 60.4 | 65.6 |
[HumanEval][humaneval] | 0 - shot | 36.0 | 45.7 | 48.8 |
多語言
基準測試 | Gemma 3 PT 1B | Gemma 3 PT 4B | Gemma 3 PT 12B | Gemma 3 PT 27B |
---|---|---|---|---|
[MGSM][mgsm] | 2.04 | 34.7 | 64.3 | 74.3 |
[Global - MMLU - Lite][global - mmlu - lite] | 24.9 | 57.0 | 69.4 | 75.7 |
[WMT24++][wmt24pp] (ChrF) | 36.7 | 48.4 | 53.9 | 55.7 |
[FloRes][flores] | 29.5 | 39.2 | 46.0 | 48.8 |
[XQuAD][xquad] (all) | 43.9 | 68.0 | 74.5 | 76.8 |
[ECLeKTic][eclektic] | 4.69 | 11.0 | 17.2 | 24.4 |
[IndicGenBench][indicgenbench] | 41.4 | 57.2 | 61.7 | 63.4 |
多模態
基準測試 | Gemma 3 PT 4B | Gemma 3 PT 12B | Gemma 3 PT 27B |
---|---|---|---|
[COCOcap][coco - cap] | 102 | 111 | 116 |
[DocVQA][docvqa] (val) | 72.8 | 82.3 | 85.6 |
[InfoVQA][info - vqa] (val) | 44.1 | 54.8 | 59.4 |
[MMMU][mmmu] (pt) | 39.2 | 50.3 | 56.1 |
[TextVQA][textvqa] (val) | 58.9 | 66.5 | 68.6 |
[RealWorldQA][realworldqa] | 45.5 | 52.2 | 53.9 |
[ReMI][remi] | 27.3 | 38.5 | 44.8 |
[AI2D][ai2d] | 63.2 | 75.2 | 79.0 |
[ChartQA][chartqa] | 63.6 | 74.7 | 76.3 |
[VQAv2][vqav2] | 63.9 | 71.2 | 72.9 |
[BLINK][blinkvqa] | 38.0 | 35.9 | 39.6 |
[OKVQA][okvqa] | 51.0 | 58.7 | 60.2 |
[TallyQA][tallyqa] | 42.5 | 51.8 | 54.3 |
[SpatialSense VQA][ss - vqa] | 50.9 | 60.0 | 59.4 |
[CountBenchQA][countbenchqa] | 26.1 | 17.8 | 68.0 |
倫理與安全
評估方法
評估方法包括結構化評估和對相關內容政策的內部紅隊測試。紅隊測試由多個不同團隊進行,每個團隊有不同的目標和人類評估指標。這些模型針對與倫理和安全相關的多個類別進行評估,包括:
- 兒童安全:評估文本到文本和圖像到文本的提示,涵蓋兒童安全政策,包括兒童性虐待和剝削。
- 內容安全:評估文本到文本和圖像到文本的提示,涵蓋安全政策,包括騷擾、暴力和血腥內容以及仇恨言論。
- 代表性傷害:評估文本到文本和圖像到文本的提示,涵蓋安全政策,包括偏見、刻板印象和有害關聯或不準確信息。 除了開發階段的評估,還進行“保證評估”,這是獨立於模型開發團隊的內部評估,用於責任治理決策。高級別結果反饋給模型團隊,但保留提示集以防止過擬合併保持結果為決策提供信息的能力。保證評估結果作為發佈審查的一部分報告給我們的責任與安全委員會。
評估結果
在所有安全測試領域,與之前的 Gemma 模型相比,在兒童安全、內容安全和代表性傷害類別方面有了重大改進。所有測試均在不使用安全過濾器的情況下進行,以評估模型的能力和行為。對於文本到文本和圖像到文本,以及所有模型尺寸,模型產生的政策違規極少,並且在無根據推斷方面比之前的 Gemma 模型有顯著改進。評估的一個侷限性是僅包括英語提示。
使用與限制
預期用途
開放視覺語言模型(VLMs)在各個行業和領域有廣泛的應用。以下潛在用途列表並非詳盡無遺,旨在提供模型創建者在模型訓練和開發過程中考慮的可能用例的上下文信息。
- 內容創作與交流
- 文本生成:可用於生成創意文本格式,如詩歌、腳本、代碼、營銷文案和電子郵件草稿。
- 聊天機器人和對話式 AI:為客戶服務、虛擬助手或交互式應用程序提供對話界面。
- 文本摘要:生成文本語料庫、研究論文或報告的簡潔摘要。
- 圖像數據提取:可用於提取、解釋和總結視覺數據以進行文本通信。
- 研究與教育
- 自然語言處理(NLP)和 VLM 研究:可作為研究人員試驗 VLM 和 NLP 技術、開發算法和推動該領域發展的基礎。
- 語言學習工具:支持交互式語言學習體驗,有助於語法糾正或提供寫作練習。
- 知識探索:幫助研究人員通過生成摘要或回答特定主題的問題來探索大量文本。
限制
- 訓練數據:訓練數據的質量和多樣性顯著影響模型的能力,訓練數據中的偏差或差距可能導致模型響應的侷限性。訓練數據集的範圍決定了模型能夠有效處理的主題領域。
- 上下文和任務複雜性:模型更擅長能用清晰提示和指令描述的任務,開放式或高度複雜的任務可能具有挑戰性。模型的性能可能受提供的上下文量影響(在一定程度上,更長的上下文通常會導致更好的輸出)。
- 語言歧義與細微差別:自然語言本質上很複雜,模型可能難以理解微妙的細微差別、諷刺或比喻語言。
- 事實準確性:模型根據從訓練數據集中學到的信息生成響應,但它們不是知識庫,可能會生成不正確或過時的事實陳述。
- 常識:模型依賴語言中的統計模式,在某些情況下可能缺乏應用常識推理的能力。
倫理考慮與風險
視覺語言模型(VLMs)的開發引發了一些倫理問題。在創建開放模型時,我們仔細考慮了以下方面:
- 偏差與公平性:在大規模真實世界文本和圖像數據上訓練的 VLMs 可能反映訓練材料中嵌入的社會文化偏差。這些模型經過仔細審查,輸入數據進行了預處理,並在本卡片中報告了後續評估結果。
- 錯誤信息與濫用:VLMs 可能被濫用來生成虛假、誤導或有害的文本。提供了負責任使用模型的指南,見 負責任生成式 AI 工具包。
- 透明度與問責制:本模型卡片總結了模型的架構、能力、限制和評估過程的詳細信息。負責任開發的開放模型為開發者和研究人員在整個 AI 生態系統中共享創新提供了機會,使 VLM 技術更易獲取。 識別的風險及緩解措施:
- 偏差的延續:鼓勵在模型訓練、微調等使用場景中進行持續監測(使用評估指標、人工審查)並探索去偏技術。
- 有害內容的生成:內容安全機制和指南至關重要。鼓勵開發者根據其特定產品政策和應用用例謹慎行事並實施適當的內容安全保障措施。
- 惡意用途:技術限制以及對開發者和最終用戶的教育有助於減輕 VLMs 的惡意應用。提供了教育資源和用戶舉報濫用的機制。Gemma 模型的禁止用途在 [Gemma 禁止使用政策][prohibited - use] 中列出。
- 隱私侵犯:模型在經過過濾以去除某些個人信息和其他敏感數據的數據上進行訓練。鼓勵開發者遵守隱私法規並採用隱私保護技術。
好處
在發佈時,與類似規模的模型相比,這個模型家族提供了高性能的開放視覺語言模型實現,從底層設計就考慮了負責任的 AI 開發。使用本文檔中描述的基準評估指標,這些模型表現出優於其他類似規模開放模型替代方案的性能。
[kaggle - gemma]: https://www.kaggle.com/models/google/gemma - 3 [vertex - mg - gemma3]: https://console.cloud.google.com/vertex - ai/publishers/google/model - garden/gemma3 [terms]: https://ai.google.dev/gemma/terms [safety - policies]: https://ai.google/static/documents/ai - responsibility - update - published - february - 2025.pdf [prohibited - use]: https://ai.google.dev/gemma/prohibited_use_policy [tpu]: https://cloud.google.com/tpu/docs/intro - to - tpu [sustainability]: https://sustainability.google/operating - sustainably/ [jax]: https://github.com/jax - ml/jax [ml - pathways]: https://blog.google/technology/ai/introducing - pathways - next - generation - ai - architecture/ [sustainability]: https://sustainability.google/operating - sustainably/ [gemini - 2 - paper]: https://arxiv.org/abs/2312.11805 [hellaswag]: https://arxiv.org/abs/1905.07830 [boolq]: https://arxiv.org/abs/1905.10044 [piqa]: https://arxiv.org/abs/1911.11641 [socialiqa]: https://arxiv.org/abs/1904.09728 [triviaqa]: https://arxiv.org/abs/1705.03551 [naturalq]: https://github.com/google - research - datasets/natural - questions [arc]: https://arxiv.org/abs/1911.01547 [winogrande]: https://arxiv.org/abs/1907.10641 [bbh]: https://paperswithcode.com/dataset/bbh [drop]: https://arxiv.org/abs/1903.00161 [mmlu]: https://arxiv.org/abs/2009.03300 [agieval]: https://arxiv.org/abs/2304.06364 [math]: https://arxiv.org/abs/2103.03874 [gsm8k]: https://arxiv.org/abs/2110.14168 [gpqa]: https://arxiv.org/abs/2311.12022 [mbpp]: https://arxiv.org/abs/2108.07732 [humaneval]: https://arxiv.org/abs/2107.03374 [mgsm]: https://arxiv.org/abs/2210.03057 [flores]: https://arxiv.org/abs/2106.03193 [xquad]: https://arxiv.org/abs/1910.11856v3 [global - mmlu - lite]: https://huggingface.co/datasets/CohereForAI/Global - MMLU - Lite [wmt24pp]: https://arxiv.org/abs/2502.12404v1 [eclektic]: https://arxiv.org/abs/2502.21228 [indicgenbench]: https://arxiv.org/abs/2404.16816 [coco - cap]: https://cocodataset.org/#home [docvqa]: https://www.docvqa.org/ [info - vqa]: https://arxiv.org/abs/2104.12756 [mmmu]: https://arxiv.org/abs/2311.16502 [textvqa]: https://textvqa.org/ [realworldqa]: https://paperswithcode.com/dataset/realworldqa [remi]: https://arxiv.org/html/2406.09175v1 [ai2d]: https://allenai.org/data/diagrams [chartqa]: https://arxiv.org/abs/2203.10244 [vqav2]: https://visualqa.org/index.html [blinkvqa]: https://arxiv.org/abs/2404.12390 [okvqa]: https://okvqa.allenai.org/ [tallyqa]: https://arxiv.org/abs/1810.12440 [ss - vqa]: https://arxiv.org/abs/1908.02660 [countbenchqa]: https://github.com/google - research/big_vision/blob/main/big_vision/datasets/countbenchqa/









