尝试在手机上运行google 最新开源的gpt模型 gemma

Gemma介绍

Gemma简介

Gemma是谷歌于2024年2月21日发布的一系列轻量级、最先进的开放语言模型,使用了与创建Gemini模型相同的研究和技术。由Google DeepMind和Google其他团队共同开发。

Gemma提供两种尺寸的模型权重:2B和7B。每种尺寸都带有经过预训练(pre-trained)和经过指令调制(instruction-tuned)的变体。旨在为开发人员和研究者提供一个"轻量级、最先进的开源模型系列"Gemma提供了2B和7B两种不同规模的版本,每种都包含了预训练基础版本和经过指令优化的版本,并且无需数据量化处理,拥有高达8K tokens的处理能力。

  • 预训练模型可以用于各种自然语言处理任务,例如文本生成、翻译、问答和摘要。
  • 指令调制模型经过微调,可以执行特定任务,例如编写代码、撰写不同类型的创意内容、回答开放式问题等。

Gemma模型可以在您的笔记本电脑、工作站或Google Cloud上运行,并可轻松部署到Vertex AI和Google Kubernetes Engine(GKE)。

Gemma优势

Gemma具有以下优势:

  • 性能领先:Gemma在多个基准测试中都取得了最先进的成果,都优于Meta的Llama 2。
  • 易于使用:Gemma提供简单易用的API,可轻松集成到您的应用程序中。
  • 可扩展性:Gemma可以根据您的需要进行扩展,以满足各种规模的需求。
  • 开放性:Gemma是开源的,您可以自由使用和修改。
  • 模型较小:尽管其参数数量较少,但在关键基准测试中表现出色,并且超过了一些更大的模型。
  • *适用范围广:拥有独特的运行环境,可以在各种类型的设备上工作,包括笔记本电脑、台式机、物联网设备、移动设备以及云端平台等。
  • 与Hugging Face平台无缝集成:可以让AIGC爱好者更好的去使用。

Gemma应用

Gemma可以应用于各种自然语言处理任务,包括:

  • 文本生成
  • 翻译
  • 问答
  • 摘要
  • 代码生成
  • 撰写创意内容
  • 回答开放式问题

总结

Gemma是谷歌发布的一系列轻量级、最先进的开放语言模型,具有性能领先、易于使用、可扩展性和开放性等优势。Gemma可以应用于各种自然语言处理任务,具有广阔的应用前景。

以下是一些Gemma的应用案例:

  • 新闻写作:Gemma可以用于自动生成新闻报道,例如体育比赛的赛况报道、公司财报的分析报道等。
  • 产品描述生成:Gemma可以用于自动生成产品描述,例如电商网站上的商品详情页。
  • 聊天机器人:Gemma可以用于构建聊天机器人,为用户提供个性化的服务。
  • 教育:Gemma可以用于开发教育应用程序,例如帮助学生学习语言或编写代码。

测试环境

  • 硬件环境
    • 小米 11 ultra
    • rk3588 测试板
  • 软件环境
    • 小米11 android 13
    • rk3588 android 13

环境准备

  • 安装最新版 android studio,下载android sdk 需要包含ndk-bundle
    *下载gemma.cpp
  • 设置ANDROID_NDK 路径

模型下载准备

available on kaggle

我下载的是2b-it-sfp模型,选择gemma.cpp可运行版本模型

编译

复制代码
    git clone --recursive https://github.com/google/gemma.cpp
    cd gemma.cpp
    cmake -G Ninja -Bbuild_ninja_arm64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=android-21 -DANDROID_ARM_NEON=ON -DCMAKE_INSTALL_PREFIX=`pwd`/build_ninja_arm64/android_install -DHWY_ENABLE_TESTS=OFF .
 cmake --build build_ninja_arm64

拷贝到设备运行

  • 用usb链接计算机,或者使用无线链接到手机

  • 列出设备

    adb devices

    List of devices attached
    172.16.0.89:5555 device

  • 拷贝执行程序和模型

    复制代码
      # 拷贝执行程序
      adb push ./build_ninja_arm64/gemma /data/local/tmp 
      # 拷贝库
      adb push build_ninja_arm64/3rdparty/sentencepiece/src/libsentencepiece.so /data/local/tmp
      # 先解压再拷贝模型
      tar -xvf gemma_model_2b_cxx_sfp.tar.gz
      adb push gemma_model_2b_cxx_sfp/2b-it-sfp.sbs /data/local/tmp
      adb push gemma_model_2b_cxx_sfp/tokenizer.spm /data/local/tmp
  • 运行

    复制代码
      export LD_LIBRARY_PATH=/data/local/tmp/
      ./gemma --tokenizer tokenizer.spm --compressed_weights ./2b-it-sfp.sbs --model 2b-it
相关推荐
FIT2CLOUD飞致云10 分钟前
支持IP证书签发、数据库TCP代理,1Panel v2.0.16版本正式发布
linux·运维·服务器·开源·1panel·ip证书
HelloGitHub19 分钟前
《HelloGitHub》第 117 期
开源·github
残 风11 小时前
pg兼容mysql框架之语法解析层(openHalo开源项目解析)
数据库·mysql·开源
一棵开花的树,枝芽无限靠近你12 小时前
【face-api.js】1️⃣基于Tensorflow.js的人脸识别项目开源项目
javascript·开源·tensorflow·face-api.js
百***074512 小时前
MiMo-V2-Flash深度拆解:国产开源大模型的技术突破与落地实践
开源
百***787516 小时前
小米MiMo-V2-Flash深度解析:国产开源大模型标杆与海外AI接入方案
人工智能·开源
lakernote17 小时前
EasyPostman:开源免费的 Postman 替代方案,完美支持国产化操作系统
开源·lua·postman
skywalk816317 小时前
Synapse - 基于结构化冲突的智能思想碰撞小程序
开源·agent
美洽技术18 小时前
开源vs商业客服系统:5大隐性成本对比
开源
子榆.21 小时前
Flutter 与开源鸿蒙(OpenHarmony)分布式能力实战:基于软总线实现跨设备协同
flutter·开源·harmonyos