TrueFoundry アクセラレーターシリーズ:APIがない場合の障害に強いウェブ自動化の構築

Built for Speed: ~10ms Latency, Even Under Load
Blazingly fast way to build, track and deploy your models!
- Handles 350+ RPS on just 1 vCPU — no tuning needed
- Production-ready with full enterprise support

APIのギャップ
運用チームにとって、午前10時によくあるシナリオです。サプライヤーの在庫確認、競合価格分析の実施、予約の確保など、重要なワークフローを自動化する必要があるにもかかわらず、対象となるプラットフォームはプログラムによるアクセスを提供していません。
接続性の時代に生きているにもかかわらず、多くの価値の高いプラットフォームは、データを「デジタルな堀」の背後に閉じ込めています。公開APIがないため、開発者はウェブスクレイピングという最終手段に頼らざるを得ません。しかし、従来のスクレイピングは非常に脆弱です。それは「脆いセレクター」—ハードコードされたCSSパスやXPath(例:div.btn-primary)—に依存しており、フロントエンド開発者がクラス名をbtn-submitに変更した瞬間に壊れてしまいます。
この問題に対処するため、私たちは レストラン予約自動化アクセラレーターを構築しました。これは、新しい種類の自動化のためのリファレンス実装です。ウェブを単に「スクレイピング」するだけでなく、操作する堅牢なエージェントです。
転換:セレクターからセマンティックな意図へ
このアクセラレーターの核となる革新は、ドキュメントオブジェクトモデル (DOM) から アクセシビリティオブジェクトモデル (AOM)への移行です。
従来のスクリプトでは、ボタンがサイドバーからヘッダーに移動すると、自動化は失敗します。このエージェントシステムでは、推論エンジンにアクセシビリティツリーのスナップショットを提供します。これは、スクリーンリーダー向けに設計されたページのセマンティックな表現であり、スタイリング用のdiv要素を取り除き、インターフェースの核となる機能性を明らかにします。
これにより、システムは座標ではなく意図に基づいて推論できます。 「カレンダーウィジェットが見える。ユーザーのリクエストと一致するので、『15日』をクリックしよう。」 サイトが再設計されても、ボタンのセマンティックな役割が「予約を確定」のままであれば、エージェントは自己修復し、ワークフローは成功します。
アーキテクチャ:コントローラー・ワーカーパターン
私たちは、特殊な方法でアプリケーションを構築しました。 コントローラー/ワーカー パターンです。モノリシックなスクリプトではなく、個別のエージェントが Playwright を実行に、そして LLM を意思決定に利用しています。
図1:概要アーキテクチャ

アーキテクチャ図に示すように、 ワークフローコントローラー が状態を管理し、タスクを2つの専門コンポーネントに委譲します。
- 検索エージェント(探索): このエージェントは、非線形な「ショッピング」フェーズを管理します。
- 動的URL構築: 5つのランディングページをクリックして移動する代わりに、クエリパラメータ(例:?cuisine=italian&party_size=4)を構築して結果に直接移動します。
- コンテキスト抽出: 特定のHTMLタグを必要とせずに、UI内の「カード」を識別して評価、価格、時間枠を抽出します。
- 適応型ナビゲーション: ポップアップやクッキーバナーを、スクリプトをクラッシュさせるエラーとしてではなく、排除すべき「障害物」として扱います。
- 予約エージェント(取引): ターゲットが選択されると、このエージェントがステートフルで高精度なインタラクションを処理します。
- 意味的フォームマッピング: ユーザーデータを、任意のID(input#user_fname)ではなく、ラベル(First Name)に基づいて入力フィールドにマッピングします。
- 時間的推論: タイムピッカーを操作し、「売り切れ」の状態を処理します。要求された午後7時が利用できない場合、午後7時15分の枠を選択するようなロジックにも対応可能です。
インフラストラクチャ:TrueFoundryとモデルコンテキストプロトコル(MCP)
これらのエージェントを本番環境で実行するには、堅牢なコントロールプレーンが必要です。当社は、 TrueFoundryプラットフォーム をインフラストラクチャの管理に、そして モデルコンテキストプロトコル(MCP) をブラウザ統合の標準化に利用しています。
図2:TrueFoundryがアプリケーションライフサイクルをどのようにサポートするか

- TrueFoundry AIゲートウェイ: これにより、必要な統合管理と可観測性が提供されます。エージェントのあらゆる「思考」を一元的に監視し、AOMスナップショットと意思決定ツリーをログに記録できます。重要な点として、レート制限を適用することで、エージェントが「良き市民」として振る舞い、ターゲットサーバーを過負荷にしないようにします。
- MCPと分離: MCPはブラウザの機能を標準化されたツールに抽象化します。プラットフォームは、すべてのユーザーセッションが隔離されたコンテナで実行されることを保証します。これにより、ユーザーAのセッションクッキーとローカルストレージがユーザーBのものから物理的に分離され、データ相互汚染のリスクが排除されます。
ユーザーエクスペリエンス:監視付き自律性
トランザクションワークフローの場合、当社は 「検証後実行」 パターンを実装しています。エージェントは発見の重労働を実行しますが、最終実行の前に人間の確認を必要とします。
ステップ1:意図の特定と情報収集
システムは自然言語入力を受け付け、それらを検索エージェントのために構造化されたJSON(場所、時間、人数)に正規化します。
ステップ2:確認ゲート
空き枠を見つけると、予約エージェントは一時停止します。ユーザーに詳細を提示し、WAIT状態に入り、明確な信号を受け取ってからのみ処理を進めます。
エッジケースへの対応:WAFの問題
Webエージェントの最も重要なテストは、「Human-in-the-Loop」(HITL)シナリオを処理する能力です。現代のサイトでは、Webアプリケーションファイアウォール(WAF)がよく使用されており、これらは自動化を検出するとCAPTCHAやメール認証コードをトリガーします。
標準的なスクリプトはここで失敗します。当社のシステムは、 一時停止・再開ステートマシン。
図3:例外処理ステートロジック

上記の図(ステップ7-11)で詳述されているように、エージェントがチャレンジプロンプトを検出すると:
- 実行を停止し、チャットインターフェースを介してユーザーに通知します。
- ブラウザセッションは維持され(コンテナのTTL内で保持されます)。
- ユーザーがコードを提供すると、エージェントはセッションをシームレスに再開し、予約を完了します。
結論:Webオペレーティング
私たちは「Webスクレイピング」から「Webオペレーティング」へと移行しています。「手」にはPlaywrightを、「目」にはセマンティック推論を活用することで、人間が利用するWebをプログラム可能なインターフェースとして扱うことができます。
このアクセラレーターは、適切なアーキテクチャ(セマンティック解釈、ステートフルなオーケストレーション、そして以下のようなセキュアなインフラストラクチャ)があれば、 TrueFoundry—APIのギャップを埋めるレジリエントな自動化を構築できることを示しています。
TrueFoundry AI Gateway delivers ~3–4 ms latency, handles 350+ RPS on 1 vCPU, scales horizontally with ease, and is production-ready, while LiteLLM suffers from high latency, struggles beyond moderate RPS, lacks built-in scaling, and is best for light or prototype workloads.














.webp)
.webp)


.png)

.png)














