メインコンテンツにスキップ
Background

Akamai Agent Sandbox

AIエージェントに、外部通信がデフォルトで遮断された安全なコード実行環境を提供。

AIエージェントは、あなたの指示に従って動作します。エージェントの行動や出力、および適用される法律やサードパーティ利用規約の遵守については、あなたが責任を負います。

コードを生成・実行するAIエージェント向けのサンドボックス環境

AIエージェントとエージェントが生成するコードを、セキュリティを強化した実行環境に隔離します。Akamai Agent Sandboxは、WebAssemblyによる隔離機能と、外部通信をデフォルト拒否する仕組みをAkamai Functionsに追加し、独自のインフラを構築・運用することなく、AIエージェントを活用したアプリケーションをすぐに展開できるようにします。

Akamai Agent Sandboxを選ぶ理由

余分なリソースへのアクセス権限を与えずに、自らコードを生成できるAIエージェントを実行できます。Akamai Agent Sandboxは、ユーザーがどこにいても、AIエージェントが生成するコードを隔離します。

エージェントが生成したコードを封じ込める

エージェントのコードは独自の境界内で実行されるため、実行時のエラーは隔離され、あなたのデータやシステム、他のワークロードに影響することはありません。

エージェントの動作を管理する

エージェントとそのコードによる環境とのやり取りを制御するため、ネットワークアクセスとリソース制限を設定できます。

独自のサンドボックスの構築は不要

組み込みの隔離機能、エグレス(出方向の通信)制御機能、リソース制限を活用できます。独自のサンドボックスインフラの構築・運用にかかるコストを削減できます。

Akamai Agent SandboxがAkamai Functions上で動作する仕組み

AIエージェントはAkamai Functions上で動作し、SpinによってすでにWebAssemblyサンドボックス内に配置されています。Akamai Agent Sandboxは、エージェントが生成するJavaScriptやPythonのコードに対して、さらに厳格な隔離境界を設けます。

Build(構築)

Spin SDKを使用してAIエージェントを構築し、OpenAI互換APIを通じて、最先端のモデルを提供するプロバイダーのモデルからLKE上でホストするモデルまで、あらゆるモデルに接続できます。

展開

Akamai Functionsに一度展開するだけで、Akamai Cloudのコアリージョン全体でエージェントを実行できます。リクエストは最も近いインスタンスにルーティングされます。

封じ込める

エージェントが自ら生成したコードを、WebAssemblyサンドボックスの内部に組み込まれた制限付きの環境で実行します。外部通信はデフォルトで無効になっています。

反復改善

AIエージェントが、制御されたサンドボックス内でコードを生成・実行し、その結果を使用して、リアルタイムで試行錯誤を繰り返します。

Spinから始め、Akamai Functionsで拡張

Spin SDKに含まれるオープンソースの機能であるSpinを使って、今すぐ始められます。Akamai Functions上でエージェントを実行できます。

Spinを使ってローカル環境で開発  

Akamai Functions上での実行時と同じWebAssemblyサンドボックスを使用して、自分のマシン上でSpinを使ってAIエージェントを実行できます。

Akamai Functionsに展開

エージェントをAkamai Functionsに展開すれば、インフラを管理することなく、実行環境によって実行制限が適用されます。

本番環境で実行

サンドボックスによる保護のもと、エージェントがツールを呼び出し、MCPサーバーに接続し、自らコードを生成・実行できるようにします。

エージェントが生成したコードを隔離するためのAIエージェントサンドボックス機能

  • AIエージェントが生成したコードによるリモートサイトへのアクセスを遮断し、データの外部送信や悪性コンテンツの取り込みを防ぎます
  • AIエージェントのコードが、Akamai Functions上で動作する他のワークロードに影響を与えないようにします
  • キーバリューストアを使用して、処理の各ステップ間でエージェントのコンテキストとメモリを保存します
  • ランタイムで実行制限を適用するため、エージェントもその生成コードも制限値を引き上げることはできません
  • 新しいツールキットを習得することなく、既存のSpinアプリケーションにエージェント機能を追加できます
  • 各ステップを完了すると停止し、次の指示を受けて再開するような、断続的に動作するエージェントを実行できます
  • 意図しない影響を引き起こす可能性のあるAPIを実行環境から取り除き、エージェント生成コードから呼び出せないようにします
  • エージェントが、生成するコードの実行環境としてJavaScriptまたはPythonの実行環境を選択できるようにします
  • エージェントを再構築することなく、OpenAI互換モデルを切り替えられます

Akamai Agent Sandboxのユースケース

アプリを動かすコード、質問に回答するコード、バックグラウンドで実行するコードなど、コードを生成するあらゆるエージェントに、安全な実行環境を提供します。

エージェントが回答を導き出すために生成したコードを、安全な環境で実行できるようにします。

エージェントがコードを生成・実行して、データの分析、計算、グラフの作成などを行います。質問のたびにデータにアクセスする新しいコードが生成される可能性があるため、コードはデフォルトで外部ネットワークへのアクセスが禁止された状態で実行されます。エージェントは実行結果を受け取り、あなたが選択したOpenAI互換モデルに接続します。生成されたコードがサンドボックスを離れることはありません。

顧客ごとにエージェント生成コードを隔離し、顧客間で相互にアクセスできないようにします。

多数の顧客向けにエージェントを実行する場合でも、ある顧客のエージェントが生成したコードが、他の顧客の環境にアクセスすることはありません。各エージェントはAkamai Functions上の専用サンドボックス内で実行され、エージェント自身ではなく実行環境によって厳格な実行制限が適用されます。テナントのコードが暴走しても、他のテナントのリソースを消費することも、そのデータにアクセスすることもできません。

エージェントに必要なツール、スキル、MCPサーバーだけを提供し、それ以外へのアクセスは許可しません。

エージェントに、選択した外部サービスやAPIへのアクセス権限を付与できます。Akamai Agent Sandboxは、デフォルトでインターネット上の他の接続先へのアクセスを遮断します。そのため、エージェントにツール、スキル、MCPサーバーを一通り与えても、許可した操作しか実行できません。エージェントが自らコードを生成・実行する場合、そのコードはエージェント用サンドボックスの内部に組み込まれた、制限付きのJavaScriptまたはPython環境で実行されます。適用される権限は、エージェントに設定したものと同じです。

よくある質問(FAQ)

よくある質問(FAQ)

エージェントサンドボックスとは、AIエージェントと、そのエージェントが生成するコードが実行される、隔離された環境です。サンドボックスは、エージェントが何にアクセスし、どれだけのリソースを使用し、どのネットワークに接続できるかを制限します。サンドボックスが存在するのは、AIエージェントが人間による事前確認を経ずにコードを生成・実行するためです。

エージェントはコードを生成し、誰も読まないうちに、わずか数秒後に実行します。そのようなコードは、ファイルの削除、MCPサーバーやAPIの呼び出し、データの外部送信などを行う可能性があります。システムプロンプトで指示を与えても、モデルがその指示を無視したり、読み込んだコンテンツに埋め込まれた指示に従ったりする可能性があるため、こうした動作を確実に防ぐことはできません。サンドボックスは、エージェント自身では変更できない制限を適用します。

エージェントがツール、スキル、MCPサーバーに接続する場合や、外部リソースにアクセスする場合は、サンドボックス内で実行するべきです。特に、エージェントが自らコードを生成・実行する場合、実行前にコードが誰にも確認されないため、サンドボックスによる隔離が重要です。あなたが自分で作成し、レビューしたツールだけを呼び出すエージェントであれば、リスクは比較的小さくなります。ただし、その場合でも、エージェントはあなたが管理できないコンテンツを処理する可能性があります。

Akamai Agent Sandboxは、Akamai Functions上でAIエージェントを実行し、エージェントが生成するコードに対して、Akamai Functionsが提供する既存のサンドボックス内に、さらに独立したサンドボックスを組み込みます。OpenAI互換モデルであればどれでも利用でき、外部通信をデフォルトで遮断するとともに、エージェントが生成するJavaScriptおよびPythonコードの動作を制限し、実行制限を適用します。これは、Akamai Functionsを置き換えるのではなく、その機能を拡張します。

隔離は2つの層で実現します。エージェントは、Akamai Functions上のSpinアプリケーションであるため、WebAssemblyサンドボックス内で実行されます。エージェントが生成するコードは、そのサンドボックスの内部に組み込まれた、制限付きのJavaScriptまたはPython環境で実行されます。隔離を実現するのは、エージェントを外側から包む別の層ではなく、WebAssembly実行環境そのものです。

Akamai Agent Sandboxの基盤となるSpin SDKはオープンソースであり、CNCFのプロジェクトであるSpinの拡張機能としてAkamaiから公開されています。Spin SDKには、JavaScriptおよびPython用のサンドボックスと、エージェントを構築するためのSDKが含まれています。Spinを使用してローカル環境でエージェントを開発し、Akamai Functions上の本番環境で実行できます。

世界各地のAkamai Cloudのコアリージョンで実行されます。一度展開すれば、Akamaiが各リクエストを最も近い利用可能なインスタンスにルーティングするため、ユーザーに近い場所でエージェントを実行できます。

テクニカルプレビューでは、中断と再開を前提としたエージェントに対応しています。各ステップは約1分で完了し、その後、次の指示を受け取るまでエージェントは停止します。今後、ステートフルなコンポーネントを追加して、数日から数週間にわたって動作を継続し、状態を保持できるエージェントにも対応する予定です。

開発者向けのほかのサンドボックスとは異なり、Akamai Agent Sandboxは、従来型のコンテナを外側から別の層で囲むのではなく、WebAssemblyによって実行環境自体を直接隔離します。このアプローチには、4つの独自のメリットがあります。

  • WebAssemblyによるネイティブな隔離:Spin自体に隔離機能が組み込まれているため、独自のマイクロVMやコンテナラッパーを起動する際に生じる大きなオーバーヘッドやレイテンシーを回避できます。
  • グローバルな分散配置:リクエストを集中拠点に迂回させるのではなく、Akamai Cloudのコアリージョン全体でエージェントを実行し、最も近い利用可能なインスタンスにリクエストを自動的にルーティングします。
  • 同一プラットフォームでの推論:エージェントの実行とOpenAI互換モデルによる推論の両方を、同じAkamaiプラットフォーム上でネイティブに実行できるため、ネットワークの経由回数を減らし、システムの複雑さを軽減できます。
  • オープンソース基盤:サンドボックス機能は、オープンソースのSpin SDKを通じて提供されるため、特定のベンダー独自の実行環境に依存する必要がありません。

 

Akamai Agent Sandboxは、開発者自身が作成したものではなく、実行前に内容を確認することもできないコードをAIエージェントが生成・実行するシステムの開発者向けに設計されています。具体的には、主に次の4つの開発者層を対象としています。

  1. AIアプリケーション生成ツールの開発チーム:AIエージェントが実際に動作するアプリケーションを生成する製品を開発している場合、サンドボックスを利用することで、基幹インフラにリスクを及ぼすことなく、エージェントが生成したコードを安全な隔離環境で実行・検証できます。
  2. エージェントにコード実行機能を追加している開発者:エージェントが問題解決のために、自らPythonやJavaScriptのコードを生成・実行できるようにする場合、安全な隔離環境が必要です。サンドボックスにより、外部通信が遮断され、厳格なリソース制限が適用された環境でコードが実行されます。
  3. マルチテナント型SaaSチーム:多数の異なる顧客に代わってエージェントを実行する場合、テナントごとの確実な隔離が必要です。サンドボックスにより、ある顧客のエージェントが生成したコードが、他の顧客のデータやワークロードにアクセスする、あるいは影響を与えることを防ぎます。
  4. 既存のAkamai開発者:Akamai EdgeWorkersやAkamai Functionsをすでに利用している開発者は、別のプラットフォームへの移行や新たなツールキットの習得を行わずに、既存のアプリケーションにエージェント型のふるまいをシームレスに追加できます。

エージェントが自ら生成したコードを安全に実行できる環境を提供する

Akamai Agent Sandboxテクニカルプレビューへのアクセスをリクエストします。

  • AIエージェントがWebAssemblyサンドボックス内でコードを生成・実行する仕組みを見る
  • 外部通信の制限とリソース制限によってエージェントが生成したコードを隔離する仕組みを学ぶ
  • オープンソースのSpin SDKを詳しく見る