Skip to main content
Version: v25.09

AI推理软件套件

特性介绍

openFuyao AI推理软件套件主要支持用户在一体机上使用大模型推理能力,具备鲲鹏、昇腾亲和能力并兼容主流CPU计算场景。

应用场景

目前企业中使用AI推理的主要场景有Web场景和API接口场景两种。

  • Web场景:使用类似豆包、Deepseek等提供的网页端,通过直接在输入框中输入文字内容的方式和大模型进行交互。
  • API接口场景:使用API接口进行通信,通过编程的方式与大模型进行交互,常见于支持接入大模型的应用插件,如cline、roo code等。

能力范围

AI推理软件套件的主要功能是提供一键安装部署和模型推理能力,主要有如下功能。

  • 一键安装部署能力:支持一键部署openFuyao和大模型推理相关组件,降低部署门槛。
  • 提供大模型API接口:提供与主流产品兼容的API,支持通过API调用大模型能力。
  • 提供监控能力:支持集成监控面板组件,允许用户观测推理服务的各项指标。

亮点特征

AI推理软件套件兼容集成开源模型,实现高扩展性、快速部署安装等能力,面向异构算力进行亲和优化,提升资源利用率。

  • 快速安装 + 开箱即用(轻量化、低底噪):支持基于openFuyao平台快速安装AI推理软件套件(含驱动固件),做到开箱即用。
  • 高扩展性 + 快速定制部署:基于openFuyao容器平台实现可扩展架构,允许基于openFuyao扩展组件市场和外部开源组件定制一体机方案。
  • 异构算力亲和优化:支持并对鲲鹏 + 昇腾计算场景进行亲和优化,同时兼容主流GPU计算场景。

实现原理

图1 AI推理软件套件实现原理

image

推理任务:在一次完整的推理任务中,用户以openAI API形发起推理任务请求,推理任务被发送至K8s集群中的Ray集群RayCluster。RayCluster接到请求后将任务下发至自身集群内的工作节点head pod和worker pod,工作节点处理完推理任务后沿原路返回结果,推理任务运行流程如图2所示。

图2 AI推理软件套件推理任务时序图

image

  • 集群监控:用户或管理员可以通过可视化监控面板custom-monitor查看Ray集群状态,custom-monitor从集群中的监控组件k8s-monitor获取指标。
  • 一键安装部署:AI推理软件套件支持openFuyao管理平台一键部署。

与相关特性的关系

AI推理软件套件与其它特性存在单方面依赖和联合使用两种关系。

  • 单方面依赖

    单方面依赖是AI推理软件套件运行所必须的前置特性,如表1所示。

表1 单方面依赖

组件名称License版本描述
NPU OperatorMulanPSL-2.00.0.0-latestopenFuyao生态组件,针对Ascend NPU的k8s集群管理工具
GPU OperatorApache-2.0 Licensev25.3.2NVIDIA提供的生态组件,针对NVIDIA GPU的k8s集群管理工具
KubeRay OperatorApache-2.0 Licensev0.14.0简化k8s集群上的Ray应用部署并进行管理
PrometheusApache-2.0 license-k8s原生监控组件,直接监控集群服务并以标准格式提供指标查询

note 说明:
GPU Operator为第三方可选依赖,仅在使用NVIDIA GPU推理时需要安装。GPU Operator按照NVIDIA官方组件原样提供,openFuyao未对其内容进行任何修改。使用相关组件时的额外条款与限制请参见NVIDIA官方文档。

  • 联合使用

    联合使用是与AI推理软件套件解耦的特性,当前版本支持用户自由选择用于可视化监控的特性。

表2 联合使用

组件名称License版本描述
monitoring-dashboardMulanPSL-2.00.0.0-latestopenFuyao生态组件,用户可按需求拓展指标与自定义监控面板。
monitoring-serviceMulanPSL-2.00.0.0-latestopenFuyao生态组件,用于实时监控、收集和分析集群内资源和应用状态。

安装

AI推理软件套件的一键式安装部署指openFuyao平台应用市场上一体机应用的一键部署。

openFuyao平台

  1. 在openFuyao平台的左侧导航栏选择“应用市场 > 应用列表”,进入“应用列表”界面。
  2. 勾选左侧“场景”中的“人工智能/机器学习”,查找“aiaio-installer”卡片。或在搜索框中输入“aiaio-installer”。
  3. 单击“aiaio-installer”卡片,进入扩展组件“详情”界面。
  4. 单击“部署”进入“部署”界面。
  5. 输入应用名称、选择安装版本和命名空间。命名空间可以选用已有命名空间或新建命名空间,创建命名空间请参见命名空间
  6. 在参数配置的“Values.yaml”中输入要部署的values信息,本组件可配置的参数较多,需要按照下一节参数配置详细说明进行配置。
  7. 单击“部署”完成应用的安装。

note 说明:
需要根据应用名称创建目录,在需要部署应用的服务器上创建/mnt/<应用名称>-storage。例如,应用名称为aiaio,则需要创建/mnt/aiaio-storage。

配置参数详细说明

表3 values.yaml配置参数说明

配置分类参数名称数据类型说明可选值/备注
acceleratorGPUboolean是否使用GPU进行推理true/false,与NPU只能选择一个为true
acceleratorNPUboolean是否使用NPU进行推理true/false,与GPU只能选择一个为true
acceleratortypestring硬件加速器类型NPU支持:Ascend910B、Ascend910B4;GPU支持:V100
acceleratornuminteger硬件加速器数量根据模型大小和推荐配置设置,应当配置为tensor_parallel_size × pipeline_parallel_size
serviceimagestring推理服务镜像地址NPU推荐:cr.openfuyao.cn/openfuyao/ai-all-in-one:latest
GPU需使用build/Dockerfile.gpu构建
servicemodelstring推理模型名称具体的模型路径,如deepseek-ai/DeepSeek-R1-Distill-Qwen-14B
servicetensor_parallel_sizeinteger张量并行大小根据模型大小和推荐配置设置
servicepipeline_parallel_sizeinteger流水线并行大小根据模型大小和推荐配置设置
servicemax_model_leninteger模型最大序列长度根据模型大小和硬件加速器配置设置,推荐配置为16384,或根据需求调整
servicevllm_use_v1integer是否使用vLLM v1版本推荐设置为1
storageaccessModestring存储访问模式推荐使用ReadWriteMany
storagesizestring存储大小根据模型大小和推荐配置设置,推荐配置为模型大小的1.2倍或以上
storagestorageClassNamestring存储类名称根据集群实际存储类配置,当default_pv设置为true时本选项无效
storagedefault_pvboolean是否使用默认持久卷如果集群内没有预配置storageClass,推荐设置为true

模型推荐配置

表4 模型配置推荐

模型规模service.modelaccelerator.GPUaccelerator.NPUaccelerator.typeaccelerator.numservice.tensor_parallel_sizeservice.pipeline_parallel_sizestorage.size
1.5Bdeepseek-ai/DeepSeek-R1-Distill-Qwen-1.5BfalsetrueAscend910B411110Gi
7Bdeepseek-ai/DeepSeek-R1-Distill-Qwen-7BfalsetrueAscend910B411120Gi
8Bdeepseek-ai/DeepSeek-R1-Distill-Qwen-8BfalsetrueAscend910B41/21/2125Gi
14Bdeepseek-ai/DeepSeek-R1-Distill-Qwen-14BfalsetrueAscend910B422140Gi
32Bdeepseek-ai/DeepSeek-R1-Distill-Qwen-32BfalsetrueAscend910B444180Gi
70Bdeepseek-ai/DeepSeek-R1-Distill-Qwen-70BfalsetrueAscend910B48/168/161160Gi

note 说明:

  • 此处仅包括NPU推荐配置,由于GPU支持尚处于早期,暂不提供推荐配置。
  • 图中1/2表示最小配置要求为1,推荐配置要求为2,其余同理。
  • 完整配置可以参考配置示例

部署视图

现阶段AI推理软件套件主要包含三个组件,分别是昇腾NPU管理组件NPU Operator(或GPU管理组件GPU Operator)、openFuyao Ray管理组件KubeRay Operator以及集群组件RayCluster。根据部署模型的规模,RayCluster内部包含一个head pod组件,并可能包括0个或若干worker pod组件。这些组件无需用户部署,部署程序会自动拉起,部署视图见图3(仅包含head pod)、图4(包含head pod和一个worker pod)。

图3 AI推理软件套件部署视图1

image

图4 AI推理软件套件部署视图2

image

使用openAI API提交推理任务

前提条件

节点上已部署AI推理软件套件服务。

背景信息

使用openAI API提交推理任务支持提交推理任务和查看推理结果。

  • 提交推理任务:首先需要构建openAI HTTP请求,再将请求发送至推理服务地址。
  • 查看推理结果:推理服务完成任务后,向用户地址发送结果并在用户界面显示。

图5 推理任务

image

使用限制

当前仅支持纯文本的推理任务内容。

操作步骤

  1. 构造推理任务:首先在客户端构造推理任务,推理任务的JSON结构如下所示。

    {
    "method": "POST",
    "url": "http://localhost:8000/v1/chat/completions",
    "headers": {
    "Content-Type": "application/json",
    "Authorization": "Bearer fake-key"
    },
    "body": {
    "model": "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
    "messages": [
    {
    "role": "user",
    "content": "Hello!"
    }
    ]
    }
    }
  2. 获取K8s中RayService的k8s service(以serve-svc结尾)的cluster ip,构造推理请求URI。URI为:http://<cluser_ip>:8000/v1/chat/completions

  3. 通过curl等命令行工具或者python等编程语言发起HTTP POST请求。

  4. AI推理软件套件中的推理服务处理推理任务后将结果以原路径返回客户端。

附录

配置示例

NPU配置示例(14B模型)

accelerator:
GPU: false
NPU: true
type: "Ascend910B4"
num: 2

service:
image: cr.openfuyao.cn/openfuyao/ai-all-in-one:latest
model: "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B"
tensor_parallel_size: 2
pipeline_parallel_size: 1
max_model_len: 16384
vllm_use_v1: 1

storage:
accessMode: ReadWriteMany
size: 40Gi
storageClassName: example-sc
default_pv: true

GPU配置示例(14B模型)

accelerator:
GPU: true
NPU: false
type: "V100"
num: 2

service:
image: "your-custom-gpu-image:latest" # 需要使用build/Dockerfile.gpu构建
model: "deepseek-ai/DeepSeek-R1-Distill-Qwen-14B"
tensor_parallel_size: 2
pipeline_parallel_size: 1
max_model_len: 16384
vllm_use_v1: 0 # V100当前不支持使用vllm v1引擎

storage:
accessMode: ReadWriteMany
size: 40Gi
storageClassName: example-sc
default_pv: true