ASR API リファレンス
Shisa ASR API は、単一の JSON リクエストで base64 エンコードされた音声をテキストに変換します。このページでは、エンドポイント、リクエストパラメータ、成功レスポンス、エラー処理について説明します。
エンドポイント
POST https://api.shisa.ai/asr/srt/audio_llm
ASR 専用の shsk: プレフィックスを付けたベアラートークンで認証します:
Authorization: Bearer shsk:YOUR_API_KEY
リクエストボディは JSON で、サーバーはバイナリヘッダーから音声形式を自動検出します。
リクエストパラメータ
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
audio | string | 必須 | base64 エンコードされた音声データ(WAV、OGG、MP3、または FLAC)。 |
language | string | 任意 | 言語コード(例: "ja"、"en")。自動言語検出(LID)の場合は省略します。 |
hotwords | string[] | 任意 | ドメイン固有の用語の認識精度を高めるための単語/フレーズの配列。 |
temperature | float | 任意 | サンプリング温度。値を低くすると出力がより決定的になります。デフォルト: 0.0。 |
top_p | float | 任意 | Nucleus サンプリングパラメータ。出力の多様性を制御します。デフォルト: 0.85。 |
frequency_penalty | float | 任意 | 頻出トークンにペナルティを課して繰り返しを減らします。デフォルト: 0.5。 |
repetition_penalty | float | 任意 | トークンの繰り返しにペナルティを課します。1.0 を超える値は繰り返しを抑制します。デフォルト: 1.05。 |
vad | integer | 任意 | 音声区間検出モード。デフォルト: 1。 |
注記
必須なのは audio のみです。言語は自動検出され、チューニングパラメータには適切なデフォルト値が使用されます — クイックスタートに示されている最小限のリクエストを送信し、必要に応じてパラメータを追加できます。
成功レスポンス
成功したリクエストは、文字起こし、検出または指定された言語、信頼度スコアを含む JSON オブジェクトを返します:
{
"text": "こんにちは、シサAIです。",
"language": "ja",
"confidence": 0.98
}
| フィールド | 説明 |
|---|---|
text | 音声から文字起こしされたテキスト。 |
language | 検出または指定された言語コード。 |
confidence | 0 から 1 までの文字起こし信頼度スコア。 |
エラー処理
エラーは、HTTP スタイルの code と人間が読める error メッセージを含む JSON オブジェクトを返します:
{
"code": 400,
"error": "No audio data provided"
}
401 認証エラー
API キーが欠落、無効、または期限切れの場合に返されます。Authorization ヘッダーに shsk: プレフィックスを付けた有効なトークンが含まれていることを確認してください。
{
"context": ["authMiddleware"],
"code": 104,
"name": "ErrAuthenticationFailed",
"error": "Authentication error: Invalid token"
}
エラーコード
| Code | 原因 | エラーメッセージ |
|---|---|---|
| 400 | audio フィールドの欠落、または音声が空にデコードされる | No audio data provided |
| 400 | base64 エンコードされていない、または base64 デコードに失敗する | Invalid base64 audio data |
| 400 | サポートされていない音声形式 | Unsupported audio format |
| 500 | 文字起こしサービスが準備できていない | Transcription service not available |
| 500 | バックエンドの障害 | Transcription failed: ... |