Google扩充Gemma开源家族 推出CodeGemma 和 RecurrentGemma模型

Google发布Gemma 系列的新成员,这是一系列针对开发者和研究者设计的轻量级、最先进的开放模型,建立在创造 Gemini 模型相同的研究和技术基础之上。

新推出的模型包括 CodeGemma 和 RecurrentGemma,旨在为机器学习(ML)开发者提供更多负责任创新的可能性。

CodeGemma

CodeGemma,包括7B预训练(PT)和指令调优(IT)变体,以及专为延迟敏感环境设计的2B状态最先进的代码完成模型。

模型架构: CodeGemma模型基于Google DeepMind的Gemma模型家族,继承了其架构和预训练方法。CodeGemma模型通过在超过5000亿个主要由代码组成的token上进行进一步训练,加深了对代码和自然语言处理的理解和生成能力。这些模型使用与Gemma相同的架构,但针对代码生成和理解进行了优化和调整。

CodeGemma 与其他类似模型在单行和多行代码完成任务方面的性能比较

主要能力:

作用: CodeGemma 主要用于帮助开发者和企业通过自动化编码任务来提高编程效率。它的代码完成和生成能力可以显著减少编码过程中的手工工作量,加快开发速度,同时还能帮助减少错误和提高代码质量。

技术报告:https://storage.googleapis.com/deepmind-media/gemma/codegemma_report.pdf

快速入门:https://ai.google.dev/gemma/docs/codegemma/keras_quickstart

RecurrentGemma

功能特点:

  • 降低内存使用: RecurrentGemma 通过使用循环神经网络和局部注意力机制,优化了内存效率,允许在内存有限的设备上生成更长的样本。
  • 提高吞吐量: 由于内存使用的减少,RecurrentGemma 能够以更高的批处理大小执行推理,生成每秒更多的令牌,尤其是在生成长序列时。
  • 推动研究创新: RecurrentGemma 作为一个非 Transformer 模型,展示了高性能的达成,凸显了深度学习研究的进步。

RecurrentGemma 不受序列长度的影响保持采样速度,而 Gemma 等基于变换器的模型则会随着序列变长而变慢

作用: RecurrentGemma 主要针对研究人员,提供一个高效、快速推理的模型架构,特别适合于需要大规模生成长文本序列的研究实验。它的独特架构使得在资源受限的环境下进行大规模文本生成成为可能,同时也为深度学习领域的研究提供了新的方向和灵感。

技术报告:https://arxiv.org/abs/2402.19427

notebook

共有兼容性

CodeGemma 和 RecurrentGemma 都是使用 JAX 构建的,且与 JAX、PyTorch、Hugging Face Transformers 和 Gemma.cpp 兼容。这一兼容性允许这些模型在不同的软件环境中进行本地实验和成本效益高的部署,支持多样化的硬件平台,包括笔记本电脑、台式机、NVIDIA GPU 和 Google Cloud TPU,为开发者提供了广泛的应用场景和部署选项。

CodeGemma 的额外兼容性

  • 更广泛的框架支持:除了上述共有兼容性外,CodeGemma 还兼容 Keras、NVIDIA NeMo、TensorRT-LLM、Optimum-NVIDIA、MediaPipe,并且在 Vertex AI 上可用。这扩展了 CodeGemma 在不同开发环境下的应用可能性,包括更高效的模型部署和优化,以及在多种平台上实现高级的机器学习和深度学习任务。

RecurrentGemma 的即将到来的支持

  • 即将全面支持:RecurrentGemma 预计将在未来几周内支持所有上述产品,这将为研究人员和开发者提供更多的灵活性和选择,使其能够利用 RecurrentGemma 在更广泛的技术栈和硬件环境中进行创新和实验。

Gemma1.1

Google同时还更新了其开源Gemma模型,发布了Gemma1.1。

新模型在多个方面都有所提升,包括更好的质量、更精确的指令遵循、事实核查、编程能力和逻辑推理,尤其是“7B”模型在这些方面的表现更加出色。

这些改进还包括修复了一个使得模型有时无法在对话中途改变主题时给出回答的bug,以及减少了回答开头使用“Sure,”的频率。尽管使用的训练数据与先前版本相同,但是他们更换了使用的强化学习(RL)算法,希望能够在未来提供更多细节。

为了避免模型回答过于冗长,即使这可能会影响到基准测试的性能,他们还是在训练中对模型施加了冗长惩罚。Gemma模型有倾向于生成列表形式的输出,但如果用户更喜欢段落形式的回答,可以通过指定的提示来引导模型。

详细内容:https://www.kaggle.com/models/google/gemma

模型下载:

https://huggingface.co/google/gemma-1.1-2b-it

https://huggingface.co/google/gemma-1.1-7b-it

退出移动版