Gemma 是 Google DeepMind 基於 Gemini 研究和技術的開放權重大型語言模型 (LLM) 系列。
此儲存庫包含基於 Flax 和 JAX 的推理實作和範例。
Gemma 技術報告(v1、v2)詳細介紹了模型的功能。
有關教程、其他 ML 框架中的參考實作等,請造訪 https://ai.google.dev/gemma。
要安裝 Gemma,您需要使用 Python 3.10 或更高版本。
為 CPU、GPU 或 TPU 安裝 JAX。請按照 JAX 網站上的說明進行操作。
跑步
python -m venv gemma-demo . gemma-demo/bin/activate pip install git+https://github.com/google-deepmind/gemma.git
模型檢查點可透過 Kaggle 取得:http://kaggle.com/models/google/gemma。選擇Flax模型變體之一,按一下 ⤓ 按鈕下載模型存檔,然後將內容解壓縮到本機目錄。檔案包含模型權重和分詞器,例如 2b Flax 變體包含:
2b/ # Directory containing model weights tokenizer.model # Tokenizer
若要執行單元測試,請安裝可選的[test]
依賴項(例如,從來源樹的根目錄使用pip install -e .[test]
),然後:
pytest .
請注意,預設情況下, sampler_test.py
中的測試會被跳過,因為沒有隨 Gemma 來源一起分發分詞器。要執行這些測試,請按照上述說明下載分詞器,並使用tokenizer.model
的路徑更新sampler_test.py
中的_VOCAB
常數。
若要執行範例採樣腳本,請將路徑傳遞給權重目錄和分詞器:
python examples/sampling.py --path_checkpoint=/path/to/archive/contents/2b/ --path_tokenizer=/path/to/archive/contents/tokenizer.model
還有幾個 Colab 筆記本教學:
colabs/sampling_tutorial.ipynb
包含帶有範例範例的 Colab 筆記本。
colabs/fine_tuning_tutorial.ipynb
包含一個 Colab,其中包含有關如何針對任務(例如英語到法語翻譯)微調 Gemma 的基本教程。
colabs/gsm8k_eval.ipynb
是一個具有參考 GSM8K eval 實作的 Colab。
要執行這些筆記本,您需要下載權重和分詞器的本機副本(請參閱上文),並使用對應的路徑更新ckpt_path
和vocab_path
變數。
Gemma 可以在 CPU、GPU 和 TPU 上運作。對於 GPU,我們建議在 GPU 上為 2B 檢查點使用 8GB+ RAM,為 7B 檢查點在 GPU 上使用 24GB+ RAM。
我們願意接受錯誤報告、拉取請求 (PR) 和其他貢獻。有關 PR 的詳細信息,請參閱 CONTRIBUTING.md。
版權所有 2024 DeepMind 技術有限公司
此程式碼根據 Apache 許可證 2.0 版(「許可證」)獲得許可;除非遵守許可證,否則您不得使用此文件。您可以從 http://www.apache.org/licenses/LICENSE-2.0 取得授權副本。
除非適用法律要求或書面同意,否則根據許可證分發的軟體將按「原樣」分發,不帶任何明示或暗示的保證或條件。請參閱許可證,了解許可證下管理權限和限制的特定語言。
這不是 Google 官方產品。