帮助文档 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
帮助文档 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 函数计算 FC 3.0
  4. 实践教程
  5. AI推理
  6. 基于函数计算低成本部署Google Gemma模型服务

基于函数计算低成本部署Google Gemma模型服务

  • AI推理
  • 发布于 2025-04-16
  • 0 次阅读
文档编辑
文档编辑

Google在2024年02月21日正式推出了首个开源模型族Gemma,并同时上架了2b和7b两个版本。您可以使用函数计算的GPU实例以及函数计算的闲置模式低成本快速部署Gemma模型服务。

前提条件

  • 已开通函数计算服务,详情请参见快速创建函数。

  • 已创建命名空间和镜像仓库,详情请参见创建命名空间和创建镜像仓库。

操作步骤

部署Gemma模型服务的过程中将产生部分费用,包括GPU资源使用、vCPU资源使用、内存资源使用、磁盘资源使用和公网出流量以及函数调用的费用。具体信息,请参见费用说明。

创建应用

  1. 下载Gemma模型权重。您可以选择从Hugging Face或ModelScope平台下载,本文以从ModelScope下载Gemma-2b-it模型为例,详情请参见Gemma-2b-it。

    重要

    如果您使用Git下载模型,请先安装Git扩展LFS后,执行git lfs install初始化Git LFS,然后再执行git clone进行下载。否则,由于模型过大,可能导致下载的模型不完整,无法正常使用Gemma服务。

  2. 创建Dockerfile文档和模型服务代码文件app.py。

    • Dockerfile

      FROM registry-vpc.cn-shanghai.aliyuncs.com/modelscope-repo/modelscope:fc-deploy-common-v17
      
      WORKDIR /usr/src/app
      
      COPY . .
      
      RUN pip install -U transformers
      
      CMD [ "python3", "-u", "/usr/src/app/app.py" ]
      
      EXPOSE 9000
    • app.py

      from flask import Flask, request
      from transformers import AutoTokenizer, AutoModelForCausalLM
      
      model_dir = '/usr/src/app/gemma-2b-it'
      
      app = Flask(__name__)
      
      tokenizer = AutoTokenizer.from_pretrained(model_dir)
      model = AutoModelForCausalLM.from_pretrained(model_dir, device_map="auto")
      
      @app.route('/invoke', methods=['POST'])
      def invoke():
          request_id = request.headers.get("x-fc-request-id", "")
          print("FC Invoke Start RequestId: " + request_id)
      
          text = request.get_data().decode("utf-8")
          print(text)
          input_ids = tokenizer(text, return_tensors="pt").to("cuda")
          outputs = model.generate(**input_ids, max_new_tokens=1000)
          response = tokenizer.decode(outputs[0])
          print("FC Invoke End RequestId: " + request_id)
          return str(response) + "\n"
      
      if __name__ == '__main__':
          app.run(debug=False, host='0.0.0.0', port=9000)

      关于函数计算支持的所有HTTP Header,请参见函数计算公共请求头。

    完成后代码目录结构如下所示。

    .
    |-- app.py
    |-- Dockerfile
    `-- gemma-2b-it
        |-- config.json
        |-- generation_config.json
        |-- model-00001-of-00002.safetensors
        |-- model-00002-of-00002.safetensors
        |-- model.safetensors.index.json
        |-- README.md
        |-- special_tokens_map.json
        |-- tokenizer_config.json
        |-- tokenizer.json
        `-- tokenizer.model
    
    1 directory, 12 files
    
  3. 依次执行以下命令构建并推送镜像。

    IMAGE_NAME=registry.cn-shanghai.aliyuncs.com/{NAMESPACE}/{REPO}:gemma-2b-it
    docker login --username=mu****@test.aliyunid.com registry.cn-shanghai.aliyuncs.com 
    docker build -f Dockerfile -t $IMAGE_NAME . && docker push $IMAGE_NAME

    以上命令中的{NAMESPACE}和{REPO}需替换为您已创建的命名空间名称和镜像仓库名称。

  4. 创建函数。

    1. 登录函数计算控制台,在左侧导航栏,选择函数。

    2. 在顶部菜单栏,选择地域,然后在函数页面单击创建函数。

    3. 在创建函数页面,选择使用容器镜像方式,设置以下配置项,然后单击创建。

      重点配置项说明如下,其余配置项选择默认值即可。

      配置项

      说明

      镜像配置

      镜像选择方式

      选择使用 ACR 中的镜像。

      容器镜像

      单击下方的选择 ACR 中的镜像,然后在选择容器镜像面板,选择步骤3推送的镜像。

      监听端口

      设置为9000。

      高级配置

      是否使用GPU

      选择使用GPU。

      GPU 卡型

      选择Tesla 系列 T4 卡型。

      规格方案

      • GPU显存规格设置为16 GB。

      • vCPU 规格设置为2核。

      • 内存规格设置为16 GB。

  5. 待上一步创建的函数的状态变更为函数已激活时,您可以为其开启闲置预留模式。

    image

    1. 在函数详情页面选择配置页签,在左侧导航栏,选择预留实例,然后单击创建预留实例数策略。

    2. 在创建预留实例数策略面板中,版本或别名选择LATEST,预留实例数设置为1,闲置模式选择启用,然后单击确定。

      image

      待当前预留实例数变更为1,且您可以看到已开启闲置模式的字样,表示GPU闲置预留实例已成功启动。

      image

使用Google Gemma服务

  1. 在函数详情页面,选择配置页签,然后在左侧导航栏,选择触发器,在触发器页面获取触发器的URL。

    image

  2. 执行以下命令调用函数。

    curl -X POST -d "who are you" https://func-i****-****.cn-shanghai.fcapp.run/invoke

    预期输出如下。

    <bos>who are you?
    
    I am a large language model, trained by Google. I am a conversational AI that can understand and generate human language, and I am able to communicate and provide information in a comprehensive and informative way.
    
    What can I do for you today?<eos>
  3. 在函数详情页面,选择实例页签,在实例页面单击目标实例ID右侧操作列的实例指标,在实例详情页面的实例指标页签查看指标情况。

    您可以看到在没有函数调用发生时,该实例的显存使用量会降至零。而当有新的函数调用请求到来时,函数计算平台会迅速恢复并分配所需的显存资源。从而达到降本效果。

    说明

    查看指标的实例,需要先启用日志功能,具体请参见配置日志。

    image

函数调用结束后,函数计算会自动将GPU实例置为闲置模式,您无需手动操作。在下次调用到来之前,函数计算将该实例唤醒,置为活跃模式进行服务。

删除资源

如您暂时不需要使用此函数,请及时删除对应资源。如果您需要长期使用此应用,请忽略此步骤。

  1. 返回函数计算控制台概览页面,在左侧导航栏,单击函数。

  2. 单击目标函数右侧操作列的更多 > 删除,在弹出的对话框中,勾选我确认要删除以上资源,并同时删除此函数。我已知晓这些资源删除后将无法找回,然后单击删除函数。

费用说明

套餐领取

为了方便您体验本文提供的应用,首次开通用户可以领取试用套餐并开通函数计算服务。更多信息,请参见试用额度。试用套餐不支持抵扣磁盘使用量的费用,超出512 MB的磁盘使用量将按量付费。

资源消耗评估

函数计算配置vCPU为2核、内存为16 GB、GPU显存为16 GB、磁盘大小为512 MB。1个闲置预留实例使用1小时,通过多次与Google Gemma进行对话,1小时内累计的活跃函数时间为20分钟。产生的资源计费可参考以下表格内容:

计费项

活跃时间(20分钟)计费

闲置时间(40分钟)计费

vCPU资源

0.00009元/vCPU*秒 * (2 vCPU * 1200秒)=0.216元

0元

内存资源

0.000009元/GB*秒 * (16 GB * 1200秒)=0.1728元

0.000009元/GB*秒 * (16GB * 2400秒)=0.3456元

GPU资源

0.00011元/GB*秒 * (16 GB * 1200秒)=2.112元

0.000009元/GB*秒 * (16GB * 2400秒)=0.3456元

更多关于函数计算的计费信息,请参见计费概述。

相关文档

  • 关于Google发布的开源模型族Gemma的更多详情,请参见gemma-open-models。

  • 关于GPU实例闲置模式计费详情以及计费示例,请参见计费概述。

相关文章

一键部署QwQ-32B推理模型,2种方式简单、快速体验 2025-04-16 14:38

QwQ-32B推理模型正式发布并开源,凭借其卓越的性能和广泛的应用场景,迅速在全球范围内获得了极高的关注度。基于阿里云函数计算 FC提供算力,Serverless+ AI 云原生应用开发平台 CAP现已提供模型服务、应用模板两种部署方式辅助您部

0代码,2种方式,一键部署DeepSeek系列模型 2025-04-16 14:38

DeepSeek凭借其卓越的性能和广泛的应用场景,迅速在全球范围内获得了极高的关注度和广泛的用户基础。DeepSeek-R1-Distill是使用DeepSeek-R1生成的样本对开源模型进行蒸馏得到的小模型,拥有更小参数规模,推理成本更低,基准测试同样表现出色。云原生应

通过函数计算部署Flux文本生成图像模型 2025-04-16 14:38

本实践教程展示了如何通过函数计算部署Flux模型,并通过ComfyUI界面体验Flux的AIGC创作能力。Flux是由Black Forest Labs推出的文本生成图像模型,该模型以其高清晰度图像生成和优秀的提示词遵循能力而受到关注。ComfyUI 是一个为Stable Diffusion模型设计

基于函数计算部署GPT-Sovits语音生成模型实现AI克隆声音 2025-04-16 14:38

GPT-Sovits是一个热门的文本生成语音的大模型,只需要少量样本的声音数据源,就可以实现高度相似的仿真效果。通过函数计算部署GPT-Sovits模型,您无需关心GPU服务器维护和环境配置,即可快速部署和体验模型,同时,可以充分利用

基于函数计算构建ComfyUI+SDFLUX文生图服务 2025-04-16 14:38

本文通过自行构建ComfyUI + SD/FLUX镜像,基于函数计算的GPU函数能力,快速搭建一个文生图服务。 方案概览 使用阿里云函数计算快速搭建一个文生图服务,仅需以下两步: 选择公共镜像或者构建并推送镜像。 选择一

通过函数计算部署ComfyUI以实现一个AIGC图像生成系统 2025-04-16 14:38

方案概览 ComfyUI是一款基于节点工作流稳定扩散算法的全新WebUI。如果您需要高质量的图像生成功能,建议您使用函数计算提供的ComfyUI模型,也可以自定义ComfyUI模型、安装插件以满足定制化创作需求。函数计算基于Serverless应用中心开发“ComfyUI应用模板”,简化开发者的部署

目录
Copyright © 2025 your company All Rights Reserved. Powered by 博智数字服务平台.
闽ICP备08105208号-1