gojiteji's picture
Update README.md
6941e04 verified
|
Raw History Blame Contribute Delete
9.36 kB
---
language:
- ja
- en
license: other
license_name: audio-jev-mixed-terms
license_link: >-
https://huggingface.co/mocomoco-inc/AudioJev-AudioDecisionModel/blob/main/LICENSE.md
base_model:
- Qwen/Qwen3-ASR-0.6B
- laion/clap-htsat-unfused
- sbintuitions/modernbert-ja-30m
- sbintuitions/modernbert-ja-130m
tags:
- audio-jev
- audio-classification
- automatic-speech-recognition
- japanese
- on-device
- onnx
- decision-model
---
# AudioJev-AudioDecisionModel
**—— English below ——**
AudioJev-AudioDecisionModelは、音声に質問を投げると、答えを`Noul`(Yes/No)・`Choice`(選択)・`Score`(数値)の形で返すモデルです。「予約を取り消したい?」「犬の鳴き声がする?」といった質問を、同じ音声にまとめて指定できます。
[デモを試す](https://huggingface.co/spaces/mocomoco-inc/AudioDecisionModel) · [ライセンス](LICENSE.md)
## できること
予約の変更や取り消し、特定の言葉が含まれるかといった発話内容への質問に加え、音楽、動物の鳴き声、環境音についても質問できます。発話と背景音の両方が必要な場合は、それぞれのモデルの判断を組み合わせます。Cloudとブラウザ上で動くEdge AIを用意しています。
入力は0.25〜30秒の音声と、任意の文脈・質問・選択肢です。出力には質問ごとの回答、選択肢スコア、使用したexpert、ルーティング重みが含まれます。
## モデルのしくみ
質問文・文脈・選択肢を[sbintuitions/modernbert-ja-30m](https://huggingface.co/sbintuitions/modernbert-ja-30m)で読み、学習済みrouterが音声言語と非言語音の使い方を決めます。言語側は[Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B)、非言語側は[laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused)を基盤にし、両方が必要な質問では選択肢単位で結果を融合します。Cloudには日本語ASR適応重み、意味分類器、汎用typed head、[laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused)の分類headを収録しています。Edge AIには量子化した音声塔・質問encoder・headと、FP32のrouterをONNX形式で収録しています。
[![CloudとEdge AIの推論経路。CloudはCPU上で必要に応じてASRを使用し、Edge AIはブラウザ内で文字起こしを使わず音声特徴から直接判断します。](assets/cloud-edge-architecture.png)](assets/cloud-edge-architecture.png)
CloudとEdge AIは同じ質問形式・結果JSONを使う別の実装です。現行の公開CloudデモはCPU上で動き、必要な言語タスクではASRと文字起こしを使用します。Edge AIはQwen3-ASRの**音声encoder**を使いますが、ASR decoderは使いません。文字起こしを経由せず、音声特徴と質問・選択肢の特徴から直接判断します。Edge AIはCloud全体を量子化したものではありません。[図のMermaidソース](assets/cloud-edge-architecture.mmd)も参照できます。
| 実行方式 | モデル | 取得量の目安 |
|---|---|---:|
| Cloud | [Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B) + [sbintuitions/modernbert-ja-130m](https://huggingface.co/sbintuitions/modernbert-ja-130m) + [laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused) | 基盤モデルは各配布元から取得 |
| Edge AI | [Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B)音声塔 + [sbintuitions/modernbert-ja-30m](https://huggingface.co/sbintuitions/modernbert-ja-30m) + [laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused)(ONNX) | 「モデルを読み込む」で全体約289 MBを取得 |
## 評価
予約・注文などの用件と、依頼・確認など発話の役割を音声から同時に答える評価では、事前に固定した240件のうち88.75%で両方正解しました。
発話と周囲の音を組み合わせる質問や、自由に作成した質問全体の正答率は引き続き評価中です。選択肢スコアは確率校正前の値です。VAD・話者分離・ストリーミングは現行モデルの構造化出力にまだ含まれません。
## 使い方と収録内容
デモでは音声を録音またはアップロードし、質問・選択肢を編集してCloudとEdge AIの回答を試せます。モデルを取得する場合は以下を使用してください。
```python
from huggingface_hub import snapshot_download
model_dir = snapshot_download("mocomoco-inc/AudioJev-AudioDecisionModel", token=True)
print(model_dir)
```
| ディレクトリ | 内容 |
|---|---|
| `edge/models/` | ブラウザ実行用ONNX、tokenizer、前処理設定、実行manifest |
| `cloud/qwen_asr_adaptation/` | [Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B)の日本語適応重み |
| `cloud/semantic_v8/` | [sbintuitions/modernbert-ja-130m](https://huggingface.co/sbintuitions/modernbert-ja-130m)の意味分類器 |
| `cloud/typed_head/` | `Noul`・`Choice`・`Score`用の汎用head |
| `cloud/clap_heads/` | 広域音・動物8種の[laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused) head |
| `MANIFEST.json` | 全ファイルのSHA-256と基盤モデルrevision |
Cloud実行には、ここに収録した適応重み・headに加え、[Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B)と[laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused)の基盤モデルを使用します。入出力の実装例は[デモのソース](https://huggingface.co/spaces/mocomoco-inc/AudioDecisionModel/tree/main)にあります。
## ライセンスとクレジット
このモデルは、以下の事前学習済みモデルを基盤にしています。
| 基盤モデル | ライセンス | 本リポジトリに含まれるもの |
|---|---|---|
| [Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B) | Apache-2.0 | Edge用の量子化音声塔、Cloud用の日本語ASR適応重み |
| [laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused) | Apache-2.0 | Edge用の量子化音声塔、音カテゴリ・動物分類head |
| [sbintuitions/modernbert-ja-30m](https://huggingface.co/sbintuitions/modernbert-ja-30m) | MIT | Edge用の量子化質問encoderとtokenizer |
| [sbintuitions/modernbert-ja-130m](https://huggingface.co/sbintuitions/modernbert-ja-130m) | MIT | Cloud用の意味分類器 |
router、typed head、分類headなどmocomoco inc.が作成した部分も含まれます。基盤モデルのライセンス文とnoticeは`licenses/`に収録し、ファイルごとの条件と基盤モデルrevisionは[LICENSE.md](LICENSE.md)と[MANIFEST.json](MANIFEST.json)に記載しています。
[Jev / TypeSafe AI](https://typesafe.ai/blog/introducing-system-one-models-and-jev)と[OpenJev / SemIf](https://github.com/TheoLeeCJ/SemIf)のアイデアを参考にしています。
## English
AudioJev-AudioDecisionModel answers questions about audio in structured JSON: `Noul` (Yes/No), `Choice` (selection), or `Score` (ordinal value). You can provide a 0.25–30 second clip, context, natural-language questions, and answer options. It covers speech-related tasks as well as music, animal calls, and environmental sounds. Questions that need both speech and background audio use both model paths.
The Cloud configuration combines [Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B), [sbintuitions/modernbert-ja-130m](https://huggingface.co/sbintuitions/modernbert-ja-130m), and [laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused). The Edge AI configuration includes quantized ONNX audio and text models for browser inference; loading all Edge components downloads about 289 MB. In a fixed 240-item evaluation of reservation/order intent and speech act together, both answers were correct for 88.75% of items. Accuracy across arbitrary new questions and speech-plus-background-audio questions remains under evaluation; option scores are not calibrated probabilities.
The public Cloud demo runs on CPU and uses ASR for language tasks that need a transcript. Edge AI uses the Qwen3-ASR **audio encoder without its ASR decoder**: it scores audio features against the question and answer options directly, without transcribing the clip. The two modes share an input/output contract and routing design, but Edge AI is not a quantized copy of the entire Cloud pipeline.
The repository also contains model components trained by mocomoco inc. [Qwen/Qwen3-ASR-0.6B](https://huggingface.co/Qwen/Qwen3-ASR-0.6B) and [laion/clap-htsat-unfused](https://huggingface.co/laion/clap-htsat-unfused) declare Apache-2.0, while [sbintuitions/modernbert-ja-30m](https://huggingface.co/sbintuitions/modernbert-ja-30m) and [sbintuitions/modernbert-ja-130m](https://huggingface.co/sbintuitions/modernbert-ja-130m) declare MIT. See [LICENSE.md](LICENSE.md), [`licenses/`](licenses/), and [MANIFEST.json](MANIFEST.json) for component provenance and notices. The design draws inspiration from [Jev / TypeSafe AI](https://typesafe.ai/blog/introducing-system-one-models-and-jev) and [OpenJev / SemIf](https://github.com/TheoLeeCJ/SemIf).