Cerebras-GPTがリリースされました
みなさん、こんにちは。Cerebrasプリセールスエンジニアのnakadaです。
今回は、2023年3月にCerebrasからリリースされたCerebras-GPTについて解説します。
目次
昨年から新聞やニュースでも取り上げられているOpenAI ChatGPTのベースとなっているOpenAI GPT3/GPT4と同じ、ディープラーニングを用いた大規模言語モデル(以下、LLM)です。
LLMにはOpenAI GPTシリーズだけでなく、DeepMindのChinchillaや、MetaのOPT、EleutherAI のPythiaなどがありますが、一部のLLMはコードや学習済みの重み等を公開していません。
今回リリースされたCerebras-GPTはHugging Face および GitHub で Apache 2.0 ライセンスの下で公開されており、ハードウェアリソースさえあれば、自身でトレーニングを実行したり、学習済みモデルを利用して、文書生成させることも可能です。
各LLMの比較 https://www.cerebras.net/blog/cerebras-gpt-a-family-of-open-compute-efficient-large-language-models/
Cerebras-GPTとは
Cerberas-GPTは、EleutherAIのPythiaを補完するように設計されたCerebras独自モデルです。今回のリリースではパラメータサイズが異なる7つのモデルがリリースされました。
Model |
Parameters |
Layers |
d_model |
Heads |
d_head |
d_ffn |
LR |
BS (seq) |
BS (tokens) |
---|---|---|---|---|---|---|---|---|---|
Cerebras-GPT |
111M |
10 |
768 |
12 |
64 |
3072 |
6.0E-04 |
120 |
246K |
Cerebras-GPT |
590M |
18 |
1536 |
12 |
128 |
6144 |
2.0E-04 |
264 |
541K |
Cerebras-GPT |
1.3B |
24 |
2048 |
16 |
128 |
8192 |
2.0E-04 |
528 |
1.08M |
Cerebras-GPT |
2.7B |
32 |
2560 |
20 |
128 |
10240 |
2.0E-04 |
528 |
1.08M |
Cerebras-GPT |
6.7B |
32 |
4096 |
32 |
128 |
16384 |
1.2E-04 |
1040 |
2.13M |
Cerebras-GPT |
13B |
40 |
5120 |
40 |
128 |
20480 |
1.2E-04 |
720 → 1080 |
1.47M → 2.21M |
リリースされた7つのモデル ※Cerebras GitHubより抜粋
これらのモデルを、EleutherAIが公開している自然言語用データセット「The Pile(800GB)」を用いて、精度に関するスケール則(1パラメータ20トークン)に則って学習させた学習済みモデルも公開されています。
なお、この学習で利用した環境は、Cerebras社が提供するCerebras CS-2を16台で構成したAndromedaと呼ばれるデータパラレル環境を利用しています。
Cerebras-GPTを使ってみた
リリースされた7つのモデルの学習済みモデルはHugging Face に公開されていて、以下の簡単なコードで文書生成が可能です。上記のコードは、tokenizerとmodelでCerebras-GPTの学習済みモデルを指定しています。(上記の例では111Mパラメータモデルを指定)
また、textで生成する文書の内容を設定しています。その他、生成時のオプション設定はpipe関数を使って設定しています。詳細についてはHugging Face (https://huggingface.co/cerebras)を参照してください。このコードはpythonで書かれた簡単なコードですが、実行にはtransformerなどのモジュールが追加で必要ですので、利用環境に応じて必要なモジュールをpip installなどでインストールします。
以下は、”Generative AI is”という文を元にCerebras-GPT-111Mにて生成させた結果です。世界で最も一般的なタイプの AI のリストということで、AIを説明してくれました。ただ、AIやAIマシンのことなどを哲学的?に生成されているだけで、良く意味が分からない結果となりました。
次に、7つのモデルのうち4番目の1.3Bパラメータモデルを同じ文”Generative AI is”で生成させてみました。「ジェネレーティブ AI は新しい AI システムを作成するための非常に強力なツールです。」という文から始まり、ディープラーニングの学習手法について説明してくれました。111Mと比べると格段に説明が豊かになりました。ただ、説明の内容がジェネレーティブ AIというより、ディープラーニングの学習手法の内容でした。
最後に現在リリースされている最大モデルの13Bパラメータの結果です。最初の文が「Generative AI は、機械学習を使用して人工知能を作成する研究分野です。」ということで、それらしい文から始まり、途中で教師ありなしの学習について説明していますが「Generative AIは、既存データから新しいデータを作成することで、AI の重要な側面」というような説明も生成されました。111Mパラメータモデルと比べると正確な文がつくられることが分かります。
おまけで、日本語で生成してみました。「Generative AI is」を「生成AIとは」に変更して実行しました。結果は、日本語で生成はされましたが、意味が通っていません。
この結果の理由としては、今回の学習済みモデルがEleutherAI の「The Pile」データセットのみを使っていることが原因です。このデータセットは22データソースを組み合わせたデータセットとなっていますが、基本的には英語のみとなっているため今回のような結果になっています。
日本語データセットで学習することで、日本語生成も可能ですが次回以降のブログで、「The Pile」データセットや、日本語データセットでの追加学習などについてご説明させていただきます。
※今回、3つのモデルで生成を実行しましたが、全てCPU環境で実行しています。ただ、13Bを実行する場合に13B学習済みモデルのダウンロードで約50GBのディスク容量が必要で、実行には約80Gのメモリ容量が必要でしたのでご注意ください。また、実行にはGPUを利用することも可能です。この場合にもGPUメモリ容量にはご注意ください。
最後に
今回、ご紹介させて頂いたCerebras-GPTですが、コードは公開されましたが、大きなモデルを実行するためにはハードウェアリソースが必要です。CerebrasではLLMを実行するためのAIアクセラレータ製品として、Cerebras CS-2/Wafer Scale Clusterを販売しています。また、これらの製品をクラウドで利用可能なAI Model Studioサービスもあります。このAI Model Studioサービスでは、LLMを学習させるために必要なデータセットが十分に無いお客様のために、最小限のデータセットで利用可能なファインチューニングサービスも行っています。
ブログをお読みになり、Cerebras-GPT・AI Model Studioにご興味がある方は当社までお問合せ頂ければ幸いです。