14 KiB
オフライン、ストリーミング、エッジ展開に対応する産業グレードの音声認識ツールキット。
ASR · VAD · 句読点 · 話者パイプライン · 感情/音声イベントモデル · OpenAI互換配信
クイックスタート · モデル選択 · モデル一覧 · デプロイ方式 · デプロイセンター · ドキュメント · ベンチマーク
クイックスタート
python -m pip install torch torchaudio
python -m pip install funasr
以下は公開サンプルを使う CPU 向けの例です。GPU を使う場合は
インストールガイド に従って互換性のある
PyTorch/CUDA 環境を用意し、torch.cuda.is_available() を確認してから
device="cuda" に変更してください。
from funasr import AutoModel
from funasr.utils.postprocess_utils import rich_transcription_postprocess
model = AutoModel(model="iic/SenseVoiceSmall", vad_model="fsmn-vad", spk_model="cam++", device="cpu")
result = model.generate(input="https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/asr_example_zh.wav")
for seg in result[0]["sentence_info"]:
print(f"[{seg['start']/1000:.1f}s] 話者{seg['spk']}: {rich_transcription_postprocess(seg['sentence'])}")
実際に返された VAD 区間の開始時刻(秒)、匿名話者番号、SenseVoice タグを 除いたテキストを表示します。テキストや区間は音声と checkpoint に依存し、 ここでは固定の認識結果を示していません。
CAM++ は spk_embedding ベクトルを抽出し、AutoModel がクラスタリングと
VAD 区間への話者割り当てを行います。番号は録音内だけで有効で、既知の人物の
識別や SenseVoiceSmall 単体の出力ではありません。
詳細は SDK 契約 を参照してください。
初めて使う場合は Colab クイックスタート から試せます。どのモデルを選ぶか迷う場合は モデル選択ガイド を参照してください。
APIサーバーとしてデプロイ:
funasr-server --device cuda→ localhost:8000でOpenAI互換エンドポイントAIエージェント連携: MCPサーバー Claude/Cursor対応 · OpenAI API LangChain/Dify/AutoGen対応
なぜFunASRを選ぶのか?
FunASR はツールキットです。タスク、checkpoint、ランタイムを別々に選びます。 あるモデルやアダプターの機能が、すべての配信バックエンドで使えるとは限りません。
| タスク | Checkpoint またはパイプライン | ランタイムの入口 | 主な制約 |
|---|---|---|---|
| ファイル認識と感情・イベントタグ | SenseVoiceSmall | Python AutoModel、CPU または GPU |
5言語の checkpoint。タグは話者の身元を示しません。 |
| LLM によるファイル認識 | Fun-ASR-Nano | AutoModel、または文書化された GPU 分離エンジン AutoModelVLLM |
基本 Nano は中・英・日と中国語方言・アクセント。timestamp は checkpoint と経路に依存します。 |
| より多くの言語のファイル認識 | Fun-ASR-MLT-Nano | Python AutoModel |
独立した31言語 checkpoint。その対応言語を基本 Nano に当てはめないでください。 |
| チャンク単位のライブ認識 | Paraformer-zh-streaming | ストリーミング SDK または runtime WebSocket | ストリーミング checkpoint とセッション別 cache が必要です。 |
| 話者付きファイル認識 | SenseVoiceSmall + FSMN-VAD + CAM++ | AutoModel の VAD と埋め込みクラスタリング |
番号は録音内の匿名ラベルで、登録済み人物の識別ではありません。 |
| テキスト・時刻・話者の同時生成 | 第三者 OpenMOSS の MOSS-Transcribe-Diarize | MOSS ガイドの FunASR adapter または上流バックエンド | オフライン、録音内の匿名ラベル。統合経路に外部 VAD/話者モデルは付けません。 |
| ネイティブ CPU/エッジ認識 | Fun-ASR-Nano または SenseVoiceSmall GGUF | llama.cpp runtime | 対応する変換済み重みが必要。GGUF は Python AutoModel 用 checkpoint ではありません。 |
Model Zoo と デプロイ方式 でインターフェースとライセンスの制約を確認し、対象音声・ハードウェアで評価してください。
ベンチマーク
過去の評価レポート と 分離エンジンの測定 に元の結果を残しています。 別々の記録であり、一般的な速度順位や本番容量を保証するものではありません。
RTFx と再現性の説明 に従い、 checkpoint/revision、音声セット、ハードウェア、バッチ、ウォームアップ、計測範囲、 CER/WER をそろえて比較してください。オフラインのスループットはストリーミングの 遅延ではありません。移行評価の例 で自分の録音を評価できます。
最新情報
- MOSS-Transcribe-Diarize を FunASR service、Docker、Kubernetes、vLLM/SGLang workflow、FunClip に統合し、長時間 ASR、timestamp、匿名 speaker label を一度に処理できます。MOSS をデプロイ ->
- FunASR 1.4.14 は MOSS の service / Model Zoo 導線を完成させ、realtime serving の安定性を改善しつつ NumPy ABI 保護を維持します。
python -m pip install -U "funasr==1.4.14"。Release -> - Production deployment に、より高速で安定した realtime serving と、Linux、macOS、Windows の 10 target 向け llama.cpp package を追加しました。GPU service -> · CPU / edge package -> · v0.2.6 binaries ->
完全な変更履歴と download asset は GitHub Releases を参照してください。
インストール
pip install funasr
要件:Python ≥ 3.8、PyTorch ≥ 1.13、torchaudio
モデル一覧
第三者モデルも含みます。MOSS-Transcribe-Diarize の公開元は OpenMOSS で、 FunASR はアダプターを提供します。統合経路はオフラインで、匿名話者ラベルは 録音内だけで有効です。リアルタイム処理や既知の人物の識別ではありません。 モデルのライセンスはツールキットの MIT ライセンスとは別に確認してください。
| モデル | タスク | 言語 | パラメータ | リンク |
|---|---|---|---|---|
| Fun-ASR-Nano | 認識 | 中/英/日 + 中国語方言 | 800M | ⭐ 🤗 GGUF |
| Fun-ASR-MLT-Nano | 認識 | 31言語 | 800M | ⭐ 🤗 |
| SenseVoiceSmall | 認識 + 感情 + イベント | 中/英/日/韓/粤 | 234M | ⭐ 🤗 GGUF |
| MOSS-Transcribe-Diarize | 第三者 OpenMOSS:オフライン認識 + タイムスタンプ + 匿名話者 | 公式モデルカードを参照 | 公式モデルカードを参照 | 🤗 ガイド |
| Paraformer-zh | 認識 + タイムスタンプ | 中/英 | 220M | ⭐ 🤗 |
| Qwen3-ASR | 認識、52言語 | 多言語 | 1.7B | 使用法 |
| GLM-ASR-Nano | 認識、17言語 | 多言語 | 1.5B | 使用法 |
| Whisper-large-v3-turbo | 認識 + 翻訳 | 多言語 | 809M | 使用法 |
デプロイ
# OpenAI互換API(推奨)
pip install funasr fastapi uvicorn python-multipart
funasr-server --device cuda
# オフライン長時間音声 ASR + 匿名 speaker label:
funasr-server --model moss-transcribe-diarize --device cuda:0
# Dockerストリーミングサービス
docker pull registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12
MOSS service / Docker / Kubernetes / vLLM / SGLang / LocalAI / FunClip guide →
CPU/エッジで Python なしのオフライン ASR が必要な場合は、llama.cpp / GGUF ランタイムを使えます:funasr.com/deploy/llama-cpp · Fun-ASR-Nano-GGUF · SenseVoiceSmall-GGUF。
事前ビルド済みバイナリ: Releases · v0.2.6 · Linux Vulkan tarball · Windows Vulkan zip · Windows CUDA zip · Windows Blackwell CUDA zip · ダウンロードとクイックスタート: funasr.com/deploy/llama-cpp · GGUF モデル: Hugging Face · ドキュメントとベンチマーク: runtime/llama.cpp/
Windows GPU では、runtime-llamacpp-v0.2.6 の windows-x64-vulkan、windows-x64-cuda または windows-x64-cuda-blackwell パッケージを選択してください。RTX 50 / Blackwell (sm_120) には専用の windows-x64-cuda-blackwell パッケージがあります。CI のアーカイブ検証は実機での Blackwell 推論を保証しません。詳細は llama.cpp 配布ガイド を参照してください。
Colab quickstart → · OpenAI API example → · Client recipes → · Workflow recipes → · Postman collection → · OpenAPI spec → · Security guide → · Deployment matrix → · デプロイドキュメント → · Agent連携 →
コミュニティ
| 📖 ドキュメント | 🐛 Issues |
| 💬 Discussions | 🤗 HuggingFace |
ライセンス
- このリポジトリの FunASR ツールキットのソースコード: MIT License。
- 事前学習済みモデルの重みは個別にライセンスされます。各モデルカードに記載されたライセンスを確認してください。モデルカードがこのリポジトリの FunASR Model Open Source License Agreement を参照している場合、その条件が適用されます。