Hindsight logo

Hindsight

開く

Vectorize が公開したオープンソースのエージェント記憶システム。構造化された事実とメンタルモデルを retain / recall / reflect の3操作で扱い、PostgreSQL に保存。LongMemEval で首位。

共有:
代替ツールを見る

Hindsight

Hindsight は Vectorize チームによるオープンソースのエージェント記憶システムです。主張は明確で検証可能なものです。多くの記憶レイヤーは会話履歴を検索して返すだけですが、Hindsight はエージェントに「学習させる」ことを狙います。一般的な「チャンクに対するベクトル検索」を生体模倣的なデータ構造で置き換え、外部には 3 つの操作だけを公開し、データは PostgreSQL に置きます。

長期記憶ベンチマーク LongMemEval で首位に立ち、1 枚のヒーローチャートではなく、モデル別の精度・レイテンシ・コストを継続的に更新して公開しています。Hindsight のベンチマーク結果は Virginia Tech の Sanghani Center for Artificial Intelligence and Data Analytics と The Washington Post の研究者によって独立に再現されており、他社のスコアは自己申告であることもページに明記されています。

主な機能

  • 塊ではなく記憶タイプ:取り込んだ内容は世界の事実(「ストーブは熱い」)と体験(「触って痛かった」)に分けて統合されます。記憶は bank に格納され、bank はユーザーごとのデータ分離の単位にもなります。
  • 3 つの操作:retain は内容を保存しつつ LLM で事実・時間情報・エンティティ・関係を抽出し、recall は検索し、reflect は既存の記憶に対して推論して、検索では答えられない問いに答えます。
  • ハイブリッド検索:recall はセマンティックなベクトル検索、BM25 のキーワード一致、グラフ探索、時間フィルタを並列に実行し、逆順位融合(RRF)とクロスエンコーダーによる再ランクで統合します。ドキュメントでは本番規模で 50〜500ms の検索レイテンシが示されています。
  • Observations:関連する事実はバックグラウンドで重複排除され、根拠となる引用と証拠件数を保持した信念に統合されます。新しい証拠が届くと上書きではなく「改訂」されます。
  • メンタルモデル:「このユーザーの好みは何か」といった問いへの常設の回答で、Hindsight が書き込み、バックグラウンドで書き直し続けます。読み出しはデータベース読み取りのみで、検索も LLM 呼び出しも発生しません。
  • 既存スタックで動く:既定は PostgreSQL、エンタープライズでは Oracle AI Database もサポート。Python / TypeScript / Go の SDK、CLI、REST API を提供します。
  • MCP とコーディングエージェント:MCP サーバーと各種統合に加え、npx skills add https://github.com/vectorize-io/hindsight --skill hindsight-docs でドキュメントスキルを導入できます。

ユースケース

  • パーソナルアシスタントやコパイロット:1 つのコンテキストウィンドウ内ではなく、何か月にもわたってユーザーを記憶する必要がある場合。
  • コーディングエージェント:プロジェクトの規約や過去の意思決定を次のセッションへ引き継ぐ用途。Claude Code や Cursor などの統合が用意されています。
  • サポート/セールスエージェント:reflect が効く領域で、たとえばどの働きかけが返信を得やすいかを推論します。
  • 場当たり的なメモファイルを、検索可能でベンチマーク済みの自ホスト型記憶に置き換えたいチーム。

料金

Hindsight は MIT ライセンスで、セルフホストは無料です。公式のデプロイ方法は Docker(推奨)、外部 PostgreSQL を用いる Docker、pip install hindsight-api、Kubernetes 向け Helm チャートです。セルフホストには Python 3.11 以上、メモリ 4GB(本番は 8GB 推奨)、LLM API キーが必要です。

Hindsight Cloud は api.hindsight.vectorize.io のマネージド版で、ダッシュボード、バックアップ、チーム共同作業、99.9% の稼働 SLA を提供します。課金は従量制で開始時の無料クレジットがあり、固定月額や席課金はないと説明されています。予算を立てる際は 料金ページ で最新の数字を確認してください。

クイックスタート

export OPENAI_API_KEY=sk-xxx
docker run -it --pull always --name hindsight --restart unless-stopped -p 8888:8888 -p 9999:9999 \
  -e HINDSIGHT_API_LLM_API_KEY=$OPENAI_API_KEY \
  -v hindsight-data:/home/hindsight/.pg0 \
  ghcr.io/vectorize-io/hindsight:latest

API は 8888、UI は 9999 で立ち上がります。続いてクライアントを入れ(pip install hindsight-client)、3 つの動詞を使います。

from hindsight_client import Hindsight

client = Hindsight(base_url="http://localhost:8888")
client.retain(bank_id="my-bank", content="Alice works at Google as a software engineer")
client.recall(bank_id="my-bank", query="What does Alice do?")
client.reflect(bank_id="my-bank", query="Tell me about Alice")

制限とリスク

  • 記憶の質はモデル次第:事実・エンティティ・関係の抽出は LLM が行うため、弱いモデルや安価なモデルは保存内容の質を下げます。モデル別の差が大きいからこそ、公式がリーダーボードを維持しています。
  • 1 つのベンチマークがすべてではない:看板は LongMemEval であり、ベンダー間の比較は慎重に見るべきです。独立再現が説明されているのは Hindsight の数値だけです。
  • 運用の細部が効く:FAQ には、コンテナ再起動後に worker の識別子が不安定になることで処理が滞留する「ゾンビ操作」と、管理 CLI による復旧手順が記載されています。
  • 1.0 未満:2026-09-25 時点の最新リリースは 2026-09-21 の v0.10.1 で、API はまだ変化しています。

よくある質問

RAG との違いは?

RAG は問い合わせに対して文書チャンクを検索します。Hindsight は構造化された事実を保存し、時間情報つきのグラフに結び、観察へと統合し、単に返すだけでなく推論できます。

どの LLM プロバイダーに対応しますか?

OpenAI、Anthropic、Gemini、Vertex AI、Bedrock、Groq、MiniMax、DeepSeek、Ollama、LM Studio、llama.cpp、OpenAI 互換エンドポイントなど 25 以上です。既存の OpenAI Codex、Claude Code、Cursor、GitHub Copilot のサブスクリプションは API キーなしで利用できます。

自分でインフラを運用する必要がありますか?

いいえ。Docker、pip、Helm でセルフホストするか、クライアントを Hindsight Cloud に向けるだけです。公開される API は同じです。

データはどこにありますか?

セルフホストでは自分が管理する PostgreSQL です。ユーザーの分離は bank を分けることで行います。

代替手段

  • agentmemory:コーディングエージェント向けのローカル SQLite 記憶レイヤー。
  • Letta:MemGPT 系のステートフルエージェントで、クラウド版もあります。
  • LangGraph:記憶の流れを自分で定義したい場合のグラフ型オーケストレーション。
  • Mem0:ホスト版とセルフホスト版のあるベクトル検索型のエージェント記憶。

まとめ

雰囲気で売られがちなカテゴリにおいて、Hindsight は最も検証しやすい選択肢の 1 つです。データ構造を明示し、モデル別リーダーボードを公開し、第三者による再現を許しています。エージェントが物忘れを繰り返し、メモファイルが検索不能なログに育ってしまったなら、まずセルフホストの Docker イメージと 1 つの bank から始め、運用がボトルネックになってから Cloud へ移すのが現実的です。

設計を決める前に Hindsight 公式ドキュメント と、リポジトリからリンクされている LongMemEval の評価方法に目を通してください。

コメント

まだコメントがありません。最初のコメントを投稿してください!