[ChatStream] 同時リクエスト時の推論速度を手軽に計測する

[ChatStream] 同時リクエスト時の推論速度を手軽に計測する

こんにちは、Qualitegプロダクト開発部です。

今回は RakutenAI-7B-Chat に5人同時リクエストしたときのパフォーマンスをお手軽に計測してみました。

実験環境

  • GPU: A5000
  • LLM: RakutenAI-7B-Chat AWQ-8
  • 推論環境: ChatStream v0.7.2
  • 同時リクエスト数: 5

動画のほうがわかりやすいとおもいますので、実際の実験の様子はこちらの動画をつくりました。ご覧くださいませ

動画にもありますように、ChatStreamUIのマルチタスク機能を有効にすると、同一画面内に複数のチャットウィンドウを開くことができます。

マルチタスク機能は、複数のLLMを連携させて業務をすすめていく為の機能ですが、今回は、この特長を利用して、同じモデルに対して同時に生成リクエストを投げる用途で使ってみました。以前も、この機能をつかった簡易計測をご紹介したのですが、今回は、入力プロンプトの同期機能を使用したので、より簡単に実施できました。
(1つのテキストボックスに入力プロンプトを入力すると、他のテキストボックスも連動します)

さて、結果ですが、動画にあるとおり、5人同時リクエストで70 tokens/sec 程度の推論速度がでました。

ChatStreamUIの仕様上、ウィンドウが狭くなることを気にしなくてよいなら同時リクエスト数(concurrency)はいくらでも増やすことができるので、推論速度の負荷テストも簡単にできる、、、とよいのですが、実際にはブラウザには1つのオリジンに同時に張れるセッションの数が限られている為、20や30といった同時リクエストはブラウザの仕様的に不可能となります。

本番向けに同時20件、同時30件、同時100件といった負荷テストは行うときは、当社の開発するLLMサービス専用負荷テストツールLLMLoadもおすすめですので、そちらは別途記事にしたいとおもいます。

[参考]1リクエストの場合

1リクエストのみの場合の実験はこちらの動画にあります。

1人同時リクエストで推論速度は 75 tokens/s ということで、5人同時リクエストのときよりやや速かったですが、逆にいえば、5人同時リクエストていどでは、ほとんどスループットは落ちないということがわかりました。

Read more

KVキャッシュのオフロード戦略とGQAの実践的理解

KVキャッシュのオフロード戦略とGQAの実践的理解

こんにちは! LLM推論基盤プロビジョニング講座、今回は番外編をお届けします! 第3回「使用モデルの推論時消費メモリ見積もり」では、GPUメモリ消費の二大要素としてモデルのフットプリントとKVキャッシュを紹介し、1トークンあたりのKVキャッシュサイズの計算方法を解説しました。 また第4回「推論エンジンの選定」ではvLLMやDeepSpeedなど各推論エンジンの特性を比較し、第5回では量子化や並列化による最適化戦略を解説してきました。 しかし、実はKVキャッシュにはまだまだ掘り下げるべきトピックがあります。 * KVキャッシュをGPUのVRAMからCPU RAMやディスクにオフロードしたらどうなるのか? どのくらい遅くなるのか? * HuggingFace TransformersとvLLMでは、KVキャッシュの管理方針がなぜ根本的に異なるのか? * そもそもKVキャッシュが大きくなる原因であるアテンション構造を変えてしまう GQA(Grouped-Query Attention)とは何か? 第5回で紹介した量子化とは別の軸で、KVキャッシュを劇的に小さくする技術です。

By Qualiteg プロダクト開発部, Qualiteg コンサルティング
Python と JavaScript で絵文字の文字数が違う!サロゲートペアが引き起こす位置ずれバグの話

Python と JavaScript で絵文字の文字数が違う!サロゲートペアが引き起こす位置ずれバグの話

こんにちは! Qualitegプロダクト開発部です! PII(個人情報)検出のデモアプリを開発していて、検出したエンティティの位置をハイライト表示する機能を実装していました。 バックエンドは Python(FastAPI)、フロントエンドは JavaScript という構成です。 ある日、テストデータにこんなメール文面を使ったところ、ハイライトの位置が途中から微妙にずれるバグに遭遇しました。 鈴木一郎 様 いつもお世話になっております。 サンプル商事の佐藤でございます。 先日の件、確認が取れましたのでご連絡いたします。 お忙しいところ恐縮ですが、ご確認のほど宜しくお願い致します。 💻 #オンラインでのお打ち合わせ、お気軽に声がけください! ―――――――――――――――――――――――――――――― サンプル商事株式会社 営業部 第一課 山田 太郎 (Yamada Taro) 〒100-0001 東京都千代田区千代田1-1-1 サンプルビル 3F tel: 03-1234-5678 https://example.com/contact 検出結果をハイライト表示

By Qualiteg プロダクト開発部
大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第5回 ブラウザ設定と認証

大企業のAIセキュリティを支える基盤技術 - 今こそ理解するActive Directory 第5回 ブラウザ設定と認証

こんにちは、今回はシリーズ第5回「ブラウザ設定と認証」について解説いたします! さて、前回(第4回)では、プロキシサーバーをドメインに参加させることで、ChatGPTやClaudeへのアクセスを「誰が」行ったかを確実に特定する仕組みを解説しました。「信頼の連鎖」の概念や、Windows版Squidなら1時間で構築できる環境、Negotiate/NTLM/Basicという3段階の認証フォールバック機構について理解いただけたかと思います。 しかし、せっかくサーバー側で完璧な統合Windows認証環境を構築しても、ブラウザ側の設定が適切でなければ、ユーザーには毎回パスワード入力ダイアログが表示されてしまいます。 「Edgeだと自動でログインできるのに、Chromeだとパスワードを聞かれる」 「同じサーバーなのにURLの書き方で動作が違う」 これらはヘルプデスクに寄せられる典型的な問い合わせです。(ただ、業務に好きなブラウザ使っていいよ、という企業はそんなに多くはないとおもいます) 今回は、統合Windows認証がブラウザでどのように動作するのか、その仕組みから各ブラウザ(Edge/

By Qualiteg AIセキュリティチーム, Qualiteg コンサルティング
スライドパズルを解くAIから学ぶ、「考える」の正体

スライドパズルを解くAIから学ぶ、「考える」の正体

こんにちは! 「このパズル、AIの教科書に載ってるらしいよ」 子供の頃に遊んだスライドパズル。いや、大人が遊んでも楽しいです。 数字のタイルをカチャカチャ動かして揃えるあれです。実はこのシンプルなパズルが、AI研究の出発点のひとつだったって知ってました? 今回は、このパズルを題材に「AIがどうやって考えているのか」を解き明かしていきます。しかも、ここで使われている手法は、Google Mapsの経路探索からChatGPTまで、現代の様々な技術のベースになっているんです。 まず遊んでみよう 理屈の前に、まずは感覚を思い出してみてください。 最初に shuffle をクリックすると、配置がシャッフルされゲームを開始できます。 ちなみに必ず解くことができるようになっていますが、慣れていないとそれなりに難しいかもしれません。 どうでしょう? 何手でクリアできましたか? クリアできなくても大丈夫です。記事後半で、実際にAIが解いてくれる機能つきゲームも掲載しています^^ 以下は動画です。本ブログで紹介するアルゴリズムで実際にパズルを解く様子をご覧いただけます

By Qualiteg 研究部