ABTest は、モデルサービスおよびオンラインパフォーマンスの最適化向けに A/B 評価機能とプラットフォーム機能を提供します。
制限事項
現在、ABテスト:
-
中国 (北京)、中国 (上海)、中国 (杭州)、および中国 (深セン) リージョンでのみ利用可能です。
-
ロールベース SSO アクセスをサポートしていません。RAM ユーザーとしてのみ ABTest にアクセスしてください。
課金
ABTest は招待プレビュー段階であり、無料でご利用いただけます。ただし、Elastic Algorithm Service (EAS) や MaxCompute など、他の Alibaba Cloud プロダクトを利用しており、それらは別途課金されます。詳細については、「EAS 課金」および「MaxCompute 課金の概要」をご参照ください。
用語
実験管理
-
実験:A/B テスト用の異なる実験バージョン(例:AA、AB、ABC)の組み合わせです。各実験は実験レイヤーからトラフィックを受信します。1 つのレイヤーには、相互排他なトラフィックを持つ複数の実験を含めることができます。実験では、プログラムの実行フローを制御するパラメーター設定を管理します。各バージョンへのトラフィックはランダムに分割され、異なるパラメーターの比較を可能にします。
-
実験プロジェクト:関連するビジネスロジックの集約です。たとえば、LLM エージェントのシナリオでは、類似したビジネスシナリオのサービスを 1 つのプロジェクトにグループ化できます。
-
実験ドメイン:ビジネスプロパティに基づく条件またはランダム割り当てによってフィルターされたトラフィックのコレクションです。ドメインのトラフィック分割がビジネスロジックによって決定される場合、カスタム分割ロジックを実装してください。
-
実験レイヤー:実験ドメインには 1 つ以上の実験レイヤーが含まれます。各レイヤーのトラフィックは直交的(相互に独立)であり、ドメインの全トラフィックを含みます。
トラフィック管理
オーディエンス:実験に参加するユーザー UID などの特定のトラフィック ID のコレクションです。
メトリック管理
-
メトリック:パフォーマンスやサービス品質など、実験結果を評価するための指標です。
-
データテーブル:実験メトリックの計算に必要なデータソースおよび関連フィールドです。
グローバル構成
公開管理:より効果的な実験バージョンのパラメーターを昇格させ、適用します。
アーキテクチャ
全体アーキテクチャ
-
Alibaba Cloud ABTest Web コンソールを使用して、実験およびメトリックを構成します。
-
ABTest はサーバーサイドアプリケーション向けに Go および Java SDK を提供します。SDK は実験メタデータをプルし、アクセスコンテキストに基づいてトラフィックを分割し、関連するビジネスロジックを実行します。
-
MaxCompute ログテーブルをソースデータテーブルとして登録します。これにより、システムが ABTest サーバーに登録します。アプリケーションが動作ログを生成すると、イベントトラッキングによりデータが MaxCompute ログテーブルにバックフローされます。ログテーブルがニアリアルタイムでコンテンツを生成する場合、コンソールで実験メトリックを構成して、毎時および毎日のメトリックを生成できます。メトリックは ABTest サービス用の Hologres インスタンスに保存されます。
-
ABTest Web コンソールで実験レポートデータを確認します。
実験の進化
-
単一レイヤー実験:プロジェクトを作成すると、システムが自動的にデフォルトドメインおよびレイヤーを作成します。デフォルトレイヤー上に実験を作成できます。実験はレイヤートラフィック全体、またはランダム割り当てによる一部を利用できます。実験には複数のバージョンが含まれ、各バージョンにトラフィック比率を設定することで、全体トラフィックをバージョン間で分割します。
-
マルチレイヤー実験:単一レイヤー実験を複数のレイヤーに拡張できます。各レイヤーのトラフィックは直交的であるため、各レイヤーに実験を設定できます。
-
レイヤーとドメインの組み合わせ:1 つのレイヤーに複数のドメインを含めることができ、1 つのドメインにも複数のレイヤーを含めることができます(図参照)。マルチレイヤートラフィック実験では、クロスレイヤー実験または単一レイヤー上の実験を実行できます。以下の設定を構成します。
権限
RAM ユーザーに ABTest アクセス権限を付与する
ABTest の管理権限を RAM ユーザーに付与すると、そのユーザーは ABTest のすべての機能に完全アクセスできるようになります。
-
RAM コンソールにルートアカウントでログインします。
-
カスタムポリシーを作成します。スクリプトエディターに以下の内容をコピーします。ポリシー名は pai_abtest_full_access に設定してください。詳細については、「カスタムポリシーの作成」をご参照ください。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": "paiabtest:*", "Resource": "*" } ] } -
権限付与ページで、RAM ユーザーに pai_abtest_full_access 権限を付与します。詳細については、「RAM ユーザーの権限管理」をご参照ください。
ABTest に他のクラウドプロダクトへのアクセス権限を付与する
ABTest はサービスリンクロール (SLR) を通じて認証を必要とします。ロール名は AliyunServiceRoleForPAIABTest です。このポリシーには以下の権限が含まれます。
{
"Version": "1",
"Statement": [
{
"Action": "ram:DeleteServiceLinkedRole",
"Resource": "*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": "abtest.pai.aliyuncs.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"odps:ActOnBehalfOfAnotherUser",
"odps:ListProjects",
"odps:ListTables"
],
"Resource": "acs:odps:*:*:users/*"
}
]
}