Skip to main content

短い回答

いいえ。APIはステートレスであり、以前のリクエストの内容を記憶しません。ChatGPTウェブアプリ、Claude Code、またはCodexで体験するメモリは、それらの製品がAPIの上に構築した機能です。これらはメモリをファイルに書き込み、後続の会話でそのファイルをモデルに再度渡します。ファイルはユーザーの手元に残り、APIYIが会話内容を保存することはありません。

Webアプリのメモリとは

ChatGPTのWebアプリには、2種類のメモリがあります。
  • 保存済みメモリ: 職業や文体など、記憶するよう依頼した事実や設定
  • チャット履歴の参照: 過去の会話から取得する情報
どちらもOpenAIアカウント内に保存され、Webプロダクトに属します。これらはAPIを通じて公開されません。 API経由で同じモデルを呼び出す場合、そのモデルはWebアプリでの会話について何も認識していません。 WebアプリとAPIのその他の違いについては、公式WebアプリとAPIで異なる結果になるのはなぜですか? を参照してください。

エージェントツールのメモリは単なるファイルです

コーディングエージェントツールでは、メモリは常にクライアントがローカルファイルを読み書きすることを意味します。

Claude Code

プロジェクトルールはCLAUDE.mdに置き、個人設定と学んだ教訓はローカルのメモリディレクトリに保存します。どちらもセッション開始時に読み込まれます。

Codex

プロジェクトルールはAGENTS.mdに置きます。2026年4月以降、Codexには過去のセッションからコンテンツを抽出し、~/.codex/memories/にローカル保存する組み込みメモリもあります。

Claude APIメモリツール

モデルはメモリファイルに対する読み取りおよび書き込みリクエストを発行し、アプリケーションがそれらを実行します。ファイルの保存先は自由に決められます。ローカルディスク、データベース、クラウドストレージのいずれでも可能です。
これらのツールに共通する点:
  1. メモリはファイルです。通常は、直接開いて編集できるMarkdownです。
  2. モデルがすべてのファイルを一度に読み取ることはありません。 クライアントは、現在のタスクに関連するものだけを取得します。
  3. 新しい会話はすべて再度それらを読み取ります。 モデル自体は何も記憶しません。クライアントが読み取った内容は、質問とともにAPIへ送信されます。

メモリを別のコンピューターへ移行する

1

プロジェクトレベルのメモリはリポジトリとともに移行されます

CLAUDE.mdAGENTS.md などのファイルは、プロジェクトディレクトリ内にあります。これらを git にコミットすれば、別のコンピューターでコードをプルした直後から利用できます。この方法で、チームは同じプロジェクトルールを共有できます。
2

ユーザーレベルのメモリはコピーまたは同期する必要があります

ユーザーディレクトリに保存されているメモリ(たとえば Codex の ~/.codex/memories/ や Claude Code のローカルメモリディレクトリ)は、リポジトリには含まれません。新しいコンピューター上の同じ場所にコピーするか、クラウドストレージまたは同期ツールで同期してください。
3

新しいコンピューターで動作を確認する

同じプロジェクトを開き、プロジェクトのテストコマンドなど、メモリだけが回答できる内容を質問してください。正しい回答が返れば、メモリは移行されています。
API キー、パスワード、その他の機密情報をメモリファイルに保存しないでください。内容はモデルに送信され、クラウドストレージへの同期時やリポジトリへのコミット時に漏洩する可能性があります。

メモリとコスト

メモリは無料ではありません。
  • 読み込まれるメモリは入力tokensとして課金されます。 クライアントが新しい会話で読み込むすべてのメモリファイルは、そのリクエストの入力にカウントされます。
  • 会話は長くなるほど高コストになります。 APIはステートレスであるため、各ターンでそれまでの会話全体が再送され、入力tokensが増え続けます。
  • キャッシュ課金により繰り返し部分のコストを削減できます。 各リクエストの先頭部分(システムprompt、メモリファイル、以前のターン)が同じままであれば、キャッシュヒットとなり、通常の入力価格を大幅に下回る料金で課金されます。
APIYIでは、Claude、OpenAI、DeepSeek、Qwen、Grokなどの主要チャネルでキャッシュヒットが安定しています。Geminiの暗黙的キャッシュはヒット率が低いため、Geminiのコストはキャッシュなしの価格で見積もってください。各チャネルのルールについては、APIYIはキャッシュ課金をサポートしていますか?を参照してください。
より多くのキャッシュヒットを得るには、変更されないコンテンツ(システムprompt、メモリファイル)をリクエストの先頭に置き、変更されるコンテンツはその後に配置してください。タイムスタンプなど、毎回変わる値を先頭に置かないようにしてください。

サーバーサイドの会話状態はメモリではありません

一部のプロバイダー API では、OpenAI レスポンス API の previous_response_id のように、サーバーサイドの会話状態を提供しています。プロバイダーが会話を保存し(デフォルトでは30日間)、次のターンでは前のレスポンス ID だけが必要です。これは、次の2つの点でメモリとは異なります。
  • 1つの会話チェーンを継続するだけです。 セッションをまたいで設定を記憶することはありません。
  • 費用は削減されません。 チェーン内のそれまでのすべてのコンテンツは、各ターンで引き続き入力 tokens として課金されます。
APIYI では、クライアントサイドで会話履歴を管理することを推奨しています。これは最も信頼性の高いアプローチであり、モデル間で同じように機能します。詳細については、複数ターン会話ガイドを参照してください。

よくある質問

いいえ。リレープラットフォームとして、APIYI はリクエストを転送するだけで、リクエストまたはレスポンスの内容を保存しません。APIYI はどのようにデータセキュリティを確保していますか?を参照してください。プロバイダーのサーバーサイド会話機能(上記の previous_response_id など)を使用する場合、そのプロバイダーは独自のルールに従ってその会話を保存します。
はい、できますが、自分で構築する必要があります。最も簡単な方法は、設定をシステム prompt に記載し、すべてのリクエストとともに送信することです。設定が多い場合は、ファイルまたはデータベースに保存し、関連する内容を取得してリクエストに追加します。Claude API のメモリツールは、このアプローチを公式にパッケージ化したものです。
いいえ。メモリが多いほど、各リクエストの入力が長くなり、コストが高くなり、モデルの注意をそらす可能性のある無関係な内容も増えます。メモリファイルを定期的に見直し、古くなった項目を削除して、実際に使用するルールと事実だけを残してください。
いくつかの選択肢があります。
  • プロジェクトレベルのメモリを git にコミットし、コードとともに移動させます。
  • ユーザーレベルのメモリをクラウドストレージまたは同期ツールと同期させます。
  • 独自のメモリサービスを実行します。一部のエージェントツールは MCP を介して外部メモリサービスに接続でき、複数のコンピュータで同じサービスを共有できます。
いずれの場合も、メモリは API 側ではなく、自分で管理する場所に保持されます。

関連ドキュメント

公式WebアプリとAPIで結果が異なるのはなぜですか?

WebアプリがAPIに追加する機能

マルチターン会話ガイド

各API形式で会話履歴を維持する方法

APIYIはキャッシュ課金をサポートしていますか?

チャネル別のキャッシュ課金ルールとヒットのヒント

APIYIはデータセキュリティをどのように確保していますか?

暗号化通信とリクエスト内容の非保存