LLMs之Gemma:Gemma(Google开发的新一代领先的开源模型)的简介、安装、使用方法之详细攻略

news2024/11/20 4:30:27

LLMs之Gemma:Gemma(Google开发的新一代领先的开源模型)的简介、安装、使用方法之详细攻略

导读:此文章介绍了Google推出的新一代开源模型Gemma,旨在帮助研发人员负责任地开发AI。

背景

>> Google长期致力于为开发者和研究人员提供各种开放模型,如Transformers、TensorFlow、BERT、T5等,以推动AI的负责任开发

核心要点

>> Gemma是基于同样技术与架构研发的Gemini模型开发出来的轻量级开放模型家族,它是一系列体积较小但性能领先的开源模型。

>> Gemma有2B和7B两种规模,均搭载了预训练和指令调优版本,可以直接在笔记本电脑上运行。与其它同类开源模型相比,Gemma模型规模相对较小但性能表现更好。

>> 同时推出"可责任生成AI工具包",提供安全开发指南和辅助工具,以帮助研发人员安全开发应用。

>> Gemma支持各主流框架进行推理和监督调优,如JAX、PyTorch、TensorFlow Keras,可以在不同设备与平台上应用。

>> 针对开发者提供多设备兼容性,如笔记本、服务器、 IoT、手机以及云平台。

>> 与NVIDIA合作,使Gemma在GPU上实现最优性能。同时支持Google Cloud平台。

>> Google提供300美元Google Cloud试用证和高达50万美元研究资助,支持开发者研究。

优势

>>比同规模模型在多项基准上表现更优。

>>安全性能出色,预训练模型过滤敏感信息,指令训练强调責任感。

>>可在开发者本地设备上运行,极低成本。

>>生态系统完善,支持多框架和设备,助推AI成果在多个场景的应用。

总之,Gemma旨在通过提供强大且低成本的开放模型,推动负责任的AI研发和应用。Gemma模型系列体现了谷歌长期开源AI领域贡献的精神,它旨在通过提供小体积高性能的开源模型,结合提供的安全工具,帮助研发人员以更负责任的方式开发应用AI能力。

目录

Gemma的简介

1、关键细节

2、尺寸上的领先性能

显示Gemma在常见基准测试中的性能,与Llama-2 7B和13B进行比较的图表

3、负责的设计

4、跨框架、工具和硬件的优化

5、用于研究和开发的免费信用额

Gemma的安装

0、系统要求

1、安装

2、下载模型

3、运行单元测试

4、示例

Gemma的使用方法

1、Colab笔记本教程:


Gemma的简介

2024年2月21日,Gemma是由Google DeepMind推出的一系列开源的大型语言模型(LLM),基于Gemini研究和技术。该存储库包含一个基于Flax和JAX的推理实现和示例。

Gemma是使用与Gemini模型相同的研究和技术构建的,旨在推动负责任的人工智能发展。同时,Google长期以来一直致力于为开放社区贡献创新,例如Transformers、TensorFlow、BERT、T5、JAX、AlphaFold和AlphaCode。今天,Google向开发者和研究人员开源了新一代开放模型,以帮助他们负责任地构建人工智能。从今天开始,Gemma全球可用。

Gemma是一系列轻量级、领先的开放模型,它们是由Google DeepMind和Google其他团队开发的,受到了Gemini的启发,名称反映了拉丁语"gemma"的含义,即"宝石"。除了模型权重外,还发布了支持开发者创新、促进合作并引导负责任使用Gemma模型的工具。

官网地址:https://ai.google.dev/gemma

GitHub地址:GitHub - google-deepmind/gemma: Open weights LLM from Google DeepMind.
官方文章地址:Gemma: Google introduces new state-of-the-art open models

1、关键细节

>> Google发布了两个尺寸的模型权重:Gemma 2B和Gemma 7B。每个尺寸都发布了经过预训练和指导调整的变体。

>> 新的负责任生成AI工具包提供了使用Gemma创建更安全人工智能应用程序的指导和基本工具。

>> 我们为推断和监督微调(SFT)提供了工具链,涵盖所有主要框架:JAX、PyTorch和TensorFlow通过本地Keras 3.0。

>> 准备就绪的Colab和Kaggle笔记本,以及与Hugging Face、MaxText、NVIDIA NeMo和TensorRT-LLM等流行工具的集成,使得开始使用Gemma变得轻而易举。

>> 经过预训练和指导调整的Gemma模型可以在您的笔记本电脑、工作站或Google Cloud上运行,并可轻松部署到Vertex AI和Google Kubernetes Engine(GKE)上。

>>  跨多个AI硬件平台的优化确保了行业领先的性能,包括NVIDIA GPU和Google Cloud TPU。 使用条款允许所有组织在尺寸上不受限制地进行负责任的商业使用和分发。

2、尺寸上的领先性能

Gemma模型与今天广泛可用的我们最大、最功能强大的AI模型Gemini共享技术和基础架构组件。这使得与其他开放模型相比,Gemma 2B和7B在其尺寸上实现了最佳性能。并且Gemma模型能够直接在开发者的笔记本电脑或台式电脑上运行。值得注意的是,Gemma在关键基准测试上明显优于更大的模型,同时符合我们对安全和负责任输出的严格标准。有关性能、数据集组成和建模方法的详细信息,请参阅技术报告。

显示Gemma在常见基准测试中的性能,与Llama-2 7B和13B进行比较的图表

3、负责的设计

Gemma是根据我们的AI原则设计的。作为使Gemma预训练模型安全可靠的一部分,我们使用自动化技术从训练集中过滤出某些个人信息和其他敏感数据。此外,我们使用了广泛的微调和人类反馈的强化学习(RLHF),以使我们的指导调整模型与负责任的行为保持一致。为了了解和减少Gemma模型的风险概况,我们进行了强大的评估,包括手动红队测试、自动对抗测试以及对模型进行危险活动能力的评估。这些评估在我们的模型卡中概述。

我们还将一个新的负责任生成AI工具包与Gemma一起发布,以帮助开发者和研究人员优先考虑构建安全和负责任的人工智能应用程序。该工具包包括:

>> 安全分类:我们提供了一种新颖的方法,用于使用最少的示例构建健壮的安全分类器。

>> 调试:模型调试工具可帮助您调查Gemma的行为并解决潜在问题。

>> 指导:您可以根据Google在开发和部署大型语言模型方面的经验,获取模型构建者的最佳实践。

4、跨框架、工具和硬件的优化

您可以根据自己的数据微调Gemma模型,以适应特定的应用需求,例如摘要或检索增强生成(RAG)。Gemma支持各种工具和系统:

>> 多框架工具:使用多框架Keras 3.0、本地PyTorch、JAX和Hugging Face Transformers的推理和微调的参考实现,带上您喜爱的框架。

>> 跨设备兼容性:Gemma模型可以在各种流行设备类型上运行,包括笔记本电脑、台式电脑、物联网、移动和云,实现广泛可访问的人工智能功能。

>> 尖端硬件平台:我们与NVIDIA合作,优化Gemma以适用于NVIDIA GPU,从数据中心到云端再到本地RTX AI个人电脑,确保行业领先的性能和与尖端技术的集成。

>> 为Google Cloud优化:Vertex AI提供了广泛的MLOps工具集,具有一系列调优选项,并使用内置的推理优化进行一键部署。使用完全托管的Vertex AI工具或自管理的GKE,包括从任一平台的成本效益高的基础设施部署。

5、用于研究和开发的免费信用额

Gemma是为驱动AI创新的开放开发者和研究人员社区构建的。您可以通过Kaggle的免费访问、Colab笔记本的免费套餐以及首次使用Google Cloud用户的300美元信用额来开始使用Gemma。研究人员还可以申请高达50万美元的Google Cloud信用额来加速他们的项目。

Gemma的安装

0、系统要求

Gemma可以在CPU、GPU和TPU上运行。对于GPU,我们建议在2B检查点上使用8GB+ GPU RAM,在7B检查点上使用24GB+ GPU RAM。

1、安装

要安装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

2、下载模型

模型检查点可通过Kaggle上的http://kaggle.com/models/google/gemma获取。选择其中一个Flax模型变体,单击⤓按钮下载模型存档,然后将内容提取到本地目录。存档包含模型权重和标记器,例如2b Flax变体包含:

2b/ # 包含模型权重的目录

tokenizer.model # 标记器

3、运行单元测试

要运行单元测试,请安装可选的[test]依赖项(例如,在源树的根目录下使用pip install -e .[test]),然后:

pytest .

请注意,默认情况下会跳过sampler_test.py中的测试,因为Gemma源代码中未包含标记器。要运行这些测试,请按照上述说明下载标记器,并在sampler_test.py中的_VOCAB常量中更新路径。

4、示例

要运行示例抽样脚本,请传递权重目录和标记器的路径:

python examples/sampling.py --
--path_checkpoint=/path/to/archive/contents/2b/
--path_tokenizer=/path/to/archive/contents/tokenizer.model

Gemma的使用方法

1、Colab笔记本教程:

colabs/sampling_tutorial.ipynb 包含一个带有抽样示例的Colab笔记本。

colabs/fine_tuning_tutorial.ipynb 包含一个简单的教程,介绍了如何对Gemma进行微调,例如将英语翻译成法语。

colabs/gsm8k_eval.ipynb 是一个带有参考GSM8K评估实现的Colab。

要运行这些笔记本,您需要下载权重和标记器的本地副本(参见上文),并将ckpt_path和vocab_path变量更新为相应的路径。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1466324.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于R语言地理加权回归、主成份分析、判别分析等空间异质性数据分析

在自然和社会科学领域有大量与地理或空间有关的数据,这一类数据一般具有严重的空间异质性,而通常的统计学方法并不能处理空间异质性,因而对此类型的数据无能为力。以地理加权回归为基础的一系列方法:经典地理加权回归,…

spring cloud stream rabbit 4.0示例

参考链接 疑问 这里配置生产者、消费者 每一个都需要在yml配置&#xff0c;看起来很复杂&#xff0c;不知道有没有简单的配置方法 pom 添加依赖 方式一 <!--cloud rabbitMq 依赖--><dependency><groupId>org.springframework.cloud</groupId><ar…

spring boot3登录开发-3(账密登录逻辑实现)

⛰️个人主页: 蒾酒 &#x1f525;系列专栏&#xff1a;《spring boot实战》 &#x1f30a;山高路远&#xff0c;行路漫漫&#xff0c;终有归途。 目录 前置条件 内容简介 用户登录逻辑实现 创建交互对象 1.创建用户登录DTO 2.创建用户登录VO 创建自定义登录业务异…

H12-821_45

45.如图所示,同一局域网中的四台路由器运行IS-IS,其中R1是DIS.则R2、R3、R4分别和R1建立邻接关系,R2、R3、R4之间不建立邻接关系。 A.正确 B.错误 答案&#xff1a;B 注释&#xff1a; 在广播链路上IS-IS路由器建立邻接关系和OSPF不同&#xff0c;所有IS-IS路由器之间都可以建…

Github 2024-02-23 开源项目日报 Top10

根据Github Trendings的统计&#xff0c;今日(2024-02-23统计)共有10个项目上榜。根据开发语言中项目的数量&#xff0c;汇总情况如下&#xff1a; 开发语言项目数量非开发语言项目4Python项目3TypeScript项目1HTML项目1Dart项目1Rust项目1 从零开始构建你喜爱的技术 创建周…

关于el-select值的回显问题 : 框内显示label值还是value值

<el-form-item label"状态" prop""><el-selectv-model"roleForm.state"class"m-2"size"large"style"width: 240px"placeholder"请选择状态"value-key"value"//value-key 与下面的ke…

基于SVM的功率分类,基于支持向量机SVM的功率分类识别,Libsvm工具箱详解

目录 支持向量机SVM的详细原理 SVM的定义 SVM理论 Libsvm工具箱详解 简介 参数说明 易错及常见问题 完整代码和数据下载链接:基于SVM的功率分类,基于支持向量机SVM的功率分类识别资源-CSDN文库 https://download.csdn.net/download/abc991835105/88862836 SVM应用实例, 基于…

RK3568平台开发系列讲解(Linux系统篇)SPI 客户端通信

🚀返回专栏总目录 文章目录 一、spi_transfer二、spi_message三、初始化沉淀、分享、成长,让自己和他人都能有所收获!😄 SPI I/O模型由一组队列消息组成。我们提交一个或多个struct spi_message结构时,这些结构以同步或异步方式处理完成。单个消息由一个或多个struct sp…

Swift Combine 使用调试器调试管道 从入门到精通二十六

Combine 系列 Swift Combine 从入门到精通一Swift Combine 发布者订阅者操作者 从入门到精通二Swift Combine 管道 从入门到精通三Swift Combine 发布者publisher的生命周期 从入门到精通四Swift Combine 操作符operations和Subjects发布者的生命周期 从入门到精通五Swift Com…

Linux的ACL权限以及特殊位和隐藏属性

前言&#xff1a; ACL是什么&#xff1f; ACL&#xff08;Access Control List&#xff09;是一种权限控制机制&#xff0c;用于在Linux系统中对文件和目录进行细粒度的访问控制。传统的Linux权限控制机制基于所有者、所属组和其他用户的三个权限类别&#xff08;读、写、执行…

今日arXiv最热NLP大模型论文:无需提示也能推理!Google DeepMind新研究揭示AI内在推理能力

在人工智能领域&#xff0c;大语言模型&#xff08;LLMs&#xff09;已经在各种复杂的推理基准测试中展现出了令人瞩目的性能。传统上&#xff0c;这些推理能力是通过精心设计的提示技术来激发的&#xff0c;例如少量示例提示&#xff08;few-shot prompting&#xff09;或零示…

开源的表单设计器拥有什么显著特点?

开源的表单设计器的特点是什么&#xff1f;广州流辰信息是专业研发低代码技术平台的服务商&#xff0c;可以为企业提供系统开发、数据治理、数据分析各环节技术和方案支撑。为了帮助大家了解开源的表单设计器的相关优势特点&#xff0c;小编将为大家做一个详细介绍。 什么是开源…

Java编程实战:构建医疗信息管理新平台

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

面试经典150题 -- 二叉树 (总结)

总的地址 : 面试经典 150 题 - 学习计划 - 力扣&#xff08;LeetCode&#xff09;全球极客挚爱的技术成长平台 104 . 二叉树的最大深度 104 . 二叉树的最大深度 递归 : 直接用递归访问 &#xff0c; 访问左孩子 和 右孩子 &#xff0c; 如果 存在 &#xff0c; 深度就1 &…

SpringBoot-2.7.6基于SLF4J日志门面的日志框架切换

SpringBoot 没有强制性的日志记录依赖项,但 Commons Logging API 除外,它通常由 Spring Framework 的模块提供。 要使用 Logback,您需要将其包含在类路径中。 推荐的方法是您只需要通过启动器,这都取决于 . 对于 Web 应用程序 ,因为它可传递地依赖于日志记录启动器。 如果…

【C语言】指针变量未初始化

我们知道&#xff1a;全局变量未赋初值&#xff0c;编译器会直接赋值为0&#xff1b;局部变量如果未赋初值&#xff0c;则会维持上一状态保存在该地址上的值&#xff0c;这个值是随机的。把这个值赋值给局部变量是没有意义的。 但是指针变量是如何解决不赋初值&#xff1f; 指…

linux高级作业

作业需求 1、openEuler 二进制方式安装MySQL 8.0.x。 二、备份数据库 3.备份数据库school到/backup目录 4.备份MySQL数据库为带删除表的格式&#xff0c;能够让该备份覆盖已有数据库而不需要手动删除原有数据库 5.直接将MySQL数据库压缩备份 第一题 1、openEuler 二进制方式…

XL6009是什么芯片?一文带你了解XL6009引脚说明、数据参数的解读

XL6009是一款高性能、高效率的降压升压转换器芯片。它可以将输入电压范围从3.5V至32V的电源转换为可调的输出电压范围从1.25V至35V。 XL6009引脚说明 引脚说明如下&#xff1a; VIN&#xff1a;输入电压引脚&#xff0c;接入供电电源的正极。GND&#xff1a;地引脚&#xff0…

ubuntu20.04 安装 matlab R2023b

ubuntu20.04 使用matlab R2023b 起因步骤问题问题1问题2问题3 起因 闲着没事&#xff0c;想在ubuntu上安装matlab。 步骤 这个博客写得很好&#xff0c;我就不赘述了&#xff1a;参考博客 。但有点不一样&#xff1a;我现在matlab官网上下载的linux版本不是iso镜像文件&…

稀疏计算、彩票假说、MoE、SparseGPT

稀疏计算可能是未来10年内最有潜力的深度学习方向之一&#xff0c;稀疏计算模拟了对人脑的观察&#xff0c;人脑在处理信息的时候只有少数神经元在活动&#xff0c;多数神经元是不工作的。而稀疏计算的基本思想是&#xff1a;在计算过程中&#xff0c;将一些不重要的参数设置为…