- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
- 用户指南
-
最佳实践
- FunctionGraph最佳实践汇总
-
数据处理类实践
- 使用FunctionGraph函数对OBS中的图片进行压缩
- 使用FunctionGraph函数为OBS中的图片打水印
- 使用FunctionGraph函数对DIS数据进行格式转换并存储到CloudTable
- 使用FunctionGraph函数实现通过API方式上传文件
- 使用FunctionGraph函数对IoTDA中的设备坐标数据进行转换
- 使用FunctionGraph函数对OBS中的文件进行加解密
- 使用FunctionGraph函数识别LTS中的异常业务日志并存储到OBS
- 使用FunctionGraph函数对LTS中的日志进行实时过滤
- 使用FunctionGraph函数流对OBS中的图片进行旋转
- 使用FunctionGraph函数流对图片进行压缩和打水印
- 功能应用类实践
- 函数构建类实践
- 开发指南
- API参考
- SDK参考
- 场景代码示例
-
常见问题
-
产品咨询
- 使用FunctionGraph是否需要开通计算、存储、网络等服务?
- 使用FunctionGraph开发程序之后是否需要部署?
- FunctionGraph为函数分配的磁盘空间有多少?
- 是否支持在函数中启动TCP的监听端口,通过EIP接收外部发送过来的TCP请求?
- 函数发起HTTP请求的源地址如何获取?
- FunctionGraph是否支持对上传的zip文件进行反编译?
- FunctionGraph的函数是否支持功能扩展?
- FunctionGraph中的代码是如何隔离的?
- 函数常规信息中的“应用”如何理解?
- 用户需要为函数的冷启动时间付费吗?
- 函数计费中的调用次数,是某一账号下在不同region的所有函数的调用次数总和吗?
- Python语言的函数从V1版本迁移到V2版本时需注意哪些兼容性问题?
- FunctionGraph函数支持哪些编程语言?
- 创建函数
-
配置函数
- 能否在函数环境变量中存储敏感信息?
- FunctionGraph的函数如何读写上传的文件?
- 为函数挂载文件系统时,报“failed to mount exist system path”
- FunctionGraph如何实现域名解析?
- FunctionGraph如何通过域名访问专享版APIG中注册的接口?
- FunctionGraph函数通过域名访问APIG中注册的接口时,报域名无法解析?
- 使用定制运行时语言的函数能操作哪些目录?
- FunctionGraph的函数支持哪些中文字体?
- 能否在函数代码中使用线程和进程?
- 函数如何访问MySQL数据库?
- 函数无法通过VPC连接对应的Redis?
- 如何读取函数的请求头?
- Python语言的函数中,中文注释报乱码错误
-
调用函数
- FunctionGraph的函数执行需要多长时间?
- FunctionGraph的函数执行包含了哪些过程?
- FunctionGraph函数长时间不执行时,相关的实例会如何处理?
- 如何获取函数运行过程中的内存使用量信息?
- 为什么首次调用函数时速度会比较慢?
- 为什么函数实际使用内存大于预估内存,甚至触发内存溢出OOM?
- 函数执行失败返回“runtime memory limit exceeded”时,如何查看内存占用大小?
- 自定义镜像函数执行失败报“CrashLoopBackOff”
- 同步调用函数时,未收到调用响应的可能原因?
- 函数中os.system("command &")命令的执行日志未采集,应如何处理?
- 函数执行超时的可能原因有哪些?
- 使用APIG触发器调用一个返回String的FunctionGraph函数时,报500错误
- Python2.7在执行reload(sys)后无法通过print打印日志
- 运行函数时报错error while loading shared libraries时如何处理?
- 配置触发器
- 配置依赖包
-
产品咨询
- 视频帮助
- 文档下载
- 通用参考
链接复制成功!
使用FunctionGraph部署DeepSeek-R1蒸馏模型
方案概述
DeepSeek-R1模型是深度求索公司推出的首款推理模型,基于DeepSeek-V3-Base模型,通过知识蒸馏技术优化,旨在以较低的计算资源实现高性能,支持快速部署与运行。
FunctionGraph提供DeepSeek-R1蒸馏模型的镜像,有14B、8B、1.5B三个模型版本供选择,搭配第三方客户端可快速部署DeepSeek-R1蒸馏模型,实现AI对话。
约束与限制
函数应创建在“华东-上海一”区域下。
资源和成本规划
表1介绍使用FunctionGraph函数,部署DeepSeek-R1蒸馏模型所需的资源和成本规划。
资源 |
资源说明 |
计费说明 |
---|---|---|
函数工作流 FunctionGraph |
|
|
操作流程
表2介绍通过FunctionGraph,部署DeepSeek-R1蒸馏模型的总体操作流程。
操作流程 |
说明 |
---|---|
通过函数工作流控制台,创建容器镜像HTTP函数作为DeepSeek-R1蒸馏模型的镜像。 如需自定义构建镜像,可参考附录:镜像构建Dockerfile参考进行操作。 |
|
购买并创建函数的APIG专享版触发器。 |
|
下载并配置第三方客户端,部署DeepSeek-R1蒸馏模型开始AI对话,可选择以下任一客户端进行部署: |
步骤一:创建容器镜像函数
- 登录函数工作流控制台,区域选择“华东-上海一”。
- 在左侧导航栏中选择“函数 > 函数列表”,单击“创建函数”进入函数创建页面。
- 选择创建“容器镜像”函数,基本信息参数请参考表3填写。
表3 创建函数参数说明 参数
说明
取值样例
函数类型
必选参数。
选择函数的类型,有以下两种类型:
- 事件函数:处理事件请求的函数。可以通过云服务平台触发函数并执行。
- HTTP函数:处理HTTP请求的函数。可以通过发送HTTP请求触发函数执行,从而使用Web服务。
HTTP函数
区域
必选参数。
选择函数部署的区域。
华东-上海一
项目
必选参数。
选择项目部署的区域,会根据区域默认选择。
华东-上海一(默认)
函数名称
必填参数。
自定义填写函数的名称。可包含字母、数字、下划线和中划线,以大小写字母开头,以字母或数字结尾,长度不超过60个字符。
ollama-deepseek-r1
企业项目
必选参数。
未开通企业管理的用户页面无“企业项目”参数项,则无需进行配置。如需开通企业项目,请参考如何开通企业项目/企业多账号。
企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,默认项目为default。
default
权限
必选参数。
选择函数需使用的委托,选择“使用现有委托”。
使用现有委托
现有委托
必选参数。
选择函数默认创建的委托。若无现有委托,请参见创建默认委托的方式二,快速创建一个名为“fgs_default_agency”的函数默认委托。
fgs_default_agency
容器镜像
必填参数。
填写镜像URL。FunctionGraph为您提供以下DeepSeek-R1不同版本的镜像,可自行选择并复制填写:
- 14B模型版本:swr.cn-east-3.myhuaweicloud.com/custom_container/ollama-deepseek-r1:14b(推荐)
- 8B模型版本:swr.cn-east-3.myhuaweicloud.com/custom_container/ollama-deepseek-r1:8b
- 1.5B模型版本:swr.cn-east-3.myhuaweicloud.com/custom_container/ollama-deepseek-r1:1.5b
swr.cn-east-3.myhuaweicloud.com/custom_container/ollama-deepseek-r1:14b
- 填写完成后,单击右下角“创建函数”完成函数创建,进入函数详情页。
- 在函数详情页,选择“设置 > 常规设置”,修改以下参数,填写完成后单击“保存”。
- 启用GPU:单击启用
- GPU卡型:NVIDIA-T4
- GPU规格(GB):16(如使用8B模型模板请选8GB,1.5B模型模板请选2GB)
- 内存(MB):2048
步骤二:创建APIG专享版触发器
- 请参考购买实例购买任意规格的专享版APIG实例。购买过程中请参照以下注意事项,其他参数可根据实际需要选择:
- 区域选择“华东-上海一”。
- 需开启公网入口,并根据实际需求设置入公网带宽。
- 返回函数工作流控制台,在函数详情页,选择“设置 > 触发器”。
- 单击“创建触发器”,参考表4创建一个APIG专享版触发器。填写完成后,单击“确定”完成APIG触发器的创建。
表4 创建APIG专享版触发器参数说明 参数
说明
取值样例
触发器类型
必选参数。
选择“API网关服务(APIG专享版)”。
API网关服务(APIG)
实例
必选参数。
选择购买的APIG专享版实例。
apig-ds
API名称
必选参数。
APIG触发器的名称。支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3-64字符。
API_ollama_deepseek_r1
分组
必选参数。
选择API分组。API分组相当于一个API集合,API提供方以API分组为单位,管理分组内的所有API。
若无分组,可单击“创建分组”,进入API网关控制台创建一个新的分组即可。
APIGroup_deepseek
发布环境
必选参数。
选择API的发布环境。API可以同时提供给不同的场景调用,选择“RELEASE”,才能调用。
RELEASE
安全认证
必选参数。
API认证方式有以下三种方式:
None
请求协议
必选参数。
API的请求协议分为两种类型:
- HTTP:数据在传输过程中不被加密。
- HTTPS:数据在传输过程中被加密。
HTTPS
请求方法
必选参数。
选择API的请求方法。本例使用“ANY”。
ANY
后端超时(毫秒)
必选参数。
设置API的后端超时时间,单位为毫秒,设置范围为1~60000毫秒。
60000
- APIG触发器创建成功后,如图1所示复制调用URL以备用。
方式一:ChatBox(支持Windows、macOS、Linux、安卓、IOS、Web)
- 登录ChatBox官网,或进入ChatBox GitHub发布页,下载适用于您设备的安装包并安装ChatBox客户端。
- 运行ChatBox,如图2所示选择“使用自己的API Key或本地模型”,或选择左下角“设置 > 模型”进入参数配置页面。
- 使用以下参数进行配置,配置完成后如图3所示。
- 模型提供方:OLLAMA API。
- API域名:粘贴触发器调用URL,删除最后的“/”。
- 模型:选择“deepseek-r1:14B”,选项出现大约需要等待10秒。
- 其他参数保持默认即可,完成参数配置后,单击“保存”。进入对话页面,即可使用DeepSeek-R1模型进行AI对话。
方式二:AnythingLLM(支持Windows、macOS、Linux)
- 登录AnythingLLM官网,或进入AnythingLLM GitHub发布页,下载适用于您设备的安装包并安装AnythingLLM客户端。
- 运行AnythingLLM,前期设置可直接跳过,进入客户端主页后,如图4所示,选择左下角“OpenSetting > 人工智能提供商 > LLM首选项”进入配置页面。
- 使用以下参数进行配置,配置完成后如图5所示。
- LLM提供商:选择Ollama。
- Ollama Base URL:触发器调用URL,删除最后的“/”。
- Ollama Model:选择“deepseek-r1:14B”,选项出现大约需要等待10秒。
- 其他参数保持默认即可,完成参数配置后,单击“Save changes”。进入对话页面,即可使用DeepSeek-R1模型进行AI对话。
附录:镜像构建Dockerfile参考
如需自定义构建镜像,可参考以下Dockerfile进行操作。
FROM nvidia/cuda:11.6.2-base-ubuntu20.04 ENV HOME=/home/paas ENV GROUP_ID=1003 ENV GROUP_NAME=paas_user ENV USER_ID=1003 ENV USER_NAME=paas_user ENV OLLAMA_HOST=0.0.0.0:8000 RUN mkdir -m 550 ${HOME} && groupadd -g ${GROUP_ID} ${GROUP_NAME} && useradd -u ${USER_ID} -g ${GROUP_ID} ${USER_NAME} RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/* RUN curl -fsSL https://ollama.com/install.sh | sh RUN chown -R ${USER_ID}:${GROUP_ID} ${HOME} RUN find ${HOME} -type d | xargs chmod 775 RUN ollama serve & \ sleep 15 && \ ollama pull deepseek-r1:14B USER ${USER_NAME} WORKDIR ${HOME} EXPOSE 8000 ENTRYPOINT ["ollama", "serve"]