はじめに
Audio-Reasonerは清華大学のチームによって開発され、GitHubでホストされているオープンソースプロジェクトです。このモデルはQwen2-Audio-Instructに基づいており、構造化されたChain-of-Thought(CoT)技術を導入することで、オーディオコンテンツの複雑な推論とマルチモーダルな理解を可能にしている。このプロジェクトには、Audio-Reasoner-7Bモデルと、今後リリース予定のCoTAデータセット(120万個の高品質サンプルを含む)が含まれ、MMAU-miniとAIR-Bench-Chatベンチマークにおいて、それぞれ25.42%と14.57%というトップクラスの性能向上を達成している。Audio-Reasonerは、サウンド、音楽、音声、その他のオーディオタイプの処理をサポートし、オーディオ分析やコンテンツ理解のシナリオに適しているため、研究者や開発者にとって理想的なツールです。
機能一覧
- オーディオの深い推論オーディオを分析し、構造化された連鎖思考を使用して詳細な推論プロセスと結果を生成します。
- マルチモーダルなタスクサポート音声入力とテキスト入力を組み合わせたクロスモーダルな理解・推論タスク。
- 複数のオーディオ処理音声、音楽、スピーチなど、複数のオーディオタイプの認識と分析をサポートします。
- 高性能な事前学習済みモデルいくつかのベンチマークテストで優れた結果を残したAudio-Reasoner-7Bモデルを提供。
- CoTAデータセット構造化推論のトレーニングやモデルの能力向上をサポートする120万サンプルを含む。
- 推論コードとデモンストレーションユーザーテストや開発のための完全な推論コードとデモ例を提供します。
- オープンソース・プログラム将来的には、データ合成プロセスとトレーニングコードを公開し、コミュニティでの共同作業を促進する予定です。
ヘルプの使用
設置プロセス
Audio-Reasonerのインストールには、Python環境の設定とモデルウェイトのダウンロードが必要です:
1.GitHubリポジトリのクローン
まず、Audio-Reasonerプロジェクトをローカルにクローンします。ターミナルを開き、以下のコマンドを実行します:
git clone https://github.com/xzf-thu/Audio-Reasoner.git
cd Audio-Reasoner
これでプロジェクト・ファイルがローカルにダウンロードされ、プロジェクト・ディレクトリに入ります。
2.仮想環境の作成とアクティベーション
依存関係の衝突を避けるために、Condaを使用して別のPython環境を作成することをお勧めします:
conda create -n Audio-Reasoner python=3.10
conda activate Audio-Reasoner
このコマンドは "Audio-Reasoner "というPython 3.10ベースの環境を作成し、起動します。
3.依存パッケージのインストール
このプロジェクトは、以下のものを提供する。 requirements.txt
ファイルには必要な依存関係が含まれている。インストールの手順は以下の通り:
pip install -r requirements.txt
pip install transformers==4.48.0
注目してほしい:transformers
安定したモデル性能を確保するために、バージョン4.48.0をインストールする必要があります。他の依存関係を最初にインストールし、次に transformers
バージョンの競合を避ける。
4.モデルの重みをダウンロードする
Audio-Reasoner-7BモデルはHuggingFaceでリリースされており、手動でダウンロードしてパスを設定する必要があります:
- インタビュー ハギングフェイス・オーディオ・リゾナー-7Bモデルファイルをダウンロードしてください。
- ダウンロードしたチェックポイント・パスを
last_model_checkpoint
変数がある:
last_model_checkpoint = "/path/to/Audio-Reasoner-7B"
使用方法
インストール後、Audio-Reasonerをコードで実行し、オーディオタスクを処理することができます。以下は詳しい操作ガイドです:
クイックスタート:サンプルコードの実行
このプロジェクトでは、ユーザーがモデルの機能をテストするのに役立つクイック・スタート・サンプルを提供している:
- オーディオファイルの準備
デフォルトでは、プロジェクト自身のassets/test.wav
ファイルに置き換えることもできますし、ご自分のWAVフォーマットのオーディオに置き換えることもできます。パスが正しいことを確認してください。 - オーディオ・パスとコード編集の問題点
見せるinference.py
または、以下のコードを使ってオーディオパスを設定し、質問してください:audiopath = "assets/test.wav" prompt = "这段音频的节奏感和拍子是怎样的?" audioreasoner_gen(audiopath, prompt)
- ランニングプログラム
ターミナルで実行する:conda activate Audio-Reasoner cd Audio-Reasoner python inference.py
モデルは、以下のような構造化された推論結果を出力する。
<THINK>
(計画、記述、理由、要約)と<RESPONSE>
(最終回答)。
コア機能:オーディオ深層推論
Audio-Reasonerの核心は、連鎖思考に基づいたオーディオの推論であり、その仕組みは以下の通りである:
- 入力音声と問題点
- 利用する
audioreasoner_gen
関数にオーディオパスと特定の質問を渡します。例audiopath = "your_audio.wav" prompt = "音频中是否有鸟叫声?" audioreasoner_gen(audiopath, prompt)
- 利用する
- 推論出力を見る
このモデルは、例えば詳細な推論プロセスを返す:<THINK> <PLANNING>: 检查音频中的声音特征,识别是否有鸟叫声。 <CAPTION>: 音频包含自然环境音,可能有风声和动物叫声。 <REASONING>: 分析高频声音特征,与鸟类叫声模式匹配。 <SUMMARY>: 音频中可能存在鸟叫声。 </THINK> <RESPONSE>: 是的,音频中有鸟叫声。
- 出力パラメータの調整(オプション)
より長い、またはより柔軟な回答が必要な場合は、修正することができます。RequestConfig
パラメーターrequest_config = RequestConfig(max_tokens=4096, temperature=0.5, stream=True)
プリセットサンプルのローカルテスト
このプロジェクトには、素早く確認するためのテスト音声と質問が組み込まれています:
conda activate Audio-Reasoner
cd Audio-Reasoner
python inference.py
実行後、ターミナルに assets/test.wav
分析結果は初体験に適している。
特集:マルチモーダル理解
Audio-Reasonerは音声とテキストの共同解析をサポートします。例
prompt = "这段音乐的情绪是否与‘悲伤’描述相符?"
audioreasoner_gen("sad_music.wav", prompt)
このモデルは、音声の特徴とテキストの意味を組み合わせて推論結果を出力する。
注意事項とよくある質問
- オーディオフォーマット推奨WAVフォーマット、サンプリング・レート16kHz、モノラル。
- ノロノロ遅い場合は、GPUが有効になっているか確認してください(PyTorch for CUDAが必要です)。
- 反応しないモデルモデルのパスが正しく、依存関係が完全にインストールされていることを確認してください。
- 依存の対立インストールに失敗した場合は、新しい環境を作成し、依存関係を厳密な順序でインストールしてみてください。
高度な使用
- カスタム推論ロジック:: 変更
system
モデルの推理スタイルを調整するための手がかりとなる言葉。 - バッチファイル:: ウィル
max_batch_size
複数音声の同時推論をサポートするには、より高い値(例えば128)を設定する。 - CoTAデータセットとの組み合わせ将来のCoTAデータセットがリリースされれば、さらなるトレーニングやモデルの微調整に利用できる。