すべてのChatGPT APIコールにクロスセッションコンテキストを追加
ChatGPT APIはステートレスです。すべてのコールは、システムプロンプトにコンテキストを詰め込まない限り、空白から始まります — これはトークンを膨らませ、レイテンシを増加させ、忠実度を失います。MemoryLakeはChatGPT APIにクロスセッション記憶レイヤーを追加し、各コールが重要なコンテキストのみを取得できるようにします。
問題: ChatGPT APIはリクエスト間で忘れてしまう
記憶レイヤーがないと、すべてのAPIコールはゼロコンテキストまたはユーザーを最初から再説明する巨大なシステムプロンプトを送信します。チームはトークン、レイテンシ、お金を無駄にして持続性を偽装しようとします。本当の答えは、APIがクエリできる記憶ストアです — より長いプロンプトではありません。
MemoryLakeがChatGPT APIのクロスセッションコンテキストを解決する方法
ユーザーごとの永続記憶
各ユーザーには独自の記憶ネームスペースがあります。APIは関連する過去の事実、イベント、会話のみを取得します。
コンパクトな取得が詰め込まれたプロンプトに勝る
50,000トークンのチャット履歴の代わりに500トークンの記憶ブロックを引き出します。同じリコールで、100倍安価です。
1つのバッファではなく6つの記憶タイプ
会話、事実、イベント、反映、スキル、背景記憶はそれぞれ独自のロジックで取得されます。
クロスモデルのポータビリティ
GPT-4oから将来のモデル、またはClaudeやGeminiに切り替えると、ユーザー記憶はそのまま引き継がれます。移行コストはゼロです。
永続無料 · クレジットカード不要
ChatGPT APIの動作方法
- 接続 — 各ユーザーのターンとアシスタントの応答をSDKまたはREST経由でMemoryLakeにパイプします。
- 構造化 — MemoryLakeは各ターンをユーザーメタデータと共に分類、重複排除、保存します。
- 再利用 — 各APIコールの前に、ランク付けされたトークン予算の記憶ブロックを取得します。これをシステムコンテキストとして前置きします。
前後の比較: ChatGPT APIのコンテキスト処理
| Without MemoryLake | With MemoryLake | |
|---|---|---|
| Returning user request | Empty system prompt | Personalized memory injected |
| Token usage for context | 30k+ per call | <2k per call |
| Latency from huge prompts | Slow first token | Compact context, fast response |
| Switching to GPT-5 or Claude | Migrate everything | Memory follows the user |
対象者
OpenAI API上で構築しているプロダクトチーム — コパイロット、アシスタント、垂直SaaS — ユーザーが詰め込まれたシステムプロンプトのトークン税を支払うことなく、記憶されていると感じてほしいと考えています。
このユースケースを自分のアカウントで試す
チャット API は呼び出しのたびに白紙から始まるため、その上に作ったアプリはコンテキストを送らないか、ユーザーの履歴を毎回プロンプトに貼り付けるしかありません。ここでは語学チューターアプリが呼び出しをそのままに、引数を一つだけ追加します。学習者ごとの boundary(本人のプロジェクトと actor をまとめた保存済みスコープ)です。MemoryRouter がメッセージに関係する記憶を付け、デモは返答・プロンプトトークン数・他人の記憶の混入を計測します。
見られるもの
- 学習者 2 人(日本語・ドイツ語)、それぞれ過去 3 セッションを会話として保存。学習者ごとにプロジェクト・actor・boundary を 1 つずつ(
boundary create --projects … --human-actor …) - 同じメッセージを
memorylake router chatで 3 通りに送信:boundary なしでは 5 回の実行で学習者の詳細 30 項目中 0 項目。各自の boundary では本人の詳細(敬語、大阪、与格、サッカー)が入り、相手の詳細は一度も出ない(混入 0/15) - トークンの請求:Mina の 3 セッションを貼り付けるとプロンプト 767 トークン、boundary なら 286〜399。無関係な質問でも 5 回中 3 回は何らかの記憶が付いた。デモはそれもそのまま表示
- 同じ boundary を
router messages --model claude-haiku-4-5で。今夜のセッションを普段どおり書き込むと、次の呼び出しは N4 から N3 に変わる(5/5)。一方「ローマ字なし」は以前に固定した好みに一度負けた(4/5)。askとローカル Web UI 付き
必要なもの: MemoryLake の API キー · memorylake CLI · Python 3.9 以上
実行する
git clone https://github.com/memorylake-ai/memorylake-usecases.git cd memorylake-usecases/chatgpt-api-memory export MEMORYLAKE_API_KEY=sk-… python3 demo.py # or: python3 web/server.py
動作を見る · 実際の録画、未編集
関連するユースケース
よくある質問
OpenAIの組み込み記憶機能とは何が違いますか?
OpenAIの組み込み記憶機能とは何が違いますか?
OpenAIの記憶はChatGPTに特化した製品であり、不透明でポータブルではありません。MemoryLakeは開発者が制御し、構造化され、エクスポート可能で、どのモデルでも機能します。
ストリーミング応答をサポートしていますか?
ストリーミング応答をサポートしていますか?
はい。取得はストリーミングコールの前に行われます。記憶ブロックはシステムプロンプトの一部です。
レイテンシへの影響はどのくらいですか?
レイテンシへの影響はどのくらいですか?
単一桁のミリ秒での取得。モデルのレイテンシに比べて無視できる程度です。