AI Gateway プロファイル
aigatewayprofile カスタムリソース定義 (CRD) を使用すると、Kubernetesネイティブ構成を使用してNetScaler®上にAI Gatewayプロファイルを定義できます。AI Gatewayプロファイルには、NetScalerがアプリケーションと大規模言語モデル (LLM) バックエンド間のAIトラフィックを処理する際に適用する設定が含まれています。
aigatewayprofile CRD を使用して、次のことができます。
-
推論リクエストを受信するクライアント向けロードバランシング仮想サーバーにフロントエンドプロファイルを適用します。
-
アップストリームのLLMプロバイダーに接続するサービスグループにバックエンドプロファイルを適用し、モデルごとのトークンクォータとクォータ更新頻度を設定します。
-
Kubernetes Secret からAIエンドポイントの認証トークン (APIキー) を参照します。
-
NetScalerにすでに存在する、事前設定された組み込みのAI Gatewayプロファイルを再利用します。
注:
preconfigured フィールドと config フィールドは相互に排他的です。いずれか一方を指定する必要があります。
aigatewayprofile CRD を展開する
aigatewayprofile CRD をダウンロードし、次のコマンドを使用して展開します。
kubectl create -f https://raw.githubusercontent.com/citrix/citrix-k8s-ingress-controller/master/crd/aigateway/aigatewayprofile-crd.yaml
注:
CRD展開YAMLファイルを変更しないでください。
AIゲートウェイプロファイル CRD 属性
次の表は、
aigatewayprofile CRD の spec で利用可能な属性を示しています。
| 属性 | 説明 | サポートされている値 |
|---|---|---|
gatewayClassName |
この AI Gateway プロファイルが適用される GatewayClass の名前。このプロファイルは、この値がコントローラーによって管理される GatewayClass と一致する場合にのみ適用されます。このフィールドは必須です。 |
文字列 |
preconfigured |
使用する NetScaler 上の事前設定された組み込み AI Gateway プロファイルの名前。config とは相互に排他的です。 |
文字列 |
config |
完全にカスタムな AI Gateway プロファイルのための NetScaler に関連するすべてのパラメーターを含みます。preconfigured とは相互に排他的です。 |
オブジェクト |
config 属性
カスタムプロファイルを定義する場合、
spec.config の下に以下の属性が利用可能です。
| 属性 | 説明 | サポートされている値 |
|---|---|---|
profiletype |
AI Gatewayプロファイルのタイプ。この値は設定後に変更できません。 | backend, frontend |
endpointtype |
AIエンドポイントのタイプ。この値は設定後に変更できません。 | azureopenai |
tokenquota |
バックエンドプロファイルのトークンクォータ制限。profiletypeがbackendの場合にのみ適用されます。 |
整数 (0–2147483647) |
quotarefreshfrequency |
クォータ更新レート(分単位)。profiletypeがbackendの場合にのみ適用されます。 |
整数 (1–65535) |
authtoken |
AI Gatewayエンドポイント用の認証トークンまたはAPIキーで、Kubernetes Secretから取得されます。この値は設定後に変更できません。profiletypeがbackendの場合にのみ適用されます。 |
オブジェクト |
authtoken属性
| 属性 | 説明 | サポートされる値 |
|---|---|---|
name |
認証トークンを含むKubernetes Secretオブジェクトの名前。このフィールドは必須です。 | \^a-z0-9?$に一致する文字列 |
namespace |
Kubernetes Secretオブジェクトの名前空間。デフォルトはAI Gatewayプロファイルの名前空間です。 | \^a-z0-9?$に一致する文字列 |
プロファイル構成の記述方法
aigatewayprofile YAML定義で、kindをaigatewayprofileとして設定します。specセクションで、gatewayClassNameと、configブロック(カスタムプロファイルの場合)またはpreconfigured値(組み込みプロファイルを再利用する場合)のいずれかを追加します。
以下のガイドラインに留意してください。
-
configまたはpreconfiguredのいずれか一方のみを指定してください。 -
tokenquotaは、profiletypeがbackendであるプロファイルでのみ設定してください。 -
プロファイル作成後、
profiletype、endpointtype、およびauthtokenの値は変更できません。 -
APIキーはKubernetes Secretに保存し、
authtokenを介して参照してください。
プロファイル構成の例
フロントエンドプロファイル
次の構成は、クライアント向けのAI Gatewayプロファイルを作成します。
apiVersion: citrix.com/v1
kind: aigatewayprofile
metadata:
name: frontend-profile
namespace: default
spec:
gatewayClassName: aigwclass
config:
profiletype: frontend
endpointtype: azureopenai
トークンクォータ付きのバックエンドプロファイル
次の構成は、60分ごとに更新されるトークンクォータを適用するバックエンドAI Gatewayプロファイルを作成します。
apiVersion: citrix.com/v1
kind: aigatewayprofile
metadata:
name: backend-profile
namespace: default
spec:
gatewayClassName: aigwclass
config:
profiletype: backend
endpointtype: azureopenai
tokenquota: 100000
quotarefreshfrequency: 60
authtoken:
name: azure-openai-key
namespace: default
事前構成済みプロファイル
次の構成は、NetScalerにすでに存在する組み込みのAI Gatewayプロファイルを再利用します。
apiVersion: citrix.com/v1
kind: aigatewayprofile
metadata:
name: builtin-profile
namespace: default
spec:
gatewayClassName: aigwclass
preconfigured: default-ai-frontend
関連資料
-
AI Gatewayの概要
-
モデルルーティングの構成