2024年必定是大语言模型争夺的元年,自从ChatGPT发布以来,很多AI大厂开始发力进军LLM大语言模型。虽然有些大语言模型也早早的发布,但是效果并不理想。且闭源的ChatGPT一直让大家无法去学习核心技术与超越。随着,让很多人眼前一亮。
而虽然使用比较简单,但毕竟是一个闭源的大模型。现在为了占据开源市场,Google发布了开源LLM大语言模型Gemma,其性能在多个数据集上超越LIama-2大模型。
Gemma是Google开源的第一个大语言模型,其有了Gemini大模型的经验,开源的Gemma大语言模型,其性能在很多数据集上面远远超越了LIama-2大模型。Gemma采用了Gemini 模型相同的研究和技术。 除了模型权重之外,Google还发布了工具来支持开发人员创新、使用 Gemma 模型。
Gemma模型发布了两种尺寸的模型权重:Gemma 2B 和 Gemma 7B。 每个尺寸都发布了经过预训练和指令微调的变体模型。新的 Responsible Generative AI 工具包为使用 Gemma 创建更安全的 AI 应用程序提供了详细的指导和使用工具。通过原生 Keras 3.0 提供跨所有主要框架的推理和监督微调 (SFT) :JAX、PyTorch 和 TensorFlow都可以使用此模型。最重要的是使用相关条款允许所有组织(无论规模大小)进行商业使用。
首次使用 Gemma 之前,必须通过 Kaggle 请求访问模型。在此过程中,必须使用 Kaggle 帐号来接受 Gemma 使用政策和许可条款。首先在kaggle上注册一个账号,注册完成后,右下方默认有一个Gemma大模型的使用说明,直接点击使用此模型即可。
进入Gemma大模型,点击右边的Request Access来接受模型的一些使用条款。
这里条款就可以不用看了,直接拉到网页最后,勾选同意使用即可,然后Gemma模型界面就可以看到你可以使用此模型了。
然后点击自己的头像,选择setting,就可以看到API的使用了,点击创建一个token,网页会自动下载一个json文件,里面是自己的用户名称与key。这里这个json文件是后期编程需要使用的。
得到API key后,输入如下代码,设置自己的用户名称与API key,安装相关的第三方库,就可以愉快的使用Gemma大语言模型了。
import osos.environ["KAGGLE_USERNAME"] = 'powersly'os.environ["KAGGLE_KEY"] = '93af227a2c5ac4e'!pip install -q -U keras-nlp!pip install -q -U keras>=3import kerasimport keras_nlpos.environ["KERAS_BACKEND"] = "jax" # Or "tensorflow" or "torch".gemma_lm = keras_nlp.models.GemmaCausalLM.from_preset("gemma_2b_en")第九行代码会自动下载相关的预训练模型,模型比较大,内存需要至少16g以上才能运行此大模型。等模型相关文件下载完成后,我们可以打印一下此模型的相关参数与设计。可以看到模型的参数与相关的模型设计。
gemma_lm.summary()Preprocessor: "gemma_causal_lm_preprocessor"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓┃ Tokenizer (type) ┃ Vocab # ┃┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩│ gemma_tokenizer (GemmaTokenizer) │ 256,000 │└────────────────────────────────────────────────────┴─────────────────────────────────────────────────────┘Model: "gemma_causal_lm"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓┃ Layer (type) ┃ Output Shape ┃ Param # ┃ Connected to ┃┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩│ padding_mask (InputLayer) │ (None, None) │ 0 │ - │├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤│ token_ids (InputLayer) │ (None, None) │ 0 │ - │├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤│ gemma_backbone │ (None, None, 2048) │ 2,506,172,416 │ padding_mask[0][0], ││ (GemmaBackbone) │ │ │ token_ids[0][0] │├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤│ token_embedding │ (None, None, 256000) │ 524,288,000 │ gemma_backbone[0][0] ││ (ReversibleEmbedding) │ │ │ │└───────────────────────────────┴───────────────────────────┴─────────────────┴────────────────────────────┘ Total params: 2,506,172,416 (9.34 GB) Trainable params: 2,506,172,416 (9.34 GB) Non-trainable params: 0 (0.00 B)等模型搭建完成,就可以愉快的使用此模型了。这里有2个参数,第一个是需要提问的问题,第二个是最大的输出长度。
gemma_lm.generate("What is the meaning of life?", max_length=256)What is the meaning of life?The question is one of the most important questions in the world.It’s the question that has been asked by philosophers, theologians, and scientists for centuries.And it’s the question that has been asked by people who are looking for answers to their own lives模型预训练模型已经发布到hugging face上,也可以直接使用transformer相关的库来使用Gemma大模型。
gemma_lm.generate("How does the brain work?", max_length=256)How does the brain work?The brain is the most complex organ in the human body. It is responsible for controlling all of the body’s functions, including breathing, heart rate, digestion, and more. The brain is also responsible for thinking, feeling, and making decisions.The brain is made up除了一次输入一个问题外,模型还支持同时输入多个问题,让模型同时可以回答多个问题。
gemma_lm.generate( ["What is the meaning of life?", "How does the brain work?"], max_length=256)['What is the meaning of life?\n\nThe question is one of the most important questions in the world.\n\nIt’s the question that has been asked by philosophers, theologians, and scientists for centuries.\n\nAnd it’s the question that has been asked by people who are looking for answers to their own lives', 'How does the brain work?\n\nThe brain is the most complex organ in the human body. It is responsible for controlling all of the body’s functions, including breathing, heart rate, digestion, and more. The brain is also responsible for thinking, feeling, and making decisions.\n\nThe brain is made up']开源大语言模型层出不穷,ChatGPT又该如何应对?
https://ai.google.dev/gemma/docs/get_startedhttps://ai.google.dev/gemma/docs/setup?hl=zh-cnhttps://www.kaggle.com/https://huggingface.co/googlehttps://blog.google/technology/developers/gemma-open-models/