Qwen2.5-Omni-3B:マルチモーダル対応の軽量AIモデル、ローカル環境での実行が可能

アルイババクラウドがリリースしたQwen2.5-Omni-3Bは、動画、音声、画像、テキストを同時に処理できるマルチモーダルAIモデルです。パラメータ数が30億個と少ないながらも、ローカル環境で強力なマルチモーダル機能を実現しています。このモデルは最近Hugging Faceで公開されました。これは軽量なマルチモーダルAIシステムにおける重要な進歩を示しています。

1. 特徴

Qwen2.5-Omni-3Bは従来の言語モデルとは異なり、本格的なマルチモーダルシステムとして、テキスト、画像、音声、動画の4つの情報を同時に処理できます。

  • テキスト処理では、豊かな言語表現を理解・生成することが可能です;
  • 画像解析では、物体やシーンを正確に認識し、視覚情報に関する質問に答えられます;
  • 音声理解においては、音声認識やトランスクリプションをサポートし、音声内容の詳細な分析が可能です;
  • 動画処理では、動作やシーンの変化を記述するだけでなく、時間軸における論理的推論も行えます。

このモデルはわずか30億のパラメータでこれらの機能を実現しており、計算リソースが限られた環境でも動作可能です。

2. 技術構成

技術的なアーキテクチャとしては、Qwen 2.5モデルシリーズに基づき、マルチモーダル処理用のコンポーネントが追加されています。

  • 共通のTransformerベースネットワークにより、基本的なテキスト処理パイプラインが提供されます;
  • 視覚情報処理モジュールにより、画像や動画フレームの特徴量を抽出・理解します;
  • 音声処理パイプラインでは、音波を処理可能な埋め込みベクトルに変換します;
  • 跨モーダルアテンション機構により、異なるモーダル間の関連性を構築します。

主な技術革新には、効率的なパラメータ共有、すべての入力をシーケンスとして扱うこと、そして各モーダルの特徴を共有埋め込み空間にマッピングするためのプロジェクション層が含まれます。

3. 機能

  • 動画理解では、動画の内容を説明、動作の識別、シーン変化の検出、時間的推論、動画に関する質問への回答などが可能です;
  • 音声処理では、音声認識・トランスクリプション、話者の識別、音声シーンの理解、音イベントの検出、音声に基づく質問への回答が可能;
  • 画像理解では、詳細な画像記述、物体検出と認識、シーン理解、ビジュアルQA、画像に基づく推論が行えます;
  • テキスト処理では、強力な言語理解能力を維持し、内容生成、要約、質問応答、翻訳などが可能です。

Qwen2.5-Omni-3Bの最大の強みは、マルチモーダル情報を統合する能力にあります。音声付き動画に関する質問に答えること、テキストと画像の関係を説明すること、マルチモーダル入力からテキストを生成すること、混合メディアコンテンツから一貫した物語を作成することが可能です。

4. テスト結果

性能評価では、複数のベンチマークテストにおいて高い精度と効率を示し、場合によってはより多くのパラメータを持つモデルを上回る結果を示しました。

5. ローカルでの展開方法

Pythonを使用してローカルでモデルを実行する方法を以下に示します。クラウドGPUなしで可能です。

ステップ1: 必要な依存ライブラリのインストール

以下のコマンドで環境をセットアップします:

pip install torch torchvision torchaudio einops timm pillow
pip install git+https://github.com/huggingface/transformers@v4.51.3-Qwen2.5-Omni-preview
pip install accelerate
pip install git+https://github.com/huggingface/diffusers
pip install huggingface_hub
pip install sentencepiece bitsandbytes protobuf decord numpy av
pip install qwen-omni-utils[decord] -U
ステップ2: モジュールのインポートとモデルの読み込み
import soundfile as sf
import torch
from transformers import Qwen2_5OmniForConditionalGeneration, Qwen2_5OmniProcessor
from qwen_omni_utils import process_mm_info


model = Qwen2_5OmniForConditionalGeneration.from_pretrained(
    "Qwen/Qwen2.5-Omni-3B",
    torch_dtype="auto",
    device_map="auto",
    attn_implementation="flash_attention_2",  # パフォーマンス向上
)


processor = Qwen2_5OmniProcessor.from_pretrained("Qwen/Qwen2.5-Omni-3B")
ステップ3: マルチモーダル対話の準備

音声を含む動画とシステムコンテキストを入力する例を示します:

conversation = [
    {
        "role": "system",
        "content": [
            {"type": "text", "text": "あなたはアリババグループのQwenチームが開発した仮想人間であるQwenであり、音声や視覚情報を感知し、テキストや音声を生成することができます。"}
        ],
    },
    {
        "role": "user",
        "content": [
            {"type": "video", "video": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/draw.mp4"},
        ],
    },
]
ステップ4: 処理と推論の実行
USE_AUDIO_IN_VIDEO = True


# チャットテンプレートを変換し、入力データを抽出
text = processor.apply_chat_template(conversation, add_generation_prompt=True, tokenize=False)
audios, images, videos = process_mm_info(conversation, use_audio_in_video=USE_AUDIO_IN_VIDEO)


# トークナイズおよび入力テンソルの形式設定
inputs = processor(
    text=text,
    audio=audios,
    images=images,
    videos=videos,
    return_tensors="pt",
    padding=True,
    use_audio_in_video=USE_AUDIO_IN_VIDEO
)
inputs = inputs.to(model.device).to(model.dtype)


# テキストと音声の出力生成
text_ids, audio = model.generate(**inputs, use_audio_in_video=USE_AUDIO_IN_VIDEO)


# テキストのデコード
response_text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)
print(response_text)
ステップ5: 音声出力の保存(任意)

マルチモーダル入力から生成された音声応答を再生できます!

sf.write(
    "output.wav",
    audio.reshape(-1).detach().cpu().numpy(),
    samplerate=24000,
)
他のマルチモーダルモデルとの比較

6. まとめ

Qwen2.5-Omni-3Bは、マルチモーダルAIの普及に向けた重要なステップです。動画、音声、画像、テキストの処理を30億パラメータのモデルに統合し、機能性と実用性のバランスを取っています。

開発者や研究者、企業にとって、高コストな計算リソースを必要とせず、マルチモーダルAIを活用できる解決策を提供します。Hugging Faceでの公開により、さらに利用が容易になりました。

マルチモーダルAIが進化する中で、Qwen2.5-Omni-3Bのようなコンパクトかつ強力なモデルは、日常的なアプリケーションにおいて重要な役割を果たすでしょう。コンテンツ監査システム、教育プラットフォーム、補助ツールなど、さまざまな分野で活用できる基盤を提供します。

大規模言語モデル(LLM)を体系的に学ぶには?

5年間の経験を持つ大規模モデルアルゴリズムエンジニアとして、よく「初心者です。LLMの学習はどこから始めればいいですか?」という質問を受けています。自分で学ぶのは難しくて方向性が分からない、という悩みもあります。もし同じような経験をしているなら、ぜひ続きをお読みください!

これらは簡単に説明できるものではありません。

私は大規模モデルのすべての知識を整理し、ネット上で最も網羅的で詳細な初心者向けLLMチュートリアルを提供しました。このチュートリアルを始める前に、私は完全な初心者として再び知識を整理し、基礎と実践プロジェクトを組み合わせた学習方法を採用しました。3ヶ月をかけて完成させたこのコースで、毎秒知識が詰まった体験を味わっていただけます。

記事の長さの制限により、⚡️ もし2025年最新版のLLM全資料が必要な場合は、QRコードから取得してください

大規模モデル学習ガイド・学習パス一覧👈

このLLM資料は、基礎編、応用編、実践編の3つのパートで構成されています。

① 基礎編👈

基礎編では、Pythonの高速入門、AI開発環境構築、プロンプト工学などを扱い、大規模モデルの核心原理、プロンプトの使い方、Transformerアーキテクチャ、事前学習、SFT、RLHFなどの基本概念を分かりやすく解説します。

② 応用編👈

応用編では、RAG、Agent、Langchain、大規模モデルのファインチューニング、プライベートデプロイメントを学びます。外部知識ベースの構築、企業との統合、Langchainフレームワークによる開発効率向上、適切なベースモデル選択、データセットの収集・前処理、具体的なモデルファインチューニングなどについて学びます。

③ 実践編👈

実践編では、企業向けの実装プロジェクト(データの脱敏済み)を手順通りに練習します。例えば、医療QAシステム、エージェントによるEC客服システム、デジタル人間プロジェクト、教育分野のスマートアシスタントなど。これにより、大規模モデル時代の課題に対応できる力を身につけることができます。

④ 福利品編👈

最後には、学習動画のすべての素材、AI開発環境構築資料、学習計画表、数十GBの電子書籍や教材など、必要なものはすべて揃っています。私がCSDNにアップロードしたものを無料でダウンロード可能です。「100%無料」を保証します

「このLLMシステムチュートリアルは、ネット上で最も網羅的で初心者にもわかりやすいものです!」

タグ: マルチモーダルAI 大規模モデル ローカルデプロイ Transformer 音声認識

7月21日 03:17 投稿