LM Studioとは?
「LM Studio」は、ローカル環境で大規模言語モデル(LLM)を使用できるツールです。
これにより、オンラインサービスに依存せず、高度な自然言語処理をオフライン環境で行うことが可能になります。
LM Studioは、自宅のパソコン(ハードウェア)のスペックに応じて、Mac、Windows、LinuxなどのOS上で動作し、オフラインでもAIモデルを操作できるGUI(グラフィカルユーザーインターフェース)を提供します。また、企業が提供するさまざまなオープンソースのAIモデルを利用して構築できるのが特徴です。
「ChatGPT」や「Copilot」など、開発企業側がデータを利用してトレーニングの性能を向上させることが考えられるサービスに対して、ローカルAIはそのような懸念を少なくして利用できる点が利点となります。
LM Studioを使用することで、ローカルでLLMを簡単に構築できることが魅力ですが、基本的に英語表記のため、今回はその使い方をわかりやすく説明していきたいと思います。
セットアップ方法
LM Studioのホームページに移行すると各OSに対応したファイルをダウンロードが可能です。
LM Studioを起動
ソフトを起動すると、画像のようなUIが表示されます。
ここで「Search」の部分から、利用したいAIモデルを探すことができます。私は日本語対応のAIモデルをいくつか試してみましたので、以下に紹介します。
オープンソースで利用できるAIモデル
オープンソースのAIモデルは、誰でも自由に利用・変更・配布できるAI技術を提供します。
これにより、研究者や開発者が新しいアプリケーションを構築したり、既存の技術を改善したりすることが可能になります。
私が日本語対応の試してみたAIモデルは下記となります。
- ELYZA-japanese-Llama-2-7b-fast-instruct-q2_K.gguf
- Phi-3-mini-4k-instruct-fp16.gguf
- RakutenAI-7B-chat-q5_K_M.gguf
- cyberagent-calm2-7b-chat-dpo-experimental-q5_K_M.gguf
オープンソースLLMで、特に知名度の高いモデルとしては、Meta社の「Llama」が代表的です。
日本でも「Llama」をベースに作成されたのが「ELYZA-japanese-Llama-2」があります。
また、日本国内の企業が提供するLLMとしては、「楽天AI」や「サイバーエージェント」のモデルもLM Studioで利用可能です。まずは、これらのモデルを試してみるのが良いでしょう。
例えば、日本で広く知られている楽天社が提供するオープンソース「RakutenAI」で検索すると、検索結果が左側の欄に表示されます。この結果は、「ダウンロード数」や「更新日時」などでソート(並べ替え)することができます。
右側の欄には、同じモデルでも異なるパラメータ数や量子化レベルに基づいたファイルが表示され、ファイルのサイズも異なります。一般的に、量子化の度合いが高いほどモデルの品質が高く、低いと品質が低くなります。そのため、ご自身のパソコンの性能に合わせて、ファイルのサイズが大きいものを選ぶのが良いかもしれませんが、これはあくまで憶測です。
また、緑色で「FULL GPU OFFLOAD POSSIBLE」と表示されている場合、性能的に問題なく動作することを示しています。
赤色で「Likely too large for this machine」だと、利用しているパソコンだとスペックが足りないこととなります。
青色で「Partial GPU OFFLOAD POSSIBLE」だと部分的に利用できることになりますが安定はしないです。
Downloadを押すと、LM studioの下部にダウンロード状況が表示されるので、完了するまで待機いたします。
言語モデル(Chat)を利用してみる
まず、ダウンロードが完了したら左欄のchat吹き出しをクリックして、利用したい言語モデルをプルダウンで選択いたします。
今回は、LM Studioを日本語で利用する検証も兼ねて、いくつかの言語でどれだけ正確な回答が得られるかを確認してみたいと思います。
日本語での質問内容は下記の通りです。
1.「日本の首都はどこですか?」
2.「桜が見ごろになる季節はいつですか?」
3.「戦国時代の三英傑は誰ですか?」
それぞれの正しい答えは、上から「東京」「春」「織田信長、豊臣秀吉、徳川家康」となります。
ELYZA-japanese-Llama-2-7b-fast-instruct-q2_K.gguf
mmnga/ELYZA-japanese-Llama-2-7b-fast-instruct-gguf · Hugging Face
参考:ELYZAが公開した日本語LLM「ELYZA-japanese-Llama-2-7b」についての解説 : (1) 事前学習編 (zenn.dev)
ELYZA-japanese-Llama-2 では3つ目の質問に対する答えが誤っていました。他の質問については正しい答えが返ってきましたが、この点に関してはさらなる調整が必要かもしれません。
Phi-3-mini-4k-instruct-fp16.gguf
microsoft/Phi-3-mini-4k-instruct-gguf · Hugging Face
Microsoftが開発したPhiモデルも日本語での回答はしっかりしていました。
Llama-2と比べると、回答内容が長めですが、言語生成が少し遅い印象です。3つ目の質問については、惜しいところまで行ったものの、やはり誤った答えが返ってきました。
RakutenAI-7B-chat-q5_K_M.gguf
mmnga/RakutenAI-7B-chat-gguf · Hugging Face
一方で、RakutenAIは国産モデルであることもあり、国内に関連する内容については非常にしっかりとした回答が得られました。2024年現在の総理大臣についても、問題なく正しい答えを返してくれました。
cyberagent-calm2-7b-chat-dpo-experimental-q5_K_M.gguf
mmnga/cyberagent-calm2-7b-chat-dpo-experimental-gguf · Hugging Face
サイバーエージェントが提供するLLMも問題のない回答を行いました。追加で現在のアメリカ大統領について質問したところ、こちらも正確な答えが返ってきました。
ネット接続を切っても利用できるか
ローカルLLMの利点の一つは、ChatGPTなどのオンラインサービスとは異なり、ネット接続なしで利用できる点です。これにより、プライバシーの漏洩などのリスクを低減することが可能になります。
そのため、パソコンのネット接続を切った状態でもローカルLLMが正しく動作するかどうかも試してみました。
結果として、LM Studioはネット接続がなくても問題なく動作し、AIモデルが正常に回答を生成することが確認できました。
これにより、ローカル環境での使用がセキュアでありながら、十分なパフォーマンスを提供することができることがわかりました。
ローカルLLMの利点を理解するために、ネット接続を切った状態で「ローカルLLMの利点を説明してください。」と質問してみました。得られた回答は以下の通りでした。
- Local LLM(Local Limited Machine Learningの略)は、特定の地域に特化した機械学習モデルを作成するためのアプローチです。
- 地域特有の問題に対処:
地域に特化したモデルを作成することで、地域固有の問題に対処するためのより正確なモデルが提供されます。
プライバシーとセキュリティの保護:
学習データのローカル性を保つことで、プライバシーやセキュリティに関する問題を避けることができます。
地域の専門知識:
データサイエンティストが特定の地域に精通しているため、より効率的な作業が可能です。
地域経済への貢献:
地域のデータを活用することで、地域経済の発展や地域振興につながる可能性があります。
このように、ローカルLLMは地域に特化した利点が多く、プライバシーの保護や地域貢献などの面での強みがあることがわかりました。ネット接続を切った状態でも、モデルは適切な情報を提供できることが確認されました。
Chat GPTに同じ質問をした際の回答は下記の通りです。
- Chat GPT 回答
- プライバシーとセキュリティの向上:
ローカル環境での実行: データがクラウドに送信されることなく、ローカル環境で処理されるため、個人情報や機密データの漏洩リスクが低減します。
データ管理: 自分のデータがどこに保存されているかを完全に管理できるため、セキュリティ対策をカスタマイズしやすいです。
オフライン利用:
ネット接続不要: インターネット接続がなくても利用できるため、接続環境が不安定な場所や、接続が制限されている場所でも使用可能です。
カスタマイズと最適化:
地域特化: 特定の地域やドメインに特化したモデルを作成することで、より関連性の高い、精度の高い結果を得ることができます。
フィードバックループ: 自分のニーズやフィードバックに基づいてモデルをカスタマイズしやすく、パフォーマンスを向上させるための微調整が可能です。
コストの削減:
クラウド費用の節約: クラウドベースのサービスと比べて、運用コストが低く抑えられる場合があります。特に大規模なデータ処理や頻繁なアクセスがある場合に有利です。
独立性と自律性:
外部依存の回避: 外部のサーバーやサービスに依存せず、独立してAIを運用できるため、サービスの中断や変更に影響されません。
パフォーマンスの向上:
ローカル処理: データ転送の遅延がなく、ローカルでの計算処理ができるため、高速な応答が期待できます。
まとめ
今回は、ローカルLLMの代表的なソフトウェアである「LM Studio」の利用方法と、日本語対応可能なAIモデルを検証してみました(2024年8月時点)。
検証したポイントは以下の通りです:
- LM Studioの基本的な使い方:
- 「LM Studio」は、ローカル環境で大規模言語モデルを利用できるツールであり、オンラインサービスに依存せずに自然言語処理を行うことができます。
- 日本語対応AIモデルの検証:
- ELYZA-japanese-Llama-2:
- 正確な回答が得られるものの、戦国時代の三英傑に関する回答が誤っていました。
- Phi-3-mini-4k-instruct-fp16:
- 日本語での回答は一般的に良好でしたが、同様に三英傑の質問には誤った回答がありました。
- RakutenAI:
- 日本国内の情報については正確な回答を提供し、現在の総理大臣についても問題なく答えました。
- サイバーエージェントのLLM:
- 国内関連の質問には正確に答え、追加の質問として現在のアメリカ大統領についても正しい回答が得られました。
- ELYZA-japanese-Llama-2:
- ネット接続なしでの利用:
- LM Studioはネット接続なしでも正常に動作し、ローカルでのプライバシー保護とセキュリティ向上に寄与することが確認されました。
- ローカルLLMの利点:
これらの検証を通じて、ローカルLLMの利用におけるメリットと実際のパフォーマンスが確認できました。
今後の利用において、これらの情報が参考になることを願っています。