「ストリーミングLLMの紹介 無限長の入力に対するLLM」

「ストリーミングLLMの魅力:無限長入力に対するLLMの魔法」

大型言語モデル(LLM)は、人々が働く方法を変えました。広く使用されるGPTファミリーのようなモデルを使うことで、みんなはこれらのモデルに慣れてきました。LLMのパワーを活用することで、質問に迅速に回答を得ることができますし、コードのデバッグなどもできます。これにより、多くのアプリケーションでモデルが役立つのです。

LLMの課題の一つは、モデルが事前に定義されたトレーニングシーケンスの長さを超える長い会話を扱うことができないため、ストリーミングアプリケーションには適していないということです。さらに、メモリの消費量も問題となっています。

以上の問題を解決するために、これらの研究が生まれました。この研究について詳しく見ていきましょう。

 

StreamingLLM

 

StreamingLLMは、ストリーミングアプリケーションの問題に取り組むために、Xiao et al.(2023年)の研究によって確立されたフレームワークです。既存の手法は、事前学習中にLLMを制約するアテンションウィンドウの問題に直面しています。

アテンションウィンドウのテクニックは効率的かもしれませんが、キャッシュサイズよりも長いテキストを扱う際には使いにくいです。そのため、研究者は最初のトークン(アテンションシンク)のキーとバリューステートを使用し、最近のトークンと組み合わせることでStreamingLLMと他の手法との比較を行っています。それを以下の画像で見ることができます。

  

StreamingLLMがどのように課題に取り組んでいるか、アテンションシンクの方法を使っていることがわかります。このアテンションシンク(初期トークン)は安定したアテンション計算のために使用され、効率的かつ長いテキストでも安定したパフォーマンスを維持します。

さらに、既存の手法はメモリの最適化に苦労しています。しかし、LLMは最近のトークンのキーとバリューステートの固定サイズウィンドウを維持することで、これらの問題を回避しています。著者はまた、StreamingLLMのスライドウィンドウ再計算ベースラインによる最大22.2倍の高速化の利点にも触れています。

パフォーマンスの面では、StreamingLLMはベンチマークデータセットで他の手法と比較して優れた精度を提供しています。以下の表で確認できます。

  

上の表では、StreamingLLMの精度がベンチマークデータセットで他の手法を上回ることが示されています。そのため、StreamingLLMは多くのストリーミングアプリケーションに潜在的な可能性を持っていると言えます。

StreamingLLMを試してみるには、彼らのGitHubのページを訪れることができます。該当のディレクトリでリポジトリをクローンし、以下のコードをCLIで使用して環境を設定できます。

conda create -yn streaming python=3.8conda activate streamingpip install torch torchvision torchaudiopip install transformers==4.33.0 accelerate datasets evaluate wandb scikit-learn scipy sentencepiecepython setup.py develop

 

それから、以下のコードを使用してLLMstreamingでLlamaチャットボットを実行できます。

CUDA_VISIBLE_DEVICES=0 python examples/run_streaming_llama.py  --enable_streaming

 

StreamingLLMの全体的なサンプル比較は、以下の画像で示されています。

  

以上がStreamingLLMの紹介でした。全体的に、StreamingLLMはストリーミングアプリケーションにおいて重要な役割を果たし、アプリケーションの動作に変革をもたらすことができると私は考えています。

 

結論

 

ストリーミングアプリケーションにLLMを導入することは、長期的にはビジネスに助けになりますが、実装にはいくつかの課題があります。ほとんどのLLMは事前に定義されたトレーニングシーケンスの長さを超えることができず、メモリの消費量も多くなります。Xiao et al.(2023年)はStreamingLLMという新しいフレームワークを開発し、これらの問題を解決することができました。StreamingLLMを使用することで、ストリーミングアプリケーションで動作するLLMを実現することができるようになりました。

[Cornellius Yudha Wijaya](https://www.linkedin.com/in/cornellius-yudha-wijaya/)はデータサイエンスのアシスタントマネージャーであり、データライターでもあります。Allianz インドネシアでフルタイムで働きながら、彼はソーシャルメディアと執筆メディアを通じてPythonとデータのヒントを共有することが大好きです。

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

データサイエンス

スコア! チームNVIDIAが推薦システムでトロフィーを獲得しました

5人の機械学習の専門家が4つの大陸に分散し、最先端のレコメンデーションシステムを構築するための激しい競争で3つのタスク全...

機械学習

「Amazon Bedrockを使用した生成型AIアプリ:Go開発者のための入門ガイド」

「AWS Go SDKとAmazon Bedrock Foundation Models(FMs)を使用して、コンテンツ生成、チャットアプリケーションの構築、スト...

機械学習

「転移学習を探求しましょう...」(Ten'i gakushū o tankyū shimashou...)

転移学習については、多くの定義があります基本的には、事前学習済みモデルの知識を活用して新しい問題を解決することを指し...

人工知能

「ソフトウェアテストの革命化」

AIが自動ソフトウェアテストに与える深遠な影響を掘り下げ、その能力、利点、およびSQAの将来における持つ可能性について探求...

データサイエンス

データサイエンスのプロフェッショナルにおすすめのトップ5のAIツール

イントロダクション 今日のデータ主導の世界では、データサイエンスは情報の活用とイノベーションにおいて重要な分野となって...

AIニュース

「ジェミニに会おう:チャットGPTに対するGoogleの答え」

人工知能の進化する世界において、Googleは最新作のGemini AIにより画期的な飛躍を遂げました。Googleによると、異なるサイズ...