エージェントのための安全なサンドボックス

SPACEはAIエージェント向けに特化して構築されたPerplexityのサンドボックスプラットフォームであり、機能性、効率性、セキュリティを向上させます。

A glowing glass cube filled with lush green plants sits in a dark forest, with lines of white computer code floating across its transparent surface.

AIエージェントは、ファイルの編集、コードの実行、数時間から数日にわたる複数ステップのタスクの遂行など、実務を我々に代わって行います。これには多くの場合、機密情報へのアクセスが必要となるため、モデルの賢さ以上に、エージェントがどこで実行されるかが重要になります。

サンドボックスはエージェントを保護し、必要なタスクを完了させるためにツールやファイルへのアクセスを許可する一方で、機密情報を保護します。

当社のエージェントプラットフォームであるComputerを構築する際、私たちは既存のサンドボックスの選択肢を検討しました。すべての選択肢において、機能性、効率性、セキュリティの間のトレードオフを考慮する必要がありました。Perplexity Computerにはそのすべてが必要であったため、私たちは全く新しいタイプのサンドボックスを構築しました。

本日、私たちはSPACEを発表します。これは、高度なエージェントシステムに対して最高レベルのセキュリティを提供しながら、Computerの能力を最大限に引き出すために設計されたサンドボックスプラットフォームです。

サンドボックスアーキテクチャの再発明

SPACEは、コードの実行、ファイル操作、その他のタスクに必要な間だけ存続する一時的なサンドボックスを立ち上げます。タスクが終了すると、そのサンドボックスと内部のすべてが破棄されます。

再起動後も保持する必要がある長期的な作業に対して、SPACEは各サンドボックスを、一時停止、再開、または複数のサンドボックスへの分岐が可能なセッションでラップします。SPACEのローリングスナップショット技術により、個々のサンドボックスが存続しない場合でも、作業に伴うコンテキストを保持することができます。

従来のトレードオフの解消

ほとんどのサンドボックスプラットフォームは、機能性、効率性、セキュリティという3つの変数のうち2つしか解決できません。1つを最適化しようとすると、他の何かが犠牲になる傾向があります。強力な分離プリミティブを持つソリューションであっても、環境内に認証情報を露出させてしまうものがあります。また、短期間のジョブをうまく実行できても、セッションが長時間実行される必要がある場合に状態が失われ、失敗するものもあります。

SPACEは、専用サービス間で懸念事項を分離することで、これら3つすべてを解決します。ネットワークゲートウェイ、Spaceデーモン、ファイルサービスは、スタックの異なる部分をそれぞれ保護します。また、サンドボックス外からの認証情報は、必要な瞬間にのみ提供されます。

この設計により、侵害されたエージェントはデフォルトではプラットフォーム管理の認証情報にアクセスできません。また、セッションの期間やバックエンドに関係なく、与えられたタスクの範囲を超えたアクセス権限を持ちません。

3層のセキュリティの構築

SPACEは、それぞれが強力なセキュリティ対策を組み込んだ3つの主要なレイヤーで構成されています。

コントロールプレーン:SPACEアーキテクチャの最初のレイヤーであるコントロールプレーンは、サンドボックスのライフサイクルをオーケストレーションする役割を担います。単一のAPIを通じてすべてのリクエストを受け取り、サンドボックスの状態を追跡し、リアルタイムでどのバックエンドにルーティングするかを決定します。タスクに新しいサンドボックスが必要なタイミングを判断します。また、タスクが完了し、対応するサンドボックスを破棄できるタイミングも決定します。コントロールプレーンはステートレスで中央集権的にホストされているため、ローカルマシンを含む既存のあらゆるインフラストラクチャ上で同じAPI呼び出しが機能します。

ノードレベルのサービス:SPACEにおいて、ノードレベルのサービスはPerplexityのセキュリティ態勢が際立つ部分です。SPACEでは、認証情報がサンドボックス内を通過することはありません。代わりに、サンドボックス外から必要な瞬間にのみパスされます。エージェントがGoogleアカウントへの一時的な接続アクセスを必要とする場合、SPACEはサンドボックス内に認証情報を露出させることなくサインインフローを処理できます。送信ネットワークトラフィックもノードレベルで制御されます。侵害されたエージェントは、許可された範囲外のものには到達できません。

サンドボックス内:サンドボックス内のレイヤーは、SPACEの最後の防御線です。SPACEでは、各タスクは独自のオペレーティングシステムを持つ完全に分離された環境であるFirecracker microVM内で実行されます。つまり、内部のいかなるものも、ホストや並行して実行されている他のサンドボックスに影響を与えることはできません。Spaceデーモンは、Perplexityのコントロールプレーンと通信する唯一のプロセスです。これには、開始、一時停止、スナップショットコマンドといった運用シグナルが含まれます。これにより、通信チャネルの監査と制御が可能になります。

一連の完全な制御の提供

SPACEは、完全な制御セットを提供する点で他のプロバイダーとは一線を画しています。SPACEは、一時停止と再開、セッションのフォーク、セッションごとの認証情報の分離、プロトコル転送、マルチバックエンドオーケストレーションを単一のプラットフォームに統合しています。

SPACEはセッション全体の状態のローリングスナップショットを撮影し、ライブメモリとファイルを最短1分間隔でキャプチャします。1週間前まで遡ることも可能です。これは本質的に内蔵されたタイムマシンのようなもので、誰でもタスクの途中で離席し、1週間後に戻ってきても、エージェントは一時停止した地点から正確に再開できます。

SPACEはデフォルトでサンドボックスを信頼できないものとして扱い、ネットワーク制御、認証情報制御、テナント分離、暗号化ストレージで囲い込みます。1つのレイヤーが侵害されても、他のレイヤーが個人情報を保護します。

SPACEを使用することで、エンタープライズ顧客は独自の暗号化キーを持ち込むこともできます。顧客がキーを取り消すと、新しいサンドボックスは起動できず、既存の顧客暗号化データは復号できなくなります。

特に機密性の高いデータを扱う方のために、SPACEはオンプレミスおよび完全にオフラインの両方で動作するように設計されています。このレベルの制御により、データは安全な環境の外に出る必要がありません。

Perplexityを支える力

Perplexityのエンジニアは、10週間でSPACEをコンセプトから製品へと昇華させました。私たちは過去2ヶ月間、社内でSPACEを使用してきました。先週だけで、数百万回のサンドボックス作成と数千万回のサンドボックス再接続をサポートしました。本日、すべてのユーザーに向けてComputerで公開されています。

SPACEはどこでも動作するように構築されました。NVIDIA Vera CPUでの初期テストにおいて、実際のComputerスタイルのワークフローは、現在の本番環境の基準と比較して約1.5倍高速に実行され、同時サンドボックスの開始は最大1.9倍高速でした。この初期のシグナルは、Veraがエージェントサンドボックスに卓越した価値を提供し、SPACEの根底にあるバックエンドの非依存性を裏付けるものであることを証明しています。

安全な環境への投資

私たちは、機能性、効率性、セキュリティの間にトレードオフがあってはならないと信じています。エージェントは、我々が人間であるチームメイトに寄せるのと同じ信頼を持って、我々と同じデータにアクセスし、業務を行うべきです。

SPACEは、この安全な環境の最初の反復に過ぎません。AIが進化し続けるにつれて、当社のセキュリティおよびインフラストラクチャシステムも進化していきます。

詳細は「Making SPACE: Secure and Efficient Runtimes for Long-Running Agents」をご覧ください。