ローカル音声認識・音声合成
Orukeetローカル文字起こし:英語・欧州言語の音声をMacで書き起こす
Orukeetは英語・欧州言語を中心とする音声ファイルを書き起こすローカルASRです。
Orukeetは録音を文章にする0.6B規模のASR1モデルです。英語と欧州言語を中心に25言語に対応し、約714MBのQ8 GGUF2をMacのMetal3でも実行できます。自動インストーラーでモデルとランタイム4を準備し、短いWAVファイルを文字起こしします。
Orukeetの対応言語と出力
Orukeetは録音を入力し、認識した語句をテキストとして返す自動音声認識(ASR)モデルです。2026年9月11日に公開された0.6B規模で、モデルカードによるとNVIDIA Parakeet TDT 0.6B v3を基にしています。主な用途は文字起こしであり、話者分離5や感情スコアではありません。
モデルカードに記載されている25言語は、ブルガリア語、クロアチア語、チェコ語、デンマーク語、オランダ語、英語、エストニア語、フィンランド語、フランス語、ドイツ語、ギリシャ語、ハンガリー語、イタリア語、ラトビア語、リトアニア語、マルタ語、ポーランド語、ポルトガル語、ルーマニア語、ロシア語、スロバキア語、スロベニア語、スペイン語、スウェーデン語、ウクライナ語です。韓国語と日本語は含まれません。韓国語音声が主な用途なら、韓国語に対応するASRを選んでください。

ハードウェアを評価する前に推論形式を選ぶ
NeMoソースは研究・公式評価経路に近く、ローカル文字起こしアプリやMacではnative GGUFが簡単な出発点です。native Q8は714,456,704 bytes(約714MB)、F16は約1.30GBです。ONNX INT8アーカイブは約487MBで、展開後は約672MBです。ダウンロード容量は実行時のRAM/VRAMではないため、必要メモリとして扱わないでください。
nativeパッケージはApple SiliconでMetal、NVIDIAデバイス検出時はCUDA6、それ以外はCPU7を選べます。ただし選択はシステムで利用できるランタイムに依存するため、インストール結果JSONの`device`、`model`、`runtime`を保存しておくと次回実行時の環境を確認しやすくなります。
| 経路 | おおよその配布ファイル | 主な注意点 |
|---|---|---|
| NeMo | 2,509,342,720 bytes | 公式評価経路。NeMoが必要 |
| native Q8 GGUF | 714,456,704 bytes | Metal・CUDA・CPUランタイム |
| ONNX INT8 | 圧縮時486,807,585 bytes、展開後約672MB | sherpa-onnx経路 |
モデルファイルと利用条件はコードと分けて確認します
NeMo
- おおよその配布ファイル
- 2,509,342,720 bytes
- 主な注意点
- 公式評価経路。NeMoが必要
native Q8 GGUF
- おおよその配布ファイル
- 714,456,704 bytes
- 主な注意点
- Metal・CUDA・CPUランタイム
ONNX INT8
- おおよその配布ファイル
- 圧縮時486,807,585 bytes、展開後約672MB
- 主な注意点
- sherpa-onnx経路
Python 3.12以降でnative文字起こしを始める
公式モデルカードはPython 3.12以降とv0.1.1ホイールを案内しています。仮想環境8にホイールを導入し、`orukeet install`でQ8重みとnativeランタイムを取得します。アプリでは録音ごとにモデルを再ロードせず、`Orukeet`オブジェクトを保持してファイルごとに`transcribe()`を呼び出します。
短いWAVファイルから試し、返された`text`フィールドとインストールJSONを確認します。語句が抜ける場合は、対応言語か、ファイルを開けるか、選択されたruntimeが導入済みかを先に調べます。以下のPython例はモデルカードのインターフェースに沿ったもので、この執筆作業で実行した結果ではありません。
python -m pip install --upgrade \
https://github.com/Oruk-AI/orukeet/releases/download/v0.1.1/orukeet-0.1.1-py3-none-any.whl
orukeet install --device auto --cache ./orukeet-cache --output installation.jsonimport json
from pathlib import Path
from orukeet import Orukeet
config = json.loads(Path("installation.json").read_text(encoding="utf-8-sig"))
with Orukeet(config["model"], config["runtime"], device=config["device"]) as asr:
result = asr.transcribe("recording.wav")
print(result["text"])

FLEURSスコアは評価条件と一緒に読みます
Oruk AIは25言語FLEURSのpooled WERについて、基準値11.01%からOrukeetで9.85%になったと報告しています。評価は20,146件の録音で構成され、同じNeMo greedy-batch TDT経路、FP329重み、CUDA BF1610 autocastを使用しています。9.85%はこのデータセットと推論条件での結果であり、あらゆる録音での誤り率を保証するものではありません。
論文は追加学習とチェックポイント11選択にLibriSpeech test-otherを使ったと明記しています。この評価資料はモデル開発にも使われたため、スコアの解釈で考慮が必要です。自分の録音では同じファイルと実行設定を保ち、欠落や誤認識した単語を比較してください。
| モデル | 単語誤り率(WER) | 評価条件 |
|---|---|---|
| Parakeet TDT 0.6B v3 | 11.01% | 20,146録音、greedy-batch TDT、FP32重み・CUDA BF16 autocast |
| Orukeet | 9.85% | 同じ条件 |
同じNeMo評価経路によるFLEURSの25言語集計
Parakeet TDT 0.6B v3
- 単語誤り率(WER)
- 11.01%
- 評価条件
- 20,146録音、greedy-batch TDT、FP32重み・CUDA BF16 autocast
Orukeet
- 単語誤り率(WER)
- 9.85%
- 評価条件
- 同じ条件
コードと重みのライセンスを分けて確認する
リポジトリのコードはMIT、Hugging Faceモデルカード上の重みとfitted kernelsはCC BY-SA 4.0です。モデルや重みを改変・再配布する場合、コードライセンスだけでは不十分です。表示義務と継承条件を含め、重みの条件を別途確認してください。
英語・欧州言語の録音をローカルで文字起こしし、テキストと区間時刻が必要なら、native出力形式を確認して短いサンプルで評価できます。話者識別、感情分析、韓国語対応が重要なら公開範囲外のため、別のツールを選ぶ方が適切です。
初回実行で止まったら言語・ファイル・runtimeを確認します
ダウンロード検証やruntime選択に失敗した場合は、`installation.json`が作成されたか、記録された`device`と`runtime`のパスが現在のOSに合うか確認します。モデルファイルが見つからない場合は、`--cache`フォルダーの書き込み権限とQ8ファイルのダウンロード完了を確認してください。nativeインストーラーはモデルとruntimeの両方を確認するため、この段階を解決する前にPythonコードから変更しないでください。
文字起こしが空の場合、まず録音が対応25言語のいずれかか、ファイル形式と音声トラックを読み取れるか確認します。結果は返るものの語句が抜ける場合は、同じ短い区間を対応言語で試し、入力音声の聞き取りやすさと認識結果を分けて見ます。他言語で使う場合は、その言語の録音で性能を確認してください。
用語の注釈
自動音声認識 — 音声中の発話を認識してテキストに変換する技術です。
本文に戻るGGUF — モデル情報を格納するファイル形式で、llama.cpp系のツールで広く使われます。
本文に戻るMetal — Apple機器でグラフィックスやGPUの並列計算を実行する低水準の技術です。
本文に戻るランタイム — プログラムの実行時に必要な機能を提供するソフトウェア環境です。ローカルAIではモデル実行エンジンを指すこともあります。
本文に戻る話者ダイアリゼーション — 録音を「誰がいつ話したか」の区間に分け、話者ごとにラベル付けする処理です。
本文に戻るCUDA — NVIDIA GPUで汎用計算を行うソフトウェア基盤です。
本文に戻るCPU — コンピューターで汎用のプログラム命令を実行する中央処理装置です。AI処理ではGPUなど他のプロセッサーと役割を分けることがあります。
本文に戻るPython仮想環境 — プロジェクトごとにPythonパッケージを分けて導入する環境です。パッケージのバージョンの衝突を減らせます。
本文に戻るFP32 — 32ビット浮動小数点形式です。BF16より値あたりのメモリを多く使い、数値をより細かく表現できます。
本文に戻るBF16 — モデルの数値を保存・計算する16ビット浮動小数点形式です。利用可否はハードウェアと実行環境によります。
本文に戻るチェックポイント — 学習済みモデルの重みなどを保存したファイルです。同じモデル系列でも、版や用途によって異なるチェックポイントを使うことがあります。
本文に戻る
