数十年にわたり、分散システムでは、ステートレスという洗練された考え方が設計原則とスケーリング戦略の両面で活用されてきました。これは、各リクエストが直前のリクエストとは無関係に到着し、個別に処理され、後に何も残さないという明快な抽象化です。ステートレスシステムは状態を保持しません。保持しないからこそ、連携せずに水平スケーリングでき、障害が発生しても影響を残さず、状態を保持する運用上の負担から解放されます。これは優れたモデルであり、一部のアプリケーションでは十分に機能してきました。
しかし、AIシステムは、その前提が幻想にすぎないことを明らかにします。

現在「ステートレス推論」と呼ばれているものは、実装上はステートレスでも、機能上はそうではありません。状態は消えたのではなく、単に別の場所へ移されたにすぎないからです。会話、推論、意味はそれまでのコンテキストに依存するため、そのコンテキストはどこかに保持されなければなりません。現在は、コンテキストをトークンに詰め込んでリクエストのたびに渡し、繰り返し再生し、システムが応答するたびに会話全体を最初から読み直しているかのように、ターンごとに再構築しています。アーキテクチャ上はステートレスとされていますが、運用上は状態があらゆる場所に存在するかのように振る舞います。実際に存在しているからです。
「コンテキスト」という婉曲的な呼び名を取り払えば、それは単に移動する状態にほかなりません。
すべてのリクエストは履歴を伴い、会話が長くなるほど、その履歴の負担も増していきます。ペイロードサイズが拡大し、ネットワーク転送量が増え、推論レイテンシが上昇するうえ、モデルがすでに確認した情報を解析するために、コンピューティングリソースが繰り返し消費されます。より大きなコンテキストウィンドウや高速なハードウェアは影響の顕在化を遅らせ、KVキャッシュやプロンプト圧縮といった巧妙なエンジニアリング手法は負担を軽減します。しかし、記憶を保持せずに再生するという根本的な非効率性を解消するものではありません。このシステムは、設計によってではなく反復によって記憶しており、反復には必ずコストが伴います。
一貫した会話に伴うコスト
このコストは、まず帯域幅、次にコンピューティングリソース、最後にレイテンシとして現れ、目立たないながらも継続的なスケーリングの負荷となります。かつてステートレス性は、呼び出し間で何も保持する必要がなかったため、スケーリングを容易にしていました。しかし、AIワークロードではこの利点が逆転します。AIを有用なものにしているのは、まさに連続性の維持だからです。過去を忘れるシステムは、推論を継続できず、会話の一貫性を保てず、セッション内でそれまでに得た知識を基に発展させることもできません。実際には、ステートレスなインフラストラクチャ上にステートフルな動作を構築しており、そのひずみが表面化し始めています。
当然の対応策は、セッションアフィニティです。
コンテキストを保持する必要がある場合は、最後に使用した場所の近くに維持する方が効率的です。これにより、キャッシュされた表現を再利用でき、会話履歴の転送と再構築を繰り返さずに済みます。状態の移動には大きなコストがかかるため、セッションは思想的な選択ではなく、運用上の必要性から「スティッキー」になります。その結果、レイテンシが改善し、無駄なコンピューティング処理が減少します。また、メモリがパフォーマンスの明示的な依存要素となることで、ステートレスであるという見かけはさらに薄れます。
しかし、スティッキーセッションには固有の課題もあります。ロードバランシングの柔軟性が低下し、フェイルオーバーが複雑になるほか、分散環境での移動性もメモリの配置場所によって制約されます。ステートレスであることの自由を前提に構築されたシステムは、ステートフルであることの引力と折り合いをつけざるを得ません。自然な対策は、状態を外部化することです。セッションメモリを共有ストア、検索システム、またはコンテキストデータベースに配置することで、どの推論ノードでも履歴全体を再実行せずに会話を再開できるようにします。これにより、ルーティングの柔軟性と水平スケーラビリティは回復しますが、メモリはデータと同等の厳密さで管理すべきアーキテクチャコンポーネントへと変わります。コンテキストが単にプロンプト内に埋め込まれていたときには問題にならなかった一貫性、順序、完全性、セキュリティが、今や重要になります。
ここで、最適化の枠を超えて設計思想に踏み込む、より本質的な問いが浮かび上がります。そもそも、会話全体を保持し続ける必要があるのでしょうか。
選択的な状態管理へと進化
現在のアプローチでは、コンテキストを増え続ける会話記録、つまりトークンをすべて再生し続ける連続的な流れとして扱います。しかし、機械は人間の会話上の制約に縛られません。すでに選択的記憶への移行が始まっており、生の履歴は要約に、反復は検索に置き換わり、構造化された記憶によって永続的な知識と一時的な対話が区別されるようになっています。過去のすべてを引き継ぐのではなく、システムは関連性が保たれている情報だけを保持し始めています。そこでは、直近のコンテキスト、要点を抽出した要約、永続的な知識がそれぞれ異なる役割を担う、階層化された記憶が構築されます。アーキテクチャは、すべてを記憶する仕組みから、必要な情報を的確に記憶する仕組みへと移行しています。
今まさに進んでいる本質的な転換は、ここにあります。
業界がステートレスコンピューティングから出発したのは、コンピューティングリソースが乏しく、メモリは破棄してもコストが低かったためです。AIはこの関係を逆転させ、コンテキストと継続性をアーキテクチャ上の主要な考慮事項へと引き上げます。ステートが実際に消滅したことはなく、ステートレス設計の中で受け渡され、再現され、見えにくくされてきたにすぎません。AIシステムが成熟するにつれて、こうした見せかけは薄れ、アーキテクチャはコンテキストを絶えず転送する方式から、意図的にメモリを管理する方式へと進化していきます。
継続性には価値があるため、セッションは引き続き特定の処理先に固定されます。意味は記憶に依存するため、コンテキストも保持され続けます。ステートレスという虚構は今後も崩れ、何を記憶し、どこに保持し、いつ解放するかを明確に把握するシステムへと置き換わっていきます。スケーラブルなAIの未来を担うのは、状態をあらゆる場所に持ち運ぶシステムではなく、状態を賢く管理するシステムだからです。
著者について

Lori MacVittieは、F5のOffice of the CTOに所属するDistinguished Engineer兼Chief Evangelistであり、アプリケーションデリバリ、自動化戦略、インフラストラクチャに関する深い専門知識を有しています。AIエージェントのガードレール策定、脆弱なマルチクラウドアーキテクチャの分析、スケーラブルなシステムの限界の検証など、複雑な事柄を明快にすることで知られています。アプリケーション開発、ITアーキテクチャ、ネットワークおよびシステム運用の分野で、30年以上にわたる業界経験を有しています。F5入社前は、受賞歴のあるテクノロジー編集者として活躍していました。 MacVittieはコンピューターサイエンスの修士号を取得しており、セキュリティ、クラウド、エンタープライズアーキテクチャにわたる分野で多数の著作を発表しています。また、テーブルトークゲームとビデオゲームをこよなく愛し、チーズについては遠慮なく強いこだわりを語ります。
Lori Mac Vittieのその他のブログ記事関連するブログ記事

理由は間違っていても、結果は正しい:止まらないAPIの増加、20億件へ
従来、APIの乱立は人間の作業量によって制約されていました。現在では、AIエージェントが自律的にエンドポイントを作成して連携させるため、AI関連のAPI呼び出しや統合が急増しています。

AIアプリケーションデリバリのトップ10:互換性のないデリバリポリシー
ポリシーの不整合がAI障害を引き起こします。フェイルオーバー、タイムアウト、制限、セキュリティ制御に一貫性がないと、ソフト障害や不完全な結果が発生し、エンドポイントごとに異なる結果が生じます。

AIアプリケーションデリバリーの課題トップ10:最適化されていないトラフィックステアリング
AIは従来のトラフィックステアリングの前提を覆します。バックエンドには互換性がなく、コストも異なり、エージェントは予測不能に処理を分散させるため、ルーティングではモデル、GPUの稼働状態、データの局所性を考慮する必要があります。

パケットからプロンプトへ:推論がスタックに新たなレイヤーを追加
推論はトレーニングでも、実験でも、データサイエンスの演習でもありません。推論は本番環境におけるランタイムの動作であり、アプリケーション層と同様に機能します。

AI規模で制御を維持する唯一の方法はプログラマビリティ
急速に変化する環境でリアルタイム制御を確保しながら、AI駆動型システムを拡張し、セキュリティを確保するうえで、データプレーンとコントロールプレーンのプログラマビリティが重要な理由をご紹介します。

AIのコンテキストウィンドウ管理は魔法ではありません。アーキテクチャです。
AIアプリビルダーが、ドリフト、レイテンシー、プロンプト攻撃を防ぐために、コンテキスト、メモリ、インフラストラクチャを管理しながら、デリバリーとセキュリティを進化させる必要がある理由をご紹介します。