はじめに
- この記事では、Ollamaを介してGoogle ColabでCommand R+を使用し、動作させる方法を解説します。
- 結論からいうとハードウェアアクセラレータをTPU v2を選択したところ、なんとか動かせた感じでした。
Ollamaとは
Ollamaは、LLama3やLLava、vicunaやPhiなどのオープンに公開されているモデルを手元のPCやサーバーで動かすことの出来るツールです。
Command R+とは
Command R+は、Cohereの大規模言語モデルです。数十億のパラメータを持つこのモデルは、自然言語処理やテキスト生成において優れた能力を発揮します。Commandモデルの強化版として、より複雑なタスクを処理し、精巧で正確な応答を生成します。長文要約、会話、創作など多様なタスクをこなし、その柔軟性とパフォーマンスの高さで、言語処理の分野で新たな地平を開いています。
前提条件
- Google Colabのアカウントを登録している
- Goolge ColabのProを購読している
デモの手順
ノートブックを新規作成する
Google ドライブにご自身のアカウントでログインしてGoogle Colabノートブックを作成します。
ランタイムタイプを変更する
- TPU v2を選択する。時間あたりにコンピューティング ユニット数が消費されるので、そこは注意してください。
- 他のGPU(A100 GPU, L4 GPUなど)を設定したが、以下のエラーになってしまった。
ggml_assert: /go/src/github.com/ollama/ollama/llm/llama.cpp/ggml-cuda.cu:60: !"cuda error"
ノートブックに次のコードを追加して実行する。
ollamaをダウンロードしてインストールする
!curl https://ollama.ai/install.sh | sh
!echo 'debconf debconf/frontend select Noninteractive' | sudo debconf-set-selections
!sudo apt-get update && sudo apt-get install -y cuda-drivers
import os
# Set LD_LIBRARY_PATH so the system NVIDIA library
os.environ.update({'LD_LIBRARY_PATH': '/usr/lib64-nvidia'})
ollamaサーバを起動して、command-r-plusをpullする
!nohup ollama serve &
!ollama pull command-r-plus
command-r-plusをpullするときに59GBのダウンロードするので、数十分の時間がかかるので注意してください。
ollamaのpythonのライブラリからチャットして、レスポンスを出力する
import ollama
response = ollama.chat(model='command-r-plus:latest', messages=[
{
'role': 'user',
'content': 'Why is the sky blue?',
},
])
print(response['message']['content'])
ここでも結果が出力されるまで、このときの状況では3分以上時間がかかりました。
まとめ
-
なんとか、動作させることはできたのですが、コンピューティング ユニット数の消費の状況を考えると、この環境では、他のLLMモデルで活用するほうがよさそうでした。
-
Goolge Colabで課金してみたがOllamaを使用してCommand R+を満足に動作させることはできなかった。パラメータ数のすくないモデルで試すこととする。
感想
-
Command R+を快適に試したいのであれば、まずはCohereの公式サイトのPlaygroudやAPI登録して、試すことをオススメする。サクサクレスポンスが返ってきて、本質的に実力を体感できる。APIが有料になったときの、値段にもよるだろうが、あの精度、スピード感で使えるのは、素晴らしい!
-
ローカルで環境構築するのに必要な情報など公式サイトなどをウォッチしていこうと思う。私は失敗したが、他にうまく環境構築できている人がいる、出てくると思うから。どんなスペックだと構築できるのか情報や、どんな環境パターンだと構築できるのか、しやすいのかを知りたい。
-
LLMの実行に必要なインフラを確保する術も必要だということがわかった。ローカル、クラウドであったとしても。マシンスペック、Amazon Bedrockなど。
参考にした情報
-
OllamaをGoogle Colabで動作させる方法!
動画で手順が丁寧に解説されていて、分かりやすかった。これをみて、パラメータ数の少ないモデルから試していくのをオススメします。 - 日本語にも対応したLLM「Cohere Command R(+)」の実力は?