すべてのプロダクト
Search
ドキュメントセンター

Intelligent Speech Interaction:概要

最終更新日:Jun 23, 2025

短文認識サービスは、60秒以内の短い音声認識を行います。このサービスは、チャット会話、音声コマンド制御、アプリケーションの音声検索、音声入力などのシナリオに適用されます。

機能

  • パルス符号変調(PCM)でエンコードされた 16 ビットモノラルオーディオファイルをサポートします。

  • 8,000 Hz および 16,000 Hz のオーディオサンプリングレートをサポートします。

  • 60秒以内の短い音声を認識します。

  • サービスレスポンスに関する以下の設定項目を指定できます。

    • 中間結果を返すかどうか

    • 後処理中に句読点を追加するかどうか

    • 漢数字をアラビア数字に変換するかどうか

  • Intelligent Speech Interaction コンソールでプロジェクトを管理する際に、さまざまな言語の音声を認識するための言語モデルを選択できます。詳細については、「プロジェクトの管理」をご参照ください。

    現在サポートされている言語と方言モデルには、ベトナム語、タイ語、トルコ語、ロシア語、ポルトガル語、マレーシア語、イタリア語、カザフ語、インドネシア語、ヒンディー語、ドイツ語、フランス語、フィリピン語、アラビア語、日本語、韓国語、英語、中国語普通話、広東語が含まれます。

エンドポイント

アクセスタイプ

説明

URL

インターネットからの外部アクセス

このエンドポイントを使用すると、インターネット経由で任意のホストから短文認識サービスにアクセスできます。デフォルトでは、インターネットアクセス URL は SDK に組み込まれています。

wss://nls-gateway-ap-southeast-1.aliyuncs.com/ws/v1

1. クライアントの認証

サーバーとの WebSocket 接続を確立するには、クライアントは認証にトークンを使用する必要があります。トークンの取得方法の詳細については、「トークンの取得」をご参照ください。

2. 認識の開始と確認

クライアントは、サーバーに短文認識を開始するリクエストを送信します。サーバーは、リクエストが有効であることを確認します。

クライアントがサービスリクエストを送信するには、リクエストパラメーターを設定する必要があります。リクエストパラメーターは、SDK の SpeechRecognizer オブジェクトの set メソッドを使用して設定できます。次の表に、リクエストパラメーターを示します。

パラメーター

タイプ

必須

説明

appkey

String

はい

Intelligent Speech Interaction コンソールで作成されたプロジェクトの appkey。

format

String

いいえ

オーディオコーディング形式。デフォルト値:PCM。

短文認識サービスは、PCM エンコードされた 16 ビットモノラルオーディオファイルをサポートします。

sample_rate

Integer

いいえ

オーディオサンプリングレート。単位:Hz。デフォルト値:16000。

このパラメーターを設定した後、Intelligent Speech Interaction コンソールで、プロジェクトに適用可能なオーディオサンプリングレートのモデルまたはシーンを指定する必要があります。

enable_intermediate_result

Boolean

いいえ

中間結果を返すかどうかを指定します。デフォルト値:False。

enable_punctuation_prediction

Boolean

いいえ

後処理中に句読点を追加するかどうかを指定します。デフォルト値:False。

enable_inverse_text_normalization

Boolean

いいえ

後処理中に逆テキスト正規化(ITN)を有効にするかどうかを指定します。有効な値:True および False。デフォルト値:False。このパラメーターを True に設定すると、漢数字はアラビア数字に変換されます。

customization_id

String

いいえ

カスタム言語モデルの ID。

vocabulary_id

String

いいえ

カスタムホットワードの語彙 ID。

enable_voice_detection

Boolean

いいえ

音声検出を有効にするかどうかを指定します。デフォルト値:False。

max_start_silence

Integer

いいえ

開始無音の最大期間。単位:ミリ秒。有効な値:(0、60000]。このパラメーターは、enable_voice_detection パラメーターが True に設定されている場合にのみ有効になります。

開始無音の実際の期間がこのパラメーターの値を超えると、サーバーは TaskFailed イベントを送信して認識タスクを終了します。

max_end_silence

Integer

いいえ

終了無音の最大期間。単位:ミリ秒。有効な値:200~2000。このパラメーターは、enable_voice_detection パラメーターが True に設定されている場合にのみ有効になります。

終了無音の実際の期間がこのパラメーターの値を超えると、サーバーは RecognitionCompleted メッセージを送信して認識タスクを完了します。その後、後続の音声は処理されなくなります。

3. 音声データの送信と認識

クライアントは、サーバーに音声データを周期的に送信し、サーバーから認識結果を継続的に受信します。

  • enable_intermediate_result パラメーターが True に設定されている場合、サーバーは複数の RecognitionResultChanged メッセージを送信して中間結果を返します。たとえば、サーバーは次の中間結果を返します。

    // 天気
    // 北京の天気

    サーバーは次のレスポンスを返します。

    {
    	"header": {
    		"namespace": "SpeechRecognizer",
    		"name": "RecognitionResultChanged",
    		"status": 20000000,
    		"message_id": "e06d2b5d50ca40d5a50d4215c7c8****",
    		"task_id": "4c3502c7a5ce4ac3bdc488749ce4****",
    		"status_text": "Gateway:SUCCESS:Success." // ゲートウェイ:成功:成功。
    	},
    	"payload": {
    		"result": "Weather in Beijing" // 北京の天気
    	}
    }
    

    次の表に、header オブジェクトのパラメーターを示します。

    パラメーター

    タイプ

    説明

    namespace

    String

    メッセージの名前空間。

    name

    String

    メッセージの名前。 RecognitionResultChanged メッセージは、中間結果が取得されたことを示します。

    status

    Integer

    ステータスコード。リクエストが成功したかどうかを示します。詳細については、このトピックの「サービスステータスコード」セクションを参照してください。

    status_text

    String

    ステータスメッセージ。

    task_id

    String

    認識タスクのグローバル一意識別子(GUID)。トラブルシューティングを容易にするために、このパラメーターの値を記録します。

    message_id

    String

    メッセージの ID。

    次の表に、payload オブジェクトの result パラメーターを示します。

    パラメーター

    タイプ

    説明

    result

    String

    認識タスクの中間結果。

    説明

    最新の中間結果は、最終結果と異なる場合があります。 RecognitionCompleted メッセージに含まれる result を最終結果として使用してください。

  • enable_intermediate_result パラメーターが False に設定されている場合、サーバーはこのステップでメッセージを返しません。

4. 認識の停止と完了

クライアントは、サーバーに短文認識を停止するリクエストを送信します。サーバーは最終的な認識結果を返します。たとえば、サーバーは次の最終的な認識結果を返します。

{
	"header": {
		"namespace": "SpeechRecognizer",
		"name": "RecognitionCompleted",
		"status": 20000000,
		"message_id": "10490c992aef44eaa4246614838f****",
		"task_id": "4c3502c7a5ce4ac3bdc488749ce4****",
		"status_text": "Gateway:SUCCESS:Success." // ゲートウェイ:成功:成功。
	},
	"payload": {
		"result": "Weather in Beijing." // 北京の天気。
	}
}

次の表に、header オブジェクトのパラメーターを示します。

パラメーター

タイプ

説明

namespace

String

メッセージの名前空間。

name

String

メッセージの名前。 RecognitionCompleted メッセージは、認識タスクが完了したことを示します。

status

Integer

ステータスコード。リクエストが成功したかどうかを示します。詳細については、このトピックの「サービスステータスコード」セクションを参照してください。

status_text

String

ステータスメッセージ。

task_id

String

認識タスクの GUID。トラブルシューティングを容易にするために、このパラメーターの値を記録します。

message_id

String

SDK によって自動的に生成されるメッセージの ID。

次の表に、payload オブジェクトの result パラメーターを示します。

パラメーター

タイプ

説明

result

String

最終的な認識結果。

サービスステータスコード

各レスポンスメッセージには、サービスステータスコードを示す status フィールドが含まれています。次の表に、一般的なエラーコード、ゲートウェイエラーコード、および構成エラーコードを示します。

  • 一般的なエラーコード

    エラーコード

    説明

    解決策

    40000001

    クライアントの認証に失敗したため返されるエラーメッセージ。

    クライアントが使用しているトークンが正しいか、有効かどうかを確認してください。

    40000002

    リクエストが無効なため返されるエラーメッセージ。

    クライアントから送信されたリクエストが要件を満たしているかどうかを確認してください。

    403

    トークンの有効期限が切れているか、リクエストに無効なパラメーターが含まれているため返されるエラーメッセージ。

    1. クライアントが使用しているトークンが有効かどうかを確認してください。

    2. パラメーター値が有効かどうかを確認してください。

    40000004

    クライアントのアイドル状態のタイムアウトのため返されるエラーメッセージ。

    クライアントが長時間(例:10 秒)サーバーにデータを送信していないかどうかを確認してください。

    40000005

    リクエスト数が上限を超えたため返されるエラーメッセージ。

    同時接続数または 1 秒あたりのクエリ数(QPS)が上限を超えているかどうかを確認してください。同時接続数が上限を超えている場合は、Intelligent Speech Interaction を試用版から商用版にアップグレードすることをお勧めします。サービスを商用版にアップグレードした場合は、より高い同時実行性のためにより多くのリソースを購入することをお勧めします。

    41050008

    指定されたオーディオサンプリングレートが、選択されたモデルのサンプリングレートと一致しないため返されるエラーメッセージ。

    サービスコールに指定されたオーディオサンプリングレートが、コンソールでプロジェクトの appkey にバインドされている自動音声認識(ASR)モデルのオーディオサンプリングレートと一致するかどうかを確認してください。

    41010101

    指定されたオーディオサンプリングレートがサポートされていないため返されるエラーメッセージ。

    サービスコールに指定されたオーディオサンプリングレートが、コンソールでプロジェクトの appkey にバインドされている ASR モデルのオーディオサンプリングレートと一致するかどうかを確認してください。

    41010120

    クライアントタイムアウトエラーが発生したため返されるエラーメッセージ。

    クライアントが少なくとも 10 秒連続してサーバーにデータを送信していないかどうかを確認してください。

    40000000

    クライアントエラーが発生したため返されるエラーメッセージ。これはデフォルトのクライアントエラーコードです。

    エラーメッセージに基づいてエラーを解決するか、チケットを送信してください。

    50000000

    サーバーエラーが発生したため返されるエラーメッセージ。これはデフォルトのサーバーエラーコードです。

    エラーコードがたまに返される場合は、無視してください。エラーコードが複数回返される場合は、チケットを送信してください。

    50000001

    内部コールエラーが発生したため返されるエラーメッセージ。

    エラーコードがたまに返される場合は、無視してください。エラーコードが複数回返される場合は、チケットを送信してください。

    52010001

    内部コールエラーが発生したため返されるエラーメッセージ。

    エラーコードがたまに返される場合は、無視してください。エラーコードが複数回返される場合は、チケットを送信してください。

  • ゲートウェイエラーコード

    エラーコード

    説明

    解決策

    40010001

    メソッドがサポートされていないため返されるエラーメッセージ。

    SDK を使用している場合は、チケットを送信してください。

    40010002

    命令がサポートされていないため返されるエラーメッセージ。

    SDK を使用している場合は、チケットを送信してください。

    40010003

    命令形式が無効なため返されるエラーメッセージ。

    SDK を使用している場合は、チケットを送信してください。

    40010004

    クライアントが予期せず切断されたため返されるエラーメッセージ。

    サーバーがリクエストされたタスクを完了する前に、クライアントが切断されたかどうかを確認してください。

    40010005

    タスクが異常な状態にあるため返されるエラーメッセージ。

    現在のタスクステータスで命令がサポートされているかどうかを確認してください。

  • 構成エラーコード

    エラーコード

    説明

    解決策

    40020105

    アプリケーションが存在しないため返されるエラーメッセージ。

    ルートを解決して、アプリケーションが存在するかどうかを確認してください。

    40020106

    指定された appkey とトークンが一致しないため返されるエラーメッセージ。

    アプリケーションの appkey が正しいか、トークンと同じ Alibaba Cloud アカウントに属しているかどうかを確認してください。

    40020503

    RAM ユーザー認証に失敗したため返されるエラーメッセージ。

    Alibaba Cloud アカウントを使用して、RAM ユーザーに pctowap open platform(POP)API へのアクセスを承認します。