マルチテナンシーこそが、エージェントプラットフォームにおける真の課題である
ほとんどのエージェントのデモがうまくいくのは、ユーザーが一人しかいないからです。
ユーザーが一人であれば、メモリ・ストア、ツールセット、そしてハッピーパスも一つで済みます。分離すべきものは何もありません。
デモをプラットフォームへと進化させる際、難しいのはプロンプトではありません。難しいのは分離(アイソレーション)です。
すべてのデータベースクエリ、キャッシュキー、ストリーム、ツール呼び出し、メモリ検索において、それがどのテナントに属するかを証明できますか?もし一つでもできないものがあれば、それはデータ漏洩の火種となります。
多くのチームはモデルの選択やメモリの品質に注力します。しかし、あるテナントのデータやコストが他のテナントから確実に隔離されているか、という問いを忘れがちです。
分離は、最後に付け加えるタスクではありません。それはプラットフォームの設計そのものです。
真のエージェントプラットフォームを構築するには、以下のメカニズムを備える必要があります:
- グラフ内に引き継がれる、型定義されたリクエストコンテキスト。
- すべての境界におけるスコープ化されたアクセス。
- インシデントになる前にテナントの漏洩を検知できるテスト。
単一ユーザー向けのエージェントは、セキュリティを無視していても、一見すると素晴らしいものに見えるかもしれません。テナントフィルタなしで検索ツールを呼び出したり、単純なIDで履歴を保存したりすることもあるでしょう。これはデモとしては機能しますが、プラットフォームとしては失敗です。
プラットフォームにおいては、エージェントはあらゆるステップを通じて境界を維持しなければなりません。もしエージェントがその境界を失えば、誤った相手に対して完璧な回答を提示してしまう可能性があります。それは「失敗」です。
データ、ツール、またはメモリに触れるすべての操作は、モデルが動作する前にテナ
