AIを使ってしたい100のこと

生成AIの可能性と、それを使って自分自身を表現する楽しさを伝えることを目指しています。

高額なグラフィックカードを避けて「Command R(+)」を動かす方法

はじめに

制限なく無料で利用するために、生成AIをローカルPCにインストールできるといいな、と考えました。「Command R(+)」を紹介する記事を読み、これに興味を持ちました。

前回の記事では、ローカルPCに「Command R(+)」を導入するにはグラフィックカードが必要であり、これが300万~500万円くらいするという、衝撃の事実が分かりました。

muriwashinai.hatenablog.com

もうちょっと何とかならないんでしょうか。そう思ったところに、いい記事を見かけました。

pc.watch.impress.co.jp

今回はこちらの記事を読み、新たに分かった「Command R(+)」の導入方法と、コストについてまとめました。

元ネタ

【西川和久の不定期コラム】日本語にも対応したLLM「Cohere Command R(+)」の実力は? - PC Watch

ここ数日、Xのタイムラインを眺めていると、「Command R(+)」に関するつぶやきを結構見かける。どうやら日本語も含め10カ国語対応のLLMで、大容量メモリを搭載したApple SiliconなMacでも動く……ということらしい。

パラメータ数35B(350億)のCommand Rは3月13日、104B(1,040億)のCommand R+は4月5日、つまりつい先日発表されたばかり。

これまでLlama 2の13Bと34Bを何とかローカルPCで動かした記事は書いたものの、今回のCommand Rはどちらもそれを超えるパラメータ数。Command Rは35BとLlama 2の上位からプラス1Bだが、Command R+は104Bと桁違いだ。

104Bって何?

Copilotに聞く

数字で104Bと書いた場合に、1,040億を表すと知りました。この場合、Bとはどういう単位なのでしょうか?

回答

「B」は英語で「Billion」の略で、日本語では「十億」を意味します。したがって、「104B」は「104 Billion」を表し、日本語では「1,040億」になります。つまり、「B」は「十億」の単位として使われます。このような表記法は、特に経済やビジネスの世界でよく使われます。ただし、この表記法は国や地域によって異なる場合がありますので、注意が必要です。例えば、一部のヨーロッパの国では「Billion」は「兆」を意味します。そのため、文脈によって「B」の意味が変わることがあります。具体的な数値を理解するためには、その数値がどの国や地域の表記法に基づいているかを確認することが重要です。この情報がお役に立てれば幸いです。他に何かご質問がありましたら、お気軽にどうぞ。😊

LLMにおけるパラメーター数とは何を意味するのか?

Copilotに聞く

LLMにおいて、パラメーター数は何を意味しますか?

回答

LLM(Large Language Models、大規模言語モデル)における「パラメーター数」は、そのモデルが持つ内部変数の数を指します¹²。これらのパラメーターは、モデルが学習過程で調整され、その振る舞いを決定します¹。

パラメーターは、モデルが学習する際に調整される変数で、これらがモデルの振る舞いを決定します¹。適切なパラメーターの設定は、AIモデルが与えられたタスクを効率的に、かつ正確に実行するために不可欠です¹。

パラメーター数が多いほど、モデルは複雑な関数を表現でき、より高度な言語処理能力を発揮する可能性があります²。しかし、パラメーター数が増えると、モデルのトレーニングに必要な計算リソースと時間も増大し、過学習のリスクも高まります¹。

例えば、1000億のパラメータを持つモデルは、1000億個の "ニューロン" を持つ人間の脳に例えることができます²。

したがって、LLMのパラメーター数は、そのモデルの「表現力」を示す指標となります²。この情報がお役に立てれば幸いです。他に何かご質問がありましたら、お気軽にどうぞ。😊

ソース: Bing との会話 2024/5/16 (1) 【LLM】パラメーターとは?AIの性能は何で決まるのか | WithAI. https://withai.co.jp/llmparameter/. (2) LLMのパラメータ数、学習データ量ってなに? #LLM - Qiita. https://qiita.com/ymgc3/items/a8997b152b0ccda90eb8. (3) ~前編~【徹底解説】LLM(大規模言語モデル)とは?基礎 .... https://mobilus.co.jp/lab/chatbot/llm-1/.

Command R(+)が、大容量メモリを搭載したApple SiliconなMacでも動く…?

そしてこれにより盛り上がっているのがMac界隈だ。Apple SiliconなMacは、メモリに128GB(最大192GB)を搭載可能。Apple Siliconはアーキテクチャ的にメモリとVRAMは同じなので、アプリ使用領域を除いても100GB以上をVRAMとして使うことが可能なのだ。加えてMLX(Apple機械学習フレームワーク)でこの、104B Command R+も作動するので、界隈ではわちゃわちゃしてるというわけだ。

ほほう。それは知らんかった。 500万円もする64GB超のGPUメモリを持つグラフィックカードを買わなくてもいいのか。

メモリ128GBのApple SiliconなMacは、いくらなのか?

とは言え、128GB(もしくは96GB)のMacもちょっと欲しくなってきた。調べると「Mac Studio」のM2 Ultra/1TB/128GB構成では70万円オーバー、M2 Max/512GB/96GBの構成で44万円オーバー。まぁ、確かにNVIDIAGPUを複数枚使うよりはお手軽なのだが……(笑)。

70万円、安い!!…のか?

ただし、グラフィックカード1枚で300万~500万円するよりはずっと安く済む、ということが分かりました。

ローカルインストールにこだわらなければ

 さすがに104Bにもなると、先に書いた128GB搭載Mac以外(4bit版だと80GB以上で動くらしい)、ローカルではどうにもならないので、素直にCohereにアカウントを作り、API Keyを発行。VSCode拡張機能CodeGPTをインストールし、そこでプロバイダ / Cohere、モデルにCommand R+を選択、コードを書く時の補助に使ってっみることにした。

 ちなみに気になる料金はProduct正式リリースまでは無料とのこと。

ちなみに、サーバー上で実行する形態であれば、アカウントを作って無料で「Command R(+)」を使用することができるようです。

まとめ

  • 「Command R(+)」は「104B」(1,040億)ものパラメーター数を持っており、それはモデルの「表現力」がとても高いことを意味する。
  • 表現力が高い「Command R(+)」をローカルで動かせば、表現の規制などに引っかかることなく、独占的にAIを利用できる。しかも無料で。
  • メモリ128GBのApple SiliconなMacがあれば、ローカルで「Command R(+)」が動く。
    • 70万円オーバーの費用をかければ手に入る。(「Mac Studio」のM2 Ultra/1TB/128GB構成で。)
    • NVIDIAGPUを複数枚使うよりはお手軽」とのこと。
  • サーバー上で実行する形態であれば、アカウントを作って無料で「Command R(+)」を使用することができる。