Zeta-Lite: A Concurrent, Branchable In-Browser SQL Database for Agentic Memory
Zeta-liteは、WebAssembly上に構築された、コンパクトで並行処理が可能かつブランチ可能なインブラウザSQLデータベースエンジンであり、エージェンティックなメモリおよびローカルファーストなアプリケーション向けに最適化された、オーバーラップ可能なスナップショット分離トランザクションとコピーオンライトによるデータベースブランチングを実現する、機能的に完全なPostgreSQLインターフェースを提供します。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
何十年もの間、インターネットは単純なルールに基づいて動作していました。それは、あなたのデータはどこか別の場所にあるサーバーに存在し、あなたのコンピュータはそれを眺めるための単なる窓であるというルールです。データを検索、ソート、または分析したい場合は、ネットワーク越しにリクエストを送り、答えが返ってくるのを待たなければなりませんでした。このモデルは、アプリケーションがより高度なプライバシーと、インターネット接続なしで動作する能力を求め始めるにつれて変化しました。遠く離れたクラウドではなく、ユーザーのデバイス上にデータを保持するという考え方が優先事項となったのです。この変化は、ソフトウェアエンジニアに新たな課題をもたらしました。それは、ブラウザの中で完全に動作する、強力で構造化されたデータシステムをどのように構築するかという課題です。ブラウザは安全で隔離されるように設計されているため、通常はコンピュータのオペレーティングシステムへの深いアクセスを必要とする複雑なソフトウェアを実行するには難しい場所なのです。
伝統的な解決策は、既存のデータベースシステムを縮小させるか、高度な機能を欠いた非常に単純なツールを使用することでした。人気のあるアプローチの一つは、大規模なデータベースエンジンを取り出し、ブラウザが理解できる形式に変換して削ぎ落とすことですが、これを行うと多くの場合、ソフトウェアの動作が遅くなったり、一度に複数のタスクを処理できず、単一の作業ライン(シングルスレッド)で動作したりすることを余儀なくされます。もう一つのアプローチは、非常に軽量で高速ですが、複雑な検索を行ったり、異なる情報間の入り組んだ関係を管理したりすることができない、極めて小さなエンジンを使用することです。問題は、ブラウザに収まるほど小さく、瞬時と感じられるほど速く、かつ同時に複数の重なり合うタスクを処理できるほど賢いデータベースを持つことが可能なのかどうかでした。
ある研究者が、Zeta-liteと呼ばれるシステムを構築し、この問いに対して「イエス」という明確な答えを出しました。彼らは、圧縮時にわずか2.87メガバイトというサイズで、ウェブブラウザ内に完全に存在するデータベースエンジンを作り上げました。その小ささにもかかわらず、このシステムは複雑な検索を実行し、複数のユーザーによる同時作業を管理し、さらには元のデータを危険にさらすことなく新しいアイデアをテストするために、自分自身のコピーを作成することさえできます。このシステムは、ブラウザ内で動作し、自身の思考、記憶、そして発見を保存する必要がある、新しい種類のソフトウェア、すなわち人工知能エージェントのために特別に設計されています。研究者は、データベースがその履歴を記憶する方法を変更することで、これほど小さなプログラムとしては以前は不可能だと思われていたレベルのパフォーマンスと柔軟性を実現できることを見出したのです。
彼らの発見の核心は、データベースが時間をどのように扱うかにあります。ほとんどの伝統的なデータベースは、前の車が通り過ぎるのを待たなければならない一本道の道路のように機能します。もし二人が同時に同じ情報を更新しようとすれば、一方は待たなければなりません。Zeta-liteは異なって動作します。一本道ではなく、あらゆるデータがバージョンの履歴を持っているものとして扱います。タスクが開始されるとき、それはその瞬間のデータのスナップショットを取ります。すると、他のタスクが同時に進行している間も、独自の「真実のバージョン」に対して作業を進めることができます。もし二つのタスクが同じものを変更しようとした場合、システムは衝突を検知して一方を停止させますが、彼らを列に並ばせて待たせることはありません。これにより、通常は複雑で重厚なハードウェアや、ほとんどのウェブサイトが使用できない特別なブラウザ設定を必要とする、単一の実行スレッド上で複数のタスクを同時に実行することが可能になります。
この重なり合うタスクを処理する能力は、「ブランチ(分岐)」と呼ばれるユニークな機能と組み合わされています。ソフトウェア開発の世界では、ブランチを作成するということは、元のプロジェクトを壊すことなく新しいアイデアに取り組むためにプロジェクトのコピーを作成することを意味します。Zeta-liteはこの概念をデータそのものに直接持ち込みます。アプリケーションは、データベース全体を新しいブランチへとフォーク(分岐)させ、変更を加え、テストを行い、それらの変更をメインのデータベースにマージ(統合)するか、あるいは完全に破棄するかを決定できます。これは、変更の差分のみを保存するため、追加のストレージ容量を消費することなく、ほぼ瞬時に行われます。人工知能エージェントにとって、これは強力なツールです。エージェントは仮説を探求したり、新しい計画を試したり、会話をシミュレーションしたりすることができ、もし失敗した場合には、元の記憶を完璧に保ったまま、その実験を単に消去することができるのです。
研究者は、これが単なる理論的な概念ではなく、実際に動作する現実であることを確認するために、このシステムを厳格にテストしました。彼らは、ChromeとFirefoxという二つの最も人気のあるウェブブラウザでこのデータベースを実行し、標準的なコンピュータ上で動作するネイティブ版と比較しました。その結果、ブラウザ版はネイティブ版とほぼ同等の速度であり、毎秒数十万回のデータルックアップを処理できることが分かりました。複数のタスクが同時に同じデータを更新しようとするテストにおいても、システムはクラッシュしたり速度が低下したりすることなく、正常に衝突を管理できました。また、システムが数百万件の操作を扱うように成長しても、データを失ったりメモリリー口(リーク)が発生したりすることなく、長期間動作できることも検証されました。データベースはその状態をブラウザのプライベートストレージに完全なスナップショットとして保存することで永続化させましたが、このプロセスは大量のデータであっても1秒足らずで完了しました。
この成果が特に重要な理由は、このようなシステムを動かすために通常必要とされる、複雑で重厚なインフラストラクチャに依存していない点にあります。同様の機能を提供するほとんどのブラウザベースのデータベースは、ウェブサイトをインターネットの他の部分から隔離させるための特別なセキュリティヘッダーを必要とし、それが使用場所を制限してしまいます。Zeta-liteはこれを完全に回避しています。これは、ウェブサイトの残りの部分と同じ場所であるブラウザのメインスレッド上で動作し、追加のセキュリティ対策やバックグラウンドワーカーを必要としません。つまり、サイトの構築方法やホスティング方法を変更することなく、あらゆるウェブアプリケーションに組み込むことができるのです。このシステムは、より大規模なサーバー用データベースと同じコードベースから構築されており、高度なデータ管理に必要な複雑なロジックが、そのパワーを失うことなく、極めて小さなパッケージに圧縮できることを証明しています。
この研究の含意は、単なる速度やサイズにとどまりません。それは、自らのデータをローカルで記憶し、推論できる新しい世代のアプリケーションへの扉を開きます。例えば、あなたの個人的な履歴を保存し、あなたとのやり取りから学び、あなたの情報を整理することができる、ブラウザ内で動作するAIアシスタントを想像してみてください。ブランチ機能を持つメモリによって、このアシスタントは、あなたのノートの整理方法や一日の計画の立て方をいくつか試し、上手くいった結果だけを保持することができます。研究者はすでに、これらの機能を活用して、そのようなエージェントのためのメモリシステムとなる、Zengram-liteと呼ばれるコンパニオンシステムを構築し始めています。
論文は、次のような古い仮定はもはや真実ではないと結論付けています。「小さくて単純なデータベースか、大きくて強力なデータベースかのどちらかを選ばなければならない」という仮定です。データのバージョニングとタスクの管理方法を再考することで、その両方を手に入れることが可能です。Zeta-liteエンジンは、フル機能で、並行処理が可能で、ブランチ機能を持つデータベースが、ウェブブラウザの中に収まり、ネイティブソフトウェアに匹敵するレベルで動作できることを実証しています。これはシミュレーションでも将来の技術の約束でもありません。これは、プライベートで高速、かつ複雑な推論が可能なアプリケーションをユーザーのデバイス上で直接構築したいと考える開発者のために、今日利用可能な、実際に動作しているシステムなのです。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。