[ChatStream] HTTP セッションミドルウェアの設定

[ChatStream] HTTP セッションミドルウェアの設定

こんにちは! (株)Qualiteg プロダクト開発部 です!

本稿では、 ChatStream に セッションミドルウェアをセットし、Webアプリケーションをステートフルにする方法についてご説明いたします!

ChatStream では Qualiteg が開発した独自のセッションミドルウェアを使用しており、通常の Starlette 用のセッションミドルウェアよりも高い柔軟性を実現しています。(Java Servlet のセッション管理アプローチに近いです)

セッションミドルウェア

開いたブラウザでWebチャットをするときにマルチラウンドの会話を成立するためには
ChatPrompt(会話履歴) が複数ターンの会話のなかで更新されていく必要があります。

デフォルトでは、 ChatStream は HTTP セッションを使用してWebアプリケーションをステートフルにし、
ChatPrompt をブラウザが開いている間保持することができます。

HTTP セッションを使用するには、以下のように FastAPI のミドルウェアを登録します。

from fastersession import FasterSessionMiddleware, MemoryStore
app.add_middleware(FasterSessionMiddleware,
                   secret_key="your-session-secret-key",
                   store=MemoryStore(),
                   http_only=True,
                   secure=True,
                   )
パラメータ名 説明
secret_key クッキーの署名用キー。
store セッションの保存用ストア。
http_only クッキーがクライアントサイドのスクリプト(JavaScriptなど)からアクセスできないようにするか。デフォルトはTrue。
secure ローカル開発環境のためにFalse。本番環境ではTrue。Httpsが必要。

内部処理

このデフォルトの実装では、セッションID を生成し署名をほどこしたのち、クッキーに保存します。

クッキーの保存期間はブラウザが開いている間のみで、かつ、フロントエンドのJavaScript からアクセスできない状態となっています

会話履歴を永続化するその他の方法

デフォルトの実装では ChatPrompt はセッション上に存在します。 またセッション情報はサーバー側でオンメモリで管理され、セッションの持続期間はブラウザが開いている間でした。

本格的なチャットサーバーを構築する場合は、ユーザーを認証し、ユーザーにひもづいた ChatPrompt をデータベース上に保存(永続化)するのが一般的です。

このような処理を行うためには、カスタムリクエストハンドラの実装 を行い、リクエストハンドラ上で、 ChatPrompt の管理と、永続化を行うことができます。

関連:CORS ミドルウェア

CORS ミドルウェア


Read more

日本語対応 LLMランキング2026 ~ベンチマーク分析レポート~(10月22日版)

日本語対応 LLMランキング2026 ~ベンチマーク分析レポート~(10月22日版)

まず結論 2026年10月22日時点のLLMランキング 日本語対応LLMランキングの2026年10月22日版です。前置きは後回しにして、まず最新のランキングからお見せします。 フロンティアモデルの最新ランキング TOP20(Epoch Capabilities Index) 順位 モデル 開発元 提供形態 公開日(Epoch AI記載) ECI 1Claude Opus 5.5AnthropicAPI09/22168.8 2GPT-6 AstraOpenAIAPI09/03168.8 3GPT-6.1 SolOpenAIAPI09/29168.4 4Claude Fable 5.1AnthropicAPI09/01166.5 5Gemini 4 ArgonGoogleAPI09/30166.4 6Claude Sonnet 5.5AnthropicAPI09/28166.2

By Qualiteg プロダクト開発部, Qualiteg コンサルティング
(株)Qualiteg、CEATEC 2026 出展レポート

(株)Qualiteg、CEATEC 2026 出展レポート

こんにちは!2026年10月13日(火)から16日(金)までの4日間、幕張メッセで開催された「CEATEC 2026」に、出展してまいりました。 昨年の CEATEC 2025 に続いて今年も出展してまいりました。 (昨年の様子は CEATEC 2025 出展レポート に、今年の出展予告は こちらの記事 です) 今年は主催者発表で、CEATEC 2026 4日間の登録来場者総数が 112,373人。昨年の98,884人を上回る規模になりました。 当社ブースも昨年より多くのお客様にお越しいただき、 ご来訪者さまは昨年の2倍になりました。 このレポートでは、準備日から最終日までを時系列で振り返ります。 各日の公式来場者数も載せておきますので、来年出展される方(と来年の私たち自身の備忘録としても)のお役に立てば幸いです。 目次 * 1. CEATEC 2026 出展概要 * 2. 前日(10月12日)ブース設営 * 3. DAY1(

By Qualiteg ビジネス開発本部 | マーケティング部
CEATEC 2026に出展します!AIアバター動画生成「MotionVox®」の最新版を実体験いただけます

CEATEC 2026に出展します!AIアバター動画生成「MotionVox®」の最新版を実体験いただけます

株式会社Qualitegは、2026年10月13日(火)~16日(金)に幕張メッセで開催される「CEATEC 2026」に出展いたします。今回の出展では、当社が開発したAIアバター動画生成サービス「MotionVox®」の最新版を中心に、動画生成の実演と作例をご紹介いたします。 昨年の CEATEC 2025 に続き、2年連続の出展となります。昨年の会場の様子は 出展レポート にまとめております。 出展概要 * 会期 2026年10月13日(火)~10月16日(金)10:00~17:00 * 会場 幕張メッセ(千葉県千葉市美浜区中瀬2-1) * 出展エリア ネクストジェネレーションパーク * ブース番号 ホール4 4H339 * 入場 無料(来場事前登録制) * CEATEC内特設サイト https://www.ceatec.com/nj/exhibitor_

By Qualiteg プロダクト開発部
ゼロから作るコーディングエージェント【第3回】「止まらなかった」は「進んだ」ではない。空転を数え、思考は切らずに上限だけ置く

ゼロから作るコーディングエージェント【第3回】「止まらなかった」は「進んだ」ではない。空転を数え、思考は切らずに上限だけ置く

300ターン走ってAPIが0本。「モデルの限界」と結論を書いた翌日、記録を読み直すと234ターンがツールを1度も呼んでいませんでした。空転率という指標、1つ塞ぐと次の形に移る空転、思考をオフにすると95点が71点に落ちて時間も縮まなかった話、出力枠を広げたら反対側を数える話を書きます。

By Qualiteg プロダクト開発部