- JSON 表現
- AudioEncoding
- SpeechAdaptation
- ABNFGrammar
- TranscriptNormalization
- エントリ
- SpeechContext
- SpeakerDiarizationConfig
- RecognitionMetadata
- InteractionType
- MicrophoneDistance
- OriginalMediaType
- RecordingDeviceType
認識機能にリクエストの処理方法を指定する情報を提供します。
| JSON 表現 |
|---|
{ "encoding": enum ( |
| フィールド | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
encoding |
すべての |
||||||||||||||||||
sampleRateHertz |
すべての |
||||||||||||||||||
audioChannelCount |
入力音声データのチャンネル数。MULTI-CHANNEL 認識の場合にのみ設定します。LINEAR16、OGG_OPUS、FLAC の有効な値は |
||||||||||||||||||
enableSeparateRecognitionPerChannel |
各チャンネルを個別に認識させるには、これを明示的に |
||||||||||||||||||
languageCode |
必須。提供された音声の言語を、BCP-47 言語タグで表したもの。例: "en-US"。現在サポートされている言語コードについては、言語のサポートをご覧ください。 |
||||||||||||||||||
alternativeLanguageCodes[] |
提供された音声の代替言語の候補を列挙した、最大 3 つの追加の BCP-47 言語タグのリスト。現在サポートされている言語コードについては、言語のサポートをご覧ください。代替言語がリストにある場合、認識結果には、メインの languageCode での認識のほか、可能性が高いものとして検出された言語での認識が含まれます。認識結果には、音声で検出された言語の言語タグが含まれます。注: この機能は音声コマンドと音声検索のユースケースでのみサポートされており、他のユースケース(通話の音声文字変換など)ではパフォーマンスが異なる場合があります。 |
||||||||||||||||||
maxAlternatives |
返される認識仮説の最大数。具体的には、各 |
||||||||||||||||||
profanityFilter |
|
||||||||||||||||||
adaptation |
音声適応構成により、音声認識の精度が向上します。詳細については、音声適応のドキュメントをご覧ください。音声適応が設定されている場合、 |
||||||||||||||||||
transcriptNormalization |
省略可。文字起こし正規化を使用すると、文字起こしの部分を任意のフレーズに自動的に置き換えることができます。StreamingRecognize の場合、この正規化は安定した部分的な文字起こし(安定性 > 0.8)と最終的な文字起こしにのみ適用されます。 |
||||||||||||||||||
speechContexts[] |
|
||||||||||||||||||
enableWordTimeOffsets |
|
||||||||||||||||||
enableWordConfidence |
|
||||||||||||||||||
enableAutomaticPunctuation |
「true」の場合、認識結果の仮説に句読点を追加します。この機能は一部の言語でのみ使用できます。それ以外の言語でこのオプションをリクエストに設定しても、まったく効果はありません。デフォルトの「false」値では、結果の仮説に句読点は追加されません。 |
||||||||||||||||||
enableSpokenPunctuation |
通話の発話された句読点の動作です。設定されていない場合、選択したモデルに基づくデフォルトの動作が使用されます。たとえば、command_and_search では、発話された句読点がデフォルトで有効になります。「true」の場合、発話による句読点がリクエストの対応する記号に置き換えられます。たとえば、「お元気ですか疑問符」は「お元気ですか?」になります。サポートについては、https://cloud.google.com/speech-to-text/docs/spoken-punctuation をご覧ください。「false」の場合、発話された句読点は置き換えられません。 |
||||||||||||||||||
enableSpokenEmojis |
通話の発話された絵文字の動作です。設定されていない場合は、選択したモデルに基づくデフォルトの動作が使用されます。「true」の場合、リクエストの発話された絵文字の形式が追加されます。最終的な文字起こしでは、発話された絵文字が対応する Unicode 記号に置き換えられます。「false」の場合、読み上げられた絵文字は置き換えられません。 |
||||||||||||||||||
enableSpeakerDiarization |
「true」の場合、WordInfo で提供される speakerLabel を使用して、認識結果の最上位の候補にある認識された単語ごとに話者検出を有効にします。注: 代わりに diarizationConfig を使用してください。 |
||||||||||||||||||
diarizationSpeakerCount |
設定されている場合、会話内の話者の推定数を指定します。デフォルトは「2」です。enableSpeakerDiarization が true に設定されていない限り、無視されます。注: 代わりに diarizationConfig を使用してください。 |
||||||||||||||||||
diarizationConfig |
話者ダイアライゼーションを有効にし、アプリケーションにより適したダイアライゼーションにするための追加のパラメータを設定する構成。注: この設定が有効になっている場合、連続するすべての STREAMING レスポンスで、音声の冒頭からすべての単語が上位の変換候補として送信されます。これは、モデルが会話内の話者の識別を時間の経過とともに学習するうえで、話者タグを改善するために行われます。ストリーミング以外のリクエストについては、最後の SpeechRecognitionResult の最上位候補に限り、ダイアライゼーション結果が提供されます。 |
||||||||||||||||||
metadata |
このリクエストに関するメタデータ。 |
||||||||||||||||||
model |
指定されたリクエストに選択するモデル。最適な結果を得るには、ドメインに最適なモデルを選択してください。モデルを明示的に指定しなかった場合、RecognitionConfig のパラメータに基づいて自動的にモデルが選択されます。
|
||||||||||||||||||
useEnhanced |
音声認識に拡張モデルを使用する場合は true に設定します。
|
||||||||||||||||||
AudioEncoding
リクエストで送信される音声データのエンコード。
audioChannelCount フィールドと enableSeparateRecognitionPerChannel フィールドが設定されていない限り、すべてのエンコードで 1 チャンネル(モノラル)の音声のみがサポートされます。
最良の結果を得るには、音声ソースをロスレス エンコード(FLAC または LINEAR16)でキャプチャして送信する必要があります。音声認識の精度は、特にバックグラウンド ノイズが存在する場合に、音声のキャプチャまたは送信に損失の大きいコーデックを使用すると低下します。ロッシー コーデックには、MULAW、AMR、AMR_WB、OGG_OPUS、SPEEX_WITH_HEADER_BYTE、MP3、WEBM_OPUS があります。
FLAC および WAV 音声ファイル形式には、含まれている音声コンテンツを記述したヘッダーが含まれます。LINEAR16 または MULAW でエンコードされた音声を含む WAV ファイルの認識をリクエストできます。リクエストで FLAC または WAV の音声ファイル形式を送信する場合、AudioEncoding を指定する必要はありません。音声エンコード形式はファイル ヘッダーから決定されます。FLAC または WAV 音声を送信するときに AudioEncoding を指定する場合、そのエンコード構成は音声ヘッダーに記述されているエンコードと一致している必要があります。それ以外の場合、リクエストは google.rpc.Code.INVALID_ARGUMENT を返します。
| 列挙型 | |
|---|---|
ENCODING_UNSPECIFIED |
指定なし。 |
LINEAR16 |
非圧縮 16 ビット符号付きリトル エンディアンのサンプル(Linear PCM)。 |
FLAC |
FLAC(Free Lossless Audio Codec)はロスレスである(したがって、認識は損なわれない)ため推奨されるエンコード方式であり、LINEAR16 の約半分の帯域幅しか必要としません。FLAC ストリーム エンコードは 16 ビットと 24 ビットのサンプルをサポートしていますが、STREAMINFO のすべてのフィールドがサポートされているわけではありません。 |
MULAW |
G.711 PCMU/mu-law を使用して 14 ビットの音声サンプルの圧縮と伸張を行う 8 ビットのサンプル。 |
AMR |
Adaptive Multi-Rate Narrowband コーデック。sampleRateHertz は 8,000 にする必要があります。 |
AMR_WB |
Adaptive Multi-Rate Wideband コーデック。sampleRateHertz は 16,000 にする必要があります。 |
OGG_OPUS |
Ogg コンテナに格納された Opus エンコード形式の音声フレーム(OggOpus)。sampleRateHertz は 8,000、12,000、16,000、24,000、または 48,000 にする必要があります。 |
SPEEX_WITH_HEADER_BYTE |
ロッシー エンコードの使用は推奨されませんが、非常に低いビットレートのエンコードが必要な場合は、OGG_OPUS が Speex エンコードよりも強く推奨されます。Cloud Speech API でサポートされている Speex エンコードは、MIME タイプの audio/x-speex-with-header-byte と同様に、各ブロックにヘッダーバイトがあります。これは RFC 5574 で定義されている RTP Speex エンコードのバリアントです。ストリームは一連のブロックから成り、RTP パケットごとに 1 つのブロックがあります。各ブロックはブロックの長さ(バイト単位)を含むバイトから始まり、その後に 1 つ以上の Speex データのフレームが続きます。各データフレームは RFC 5574 で指定された整数バイト数(オクテット)になるようにパディングされます。言い換えると、各 RTP ヘッダーはブロック長を含む単一のバイトに置き換えられます。Speex ワイドバンドのみがサポートされています。sampleRateHertz は 16000 にする必要があります。 |
MP3 |
MP3 オーディオ。MP3 エンコーディングはベータ版の機能で、v1p1beta1 でのみ使用できます。すべての標準的な MP3 ビットレート(32~320 kbps の範囲)をサポートします。このエンコードを使用する場合、sampleRateHertz は、使用するファイルのサンプルレートと一致する必要があります。 |
WEBM_OPUS |
WebM コンテナ(WebM)内の Opus でエンコードされた音声フレーム。sampleRateHertz は 8,000、12,000、16,000、24,000、48,000 のいずれかにする必要があります。 |
ALAW |
G.711 PCMU/a-law を使用して 13 ビットの音声サンプルの圧縮と伸張を行う 8 ビットのサンプル。 |
SpeechAdaptation
音声適応の構成。
| JSON 表現 |
|---|
{ "phraseSets": [ { object ( |
| フィールド | |
|---|---|
phraseSets[] |
フレーズセットのコレクション。ヒントをインラインで指定するには、フレーズセットの |
phraseSetReferences[] |
使用するフレーズ セットのリソース名のコレクション。 |
customClasses[] |
カスタムクラスのコレクション。クラスをインラインで指定するには、クラスの |
abnfGrammar |
Augmented Backus-Naur Form(ABNF)は、一連の導出規則で構成される標準化された文法表記です。仕様については、https://www.w3.org/TR/speech-grammar をご覧ください。 |
ABNFGrammar
| JSON 表現 |
|---|
{ "abnfStrings": [ string ] } |
| フィールド | |
|---|---|
abnfStrings[] |
ABNF 文法のすべての宣言とルールが複数の文字列に分割され、最終的に連結されます。 |
TranscriptNormalization
文字起こし正規化の構成。文字起こし正規化を使用すると、文字起こしの部分を任意のフレーズに自動的に置き換えることができます。StreamingRecognize の場合、この正規化は安定した部分的な文字起こし(安定性 > 0.8)と最終的な文字起こしにのみ適用されます。
| JSON 表現 |
|---|
{
"entries": [
{
object ( |
| フィールド | |
|---|---|
entries[] |
置換エントリのリスト。交換は 1 回のエントリで 1 つずつ行います。たとえば、["cat" => "dog", "mountain cat" => "mountain dog"] の 2 番目のエントリは、常に最初のエントリが処理されるため、適用されません。最大 100 個のエントリ。 |
エントリ
単一の置換構成。
| JSON 表現 |
|---|
{ "search": string, "replace": string, "caseSensitive": boolean } |
| フィールド | |
|---|---|
search |
置き換える内容。最大長は 100 文字です。 |
replace |
置き換える内容。最大長は 100 文字です。 |
caseSensitive |
検索で大文字と小文字が区別されるかどうか。 |
SpeechContext
結果の中の特定の語句を優先するように、音声認識機能に「ヒント」を提供します。
| JSON 表現 |
|---|
{ "phrases": [ string ], "boost": number } |
| フィールド | |
|---|---|
phrases[] |
音声認識で認識されやすくするための単語やフレーズの「ヒント」を含む文字列のリスト。これは、特定の語句の精度を向上させるために使用できます。たとえば、ユーザーによって特定のコマンドがよく話されている場合が挙げられます。また、認識機能の語彙に語句を追加するためにも使用できます。詳しくは、使用制限をご覧ください。 リスト項目は、自然言語で一般的な概念を表す単語のグループのクラスに設定することもできます。たとえば、1 年のすべての月に対してフレーズ ヒントを提供するのではなく、$MONTH クラスを使用すると、月を含む音声の文字変換が正しく行われる可能性が高まります。 |
boost |
ヒント ブースト。正の値を指定すると、特定のフレーズが他の類似した発音のフレーズよりも認識される可能性が高くなります。ブーストが高いほど、誤検出の可能性も高くなります。ブースト値が負の値の場合、バイアス除去に対応します。バイアス除去が有効になっていないため、負のブーストは無視されます。 |
SpeakerDiarizationConfig
話者ダイアライゼーションを有効にする構成。
| JSON 表現 |
|---|
{ "enableSpeakerDiarization": boolean, "minSpeakerCount": integer, "maxSpeakerCount": integer, "speakerTag": integer } |
| フィールド | |
|---|---|
enableSpeakerDiarization |
「true」の場合、WordInfo で提供される speakerLabel を使用して、認識結果の最上位の候補にある認識された単語ごとに話者検出を有効にします。 |
minSpeakerCount |
会話内の話者の最小数。この設定により、適切な話者の数をシステムが自動的に決定できるため、柔軟性が向上します。設定しない場合、デフォルト値は 2 です。 |
maxSpeakerCount |
会話内の話者の最大数。この設定により、適切な話者の数をシステムが自動的に決定できるため、柔軟性が向上します。設定しない場合、デフォルト値は 6 です。 |
speakerTag |
出力専用。使用されていません。 |
RecognitionMetadata
認識する音声データの説明。
| JSON 表現 |
|---|
{ "interactionType": enum ( |
| フィールド | |
|---|---|
interactionType |
認識する音声コンテンツを最もよく表すユースケース。 |
industryNaicsCodeOfAudio |
この音声認識リクエストが最もよく当てはまる業種。これは音声に含まれるトピックを暗示します。6 桁の NAICS コードを使用して業種を特定します(https://www.naics.com/search/ を参照)。 |
microphoneDistance |
認識される音声を最もよく表す音声タイプ。 |
originalMediaType |
音声が録音されたオリジナルのメディア。 |
recordingDeviceType |
音声を録音した機器の種類。 |
recordingDeviceName |
録音に使用した機器。たとえば、「Nexus 5X」、「Polycom SoundStation IP 6000」、「POTS」、「VoIP」、「Cardioid Microphone」など。 |
originalMimeType |
元の音声ファイルの MIME タイプ。たとえば、 |
obfuscatedId |
難読化(プライバシー保護)されたユーザー ID。サービスを利用するユニーク ユーザー数を識別するために使用されます。 |
audioTopic |
コンテンツの説明。例: 「2012 年の連邦最高裁判所の法廷審問の録音」。 |
InteractionType
音声認識リクエストの説明に使用できるユースケースのカテゴリ。
| 列挙型 | |
|---|---|
INTERACTION_TYPE_UNSPECIFIED |
ユースケースは不明であるか、以下の値のいずれにも該当しません。 |
DISCUSSION |
複数の人による会話やディスカッション。たとえば、2 人以上の人が積極的に参加している会議がこれに該当します。通常は主要な話者がすべて同じ部屋にいます(そうでない場合は PHONE_CALL を参照)。 |
PRESENTATION |
1 人または複数の人による他者への講義やプレゼンテーション。ほとんど中断されずに進行します。 |
PHONE_CALL |
同じ部屋にいない 2 人以上の人が積極的に参加している電話またはビデオ会議。 |
VOICEMAIL |
他の人に聞かせることを意図した録音メッセージ。 |
PROFESSIONALLY_PRODUCED |
専門家が制作したオーディオ(例: テレビ番組、ポッドキャスト)。 |
VOICE_SEARCH |
話された質問や問い合わせをテキストに変換します。 |
VOICE_COMMAND |
音声コマンド(デバイスを制御するためのコマンドなど)をテキストに変換します。 |
DICTATION |
話したことをテキストに変換して、テキスト メッセージ、メール、レポートなどの文書を作成します。 |
MicrophoneDistance
音声ファイルのキャプチャ設定の種類を列挙します。
| 列挙型 | |
|---|---|
MICROPHONE_DISTANCE_UNSPECIFIED |
音声の種類は不明です。 |
NEARFIELD |
近くに配置されたマイクから音声がキャプチャされました。たとえば、電話、ディクタフォン、ハンドマイクなどがこれに該当します。一般的に、話者はマイクから 1 メートル以内にいます。 |
MIDFIELD |
話者はマイクから 3 メートル以内にいます。 |
FARFIELD |
話者はマイクから 3 メートル以上離れています。 |
OriginalMediaType
音声が録音されたオリジナルのメディア。
| 列挙型 | |
|---|---|
ORIGINAL_MEDIA_TYPE_UNSPECIFIED |
不明なオリジナルのメディアタイプ。 |
AUDIO |
音声データは音声録音です。 |
VIDEO |
音声データは元々ビデオに記録されたものです。 |
RecordingDeviceType
音声を録音した機器の種類。
| 列挙型 | |
|---|---|
RECORDING_DEVICE_TYPE_UNSPECIFIED |
録音機器は不明です。 |
SMARTPHONE |
音声はスマートフォンで録音されました。 |
PC |
音声はパソコンまたはタブレットで録音されました。 |
PHONE_LINE |
音声は電話回線越しに録音されました。 |
VEHICLE |
音声は車両内で録音されました。 |
OTHER_OUTDOOR_DEVICE |
音声は屋外で録音されました。 |
OTHER_INDOOR_DEVICE |
音声は屋内で録音されました。 |