今回は大規模言語モデル(LLM)に関する話題で、タイトルの通り
を丁寧にご紹介するという内容になっています。
大規模言語モデルというとChatGPTに使われている「GPT-4」が有名ですが、そのほかにも様々な企業・団体が開発に着手しており色々なモデルが存在します。ただ基本的にこの手のモデルはWebサービスの形で提供されているものが多く、自分のPCで動かすというイメージはあまりないと思います。
しかし調べてみるとLLMを手軽に扱える「Text generation web UI」という無料ツールがあったので今回使ってみることにしました。
ここではこのツールについて
- ツール概要
- インストール方法
- 使い方
をなるべくわかりやすく書いていきますね。
Text generation web UIとは?
公式ページ
Text generation web UIについて
「Text generation web UI」は、oobabooga氏による大規模言語モデル用の無料のWeb UIです。大規模言語モデルはそのままだと扱い方が面倒なのですが、このツールを使えばブラウザ経由で簡単にモデルを扱うことができて非常に便利です。
ちなみにWeb UIというと画像生成AI用のStable Diffusion web UIが有名ですが、今回ご紹介するText generation web UIは「LLM界のStable Diffusion web UI」を目指して開発されたツールのようです。
動作に必要なPCスペックについて
さてText generation web UIを使って大規模言語モデルを動かすには一定以上のPCスペックが必要です。一般的に大規模言語モデルなどのAIを快適に動かすには特にグラフィックボードの性能が必要となります。
具体的には、使用するLLMのサイズにもよるのですが
- NVIDIA製のグラフィックボードであること
- かつ、VRAM(=ビデオメモリ)容量がなるべく多い(できれば10GB以上)
のが望ましいです。
なおText generation web UIはWindowsの場合NVIDIA製のグラボでのみ動作するのでその点はご注意ください。AMD製のグラボをお使いの方はNVIDIAに乗り換えるなどしましょう。
ちなみに参考情報として、画像生成AIの場合のグラフィックボードの選び方を下記の記事で詳しく解説しているのでご興味があればそちらも併せてご覧ください(選び方の基本はLLMの場合も同じです)。
インストール方法
ではここからText generation web UIの導入方法や使い方についてご説明していきます。まずインストール方法については非常に簡単で
となっています。それでも一応具体的な手順を書いておきますね。
手順1:簡単インストーラーのダウンロード
最初に簡単インストーラーをダウンロードしましょう。先ほどの公式ページを少しスクロールすると「Installation」と書かれたセクションがあり、ダウンロード用リンクがあるのでご自身のOSに合わせたものをダウンロードしてください。
手順2:圧縮ファイルを展開し、中身の「start」を実行する
次に先ほどの圧縮ファイルを任意の場所に展開します。このあと、展開したフォルダに色々なファイルがダウンロードされることになり、モデルファイルなしの素の状態でも15GB程度の容量を食うので十分な空き容量のあるストレージに展開してください。
準備ができたら展開したフォルダの中にある「start」と書かれたバッチファイルを実行しましょう(例:Windows版なら「start_windows.bat」)。すると黒い画面が出て必要なファイルのダウンロードやインストール処理が始まります。
途中、「どのグラフィックボードを使っていますか?」という質問が出て処理が止まるので、Windowsの場合は必ずAの「NVIDIA」を選択してください(つまり「A」と入力してEnterを押せばOK)。
あとはおまかせで自動的に処理が進みます。お使いの環境にもよりますが色々なファイルをダウンロードしたりインストールしたりするので数十分はかかります。気長に待ちましょう。
無事インストールが完了すると、黒い画面に
というURLが出ます。Ctrlを押しながらこのURLをクリックするとブラウザが起動し、Text generation web UIの画面が表示されます。
Text generation web UIの使い方
お次はいよいよText generation web UIの具体的な使い方についてご説明していきます。
モデルのダウンロード・導入方法
まず、先ほどまでの手順でweb UI本体のインストールは完了したのですが、まだモデルを何も導入していないのでそのままでは動きません。そこでモデルをダウンロードして使えるようにしましょう。
モデルはHugging FaceというAIモデルの共有サイトにあることが多いです。ここではサンプルとして、サイバーエージェント社が開発した日本語LLMの「OpenCALM」の一番小さいモデル(open-calm-small)を導入して使ってみることにします。
モデルは手動でダウンロードすることもできます。ただしText generation web UIには自動ダウンロード機能が付いていますのでそれを使うと簡単です。やり方は画面左上の「Model」タブ→「Download custom model or LoRA」の入力欄に
と記入して(要するに「HuggingFaceの投稿者名/モデル名」という形式で記入すればOK)Downloadボタンを押してください。
ダウンロードが完了したら、モデル画面左上の「Model」ドロップダウンの右にある水色のリロードボタンを押してください。するとドロップダウンに新しいモデルの項目が出現するので、それを選択して「Load」ボタンを押しましょう。
これでモデルの導入が完了し、モデルを動かすための準備ができました。
日本語でのチャットのやり方
Text generation web UIでLLMとのチャットを行うには、まず左上の「Session」タブでModeを「Chat」モードにして再起動する必要があります。
次に、このままだと英語の回答が混じってしまう可能性があるのでInstruction Templateの編集を行います。「Chat settings」→「Instruction Template」と進み、テンプレートを「None」、その下の項目をすべて空欄にしてください。
これでようやくLLMを利用した日本語チャットができるようになったので早速試してみましょう。やり方は簡単で、「Text generation」タブの「Input」欄に適当な文章を入れて下の「Generate」ボタンを押すだけです。回答はチャット形式で生成されます。
試しに下記のような質問をしたところ、何やらそれっぽいけどメチャクチャな回答が返ってきました。
さすがにモデルのパラメータ数が少ないせいか回答の精度はよくありません(ChatGPTのようなものを期待しているとガッカリすると思います)。それでも国産のLLMなだけあって、きちんと日本語で答えが返ってくることは確認できました。
おわりに
以上、大規模言語モデルを手軽に扱える「Text generation web UI」のインストール方法や使い方をご紹介しました。
大規模言語モデルはChatGPTなど優秀なWebサービスがあるのでローカルで動かす必要性は薄いかもしれませんが、研究対象としてはとても面白いと思うので物好きな方はぜひ試してみてください。
この記事が何かしら参考になれば幸いです。