文件最后提交记录最后更新时间
2 个月前
1 个月前
29 天前
1 个月前
29 天前
27 天前
2 个月前
29 天前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
2 个月前
27 天前
1 个月前
1 个月前
README

InferNex Bridge

InferNex 接入 KServe 的适配层,支持双 CRD 声明式部署

Docs License Helm KServe


Overview

InferNex Bridge 是 InferNex 接入 KServe 的适配层(Controller + Webhook),根据 LLMInferenceService (KServe 的 LLM 推理 CRD) / InferNexService(InferNex Bridge 原生推理 CRD) 声明,自动部署并调和 InferNex 推理套件。

提供两种部署形式:

  • KServe + InferNex Bridge:推理引擎 / Hermes Router 由 KServe 部署,增强组件由 InferNex Bridge 部署。
  • InferNex Bridge:由 InferNex Bridge 统一编排推理引擎、Hermes Router 及增强组件(Mooncake KVCache、cache-indexer、proxy-server、Elastic-Scaler、Tidal Controller、ResourceScalingGroup、Eagle-Eye Hardware Monitor、Eagle-Eye Hardware Diagnosis、Eagle-Eye Network Performance Exporter)。

InferNex 主 chart 的一键 Helm 全栈安装为不同入口。

增强组件能力范围与 InferNex 集成部署用户手册 一致。架构与设计依据见 OFEP-0040 InferNex 接入 KServe 适配层提案

Specification

InferNex Bridge 面向昇腾(Ascend)NPU 全栈推理,支持 LLMInferenceServiceInferNexService双入口。版本兼容、Webhook 补丁行为、默认镜像及责任边界等详见 InferNex Bridge 技术规格说明文档

Version compatibility

Component Supported versions
KServe LLMISVC controller 0.17.0, 0.18.0, 0.19.0
InferNex 26.6.0

KServe 安装前提见 LLMInferenceService Prerequisites;InferNex 整体部署规格见 InferNex 规格 #42

Quick Start

Prerequisites

  • Kubernetes 集群,kubectl、Helm v3+。
  • 推理集群:NPU Operator、LWS 等,详见 InferNex 用户手册 — 前提条件
  • KServe:须安装 KServe(LLMISVC 控制器版本 0.17.0–0.19.0)。
  • 网关访问:Envoy Gateway 及 Gateway API、GIE 相关 CRD。

Binary Deployment

以命名空间 infernex-bridge-system、release 名称 infernex-bridge 为例,执行:

helm upgrade --install infernex-bridge oci://cr.openfuyao.cn/charts/infernex-bridge \
  --version 26.6.0 \
  -n infernex-bridge-system --create-namespace --wait --timeout 10m

本 release 对应 Chart 版本为 26.6.0。

Source Deployment

  1. 从仓库拉取项目。

    git clone https://gitcode.com/openFuyao/InferNex.git
    
  2. 安装 InferNex Bridge。

    以命名空间 infernex-bridge-system、release 名称 infernex-bridge 为例,在 InferNex/component/InferNex-Bridge 目录下执行如下命令:

    cd InferNex/component/InferNex-Bridge
    helm upgrade --install infernex-bridge ./chart/infernex-bridge \
      -n infernex-bridge-system --create-namespace --wait --timeout 10m
    

Verify Deployment

  1. 确认 Controller Pod 与 Service 已就绪。

    kubectl get pods,svc -n infernex-bridge-system
    
  2. 确认 Mutating / Validating Webhook 已注册。

    kubectl get mutatingwebhookconfiguration,validatingwebhookconfiguration | grep infernex-bridge
    
  3. 等待 Webhook 与证书就绪,而后部署 InferNex。

安装参数、卸载及 InferNex 部署详见 InferNex Bridge 用户手册

Deploy InferNex

InferNex Bridge 安装并验证通过后,config/examples/ 下选取示例 YAML,用 kubectl apply 提交即可部署 InferNex

  1. 选择示例文件

    LLMISVC

    模式 目录 说明
    Aggregate llmisvc/aggregate/ ag-01-*.yaml .. ag-03-*.yaml
    Disaggregated (PD) llmisvc/disaggregated/ pd-01-*.yaml .. pd-05-*.yaml

    示例含 huggingface-download initContainer,部署时从 Hugging Face Hub 拉取模型(如 ag-01-single-node-single-card.yaml)。

    InferNexService(推理引擎模板与 llmisvc 同 Spec ID 对齐)

    模式 目录 说明
    Aggregate insvc/aggregate/ ag-01-*.yaml .. ag-03-*.yaml
    Disaggregated (PD) insvc/disaggregated/ pd-01-*.yaml .. pd-05-*.yaml

    示例含 Mooncake initContainer、huggingface-download 与完整 vllm serve 启动参数(与对应 llmisvc 示例一致);InferNexService.spec.model + baseRefs 指向 InferNexServiceConfig 中的推理引擎模板。

    • KServe LLMInferenceService + InferNex Bridge:选 llmisvc/ 下对应 Spec ID YAML(含 infernex.io/runtime: "true")。
    • InferNex Bridge 直管 InferNexService:选 insvc/ 下同 Spec ID YAML。
  2. 提交 YAML

    cd InferNex/component/InferNex-Bridge/config/examples/insvc/aggregate
    kubectl apply -f ag-01-single-node-single-card.yaml -n kserve
    

    将路径与文件名替换为目标场景。