Documentation Index
Fetch the complete documentation index at: https://adcp-docs-ja.pier1.co.jp/llms.txt
Use this file to discover all available pages before exploring further.
Agentic eXecution Engine (AXE) は、インプレッション時に動的ターゲティング・ブランドセーフティ・頻度管理を行う AdCP のリアルタイム実行レイヤーです。
2 フェーズのワークフロー
AXE は オフラインのセットアップ と リアルタイム配信 の 2 フェーズで動作します。
Phase 1: オフラインセットアップ
広告を配信する前に、キャンペーン設定とセグメントデータの同期を行います。
流れ:
- Buyer Agent がターゲティング・予算付きキャンペーンを作成
- Signal Agent がコンテキストデータ(オーディエンス、ブランドセーフティルール、天気トリガー等)を付与
- Orchestrator がキャンペーンを AXE セグメントにマッピングしリアルタイムモジュールへ同期
- Sales Agent が AXE セグメントのキー値に基づくラインアイテムを作成
Phase 2: リアルタイム配信
広告リクエストが届くと、AXE がリアルタイムで評価しセグメント判定を返します。
流れ:
- ユーザーがページ訪問し広告リクエスト発火
- アドサーバーが Prebid 等へリクエスト
- Prebid が OpenRTB 入札リクエストを AXE に送信
- AXE がユーザー/コンテキストを評価しセグメント値を返却
- アドサーバーがセグメントに合うラインアイテムを選び配信
AXE セグメントタイプ
AXE はアドサーバーへ 3 種のセグメント値を返します:
| Segment | Key | Purpose | Example |
|---|
| Include | axei | オーディエンス用(ユーザーが所属) | "seg_auto_intenders" |
| Exclude | axex | ブランドセーフティ/抑制用(このインプレッションをブロック) | "unsafe_content" |
| Macro | axem | クリエイティブのパーソナライズデータ | "eyJjb250ZXh0IjoiLi4uIn0=" |
セグメントがクリエイティブへ渡る流れ
{
"packages": [{
"product_id": "premium_video",
"targeting_overlay": {
"axe_include_segment": "seg_auto_intenders_q1",
"axe_exclude_segment": "seg_existing_customers"
}
}]
}
インプレッション時:
axei を axe_include_segment と照合 → 一致していれば配信
axex を axe_exclude_segment と照合 → 一致していれば配信しません
axem を {AXEM} マクロ経由でクリエイティブに渡します
データフロー例
顧客獲得キャンペーンでの AXE 利用例:
セットアップ(オフライン)
1. Buyer がサプレッションリストをアップロード:
Advertiser CRM
→ Hash emails (SHA256)
→ Upload to orchestrator
→ Receive segment ID: "seg_existing_customers_acme"
2. AXE ターゲティング付きで media buy を作成:
{
"buyer_ref": "acme_acquisition_q1",
"packages": [{
"product_id": "premium_video_millennials",
"budget": { "amount": 50000 },
"targeting_overlay": {
"axe_exclude_segment": "seg_existing_customers_acme"
}
}]
}
3. Sales Agent がラインアイテムを作成:
Line item: "Acme Q1 Acquisition"
Targeting: axex != "seg_existing_customers_acme"
配信(リアルタイム)
4. ユーザーがパブリッシャーサイトを訪問:
GET /ad-request
User-Agent: Mozilla/5.0...
Cookie: uid=abc123
5. AXE ルックアップ:
Input: uid=abc123
Check: Is abc123 in seg_existing_customers_acme?
Result: YES (hashed email matches)
6. AXE レスポンス:
{
"axei": null,
"axex": "seg_existing_customers_acme",
"axem": null
}
7. アドサーバーでの判定:
Line item requires: axex != "seg_existing_customers_acme"
Current axex: "seg_existing_customers_acme"
Decision: DO NOT SERVE (user is existing customer)
結果: 獲得予算が既存顧客に浪費されない。
コア機能
1. 動的オーディエンスターゲティング
手持ちの DMP/CDP セグメントをパブリッシャー在庫に適用:
- オーディエンスデータをアップロード(ハッシュ済みメール、デバイス ID など)
- オーケストレーターからセグメント ID を受領
axe_include_segment にセグメント ID を参照
- インプレッション時に AXE がユーザーを照合
ユースケース: Lookalike、CRM 活用、行動セグメント
2. ブランドセーフティ
インプレッション時のリアルタイムコンテンツ評価:
- コンテンツ分類 - ニュース/エンタメ/スポーツなど
- センチメント分析 - ポジ/ネガの検知
- キーワードブロック - ブランド固有の NG ワード回避
- 隣接ルール - ページ上の他広告との並び
ブランドセーフティのルールは Signal Agent からオーケストレーターを経て AXE に流れます。
3. パブリッシャー横断のフリークエンシー管理
パブリッシャー側の頻度制御と異なり、AXE は以下を横断管理します:
- 複数パブリッシャー
- 複数キャンペーン
- 複数デバイス(ID 解決を含む)
AXE が頻度キャップを適用し、アドサーバーにセグメント判定を返します。アドサーバーは「なぜ」ではなく「配信可否」のみを知ります。
4. ファーストパーティデータ活用
PII を共有せずに顧客データを活用:
- 顧客 ID(メール/電話など)をハッシュ化
- オーケストレーターへアップロード(データはオーケストレーターに留まる)
- キャンペーンでセグメント ID を参照
- AXE がインプレッション時に照合
- パブリッシャーは生データに触れない
Privacy by Design: 不透明なセグメント ID
AXE の設計原則は セグメント ID を意図的に不透明にすること です。アドサーバーは ABCD が一致/不一致だったことだけを知り、そのセグメントが何を意味するかは分かりません。
それは以下を意味し得ます:
- ユーザーが頻度上限を超えた
- ページがブランドセーフティ検査に失敗
- ユーザーがファーストパーティサプレッションリストに含まれます
- ユーザーがオーディエンスセグメントに一致
この不透明性がバイヤーデータを守ります。パブリッシャーやアドサーバーは次のような逆算ができません:
- CRM リストに誰が含まれるか
- 頻度キャップの閾値
- ブランドセーフティルールの内容
- オーディエンスセグメントの定義
アドサーバーが知るのは「AXE が配信可と言った/不可と言った」だけです。
インテグレーションの要点
バイヤー向け
| Step | Action | Result |
|---|
| 1 | オーディエンスをオーケストレーターにアップロード | セグメント ID を受領 |
| 2 | create_media_buy にセグメント ID を含める | AXE ターゲティング付きでキャンペーン作成 |
| 3 | 配信レポートを監視 | セグメントのマッチ率を追跡 |
パブリッシャー向け
パブリッシャーは AXE を直接実装しません。AXE ターゲティングをサポートするには:
- Prebid 等の RTD と統合
- キーバリューターゲティングを受け入れる -
axei/axex をアドサーバーへ渡します
- ラインアイテム設定 - AXE セグメントのキーバリューでターゲティング
- 対応表明 -
adagents.json で AXE 対応を宣言
オーケストレーター向け
オーケストレーターは AXE レイヤーを運用します。
- セグメントインジェスト - バイヤーからオーディエンスデータを受け入れる
- リアルタイムルックアップ - 10ms 未満でセグメント所属判定
- シグナル統合 - ブランドセーフティやコンテキストシグナルを適用
- 頻度状態の維持 - キャンペーン横断の露出管理
- RTD モジュール - Prebid や OpenRTB でセグメントを公開
ユニバーサルマクロ:
クリエイティブは AXE のコンテキストデータを受け取り動的レンダリングが可能です。
<img src="https://cdn.brand.com/creative.png"
data-context="{AXEM}" />
{AXEM} マクロには base64 エンコードのコンテキストメタデータが含まれます:
- 天候条件
- コンテンツカテゴリ
- ユーザーセグメント属性(匿名化)
- カスタムオーケストレーターデータ
詳細は ユニバーサルマクロ を参照してください。
AXE を使うべき/避けるべきシナリオ
| Scenario | Use AXE? | Alternative |
|---|
| CRM 内ユーザーをターゲティング | ✅ Yes | — |
| 既存顧客を除外 | ✅ Yes | — |
| パブリッシャー横断の頻度キャップ | ✅ Yes | — |
| リアルタイムブランドセーフティ | ✅ Yes | — |
| 「カリフォルニア在住のミレニアル」 | ❌ No | ブリーフで表現 |
| 地理的制約 | ❌ No | geo_country_any_of を使用 |
| パブリッシャーのオーディエンスセグメント | ❌ No | ブリーフで表現 |
| 単一パブリッシャーの頻度キャップ | ❌ No | パブリッシャーのアドサーバーで対応 |
AXE は広告配信のレイテンシ要件に沿って設計されています。
| Operation | Target Latency |
|---|
| セグメント所属判定 | < 10ms |
| ブランドセーフティ評価 | < 20ms |
| 頻度チェック | < 5ms |
| AXE 判定全体 | < 50ms |
関連ドキュメント