Hindsightのセルフホスティング構築方法。WindowsでAIエージェントに記憶を与える

eyecatch 2450 hindsight v2 AIツール

Hindsightのセルフホスティング構築方法。WindowsでAIエージェントに記憶を与える

前回の記事では、AIエージェントに長期記憶を与えると何が変わるのかをお伝えしました。今回はその続編として、実際にHindsightをセルフホスティングして動かす方法を解説します。

私は普段Windowsを使うことが多いため、この記事ではWindowsネイティブでの構築手順を中心に紹介します。LinuxやDockerでも動きますが、Windowsの手順をそのまま使える形にまとめました。

対象はWindows環境。Google AI Studioの無料枠(Gemini API)を利用し、Hindsight Control Panel(Web UI)で記憶の中身を確認できるところまで、手順を一つずつ紹介します。

> 本記事は2026年8月時点の情報です。Hindsightは開発が活発なオープンソースソフトウェアのため、バージョンアップで手順が変わる可能性があります。最新の情報は必ず公式ドキュメントをご確認ください。

Hindsightとは何か

Hindsightは、AIエージェントに長期記憶を提供するオープンソースのメモリプロバイダです。Vectorize社が開発し、MITライセンスで公開されています。

従来のAIはコンテキストウィンドウの制約から、数回のやり取りしか記憶できず、過去の会話を忘れてしまう問題がありました。Hindsightはこの課題を解決するために生まれました。

特徴は次の3つです。

  • retain(保持): 会話や情報を記憶として保存する
  • recall(想起): 必要な時に記憶を検索・取得する
  • reflect(内省): 記憶全体を横断して合成・推論する

さらに、保存した記憶から人物やプロジェクトなどの「エンティティ」を自動抽出し、関連付ける知識グラフを構築します。これにより、AIは「あの人」「あの案件」といった過去の文脈を踏まえた回答ができるようになります。

データは自前のサーバで管理でき、セルフホスティングも可能です。会社の資料や案件情報を扱う場合でも、外部にデータを送らずに運用できます。

この記事でできるようになること

  • WindowsにHindsightをインストールして起動する
  • Google AI Studioの無料APIキーをLLMとして指定する
  • Hindsight Control Panelで記憶の管理状況をブラウザで見る
  • Hermes Agentから `hermes memory setup` コマンドでHindsightを指定する

Windowsでの構築手順

HindsightはLinux・macOS・Windowsのすべてで動作します。WindowsではDockerを使わず、Pythonのpipパッケージとして直接インストールできます。組込みデータベース(pg0)が標準で使えるため、PostgreSQLの別途インストールも不要です。

1. Pythonの準備

HindsightはPython 3.10以上が必要です。公式サイト(python.org)からインストーラをダウンロードし、インストール時に「Add Python to PATH」にチェックを入れておきましょう。

インストール後、コマンドプロンプトで確認します。

python --version

2. Hindsightのインストール

コマンドプロンプトで次のコマンドを実行します。

pip install hindsight-api

フルパッケージ(hindsight-api)は、組込みの埋め込みモデルやリランカも同梱されているため、追加設定なしで動作します。メモリ使用量は標準で1.5〜2GB程度です。

3. LLM(Gemini API)の指定

Hindsightは記憶の保存・検索・要約にLLMを使います。ここではGoogle AI Studioの無料枠を利用します。

まず、Google AI Studio(https://aistudio.google.com)にログインし、「Get API key」から無料のAPIキーを発行します。

次に、環境変数を設定します。Windowsのコマンドプロンプトで次のように指定します。

set HINDSIGHT_API_LLM_PROVIDER=gemini
set HINDSIGHT_API_LLM_API_KEY=あなたのGemini APIキー
set HINDSIGHT_API_LLM_MODEL=gemini-2.5-flash

ポイントは `HINDSIGHT_API_LLM_PROVIDER=gemini` とすることで、HindsightがGeminiをLLMとして認識します。モデルは無料枠で使える `gemini-2.5-flash` を指定しています。

補足: Gemini無料枠を使う場合の追加設定

Geminiの無料枠はAPIの同時リクエスト数や回数に制限があります。無料枠で安定して動かすために、次の環境変数も設定しておくのがおすすめです。

setx HINDSIGHT_API_LLM_MAX_CONCURRENT 1
setx HINDSIGHT_API_LLM_MAX_RETRIES 10
setx HINDSIGHT_API_LLM_MAX_BACKOFF 60
setx HINDSIGHT_API_LLM_PROMPT_CACHE_ENABLED false
setx HINDSIGHT_API_REFLECT_PROMPT_CACHE_ENABLED false

それぞれの意味は次のとおりです。

  • HINDSIGHT_API_LLM_MAX_CONCURRENT 1: LLMへの同時リクエストを1件に制限(無料枠のレート制限対策)
  • HINDSIGHT_API_LLM_MAX_RETRIES 10: エラー時のリトライ回数を10回に設定
  • HINDSIGHT_API_LLM_MAX_BACKOFF 60: リトライの待ち時間を最大60秒に設定
  • HINDSIGHT_API_LLM_PROMPT_CACHE_ENABLED false: プロンプトキャッシュを無効化
  • HINDSIGHT_API_REFLECT_PROMPT_CACHE_ENABLED false: 内省(reflect)時のプロンプトキャッシュも無効化

ここでは `set` ではなく `setx` を使っています。`set` はそのコマンドプロンプトのセッション内だけで有効ですが、`setx` はWindowsに永続的に環境変数として登録されます。再起動後も設定が残るため、一度登録しておけば毎回設定し直す必要がありません。

なお、有料プラン(レート制限が緩い環境)では `HINDSIGHT_API_LLM_MAX_CONCURRENT` を増やして並列処理を活かすこともできます。無料枠では1に抑えるのが安全です。

4. Hindsightの起動

次のコマンドで起動します。

hindsight-api

初回起動時は、組込みデータベース(pg0)の初期化に少し時間がかかります。起動が完了すると、APIサーバが `http://localhost:8888` で待ち受けます。

5. Control Panel(Web UI)の表示

次に、記憶の管理状況をブラウザで確認できるControl Panelを起動します。別のコマンドプロンプトで実行します。

npx @vectorize-io/hindsight-control-plane --api-url http://localhost:8888

ブラウザで `http://localhost:9999` を開くと、Control Panelが表示されます。ここで記憶バンクの管理、エンティティの探索、クエリのテストができます。

前回の記事で感動した「AIの記憶の可視化」は、この画面で確認できます。

6. Web UIでできること

HindsightのWeb UI(Control Panel)では、AIエージェントの記憶をブラウザ上で直接確認・操作できます。主な機能は次のとおりです。

記憶バンクの管理

Hindsightは「バンク」と呼ばれる単位で記憶を管理します。プロジェクトや用途ごとにバンクを分けることで、記憶を整理できます。バンクごとに名前やミッション(役割)を設定でき、Web UIから一覧表示・作成・編集ができます。

エンティティの探索

Hindsightは記憶から人物やプロジェクト、キーワードなどの「エンティティ」を自動抽出し、関連付けて知識グラフを構築します。Web UIでは、この知識グラフを視覚的に探索できます。「どの記憶がどのエンティティとつながっているか」を、まるで脳のネットワークを見るように確認できるのが特徴です。

クエリのテスト

Web UIから直接、検索(recall)や合成(reflect)のクエリを試すことができます。「こう聞いたら、AIはどの記憶を使って答えるのか」を、実際の会話を介さずにテストできます。設定変更の効果をすぐに確認できるため、チューニングに便利です。

記憶の中身の確認

保存された記憶の一覧と詳細を確認できます。AIが「何を覚えていて、どう関連付けているのか」を目に見える形で把握できるため、前回の記事でお伝えした「人間の知能の管理を垣間見る」体験は、この画面で得られます。

なお、Dockerで構築した場合も同じControl Panelが `http://localhost:9999` で利用できます。起動方法が違っても、Web UIの操作は共通です。

Hermes AgentからHindsightを指定する方法

次に、Hermes AgentからHindsightをメモリプロバイダとして指定する手順です。

1. セットアップウィザードを実行

Hermes Agentがインストールされた環境で、次のコマンドを実行します。

hermes memory setup

メニューから `hindsight` を選択します。ウィザードが依存関係を自動でインストールし、設定を構成してくれます。

2. モードの選択

Hindsightの接続モードには、次の3つがあります。

  • cloud: Hindsight Cloudサービスに接続(クラウドのAPIキーが必要)
  • local: Hermesが組み込みサーバを自動起動(Hermes側にLLM APIキーの設定が必要)
  • local_external: 自分で立てたHindsightサーバーに接続(LLM APIキーは不要)

今回のようにWindowsにインストールしたHindsightサーバーへ接続する場合は、local_external を選択します。

3. 設定ファイルの確認(重要)

設定は `~/.hermes/hindsight/config.json` に保存されます。local_externalモードでは、LLM APIキーは不要です。Windows側で起動したHindsightサーバー(hindsight-api)に設定したLLM APIキーがそのまま使われるためです。

その代わりに、メモリバンク(bank_id)を手動で指定する必要があります。設定ファイルは次のような内容になります。

{
  "mode": "local_external",
  "api_url": "http://localhost:8888",
  "bank_id": "your-bank-name",
  "banks": {
    "your-bank-name": {
      "bankId": "your-bank-name",
      "budget": "mid",
      "enabled": true
    }
  }
}

ポイントは次の2つです。

  • api_url: 起動したHindsightサーバーのURLを指定します(デフォルトは http://localhost:8888)
  • bank_id / banks: 使用するメモリバンクを手動で指定します。バンクごとに予算(budget: low / mid / high)や有効・無効(enabled)を設定できます

4. 動作確認

次のコマンドで、Hindsightメモリが有効になっているか確認できます。

hermes memory status

これで、Hermes Agentの会話が自動的にHindsightに保存され、次回以降のセッションで過去の記憶が呼び出されるようになります。

補足: Dockerを使う方法

WindowsでDocker Desktopを利用している場合は、Dockerコンテナで構築することもできます。1つのコンテナで完結し、開発や小規模利用に向いています。

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サーバは `http://localhost:8888`、Control Panelは `http://localhost:9999` でアクセスできます。

よくあるトラブルと対処

Q. 初回起動が遅い

組み込みPostgreSQLの初期化に1分以上かかることがあります。起動ログを確認しながら待ちましょう。2回目以降は高速に起動します。

Q. ポート8888が既に使われている

別のサービスがポートを占有しています。`hindsight-api –port 9000` のように、起動時にポートを変更できます。

Q. 起動時にLLM APIキーが無効と言われる

Windows側のHindsightサーバー(hindsight-api)の環境変数を確認しましょう。`HINDSIGHT_API_LLM_API_KEY` が正しく設定されているかが重要です。Hermes側のconfig.json(local_externalモード)にはLLM APIキーは不要です。

Q. メモリバンクが見つからない

Hermes側のconfig.jsonで `bank_id` と `banks` を手動指定する必要があります。指定したバンク名がHindsightサーバー側と一致しているか確認してください。

Q. Control Panelが表示されない

Node.jsがインストールされているか確認してください。`npx` コマンドはNode.jsに同梱されています。

まとめ

Hindsightのセルフホスティングは、Windowsであれば思ったより簡単に構築できます。

  • `pip install hindsight-api` でインストール
  • Google AI Studioの無料APIキーを環境変数で指定
  • `hindsight-api` で起動、`npx` でControl Panelを表示
  • Hermes Agentは `hermes memory setup` からhindsightを選択するだけ

AIエージェントに「記憶」を与える第一歩は、思っているより敷居が低いものです。無料枠で試せるので、ぜひ自分の環境でAIの記憶の仕組みを体験してみてください。

参考リンク

  • Hindsight公式サイト: https://hindsight.vectorize.io/
  • Hindsight公式ドキュメント(インストール): https://hindsight.vectorize.io/developer/installation
  • Hindsight公式ドキュメント(Hermes Agent連携): https://hindsight.vectorize.io/sdks/integrations/hermes
  • Hindsight GitHubリポジトリ(README・Web UI・ベンチマーク情報): https://github.com/vectorize-io/hindsight
  • Hindsight 技術論文(arXiv): https://arxiv.org/abs/2512.12818
  • Google AI Studio: https://aistudio.google.com
  • Hermes Agent ドキュメント(Memory Providers): https://hermes-agent.nousresearch.com/docs/user-guide/features/memory-providers

※ 手順は記事執筆時点のものです。バージョンアップで変更される可能性があるため、最新情報は必ず公式ドキュメントでご確認ください。

コメント

タイトルとURLをコピーしました