Meta: Muse Voice Transcribe 1.0
Muse Voice Transcribe 1.0は、口述入力、検出された発話ターン、話者を区別した文字起こし向けの、Metaの音声テキスト変換モデルです。言語と語彙のヒント、言語の切り替え、ターン単位の時刻情報に対応し、録音済みクリップとライブ音声には別々のワークフローがあります。
モデルについて
この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。
Muse Voice Transcribe 1.0は、音声の文字起こし、発話境界の検出、話者への発話の割り当てを行うMetaの音声認識モデルです。Muse Sparkモデルシリーズに属し、認識、話者分離、発話の終端検出をモデル内で組み合わせます。出力は認識したテキストで、選択モードで利用できる時間・話者情報を伴います。
モデルは80ミリ秒のチャンクで音声を処理し、聴取を続けるかテキストを出すかを決めます。適応的な遅延により、語の判定が難しい場合には追加音声を待てます。音声の到着中に部分的なテキストを出し、その後に完成した文字起こし結果を返します。途中の仮説と、完了した発話ターンを、聴取の異なる段階として扱ってください。
モードは三つあります。既定のPush-to-talkは、音声クエリや短い口述など、制御された一つの発話向けです。Endpointingは発話ターンの境界をモデルが検出し、検出区間ごとに完成した文字起こしを一つ返します。Diarizationは認識した発話に話者ラベルを割り当て、最速の音声コマンドの応答よりも、複数話者の録音を対象とします。
録音クリップでは、ファイル文字起こしの流れが1リクエストで完全な文字起こしを返します。既定の結果は文字起こしと音声時間を含むJSONで、endpointingとdiarizationモードではturns配列を伴います。各ターンには識別子、ミリ秒単位の開始・終了、認識したテキストを含められます。話者ラベルはdiarizationモードに含まれます。Push-to-talkは、その配列内の検出ターンなしで完全な文字起こしを返します。メーカーの録音ファイル用インターフェースは、プレーンテキストや文字起こしイベントのストリームも返せます。プレーンテキストは検出ターンを別々の行にし、話者ラベルを含むことがあります。イベントストリームは最後のイベントで終わり、別のJSON要約はありません。deltaの部分モードは差分テキストを返し、最終文字起こしイベントには文言全体が入ります。
モノラル、16ビット整数PCM、16または24 kHzの音声を含むRIFF/WAVEファイルを準備してください。モデル本来のレートは24 kHzで、インターフェースは16 kHzも受け付けます。ほかのコンテナやエンコーディングは、録音を渡す前に対応するWAV形式へ変換します。ファイル文字起こしのプロファイルは最大10分の音声と、合計32 MBまでのリクエスト本体を認めます。後で聴いて確認できるよう、元録音と変換したものを、返された文字起こしに結び付けて保管してください。
ライブ音声の流れは、符号付き16ビット、リトルエンディアン、モノラルの生PCMを使い、16または24 kHzの音声をほぼ実時間の速度で送ります。文書化されたセッション枠は60分です。Metaはモデル本来の音声入力が1時間を超えると説明していますが、文書化されたファイルとライブセッションの上限は、別々のインターフェースの境界です。音声が録音済みか、まだ取得中かによって流れを選び、別セッションの結果はそれぞれの入力区間と関連付けてください。
Muse Voice Transcribeは70を超える言語で学習されていますが、文書化された認識インターフェースは25の対応言語を列挙しています。英語、フランス語、ドイツ語、スペイン語、アラビア語、標準中国語、ヒンディー語、日本語、韓国語、イタリア語、ポルトガル語などです。文の中や文同士の間で言語が切り替わるコードスイッチングも認識します。言語ヒントには予想する言語を指定できますが、認識を誘導するもので、文字起こしを一つの言語に強制するものではありません。
語彙ヒントは、録音で重要な製品用語、略語、名前、地名に役立ちます。実際に聞こえると予想する単語と綴りを提供してください。キーワード一覧は認識を誘導しますが、正確な綴りを保証しないため、重要な語は音声と照合します。言語ヒントとキーワードは文字起こし開始時に選びます。実行中のセッションで意味を変えず、その録音に合うものを保持してください。
モデルは20人を超える話者の会話で話者分離に対応します。AやBなどのラベルは、一つの文字起こし内で話者を識別します。確認済みの名前ではなく、別のセッションの同じラベルが同一人物を指すことも証明しません。独自の会議分析では、話者付きの発話ターンを求め、録音を保存し、周辺の流れで実際の参加者名を割り当てる前に、ラベルで議論を整理できます。
ライブの途中の文字起こしは、音声が増えると変わることがあります。累積モードでは、各部分結果は前の仮説に重ねて加えるのではなく、それを置き換えます。発話終端の検出は境界を示し、完了ターンの結果が最終テキストを返します。最後の部分結果と異なる場合があります。重なるターンはターン識別子に結び付け、完成とみなす前に完了結果を受け取ってください。ライブ入力が終わったら入力終了を通知し、メーカー側が保留結果をすべて送出し終えるまで受信を続けます。すぐに接続を閉じると、それらの結果を失う場合があります。発話境界の検出はターンを終えるもので、セッション全体を終えるものではありません。
時間情報はターン単位です。このプロファイルは単語単位のタイムスタンプや信頼度スコアを返さず、音声処理の進捗も特定の単語の時刻ではありません。音イベント検出、感情検出、文字起こしの整形も、文書化された出力プロファイルの対象外です。返されたターン区間は話者のタイムラインや区間単位の確認に使い、別の編集段階で読みやすいメモを作る場合にも認識語を保持してください。
完成した口述文、音声クエリの文字起こし、話者付きの会話、発話のタイムラインなどを成果物にできます。名前、数値、専門用語を元録音と比較し、モードと時間の対応を保持し、完全なターンを確認できる状態にしてください。文字起こしが示すのは音声から認識した内容です。音声の質問への回答、翻訳、議事メモへの変換は、後続のアプリケーション段階に属します。
Ailoot Ultra · 文字起こし POST /v1/audio/transcriptions meta/muse-voice-transcribe-1.0
meta/muse-voice-transcribe-1.0
meta/muse-voice-transcribe-1.0はじめに
Muse Voice Transcribe 1.0は、口述入力、検出された発話ターン、話者を区別した文字起こし向けの、Metaの音声テキスト変換モデルです。言語と語彙のヒント、言語の切り替え、ターン単位の時刻情報に対応し、録音済みクリップとライブ音声には別々のワークフローがあります。
- 対応する入力
- 音声
- 結果
- テキスト
Ailootで利用可能 · 入力とメソッド
Ailoot Ultra · 文字起こし POST /v1/audio/transcriptions
- 入力の種類
audio- 出力の種類
text
| フィールド | 種類 | 要件 | 値と制限 | デフォルト |
|---|---|---|---|---|
フィールドmodel | 種類string | 要件必須 | 値と制限 meta/muse-voice-transcribe-1.0 | デフォルト— |
フィールドinput_audio | 種類object | 要件必須 | 値と制限 | デフォルト— |
メソッドのパラメータとライフサイクル
| パラメータ | 仕様 |
|---|---|
パラメータcontent_type | 仕様application/json |
パラメータrequired | 仕様model, input_audio |
パラメータmaterial_types | 仕様audio |
パラメータmaterial_conditions | 仕様この例では、実際の空でないPCM WAVファイルを読み込み、ファイル全体のバイト列をbase64にエンコードして、input_audio.formatをwavとして送信します。 |
ライフサイクル: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · 既存の所有メディアレコードにある正確なtask_id
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
料金
料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。
- 高速モード
- 未指定 高速モードが選択されている場合
- Flex モード
- 未指定 flex モードが選択されている場合
- 最大推論量
- 未指定 推論量が最大で、調整に既定値(default)を使用する場合
Ailootの料金
設定別の価格
各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。
| 設定 | 料金表 | 課金単位 | 料金 |
|---|---|---|---|
| 設定基本トークン料金 | 料金表基本料金 | 課金単位— | 料金 入力 · 入力トークン — / 1K トークン 出力 · 出力トークン — / 1K トークン 入力 · キャッシュ読み取り — / 1K トークン 入力 · キャッシュ書き込み — / 1K トークン 入力 · キャッシュ書き込み、1時間 — / 1K トークン |
| 設定入力音声の秒 | 料金表— | 課金単位入力音声1秒あたり | 料金 入力 · 入力音声の秒 $0.0001 入力音声1秒あたり |
Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →
リクエスト例
Ailoot Ultra · 文字起こし
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}"
export AILOOT_AUDIO_FILE
python3 - <<'PY_REQUEST'
import base64, io, json, os, wave
from pathlib import Path
audio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()
if not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):
raise SystemExit('Supply your actual PCM WAV audio file')
with wave.open(io.BytesIO(audio), 'rb') as recording:
if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:
raise SystemExit('Supply a nonempty PCM WAV recording')
request = {'model': 'meta/muse-voice-transcribe-1.0', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}
Path('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Retain the complete original response, headers and actual X-Client-Request-ID.
# Read existing owned records for recovery; do not resubmit an uncertain operation.
結果を受け取って保存
Ailoot Ultra · 文字起こし
元のレスポンス本文全体、ステータス、および転送されたヘッダー。このハンドラーは共通のJSON構造、テキストフィールド、タスクの外側の構造を追加しません。
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
完了した結果をすべて保存
返された完全なレスポンス、ファイル、コンテンツ部分をすべて保存してください。
レスポンスとヘッダーの全体、実際の出力すべて、最初に返された識別子、使用量フィールドすべてを保存してください。作成リクエストを再送せずに、元の操作を復旧してください。
元のレスポンスを確認する場合
実際のX-Client-Request-IDと完全なレスポンスを保持してください。元の所有アセットと、その正確な署名付きコンテンツURLを読み取ってください。結果が不確かな作成リクエストは、決して再送信しないでください。
レスポンスのフィールド
| フィールド | 種類 |
|---|---|
フィールドtext (when present) | 種類 |
フィールドusage (when present) | 種類 |
エラーと次の手順
| レスポンス | 条件 | 次の手順 |
|---|---|---|
レスポンス400 · invalid_request_error | 条件JSON本文、または明示された正規モデルIDが無効です。 | 次の手順レスポンスを保持し、指摘されたリクエストフィールドを修正してください。 |
レスポンス401 · authentication_error | 条件Ailoot APIキーが無効です。 | 次の手順利用権限のあるAiloot APIキーを使用してください。 |
レスポンス403 · permission_error | 条件このキーのグループでは、このメソッドの利用が許可されていません。 | 次の手順返されたエラーの詳細を保持してください。 |
レスポンス404 · not_found_error | 条件選択したメソッドには、利用が許可されたルートがありません。 | 次の手順返されたエラーの詳細を保持してください。 |
レスポンス422 · price_unavailable | 条件受諾済みの料金体系に必要な入力量、またはその上限を取得できません。 | 次の手順レスポンスを保持し、受諾済みの料金体系で必要とされる入力表現を使用してください。 |
レスポンス503 · | 条件必要な保存領域、ルート、メソッド料金、または料金の仮押さえを利用できません。 | 次の手順元のレスポンス全体を保持してください。料金の仮押さえ状態が不明でも、再送信が認められるわけではありません。 |
レスポンス502 · server_error | 条件元の結果、使用量、または精算を確認する必要があります。 | 次の手順実際のリクエストIDと元のレスポンスを保持してください。既存の所有レコードを読み取ってください。作成リクエストを再送信しないでください。 |
エイリアス
モデルのエイリアス
Ailoot Ultra meta/muse-voice-transcribe-1.0
メソッドパスのエイリアス
上記に表示されたメソッドパスを使用してください。
関連する呼び出し用ID
FAQ · Meta: Muse Voice Transcribe 1.0
- 利用できる入力と結果は何ですか?
POST /v1/audio/transcriptions·meta/muse-voice-transcribe-1.0:audio→text- リクエストはどの項目を使用しますか?
POST /v1/audio/transcriptions·meta/muse-voice-transcribe-1.0:model,input_audio