当前位置:   article > 正文

Keras深度学习实战:Gemma大模型本地部署与应用_gemma 如何训练

gemma 如何训练

gemma环境配置

gemma 依赖keras3.0及以上版本,keras_nlp和keras3.0的版本适配目前做的不是很完善。需要keras  3.0.5 

tensorflow                   2.15.0.post1

keras-nlp                    0.8.2

pyhon=3.10

可通过如下命令在linux下配置

  1. conda create -y -n gemma python=3.10
  2. pip install -U keras-nlp
  3. pip install -U keras

安装keras-nlp会导致keras版本回滚至2.15。应该如官方所述先安装keras-nlp在安装keras。本人不经常用tensorflow对此没有做深入探索在amd处理器的windos机器上安装有些问题还没深究。

目前发布的torch版本的gemma模型有些不稳定,在kaggle平台上测式keras版本的模型结果明显比torch版本的要稳定。而官方给出的例子:

  1. LLM = keras_nlp.models.GemmaCausalLM.from_preset('gemma_instruct_2b_en')
  2. LLM.generate("Keras is a", max_length=30)

是从kaggle下载权重参数,并完成模型的实例化,省去了中间过程。容易遇到网络问题。可以通过kaggle下载权重文件按照如下方式导入tokenizer权重文件实例化preprocessor。实例化backbone导入weight权重文件,创建LLM

  1. import keras
  2. import keras_nlp
  3. import json
  4. tokenizer = keras_nlp.models.GemmaTokenizer(
  5. proto="gemma_instruct_2b_en/2/assets/tokenizer/vocabulary.spm",
  6. )
  7. preprocessor = keras_nlp.models.GemmaCausalLMPreprocessor(
  8. tokenizer=tokenizer,
  9. sequence_length=128,
  10. )
  11. config_path = 'gemma_instruct_2b_en/2/config.json'
  12. with open(config_path) as config_file:
  13. config = json.load(config_file)
  14. cls = keras.saving.get_registered_object(config["registered_name"])
  15. config["config"] = {**config["config"], **{}}
  16. backbone = keras.saving.deserialize_keras_object(config)
  17. wp = 'gemma_instruct_2b_en/2/model.weights.h5'
  18. backbone.load_weights(wp)
  19. LLM = keras_nlp.models.GemmaCausalLM(backbone,preprocessor=preprocessor)
  20. LLM.compile(sampler=keras_nlp.samplers.BeamSampler(num_beams=2))
  21. LLM.generate("I want to say", max_length=30)
  22. res1 = LLM.generate(["pyhthon and julia","which is better in AI"],max_length=100)
  23. print(res1[0])
权重文件解压后的文件结构
kaggle权重文件
kaggle权重文件

 gemma在keras的实现由preprocessor和gemmabackbone两部分构成,由GemmaCausalLM继承至GenerativeTask。generate进行生成推理。本人对kera不是很熟悉,上述也是看了一些源码理解上可能有问题。如下是gemma 对python和Julia评价的一个例子

gemma模型​​​​​​输出结果
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号