HTTP / WebSocket Service

この項では態度認識の HTTP / WebSocket API について述べます。

接続情報

URL: https://air.mimi.fd.ai/v1/analyze
URL: wss://air.mimi.fd.ai/v1/analyze

概要

態度認識 API のプロトコルは HTTP および WebSocket です。

mimi の WebSocket APIサービス利用について詳しくは mimi WebSocket API サービス を参照ください。

リクエストのパラメータは HTTP リクエストヘッダとして送ってください。詳細については API Reference 態度認識を行う を参照してください。
態度認識は入力音声に対して、以下の4つの態度それぞれについてスコアを推定します。

  • 肯定・平叙 (agreement)
  • 否定 (disagreement)
  • 考え中 (stalling)
  • 疑問 (question)

実行結果は JSON 形式で返されます。応答の構成については、後述の"応答例"を参照してください。

入力音声中に発話が検知されなかった場合、および入力音声が極端に短い場合には、不正なデータとみなされエラーとなります。

認証

WebSocket APIサービスをご利用の際には実行したいサービスに対応するスコープ( スコープ一覧 )を指定して発行したアクセストークンが必要です。
mimi API Console 画面からの操作で取得するには トークンの取得 を参照ください。
APIの実行で取得するには 認証/認可操作 を参照ください。

クエリ文字列でのリクエスト

ブラウザ上での WebSocket API 利用など、HTTP ヘッダを指定できない環境では、クエリ文字列で実行時設定を指定できます。
クエリ文字列による HTTP ヘッダの代替 の記述を参照ください。

API Reference

態度認識 API の詳細な情報については、API Reference 態度認識を行う を参照ください。

実行

以下は cURL を利用した HTTP サービスの実行例です。

実行例

curl -X POST https://air.mimi.fd.ai/v1/analyze \
-H "Content-Type: audio/x-pcm;bit=16;rate=16000;channels=1" \
-H "Authorization: Bearer <accessToken>" \
--data-binary @/path/to/audio.raw

応答例

以下は、応答例とその構成内容についての簡易な説明です。応答結果の詳細については API Reference 態度認識を行う を参照してください。

この応答例では、スコアが最も高いラベル agreement が 項目 label の値になっていることが確認できます。

# レスポンス内容の要素
#    "type": 態度認識の型
#    "session_id": セッションID
#    "status": 態度認識結果のステータス
#    "response": 態度認識結果配列
#        "time_interval": 入力音声中で態度認識の対象となった区間の開始・終了時間
#           "start": 態度認識の対象となった区間の開始時間
#           "end": 態度認識の対象となった区間の終了時間
#        "label": 結果ラベル(スコアが最も大きかった態度クラスのラベル)
#        "scores": クラス別スコアの配列
#           "question": 疑問クラスのスコア
#           "stalling": 考え中クラスのスコア
#           "agreement": 同意クラスのスコア
#           "disagreement": 否定クラスのスコア

{
  "type": "air",
  "session_id": "12ab572a-df1c-11eb-a0c4-42010a92008e",
  "status": "recog-finished",
  "response": {
    "time_interval": {
      "start": 0,
      "end": 6270
    },
    "label": "agreement",
    "scores": {
      "question": 0.0012281100498512387,
      "stalling": 0.0003516068682074547,
      "agreement": 0.9984184503555298,
      "disagreement": 1.7658468323134002e-06
    }
  }
}