安装 Llama Stack

本文档介绍如何使用 Llama Stack Operator 在 Kubernetes 上安装和部署 Llama Stack Server。

上传 Operator

下载 Llama Stack Operator 安装文件(例如,llama-stack-operator.alpha.ALL.xxxx.tgz)。

使用 violet 命令发布到平台仓库:

violet push --platform-address=platform-access-address --platform-username=platform-admin --platform-password=platform-admin-password llama-stack-operator.alpha.ALL.xxxx.tgz

安装 Operator

  1. 进入 Alauda 容器平台的 Administrator 视图。

  2. 在左侧导航中选择 Marketplace / Operator Hub

  3. 在右侧面板中找到 Alauda build of Llama Stack 并点击 Install

  4. 保持所有参数为默认,完成安装。

部署 Llama Stack Server

Operator 安装完成后,通过创建 LlamaStackDistribution 自定义资源来部署 Llama Stack Server:

注意: 请提前准备以下内容,否则分发可能无法变为就绪状态:

  • Inference URLVLLM_URL 必须指向一个 vLLM OpenAI 兼容 的 HTTP 基础 URL(例如集群内的 vLLM 或 KServe InferenceService),用于提供目标模型服务。
  • Secret(可选)VLLM_API_TOKEN 仅在 vLLM 端点需要认证时才需要。如果 vLLM 无需认证,则不要设置。需要时,在相同命名空间创建 Secret,并从 containerSpec.env 引用它(见下方清单中的注释示例)。
  • 存储类:确保集群中存在 default 存储类,否则 PVC 无法绑定,资源将无法变为就绪。
apiVersion: llamastack.io/v1alpha1
kind: LlamaStackDistribution
metadata:
  annotations:
    cpaas.io/display-name: ""
  name: demo
  namespace: default
spec:
  network:
    exposeRoute: false                             # 是否对外暴露路由
  replicas: 1                                      # 服务器副本数量
  server:
    containerSpec:
      name: llama-stack
      port: 8321
      env:
        - name: VLLM_URL
          value: "http://vllm-predictor.default.svc.cluster.local/v1"   # vLLM OpenAI 兼容基础 URL
        - name: VLLM_MAX_TOKENS
          value: "8192"                            # 最大输出令牌数

        # 可选:VLLM_API_TOKEN — 仅当 vLLM 端点需要认证时添加。
        # 如果 vLLM 部署时无认证,省略以下整个块(不要设置 VLLM_API_TOKEN)。
        # 创建示例:kubectl create secret generic vllm-api-token -n default --from-literal=token=<TOKEN>
        # - name: VLLM_API_TOKEN
        #   valueFrom:
        #     secretKeyRef:
        #       key: token
        #       name: vllm-api-token

    distribution:
      name: starter                                # 分发名称(可选值:starter, postgres-demo, meta-reference-gpu)
    storage:
      mountPath: /home/lls/.lls
      size: 1Gi                                    # 需预先配置 "default" 存储类

部署完成后,Llama Stack Server 将在集群内可用。访问 URL 显示在 status.serviceURL 中,例如:

status:
  phase: Ready
  serviceURL: http://demo-service.default.svc.cluster.local:8321

使用 KServe 上的 vLLM 进行工具调用

以下内容适用于 KServe 上的 vLLM predictor,不适用于 LlamaStackDistribution 清单。对于使用 工具(客户端工具或 MCP)的 agent 流程,vLLM 进程必须支持工具调用。根据上游 vLLM 要求,添加 predictor 容器的 args,例如:

args:
  - --enable-auto-tool-choice
  - --tool-call-parser
  - hermes

根据 所服务的模型 及该模型系列的 vLLM 文档,选择 --tool-call-parser(及相关标志)。