Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

メタデータ属性

最終更新 Markdown で表示Agent セットアップ

メタデータ属性を使うと、インデックスしたドキュメントを整理し、AI の応答を導く文脈を渡せます。このページでは、組み込みのメタデータ属性とカスタムメタデータのスキーマを扱います。クエリ時にこれらの属性で検索結果をフィルタするには、フィルタリング を参照してください。

組み込みメタデータ属性

AI Search は、インデックスしたドキュメントから次のメタデータ属性を自動で抽出します。

属性 説明
filename ファイル名です。 guide.pdf または docs/getting-started/guide.pdf
folder オブジェクトのフォルダーまたはプレフィックスです。 docs/getting-started/guide.pdf の場合、フォルダーは docs/getting-started/
timestamp オブジェクトが最後に変更された Unix タイムスタンプ(ミリ秒)です。比較は秒に切り下げます。 1735689600000(2025-01-01 00:00:00 UTC)

カスタムメタデータ属性

カスタムメタデータを使うと、検索結果のフィルタ用に追加フィールドを定義できます。ドキュメントに構造化メタデータを付け、カテゴリ、バージョン、任意のカスタムフィールドでクエリをフィルタできます。

対応データ型

説明 値の例
text 文字列 "documentation""blog-post"
number 数値(float として解析) 2.5100-3.14
boolean 真偽値 truefalse10yesno
datetime 日時 "2026-01-15T00:00:00Z"

スキーマを定義する

カスタムメタデータを抽出するには、先に AI Search の設定で custom_metadata フィールドを使いスキーマを定義します。スキーマは、抽出するフィールドとそのデータ型を指定します。

custom_metadata: [
	{ field_name: "category", data_type: "text" },
	{ field_name: "version", data_type: "number" },
	{ field_name: "is_public", data_type: "boolean" },
];

スキーマの制約:

  • AI Search インスタンスあたり、カスタムメタデータフィールドは最大 5 つです
  • フィールド名は大文字と小文字を区別せず、小文字で保存します
  • フィールド名に予約名は使えません: timestampfolderfilename
  • スキーマを変更すると、全ドキュメントの再インデックスが始まります

ドキュメントにカスタムメタデータ属性を付ける

カスタムメタデータ属性の付け方は、データソースによって異なります。

  • R2 bucket: S3 互換のカスタムヘッダー(x-amz-meta-*)でメタデータを設定します。例は R2 のカスタムメタデータ を参照してください。
  • Website: HTML ページに <meta> タグを追加します。詳細は Web サイトのカスタムメタデータ を参照してください。
  • 組み込みストレージ: Items API でファイルをアップロードするときにメタデータを付けます。

再インデックスの動き

custom_metadata スキーマを変更すると、次の処理が行われます。

  1. 新しいフィールドが検索インデックスに追加されます。
  2. 削除したフィールドは検索インデックスから消えます。
  3. 全ドキュメントの再インデックスが始まります。
  4. 既存のベクトルは、新しいメタデータ構造で更新されます。

メタデータの保存とフィルタリング

AI Search は、各ベクトルのメタデータを、共有の 10 KiB コンパクト JSON UTF-8 エンベロープに保存します。エンベロープには、フィールド名、JSON 構文、必須の AI Search システムメタデータ、顧客メタデータが含まれます。フィールドごとの上限ではありません。

設定したカスタムフィールドは、宣言していないソースメタデータより優先されます。AI Search はメタデータを決定的に組み立て、収まる完全な値を残します。容量が残っている場合、設定した文字列値は UTF-8 の文字境界で切り詰められます。必須の AI Search メタデータは常に保持します。

インデックスした各文字列のうち、フィルタできるのは先頭 64 UTF-8 バイトだけです。より長い文字列も保存できますが、先頭 64 バイト以降はフィルタできません。Vectorize の詳細は 上限メタデータフィルタリング を参照してください。

制限

制約 上限
カスタムフィールドの最大数 AI Search インスタンスあたり 5 つ
ベクトルあたりのメタデータ 合計 10 KiB(システムデータと JSON 構文を含む)
フィルタ可能なインデックス文字列 各文字列の先頭 64 UTF-8 バイト
予約フィールド名 timestampfolderfilename
フィールド名の照合 大文字と小文字を区別しない

役に立ちましたか?