Meta社は、2024年9月25日に大規模言語モデル(LLM)「Llama 3.2」をリリースしました。Llama 3.2は、前バージョンのLlama 3.1を大幅に進化させた、次世代のオープンソースLLMです。最大の特徴は、新たにマルチモーダル機能が追加され、画像を理解できるようになった点、そしてスマートフォンやエッジデバイスといったオンデバイス環境での実行に最適化された軽量モデルが提供された点です。
Llama 3.2は、テキスト生成、質問応答、翻訳、要約など、従来の言語モデルが得意としていたタスクに加え、画像の内容説明、画像からの情報抽出、画像に基づいた推論といった、視覚情報を扱うタスクにも対応できるようになりました。また、軽量モデルの提供により、従来はクラウド環境での実行が必須であったLLMを、より身近なデバイスで利用することが可能になり、AI技術の民主化を大きく前進させる可能性を秘めています。
本記事では、Llama 3.2の全体像を把握した上で、各モデルの詳細、ベンチマーク結果、ユースケースについて詳しく解説します。
本題に入る前に、生成AIとは何か?ChatGPTとは何か?を確認しておきたい方は、下記の記事を御覧ください。
また、前バージョンであるLlama3.1については「Metaが最新言語モデルLlama3.1を発表!脅威のGPT-4o超え!?」に詳しく記載していますので、ぜひそちらをご覧ください!
Llama 3.2 の全体像
Llama 3.2は、以下の3つのモデルファミリーで構成されています。
モデルはこちらから入手できます。
- Llama 3.2 Vision (11B & 90B): 画像とテキストの両方を理解できるマルチモーダルモデル。
- Llama 3.2 (1B & 3B): オンデバイス実行に特化した軽量なテキストモデル。
- Llama Guard 3 (1B & 11B): モデルの出力に対する安全性評価を行うセーフガードモデル。
Llama 3.1から進化している点:
- マルチモーダル機能の追加: Llama 3.2 Visionは、画像とテキストを組み合わせて入力することが可能になり、視覚情報を理解した上でテキスト生成や回答を行うことができます。
- 軽量モデルの提供: Llama 3.2 1B & 3Bは、スマートフォンやエッジデバイスでの実行を想定した軽量モデルであり、限られたリソースでも高性能なLLMの利用を可能にします。
- 安全性評価モデルの更新: Llama Guard 3は、マルチモーダルモデルと軽量モデルに対応した安全性評価モデルであり、有害なコンテンツや不適切な応答の生成を抑制します。
ライセンス
Llama 3.2 visionのライセンスは、Llama 3.1とほぼ同様ですが、欧州連合に居住する個人、または欧州連合に主たる事業所がある企業は、Llama 3.2 Visionのマルチモーダルモデルを使用するライセンス権が付与されません。
ただし、Llama 3.2 Visionを組み込んだ製品やサービスのエンドユーザーにはこの制限は適用されないため、グローバルな製品を開発することは可能です。
詳細については、Llama 3.2 Visionの公式ライセンスと利用規約を参照してください。
Llama 3.2 Vision: マルチモーダル機能の詳細
Llama 3.2 Visionは、Metaがリリースした最も強力なオープンマルチモーダルモデルです。11Bと90Bの2つのサイズがあり、それぞれベースモデルと指示調整済みモデルが用意されています。
Llama 3.2 Visionのアーキテクチャは、Llama 3.1 LLMをベースに、ビジョタワーとイメージアダプターを組み合わせた構成となっています。11B VisionモデルはLlama 3.1 8Bを、90B VisionモデルはLlama 3.1 70Bをテキストモデルとして使用しています。テキストモデルはVisionモデルの学習中に固定され、テキストのみのパフォーマンスを維持しています。
Llama 3.2 Visionの主な特徴
- 画像とテキストの同時理解: 画像とテキストのプロンプトを組み合わせることで、画像の内容を理解し、それに基づいたテキスト生成や回答が可能です。画像+テキストのプロンプトは英語のみ、テキストのみのプロンプトは多言語対応しています。
- 高解像度画像の処理: 高解像度画像を処理し、詳細な分析や推論を行うことができます。
- 長いコンテキスト長: 128kトークンのコンテキスト長をサポートしており、画像を含む複数ターンの会話も可能です。ただし、transformers実装では、入力で提供された最後の画像のみに注目します。
- 多言語サポート: テキストのみのプロンプトでは、英語、ドイツ語、フランス語、イタリア語、ポルトガル語、ヒンディー語、スペイン語、タイ語をサポートしています。
推論例
- 画像の内容説明: 例えば、旅行写真の画像を入力として「ここはどこですか?近くの観光スポットは?」と質問すると、画像に写っている場所を特定し、近くの観光スポットをリストアップするといった回答を生成します。
- 画像からの情報抽出: インフォグラフィックの画像を入力として「請求日から支払期日までの期間は?」と質問すると、画像から請求日と支払期日の情報を読み取り、「15日」といった具体的な回答を生成します。
- 画像に基づいた推論: 災害状況を示す画像を入力として「この地域ではどのような被害が出ていると考えられますか?」と質問すると、画像から洪水や地震などの災害の種類を推測し、起こりうる被害について説明するといった回答を生成します。
ベンチマーク結果
Llama 3.2 Visionのベンチマーク結果はMeta社から上記のように公表されています。簡単にまとめると以下のようになります。
優れた点:
- 画像認識タスク、視覚理解タスクにおいて、Claude 3 HaikuやGPT4o-miniといった主要な基盤モデルと競合できる性能を示しています。(参照:提供された3つのベンチマーク結果のスクリーンショット)
- 特に、ドキュメントレベルの理解(図表を含む)、画像のキャプション生成、視覚的グラウンディングタスク(自然言語による指示に基づいて画像内のオブジェクトを正確に特定するタスク)において優れた性能を発揮しています。これは上記図における、ChartQA、AI2D Diagram、DocVQAのスコアが高いことからわかります。
- 90Bの指示調整済みモデルは、MMMU(マルチモーダル多肢選択式推論タスク)において、CoTを用いることで60.3のスコアを達成しており、これはClaude 3 – Haikuのスコア50.2、GPT4o-miniのスコア59.4を上回っています。
- テキストのみのタスクにおいては、Llama 3.1と同等の性能を維持しています。これは、Visionモデルの学習中にテキストモデルのパラメータが固定されているためです。(参照:元記事の「What is Llama 3.2 Vision?」セクション)
- 具体的には、Llama 3.2 Vision 11BはLlama 3.1 8Bを、Llama 3.2 Vision 90BはLlama 3.1 70Bをテキストモデルとして使用しており、これらのテキストモデルはVisionモデルの学習中に固定されています。
劣る点:
- 一部のベンチマークでは、GPT-4o-miniなどのクローズドモデルに劣る結果となっています。例えば、MMMU – Pro(Vision)(視覚情報を用いた高度な推論タスク)タスクでは、Llama 3.2 Vision 90Bのスコアは33.8であるのに対し、GPT-4o-miniは36.5を記録しています。(参照:添付の「Vision instruction-tuned benchmarks」のスクリーンショット)
このように、Llama 3.2 はGPT-4o miniにも匹敵する非常に高性能なマルチモーダルの言語モデルであることがわかりました。ただ、「すごいけどなにに使うの・・・?」という疑問を持たれたかもしれません。
Llama 3.2の最も効果的な活用方法は、オンプレミス環境でRAGを構築することです。会社のセキュリティポリシー上、クラウドサービスのRAGを使用できない場合に、企業内のサーバ上にLlama 3.2を使用してRAGを構築できます。
実は弊社は「セキュアGAI」というRAG(文書検索)のサービスをSaaSで提供していますが、こちらをオンプレミス環境に構築することに知見と実績がございます。もしオンプレミス環境のRAG構築をご要望でしたら、ぜひお気軽にお問い合わせください!
Llama 3.2 1B・3B:オンデバイス実行に特化した軽量モデル
Llama 3.2 1B・3Bは、スマートフォン、タブレット、エッジデバイスなどのオンデバイス環境での実行に最適化された軽量モデルです。
プロンプトの書き換え、多言語の知識検索、要約タスク、ツールの使用、ローカルで実行するアシスタントなど、デバイス上のユースケース向けに調整されています。
Llama 3.2 1B・3Bの主な特徴
本モデルは主に以下のような特徴を持っています。
- 軽量設計: 小さなモデルサイズで、限られたリソースのデバイスでも動作可能です。
- 高性能: 少ないパラメータ数ながら、同規模のオープンアクセスモデルを凌駕する性能を実現しています。
- 多言語サポート: 英語、ドイツ語、フランス語、イタリア語、ポルトガル語、ヒンディー語、スペイン語、タイ語をサポートしています。
- 幅広いユースケース: プロンプトの書き換え、多言語知識検索、要約、ツール使用、ローカルアシスタントなど、様々なユースケースに対応可能です。
オンデバイスだからこそ効果的なユースケース
1. プライバシー重視のパーソナルアシスタント
常に携帯するプライベートな情報こそ、デバイス内で安全に処理したい。 Llama 3.2 1B・3Bなら、ユーザーのプライベートな情報(メール、メッセージ、カレンダー、位置情報など)をデバイス内に留めたまま、高度なAI処理が可能になります。
例:
- 機密性の高いビジネス文書の要約: 重要なビジネス文書を社外秘としてデバイス内で要約。
- 個人情報を含むメールの自動返信: 差出人や内容に応じて、個人情報を含んだ適切な返信文を自動生成。
- 位置情報に基づいたリマインダー設定: 特定の場所に近づいたら、デバイス内でリマインダーを自動生成し通知。
2. リアルタイム性が求められるアシスタント機能
クラウドとの通信遅延をなくし、瞬時の応答を実現。 Llama 3.2 1B・3Bは、デバイス内で処理を行うため、ユーザーの入力に対して瞬時に反応することができます。
例:
- リアルタイム翻訳: 会話や動画の音声をリアルタイムに翻訳し、字幕を表示。
- 音声入力によるメモ作成: 音声入力の内容をリアルタイムでテキスト化し、メモとして保存。
- ゲーム内でのAIキャラクター: ユーザーの発言に自然な反応を返す、よりリアルなAIキャラクターを実現。
3. ネットワーク接続が不安定な環境での利用
オフラインでもAIの力を活用。 Llama 3.2 1B・3Bは、インターネット接続がなくても動作するため、ネットワーク環境が不安定な場所でも利用することができます。
例:
- 災害時の情報提供: 災害時にネットワークが遮断された状況下でも、必要な情報を提供するチャットボット。
- 僻地での医療診断サポート: 電波状況の悪い僻地でも、医師の診断をサポートするAIアシスタント。
- 発展途上国での教育支援: インターネット環境が整っていない地域でも、学習教材を提供するAI tutor.
4. バッテリー消費を抑えたAI機能
限られたバッテリー容量を有効活用。 Llama 3.2 1B・3Bは、軽量モデルであるため、巨大なモデルと比べてバッテリー消費を抑えることができます。
例:
- ウェアラブルデバイスのAI機能: スマートウォッチやスマートグラスなどのウェアラブルデバイスに、音声アシスタントや健康管理などのAI機能を搭載。
- IoTデバイスのAI処理: センサーデータの分析や異常検知など、IoTデバイスのエッジ側でAI処理を行う。
Llama 3.2 1B・3Bは、従来のLLMでは実現が難しかった、オンデバイスならではの利点を活かしたユースケースを可能にする、革新的な軽量モデルです。 これらのモデルが普及することで、AIはよりパーソナルで、より身近なものとなり、私たちの生活を豊かに変えていく可能性を秘めていると言えるでしょう。
ベンチマーク結果
Llama 3.2 1B・3Bは、スマートフォンやエッジデバイスでの利用を想定した軽量モデルです。限られた計算資源でも動作するように設計されていますが、その性能は既存のオープンモデルを凌駕し、巨大なモデルにも匹敵するほどです。
①指示への追従能力:Llama 3.1に迫る性能
Llama 3.2 1B・3Bは、人間が与えた指示を理解し、それに従ってタスクをこなす能力を測るテストで、優れた結果を示しました。
- IFEval: 3Bモデルは77.01点という高得点をマークし、これはLlama 3.1 8B (76.49点)とほぼ同等のスコアです。3Bモデルが巨大なモデルに匹敵する指示追従能力を備えていることがわかります。一方、1Bモデルは58.92点と、3Bモデルには及ばないものの、他の軽量モデルと比較して十分高い性能を示しています。
- AlpacaEval (LC) & MixEval-Hard: これらのテストでも、3Bモデルは1Bモデルを上回るスコアを記録し、Llama 3.1 8Bに近い性能を示しました。3Bモデルはより複雑で長い指示にも対応できる能力を持っていると言えます。
②多様なタスクにおける性能:軽量モデルの中でもトップクラス
Llama 3.2 1B・3Bは、指示への追従能力に加え、以下のような様々なタスクをこなす能力もテストされ、軽量モデルの中でもトップクラスの性能を示しました。
- BBH (論理的思考力), MATH Lvl 5 (数学的問題解決能力), GPQA (一般的な知識), MUSR (多言語理解), MMLU-PRO (専門知識): 3Bモデルはこれらの全てのテスト項目において、1Bモデルと、同程度のサイズのオープンモデルであるGemma 2 2.6B ITやPhi 3.5-mini ITを上回るスコアを記録しています。
- 特に、3Bモデルは「IFEval」や「MMLU-PRO」といった高度な言語理解能力が求められるタスクで優秀な成績を収めています。これは、3Bモデルが複雑な質問を理解し、適切な回答を生成する能力に優れていることを示唆しています。
Llama 3.2 の利用方法
Llama 3.2のモデルは、Meta社から直接入手するか、Hugging Face、Kaggleなどのパートナーから入手することができます。
Hugging Faceでのデモ
自前で環境を用意しなくても、こちらから、Llama 3.2 Vision 11Bのマルチモーダルを試せるので、早速試してみました。
上記はGoogleストリートビューのスクリーンショットです。この画像をアップロードし、「この場所はどこですか?」と日本語で聞いてみました。結果はこちら。
レスポンス速度がかなり速いのがわかります。そしてLlama 3.2からの回答は「ベトナム・ハノイの西湖公園」ということでしたが、間違いです笑
正解はホアンキエム湖場所なのですが、ハノイまではあっているので、とりあえず良しとしようと思います。
また、公式なサポートをしている言語には日本語は含まれませんが、日本語で質問したら日本語で回答をしてくれて、作成される文章に全く違和感はありませんでした。
まとめ
Llama 3.2は、マルチモーダル機能、オンデバイス実行能力、そして強力な性能を兼ね備えた、次世代のオープンソースLLMです。Meta社は、Llama 3.2をオープンソースとして公開することで、AI技術の民主化を推進し、より多くの人々がAIの恩恵を受けられる社会の実現を目指しています。実際弊社も恩恵を受けており、ありがたい限りです・・・!