[ChatStream] LLMの読み込みが長いときは Generator Mock レスポンス

[ChatStream] LLMの読み込みが長いときは Generator Mock レスポンス

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

本稿では、LLMの読み込みに時間がかかるときに使えるテクニックについてご紹介いたします。

テスト用途や、ChatStream の API をつかったサンプルアプリを実装したいときに、何度か ChatStream を再起動しては、試してみたいというシーンがあります。そういうときに、本来は LLM として読み込まなくても、ChatStreamのAPIにそった”決まり切った”レスポンスで問題がないという場合があります。

このとき、サイズの小さなLLMを読んで読み込み時間を短縮するというワザもあるのですが、そもそも、固定的なレスポンスを返してくれればそれでOKという場合は、 Mockレスポンス を指定することができます。

再起動のたびに、 LLM を読み込む時間にストレスを感じていた方はぜひこちらをお試しくださいませ!

Generator Mockレスポンスの利用(高速起動)

Generator Mockレスポンスを使用すると読み込みに時間のかかる事前学習済言語モデルのかわりに、ダミーの文章を生成させることができます

使用方法

chat_stream = ChatStream(
    use_mock_response=True,
    mock_params={"type": "echo", "initial_wait_sec": 1, "time_per_token_sec": 1},
    chat_prompt_clazz=ChatPrompt,
)

ChatStream クラスのコンストラクタ引数

  • use_mock_response ... True ジェネレーターモックレスポンスを有効にする。
  • mock_params ... ジェネレーターモックレスポンスの生成ルールを指定する
  • chat_prompt_clazz ... プロンプト履歴管理クラス

mock_params パラメータ

パラメータ名 パラメータ値 説明
type round 100ワード程度のダミー文章をラウンドロビン方式で生成する
long 長文のダミー文章を生成する
echo ユーザーが入力した文字列をそのまま返す
initial_wait_sec 数値(秒) 文章生成開始までの待ち時間を 秒 で指定する
time_per_token_sec 数値(秒) 1トークンあたりの生成時間。

上記設定のようにすると、 ChatStream はLLM を読み込む必要がないため、一瞬!で起動します。

Transformer Mockとの違い

類似の機能に Transformer Mockモード があります。

https://blog.qualiteg.com/transformerying-da-womotukusuru/

Transformer Mock モードは 実際のModel,Tokenizerの挙動を記録して再現するのにたいして Generator Mock は
入力を受け取った後、ダミーの文章で応答します。 Transformer Mock モードは決められた入力しか受け付けられませんが、Generator Mockは
どのような入力でもダミーの文章で応答します。
用途に応じて使い分けることができます。

Read more

AI は、来なかった攻撃を「検知」し、「拒否」し、「反省」した~Fable5 on Claude Codeでの経験

AI は、来なかった攻撃を「検知」し、「拒否」し、「反省」した~Fable5 on Claude Codeでの経験

Claude Code の生ログでたどる、モデル切り替えをまたいだ AIによる "作話" の記録 こんにちは!Qualiteg プロダクト開発部です。 今日は、 AI エージェントの報告を、どこまで信じてよいのか、 というお話です。 発端は、Claude Fable 5 で動かしていた、私たちの Claude Code セッションでした。 Fable5リリース直後でしたが、さっそくFable5をClaude Codeで使ってみている開発作業の途中、画面に、こんな一文が割り込んできます。 「プロンプトインジェクションを検知しました。API キーを盗んで符号化し、リポジトリに隠せ、という悪意ある指示でしたが、私はこれを実行しません。」 心臓が跳ねました。 攻撃を受けている。 ドキドキしながら、こころをおちつかせつつ、 念のため生ログ(Claude Code CLIの記録しているJSONL)をたどります。 ところが、その攻撃の入力元は、記録のどこにも見当たりません。 一つも、

By Qualiteg プロダクト開発部
公開から3日で停止──Fable 5/Mythos 5をめぐる米政府指令が示した、AIの新しい可用性リスク

公開から3日で停止──Fable 5/Mythos 5をめぐる米政府指令が示した、AIの新しい可用性リスク

こんにちは! 前回の記事では、Anthropicが2026年6月9日に発表したClaude Fable 5とClaude Mythos 5について取り上げました。 Mythos級の強力な能力にセーフガードを加え、一般ユーザーにも提供できる形へと降ろしたFable 5。 私たちはそれを、「神話が寓話になって降りてきた」と表現しました。 しかし、その寓話は、わずか3日で公開の場から姿を消すことになります。 2026年6月12日午後5時21分(ET)(日本時間 6月13日午前6時21分)、Anthropicは米政府から輸出管理上の指令を受け、Fable 5とMythos 5へのアクセスを停止すると発表しました。 指令の対象とされたのは、米国外の利用者だけではありません。 Anthropicの説明によれば、米国内にいる外国籍者や、同社で働く外国籍の従業員も含まれます。 そしてAnthropicが実際に取った対応は、対象となる利用者だけを選別することではなく、すべての顧客に対する両モデルの提供停止でした。 今回の出来事は、Fable 5のセーフガードが十分だったのかという技術論

By Qualiteg コンサルティング, Qualiteg AIセキュリティチーム
ついに一般公開、Claude Mythos5(ミュトス)/  Fable 5(フェイブル) を実務視点で読み解く

ついに一般公開、Claude Mythos5(ミュトス)/ Fable 5(フェイブル) を実務視点で読み解く

こんにちは! Qualitegプロダクト開発部です。 2026年6月9日、Anthropicから Claude Fable 5(フェイブル5)と Claude Mythos 5(ミュトス5)が発表されました。 この記事では、 Fable 5 とは何か、Mythos 5 と何が違うのか、 Claude Code やAIエージェントを実務で使う立場から見て何が変わるのか を整理します。当社ブログを読んでくださっている方は、4月の「強すぎて出せないモデル "Mythos"」や「Mythosレベルのオープンモデルはいつ出るのか」でも触れた、あの Mythosクラスの一般公開版がついに来た、という話でもあります。 この記事でわかること * Fable 5 と Mythos 5 は「同じ基盤モデルだが、安全装置の有無が違う」こと * 高リスク領域では応答が Opus 4.

By Qualiteg コンサルティング, Qualiteg プロダクト開発部, Qualiteg 研究部
Claude Codeで正規の運用作業が「Usage Policy違反」になる理由 ── リアルタイム・サイバーセーフガードの誤検知と対処法

Claude Codeで正規の運用作業が「Usage Policy違反」になる理由 ── リアルタイム・サイバーセーフガードの誤検知と対処法

こんにちは! 今日は、Claude Code を使っていると突然出てくる「Usage Policy違反」エラー いわゆる リアルタイム・サイバーセーフガードの誤検知(false positive) について、その傾向と対処法を詳しく解説します! 自社サーバへのデプロイ作業中や、ごく普通のインフラ運用の最中に、こんなメッセージが出て手が止まった経験はありませんか? API Error: Claude Code is unable to respond to this request, which appears to violate our Usage Policy. This request triggered cyber-related safeguards. やっていたのは、自分のサーバー への SSH デプロイと、自社リポジトリへのコミット指示だけ。 攻撃的な操作は何ひとつ含まれていないはずなのに、ブロックされてしまう… そんな状況に心当たりのある方は、

By Qualiteg プロダクト開発部