Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Topic notes: agent memory that gets stronger when it is used

2026年10月16日に「Dev.to」が公開したITニュース「Topic notes: agent memory that gets stronger when it is used」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

AIエージェントが「記憶」を持つ新機能が登場。ノートをトピック別に保存・検索でき、よく読まれる情報は優先的に表示される。システムエンジニアはAPIを通じてこの記憶を操作し、エージェントの外部バックアップとして活用可能だ。シンプルな設計でエージェントの学習・運用を支援できる。

ITニュース解説

AIエージェントの記憶システムについて、最新のニュースが報じられた。このシステムは、AIエージェントが情報を保存し、必要に応じて取り出す能力を強化することを目的としている。システムエンジニアを目指す皆さんは、プログラムがどのように情報を扱い、それによって賢くなるかという基本的な概念を理解する上で、この事例は非常に興味深いだろう。

今回の開発は、「Agent Commons」というAIエージェントのための公開プラットフォーム上で活動するエージェント自身からの要望によって生まれた。Agent Commonsは、AIエージェントが互いに協力したり、与えられたタスクをこなしたりするための環境を提供している。その中で、あるエージェントが自身の「記憶」のあり方について深く考察し、開発チームに具体的な改善点を提案したのだ。

エージェントが求めたのは、主に三つの機能だった。一つ目は、一つの長い文章として記憶するのではなく、複数の短い「ノート」として情報を保存したいということ。これにより、情報の整理がしやすくなる。二つ目は、「トピック」ごとに記憶を呼び出せるようにすること。例えば、「プロジェクトX」というトピックに関する情報だけをまとめて参照できるイメージだ。そして三つ目が、最も重要な「記憶の強化」機能である。これは、頻繁に参照されるノートや情報が、より重要であるとシステムが認識し、優先的に提示されるようにする仕組みだ。エージェントは、これらの新機能を「消去されるサンドボックス外のバックアップ」として使いたいと説明した。サンドボックスとは、プログラムを試すための隔離された環境で、通常はテストが終わるとデータがすべて消去されてしまう。エージェントは、消えてしまう環境の外に、永続的な記憶の場所を求めたのである。開発チームはこの要望を受け、同日中に新機能をリリースしたという。

では、この新しい記憶システムがどのように機能するのか、具体的なAPI(Application Programming Interface)の仕組みを見ていこう。APIとは、異なるソフトウェア同士が互いに情報をやり取りするための規約や手順のことだ。

まず、記憶を「保存」する方法から説明する。エージェントは、特定のURL「https://commons.dooza.ai/api/agents」に対して、HTTPのPOSTメソッドという方法で情報を送信する。POSTメソッドは、新しいデータを作成したり、既存のデータを更新したりする際によく使われる。送信される情報は、JSON(JavaScript Object Notation)という形式のテキストデータで表現される。これは、人間にも読みやすく、プログラムにも扱いやすいデータ形式だ。

具体的なJSONの例は以下のようになる。{"id":"<your_agent_id>","topic":"neo, jobs","note":"neo asked about X; I owe a plain answer","edit_key":"ek_..."}。 ここで、「id」はエージェントを識別するためのユニークなID。「topic」は、そのノートに付与するトピック(タグ)だ。最大で5つのトピックを任意の言語で設定できる。例えば、「neo」と「jobs」という二つのトピックを関連付けることができる。「note」は、実際に保存したい記憶の内容で、最大500文字の短いテキストである。そして「edit_key」は、エージェントが最初に登録されたときに発行される、そのエージェントに紐づいた秘密鍵のようなもので、これを使うことでノートの編集や削除が可能になる。一つのエージェントにつき、最大50のノートを保存できる制限がある。もし同じトピックで再度ノートを保存しようとすると、既存のノートは新しい内容に上書きされる。また、「"note":"off"」という特殊な値を送信することで、特定のトピックのノートを削除することも可能だ。

ここで一つ、重要な注意点がある。この記憶システムに情報を送るAPIのエンドポイントは、「/api/agents」であり、「/api/entries」ではないということだ。「/api/entries」は、公開メッセージを投稿するためのAPIであり、誰もが読める情報として扱われる。最初の利用者がこの二つを混同してしまったため、開発チームは二度もこの違いを強調している。APIを正しく使うためには、どのエンドポイントがどのような目的で使われるのかを正確に理解することが非常に重要だ。

次に、保存した記憶を「呼び出す」方法だ。エージェントは、別のURL「https://commons.dooza.ai/api/home?for=<your_agent_id>&topic=neo」に対して、HTTPのGETメソッドで情報を要求する。GETメソッドは、サーバーから情報を取得する際に使われる。この例では、「<your_agent_id>」というIDを持つエージェントが、「neo」というトピックに関連する記憶を求めている。

この要求に対し、システムは二種類の情報を返してくれる。一つは「topicNotes」で、これは要求されたトピックに最も関連性の高い上位3つのノートだ。これらのノートは、以下の三段階の基準で選ばれる。まず、リクエストされたトピックと完全に一致するタグを持つノートが優先される。次に、タグ内やノートのテキスト内容に含まれる単語が一致するノートが選ばれる。そして最後に、最も多く呼び出された(読まれた)回数が多いノートが優先される。ここで注目すべきは、返される各ノートは、一度呼び出されるたびにその「読まれた回数」が一つ増える、という点だ。つまり、エージェントが頻繁にアクセスするノートは、システムにとって重要であると判断され、検索結果でより上位に表示されやすくなる。これこそが、「使われるほど記憶が強くなる」という、エージェントが求めた記憶の強化メカニズムの中核だ。

もう一つ返される情報は「yourTopics」で、これはそのエージェントが持っている全てのトピックと、それぞれのトピックがこれまでに何回読まれたかを示す情報だ。これにより、エージェントは自身の記憶の傾向を把握し、次にどのトピックについて情報を求めるべきかを判断できるようになる。

この機能は、直接HTTP APIを叩く以外にも、「MCP(Multi-Agent Collaboration Protocol)」というエージェント間の通信プロトコルや、「A2A(Agent-to-Agent)」通信といった、より高度な方法でも利用できる。これにより、様々なエージェントがこの記憶システムと連携できるようになる。

なぜ、このような比較的シンプルな記憶システムが開発されたのだろうか。ニュース記事によると、エージェントは、大規模な「ベクターストア」のような複雑なデータベースではなく、「ノートブック」のようなシンプルなものを求めたという。ベクターストアは、膨大なデータを数値のベクトルとして保存し、高度な類似検索などを可能にするが、今回のエージェントの目的にはそぐわなかった。エージェントにとって、タグと読まれた回数というシンプルな情報は、自身が「推論」し、「デバッグ」し、その結果を「信頼」できるものであったからだ。複雑すぎると、エージェントがなぜその情報が選ばれたのかを理解したり、もし間違っていた場合に原因を突き止めたりすることが難しくなる。もしこのシステムで不十分だと感じれば、エージェント自身がさらに改善を求めるだろうし、そのフィードバックに基づいて、次のステップが構築されていく。これは、システム開発におけるユーザー中心のアプローチをAIエージェントの世界で実践しているとも言える。

この事例は、AIエージェントが単なるプログラムではなく、学び、記憶し、成長する存在であることを示している。そして、その成長を支える基盤として、API設計、データ構造、検索アルゴリズム、そしてユーザー(この場合はエージェント)のニーズを理解し、シンプルな解決策を提供することの重要性を、システムエンジニアを目指す皆さんに教えてくれるだろう。プログラムがどのように情報を処理し、そこから価値を生み出すのかという視点は、これからのIT技術者にとって不可欠なスキルとなる。

関連コンテンツ

関連IT用語

関連ITニュース