NTT,KDDI...和製LLMの必要性 -Chat-GPTではだめなの?【前編】
最近、こんな質問を頂きました。
「NTT、KDDIなど、日本製のLLM(大規模言語モデル)のニュースを最近よく見かけます。OpenAIのChat-GPTに日本語LLMは勝てるのでしょうか?」
「GAFAMなどの米国企業は、膨大な資金力を持ち、DVIDIAのGPUを独占してるとnoteに書かれていましたが、資金力も少なく、GPUも使えない、日本企業に勝ち目はあるのでしょうか?」
ご指摘の通りで、優秀で汎用的なLLMを開発するには、そしてコンピューティングリソースや優秀なエンジニアを雇用するには、膨大なコストがかかります。
お金、人材とも、GAFAMのような企業が圧倒的有利であることは明らかですし、NVIDIAのGPUを大量に使えないという問題については以前、記事に書きました。
資金力やGPU利用において、日本企業が劣勢なのは事実です。ではなぜ日本企業が、OpenAIのChat-GPTやGoogleのGEMINIではなく、独自のLLMを開発したいのか?
それにはいくつかの理由があると、僕は思っています。
日本独自のLLMをなぜ開発するのか
KDDI社がEYLZA社をグループ傘下に入れたり、NTTが日本独自のLLMである「tsuzumi」を開発したりしています。
それは、日本語及び日本の「こと」が得意な独自のLLMを作り、使いたいからだろう、と誰もが思うことでしょう。
Chat-GPTは、既に日本語を流ちょうに話せるし、「昔のことしか知らない」といった問題も、最近はBING検索機能などが追加されることで克服しています。「ならば、日本で独自に開発しなくていいのでは?」という意見もあります。
しかしこうした動きは、僕の中では、1年前には予測していたことでした。そこで、このような動きになった理由を書いてみたいと思います。
それを書くにあたっては、「LLMってどう作るの?」や、「LLMを日本流にカスタマイズする、ってどうやるの?」を説明したほうが早道です。
LLMの説明の前提として、まず、オープンとクローズの概念から述べていきますね。
オープンとクローズ
大規模言語モデル(LLM)には、大きく分けて2つあります。オープン系とクローズ系です。
オープン系とは、開発されたシステムの中身(ソースコード)を公開して、誰でも利用し、その中身を改変して、新しいものを作ってみいいよ、としているものです。META社のLlama2が一番有名ですね。
クローズ系とは、システムの中身は秘密にしていて、そのLLMを開発した企業だけが、中身を知っており、バージョンアップしていくもの。OpenAI社のChat-GPTや、Google社のGEMINIはこのタイプです。
オープン系の特徴
①利用が無料
オープン系のLLMの最大のメリットは、誰でも無料で使えることです。誰でもダウンロードして、使うことができます。商用利用も一部を除いて可能です。
②自由にカスタマイズできる
ダウンロードしたLLMは、自分のオリジナルモデルにカスタマイズ可能です。例えば日本語を強化したり、特定分野の知識を学ばせたり、が自由にできます。KDDIと資本提携した「ELYZA LLM for JP」も、日本語が得意なLLMとしてカスタマイズされています。
③開発スピードが上がる
例えば、META社のリリースした、Llama2は全世界で数千万ダウンロードされていて、世界中のエンジニアがカスタマイズして、Llama2ベースの新しいLLMを次々に開発しています。
クローズ系に比べて、「よりかかわる人が多い」という意味で、その真価が速くなる可能性があります。
クローズ系の特徴
①利用料金がかかる
クロース系のChat-GPTは利用料金がかかりますよね。Chat-GPT Plusだと月額20ドルですし、GEMINI Advancedも、月額3,250円かかります。
また、企業でAPIというシステムに組み込む形でLLMを使う場合、接続して、LLMに受け渡しする文字数(トークン数)に応じて従量課金されます。
②営利目的のため多大なコストを費やしての開発ができる
これは、特徴というよりも当たり前のことですが、OpenAIも、Googleも、独自開発したLLMに利用料金を課すことで収益を得て、その収益を元手に、機能アップをする、というサイクルを回せます。
③自由に改変できない
Chat-GPTは、チューニング、ある程度のカスタマイズはできても、LLM本体部分を改善したり修正したりはできません。それができるのは、OpenAIであり、Googleで、ソースコードも一切公開されていません。
クローズ系でのカスタマイズには限界がある
このように、オープン系、クローズ系には、それぞれ特徴があります。どちらがいい悪いの問題ではなく、それぞれに向き不向きがあります。
でも、クローズ系のChat-GPTでもプロンプトチューニングとか言って、使い用途に合わせたカスタマイズしたり、最近はGTP’sというモノが出てきて、色々な用途向けのChat-GPTが開発できるという話も一方でよく耳にしますよね。
そうであれば、「クローズ系で日本のことに得意ななLLMは作れるので、わわざわざ国産LLMをChat-GPTに対抗して作らなくてもいいのでは?」との疑問は否めません。
先に答えを言えば、「クローズ系でのカスタマイズには限界がある」ということになります。
でもせっかくですから、クローズ系LLMのカスタマイズ方法とはどんなものか、についても説明しておきましょう。
Chat-GPTに代表される、クローズ系のLLMもカスタマイズはある程度できます。やり方はいくつかあります。
①プロンプト・チューニング
一番簡単なのは、プロンプトを使ってのカスタマイズです。これは、以前、プロンプトのテクニック26個の記事でも説明しています。
②ファイン・チューニング
これは完成されたLLMに、簡単な色付け、例えば、芸術関係のことを答えるのが得意とか、そういった個性を出すために、別途その分野のデータ、具体的には質問と回答をペアで数百個程度学ばせて、その分野の知識を多少与える手法です。
③RAG( Retrieval-Augmented Generation )
企業が持っている独自データを読み込んで、そのデータに対して回答するといった仕組みを作る仕組みです。インターネットに公開されていないような社内情報をもとに、このRAGを用いた「社内FAQ」などが、日本の各企業で開発されています。
④LLM基盤の継続学習
これは、最も、カスタマイズ性に優れた方法ですが、一番難易度が高い方法で、完成されたLLMにさらに、学習を継続させることで、基盤そのものをかえてしまうやり方です。
後編に続きます。