監視の仕組み
Page Deltasは、適応型スケジュールに基づいてモニターを実行し、最も効率的な方法で各ページを取得。LLMフィルターを使用して、重要なアラートのみをお届けします。
チェックのライフサイクル
- スケジュール。 中央スケジューラーが
next_check_atを迎えたモニターを選び、Postgresのキューにジョブを入れます。 - 取得。 ワーカーがジョブを引き受け、ページを取得します(通常のHTTP、次にデータセンタープロキシ経由のヘッドレスブラウザ、次にレジデンシャルプロキシ。詳細は後述)。
- 抽出。 HTMLが主要なテキストコンテンツに削減されます。定型文(ナビ、フッター、広告)は取り除かれます。
- ハッシュ & 差分。 正規化されたハッシュが前回のチェックと比較されます。同一であれば、ここで処理は終了し、LLMの呼び出しは行われません。
- LLMフィルター。 ハッシュが変わった場合、差分とモニターの説明文がLLMに送信され、変更に意味があるかどうかが判断されます。
- アラート。 意味のある変更は
monitor_changesに書き込まれ、モニターに関連付けられた各チャネルへの配信キューに入れられます。
適応型スケジューリング
チェック頻度を手動で設定する必要はありません。スケジューラーがページの実際の更新頻度を観察し、それに応じて next_check_at を調整します。頻繁に更新されるページは早く、動きのないページはゆっくりチェックされます。また、プランも頻度に影響し、上位プランほど優先度が高くなります。これにより、価値に見合ったリソースの利用が可能になります。
取得機能のエスカレーション
各チェックは低コストな方法から始まり、必要な場合にのみエスカレーションします:
- 通常のHTTP。 JavaScriptなし、ブラウザなし。高速で低コスト。サーバーサイドレンダリングのページやJSONエンドポイントの多くで機能します。
- データセンタープロキシ経由のヘッドレスブラウザ。 ページがクライアントサイドレンダリングされている場合や、通常の取得がブロックされた場合に使用されます。指紋認証をバイパスするために高度にカスタマイズされたFirefoxである Camoufox を使用し、Oxylabsのデータセンタープロキシ経由でレンダリングします。
- レジデンシャルプロキシ経由のヘッドレスブラウザ。 データセンタープロキシ経由でもブロックされる場合に使用されます。OxylabsのレジデンシャルIP経由で同じブラウザリクエストをルーティングします。
コスト管理のため、レジデンシャルプロキシ経由の通信量は組織ごとに追跡されます。
LLMフィルター
ページのテキストハッシュが変わっても、すぐにはアラートを出しません。まず、差分とモニターの説明文をLLMに送り、一つの質問を投げかけます: 「この説明文に照らして、この変更には意味がありますか?」
検出されるものの例
- 競合価格ページでの価格変更。
- ロードマップや変更履歴での新製品の発表。
- 監視している採用ページでの求人情報の変更。
無視されるものの例
ハッシュ化の前に空白や定型文(ナビ、フッター、広告)は取り除かれるため、LLMには届きません。その上で、分類器は以下を「意味がないもの」として扱うよう指示されています:
- 入れ替わるおすすめ、広告、「3日前に更新」のようなタイムスタンプ、閲覧数。
- 意味的な変更を伴わない順序の入れ替え。
- ビルドハッシュやセッション識別子。