LLMRoute 是服务网格 ASM(Service Mesh)提供的定制化Kubernetes CRD,旨在为大规模语言模型(Large Language Model,LLM)相关的路由规则提供声明式的配置能力。该CRD支持基于请求头、资源标签等条件的流量匹配,并能够灵活地将流量路由到指定的外部LLM服务或集群内推理池(Inference Pool)。本文将详细介绍LLMRoute资源的各个字段。
配置示例
以下为LLMRoute 的示例配置。完整场景示例,请参见流量路由:使用ASM高效管理LLM流量。
apiVersion: istio.alibabacloud.com/v1beta1
kind: LLMRoute
metadata:  
  name: dashscope-route
spec:
  host: dashscope.aliyuncs.com # 不同LLMprovider之间不可重复
  rules:
  - name: vip-route
    matches:
    - headers:
        user-type:
          exact: subscriber  # 订阅用户专用的路由项
    backendRefs:
    - providerHost: dashscope.aliyuncs.com
  - backendRefs:
    - providerHost: dashscope.aliyuncs.com配置项说明
LLMRoute
| 配置项 | 类型 | 描述 | 
| host | 
 | 路由的目标主机地址。 | 
| gateways | 
 | 网关规则列表,与虚拟服务中的 | 
| rules | 
 | 路由规则列表。 | 
LLMRule
LLMRule 用于定义单个路由规则。
| 配置项 | 类型 | 描述 | 
| name | 
 | 规则名称。 | 
| matches | 匹配条件列表。 | |
| backendRefs | 后端引用列表。 | 
LLMRequestMatch
LLMRequestMatch 用于定义请求匹配条件。
| 配置项 | 类型 | 描述 | 
| Headers | 
 | 请求头匹配条件。 | 
| SourceLabels | 
 | 资源标签匹配条件。 | 
| Gateways | 
 | 网关匹配条件。 | 
LLMBackendRef
LLMBackendRef 定义了后端引用信息,包含以下字段:
| 配置项 | 类型 | 描述 | 
| ProviderHost | 
 | 目标Host。 | 
| Weight | 
 | 权重值。 | 
| BackendRef | 后端对象引用。 | 
ProviderHost和BackendRef不可同时存在。
BackendObjectReference
BackendObjectReference 定义了后端对象的引用信息,包含以下字段:
| 配置项 | 类型 | 描述 | 
| Group | 
 | 后端对象的组。 | 
| Kind | 
 | 后端对象的类型。 | 
| Name | 
 | 后端对象的名称。 | 
| Namespace | 
 | 后端对象的命名空间。 | 
| Port | 
 | 后端对象的端口。 | 
目前只支持引用InferencePool资源。