Mixtral 8x7B リリースノート

Mixtral 8x7B は、Mixture of Experts (MoE) アーキテクチャを利用した高性能な大規模言語モデルで、オープンアクセスモデルにおいて最先端の結果を達成します。Llama 2 70B を上回り、多くのベンチマークで GPT-3.5 と同等またはそれ以上の性能を示し、Apache 2.0 ライセンスの下で商業的に許容可能な代替手段を提供します。

Mixture of Experts (MoE) アーキテクチャ

Mixtral 8x7B はスパースな Mixture of Experts (MoE) 手法を採用し、標準の Feed-Forward 層をルータネットワークを含む MoE 層に置き換えます。このルータは各タイムステップで 2 つのエキスパートを選択し、トークンを最も効率的に処理します。

名前は 56B パラメータを示唆していますが、実際のモデルは約 45B パラメータです。これは Feed-Forward ブロックのみが複製され、他のパラメータは 7B モデルと同じままであるためです。このアーキテクチャにより、Mixtral は実効パラメータ数が大きいにもかかわらず、12B パラメータの密集モデルと同等の速度でデコードできます。

主な機能と性能

Mixtral 8x7B はベース版と Instruct 版の両方で利用可能で、以下の仕様があります:

  • Context Window: 32k トークンのコンテキスト長をサポートします。
  • Multilingual Support: 英語、フランス語、ドイツ語、スペイン語、イタリア語に堪能です。
  • Coding Proficiency: HumanEval ベンチマークで 40.2% を達成しました。
  • Benchmark Performance:
    • ベースモデルは Open LLM Leaderboard で 68.42 点を取得し、Llama-2-70b (67.87) を上回ります。
    • Mixtral Instruct は MT-Bench で 8.30 点を取得し、他のすべてのオープンアクセスモデルを上回り、GPT-3.5-turbo-0613 (8.32) と同等の性能を示します。

推論とハードウェア要件

推論は Hugging Face の pipeline() 関数または本番環境向けデプロイのための Text Generation Inference (TGI) を使用して実行できます。モデルサイズのため、VRAM の必要量は精度により異なります:

精度 必要 VRAM
float16 >90 GB
8-bit >45 GB
4-bit >23 GB

ハードウェアが限られているユーザーは、bitsandbytes または GPTQ を使用した 4 ビット量子化を利用できます。GPTQ 量子化は、エキスパートのゲーティング層の量子化を避けて性能を維持するように設計されており、半精度モデルの 4.25 に対して 4.40 のパープレキシティをもたらします。

ファインチューニングと最適化

Mixtral は Hugging Face の TRL ライブラリを使用して単一の A100 GPU でファインチューニングできます。メモリ最適化のために 4 ビット量子化と QLoRA が推奨されます。技術ガイドラインでは、アテンションブロックの線形層 (q_proj, k_proj, v_proj, o_proj) のみを対象とし、MLP 層はスパースであり Parameter-Efficient Fine-Tuning (PEFT) と相性が悪いため対象にしないことが指定されています。

実装の詳細

プロンプト形式

ベースモデルには特定のプロンプト形式はありません。Instruct モデルは効果的に使用するために特定の会話構造が必要です:

<s> [INST] User Instruction 1 [/INST] Model answer 1</s> [INST] User instruction 2[/INST]

既知の制限事項

現在、事前学習データセットのサイズ、構成、前処理方法に関する公開情報はありません。また、Instruct モデルの教師ありファインチューニング (SFT) および直接嗜好最適化 (DPO) 用のファインチューニングデータセットやハイパーパラメータに関する詳細も共有されていません。

Sources