Falcon 180B リリースノート
TIIは、3.5兆トークンで学習された1800億パラメータのオープンアクセス言語モデルであるFalcon 180Bをリリースしました。これはオープンモデルにおける新たな最先端を確立し、GoogleのPaLM-2 Largeのようなプロプライエタリなシステムに匹敵する性能を持っています。
モデルアーキテクチャとトレーニング
Falcon 180BはFalcon 40Bのスケールアップ版であり、スケーラビリティを向上させるためにmultiquery attentionなどの革新的な技術を取り入れています。このモデルはAmazon SageMakerを使用し、最大4,096個のGPUを同時に使用して、合計約700万GPU時間でトレーニングされました。
主なトレーニング仕様は以下の通りです:
- データセット: 主にRefinedWebからのウェブデータ(約85%)に加えて、厳選された会話、技術論文、および少量のコード(約3%)で構成されています。
- スケール: 3.5兆トークン。これは事前学習データセットの1エポック未満に相当します。
- 計算量: Llama 2の2.5倍の規模であり、4倍の計算量でトレーニングされています。
パフォーマンスとベンチマーク
リリース時、Falcon 180BはHugging Face Leaderboardにおいてスコア67.85を記録し、公開されている事前学習済みLLMの中で最高スコアを記録しました(後に更新され、更新された手法に基づくとLlama 2 70Bと同等のスコアとなりました)。
技術的なパフォーマンスのハイライトは以下の通りです:
- 競争力のある地位: MMLUにおいてLlama 2 70BおよびOpenAIのGPT-3.5を上回っています。
- プロプライエタリモデルとの同等性: HellaSwag, LAMBADA, WebQuestions, Winogrande, PIQA, ARC, BoolQ, CB, COPA, RTE, WiC, WSC, ReCoRDを含む複数のベンチマークにおいて、PaLM 2-Largeと同等の性能を示しています。
- 量子化の安定性: 評価指標は
torch.float16、8bit、および4bitバージョン間で同様ですが、8-bit推論は4-bitよりも大幅に高速であることが確認されています。
デプロイのためのハードウェア要件
Falcon 180Bの実行には、タスクに応じて膨大な計算リソースが必要です。特定の構成におけるメモリ要件は以下の通りです:
| ユースケース | 手法 | 必要メモリ | 例となるハードウェア |
|---|---|---|---|
| トレーニング | Full fine-tuning | 5120GB | 8x 8x A100 80GB |
| トレーニング | LoRA with ZeRO-3 | 1280GB | 2x 8x A100 80GB |
| トレーニング | QLoRA | 160GB | 2x A100 80GB |
| 推論 | BF16/FP16 | 640GB | 8x A100 80GB |
| 推論 | GPTQ/int4 | 320GB | 8x A100 40GB |
実装と使用方法
Falcon 180Bは、Transformersバージョン4.33を介してHugging Faceエコシステムに統合されています。ユーザーはモデルのライセンスに同意する必要があります。このライセンスは、「ホスティング利用」を除外する制限付きの条件下での商用利用を許可しています。
Baseモデル vs Chatモデル
- Base Model: さらなるファインチューニングを目的とした事前学習済みプラットフォームです。特定のプロンプト形式に従わず、そのまま対話的な応答を行うようには設計されていません。
- Chat Model: 大規模な会話および指示データセットでファインチューニングされています。以下の特定のプロンプト構造を使用します:
System: [optional system prompt]User: [user input]Falcon: [model response]
技術的統合
統合は、transformersライブラリのAutoModelForCausalLMクラスを通じて行われます。このモデルは、高精度のためのbfloat16と、ハードウェアのオーバーヘッドを削減するための8-bitおよび4-bit量子化のためのbitsandbytesをサポートしています。