Cohereの研究部門である「Cohere For AI」が、5月23日、MacBookなどでも動作するほど軽量な8Bパラメータのモデルを含め、23ヶ国語に対応した最新LLM「Aya 23」を公開した。
「Cohere」といえば、カナダのAI開発企業で、GPT-4の過去モデルやClaude 3 Sonnetに迫るほどの精度を誇りながら、無料でモデルが公開され注目を集めた「Command R+」(104Bパラメータ)などで知られている。
今回リリースされた「Aya 23」モデルには、8B(80億)パラーメータ、35B(350億パラメータ)の2種類がある。
Metaが4月に公開した同じくオープンソースの大規模言語モデルであるLlama 3 8B, 70Bについては、当サイトでMacBook Air上でローカル利用する方法を解説した。
最も軽量な「Aya 23 8B」については、「Llama 3 8B」と同じく、MacBook Airなどをはじめとする個人向けのノートパソコン上でも、十分実用的なスピードで動作する。
しかも、Llama 3 (8B)と比べて、Aya 23 (8B)の方が、日本語の性能は高いと感じる。
多言語対応を謳うAya 23は、対応する23の言語の一つとして日本語を挙げており、明確に日本語がサポートされているだけあって、Llama 8Bのように急に英語になってしまうことなく、ちゃんと日本語で回答を生成してくれる。
本記事では、Aya 23を、ローカルPC上にダウンロードして、オフラインでも完全プライベートで利用可能なLLMを実際に動かしてみる手順を紹介する。
プログラミングの知識がない人でも、簡単に再現できるように解説していく。筆者はMacBook Airを利用しているが、Windows PCや、Linuxなどでも一連の手順は再現可能だ。
ローカルLLMがあれば、機密性の高い情報でも安心してAIを使えたり、自分のPC上で行う作業をAIに任せたりといったことが可能になる。
ぜひこの記事を参考に、ローカルLLMの世界に入門して欲しい。
Aya 23をローカルPC上にダウンロードする方法
Aya 23をMacBook Airを始めとするローカルPC上に入れる最も簡単な方法は、「Ollama」というアプリを経由して入手する方法だ。
ここでは実際のダウンロード・インストール手順を解説していく。
LLMを誰でも簡単に使える神ツール「Ollama」の導入
Ollamaは、様々な大規模言語モデル(LLM)をMacやWindowsやLinuxなどのPC上にダウンロードして、ローカル環境で簡単に実行できるオープンソースのツールだ。
プログラミングやAIの専門知識がなくても、Ollamaを使えば、非常に簡単に最先端のLLMを自分のコンピュータで動かせる。LLMの可能性を誰もが手軽に体験できる神ツールだ。
Ollamaを導入すると、Macの「ターミナル」アプリや、Windowsの「コマンドプロンプト」アプリなどで、ollama run aya:8b
というシンプルなコマンド1行だけで、Aya 23やLlama 3などのLLMをダウンロード〜使用まで一発で実行できるようになる。
インストール方法を解説すると、たとえばMacの場合ならば、公式サイトからOllamaアプリをダウンロードして.zip
ファイルを解凍するとOllamaのアプリが出てくるので、それを「アプリケーション」フォルダに移動しておく。
アプリを起動すると、Macの管理者アカウントでログインした状態で、コマンドラインツールをインストールするように求められる。パスワードを入力して承認するだけで、インストールは終了する。
インストール後は、ターミナルから「ollama」コマンドを実行できるようになる。
Mac, Windows, LinuxのいずれでもOllamaは使用可能で、インストールの手順も概ね共通だ。
Ollama経由でのAya 23のダウンロード
Ollamaのモデルライブラリを見ると、Ollamaで利用可能な大規模言語モデルの一覧がある。
多数のモデルが利用可能であるが、MetaのLlama 3、GoogleのGemma、またCohereのCommand R+やAya 23などもラインナップに含まれている。
ここで挙げられているモデルであれば、すべて、ターミナルアプリを開いて、ollama run aya:8b
のようにollama run
コマンドに続けてモデル名を指定するだけで、一発でダウンロードが開始できる。
Aya 23の場合、軽量な8Bモデルと、より大型の35Bモデルの両方がラインナップされているが、NVIDIAの強力なGPUを持っている場合などを除いて、個人がノートPCやデスクトップPCで現実的に動かすことができるのは、8Bモデルのみだと思われる。
筆者はM3 MacBook Airでメモリ16GBの端末を使用しているが、8Bモデルであれば、かなりサクサク動く印象であった。
Ollamaのollama run
コマンドでのモデルのダウンロードが完了すると、直ちにインストールされ、ターミナル上でAya 23とのチャットが開始される。
試しに富士山の高さを聞いてみると、日本語で的確に回答してくれた。
Mac Book Airであっても、一瞬で回答が表示されるので、80億パラメータのモデルであれば、Appleシリコンを搭載したラップトップでの動作は非常に高速だと言える。
Ollamaによるターミナルでのチャットで使えるコマンド
LLMとの会話の途中で、/?
と打ち込むと、ターミナル上で利用できるOllamaのコマンド一覧が表示される。
/bye
と打ち込めば、チャットを終了することができる。また今度、Aya 23とのチャットを行いたくなったら、再びollama run aya:8b
と打ち込めば良い。
一度ダウンロードとインストールを完了していれば、以降でollama run
コマンドを使用した場合、スピーディーにそのモデルとのチャットを起動できる。
Aya 23の特徴&ライセンス上の注意点
Aya 23は、日本語や英語、中国語を含む23言語に対応している。
モデルの特徴として、何往復もする会話よりも、シングルターンの指示-回答のやり取りに最適化されているという点が挙げられる。
これは、ChatGPTのGPT-4oやClaude 3 Opus, Sonnetなどの対話型のAIと比較しての大きな違いだ。
ChatGPTなどでは、チャットの履歴全体を踏まえて次の回答が生成されるが、Aya 23の場合、そうしたラリーが長く続く会話というよりは、ユーザーからの指示文と、それに対応するAIからの回答、というワンセットが想定されている。
また、Aya 23は、非商用のリサーチ用のモデルという位置付けなので、「CC-BY-NC 4.0」 というクリエイティブ・コモンズライセンスのもとで配布されている。
したがって、ビジネス目的では使用できないので、あくまでローカルLLMの練習や研究の目的で使用するとよい。
ChatGPTのようなUIでローカルLLMを使いたい時は
以上の手順で、ターミナル上でのollama
コマンドを通してAya 23とチャットすることができたが、使い慣れたチャット風のインターフェースでローカルLLMを使用したいこともあるだろう。
そうした希望を叶えてくれるのが、さまざまな大規模言語モデルを統一のインターフェースで使用できる「ChatbotUI」や「Open WebUI」などのオープンソースアプリだ。
OpenAIやAnthropicのAPIキーを使って、最新の商用モデルのGPT-4oやClaude 3 Opusを呼び出せるほか、OllamaでローカルPC上にインストールされたローカルLLMも呼び出すことができる。
例えば、以下の画面は、Google Chromeで開いた「ChatbotUI」上で、Ollama経由で稼働するAya 23モデルとチャットをしている様子だ。
ターミナルよりもずっと分かりやすく、文章のコピペなども行いやすく、またチャット履歴が過去に遡って保存されるので、後から見返す上でも便利である。
ChatbotUIで、Aya 23に、アメリカで最も高い山を聞いてみたチャットの様子が以下だ。
「ChatbotUI」や「Open WebUI」のインストールさえしてしまえば、Ollamaでインストールした大規模言語モデルを呼び出すのはワンクリックで超簡単だ。
しかし、「ChatbotUI」や「Open WebUI」のインストールに若干の手間がかかる。
当サイトでは、「ChatbotUI」と「Open WebUI」について、それぞれインストール方法の詳細を解説した記事を用意しているので、ローカルLLMをもっと快適に使いたい、チャットUIで色々なLLMモデルを使い分けたい、という人は、ぜひ以下の記事を参考にしてほしい。
筆者個人的には、「ChatbotUI」の方が豊富な機能があるがインストールが面倒、「Open WebUI」はシンプルな機能ながら簡単にインストールできる、という印象だ。
機械音痴な人、手間を減らしたい人は迷いなく「Open WebUI」を選ぶべきだ。
一方で、解説を読みながらターミナルに様々なコマンドを打ち込むのが苦ではない人は、より機能が充実した「ChatbotUI」を選ぶと良い。
日本語力が圧倒的な「Aya 23」の可能性
Metaが開発するLlama 3が登場した際にも、8Bモデルをインストールして使ってみたころ、非常に高速かつそこそこの精度で回答を生成してくれて、新しい時代の幕開けを感じていた。
しかし、Llama 3 8Bモデルの課題は、頑なに日本語を使ってくれないことにある。
例えば、上記でAya 23に尋ねた「アメリカ合衆国で最も高い山は?」という質問をLlama 3 8Bに尋ねてみると、以下のように情報量は多いものの、プロンプトの言語をがっつり無視して、英語で返信されてしまった。
Aya 23は、シンプルに「デナリ山です。」と日本語で正解を回答してくれていたので、明らかに日本語のコントロールはAya 23の方が性能が高い。
安定的に日本語で出力してくれて、それでいて個人向けのPC上でも非常にサクサク動くオープンウェイトの大規模言語モデルが登場したことは、様々なメリットをもたらしそうだ。
例えば、PC内のファイルがぐちゃぐちゃになっていて、ファイルのネーミング規則もバラバラである、といった場合に、Aya 23にファイル・フォルダのリネームを行わせる簡単なプログラムを用意すれば、ローカル上の情報の整理も簡単に行える。
また、ローカル上で全てのやり取りが完結するので、外部のサーバーに個人情報や機微な情報を送る必要もなく、どんな内容であっても安心してAya 23に読み込ませることができる。
Ollamaのおかげで、ローカルLLMを試す手間は大幅に削減されて居るので、MacBook Airなど、手持ちのPCでとりあえずローカルLLMをなんでも積極的に使ってみて、色々な可能性を探ってみてはどうだろうか。