Fun-ASR-Flash 非リアルタイム音声認識 iOS SDK は、音声をテキストに変換します。
サポートされているオーディオ形式、ファイルサイズ制限、再生時間制限、その他の入力要件については、オーディオ仕様を参照してください。
これらの設定を構成するには、JSON 文字列を
パラメータ
パラメータ
messagesパラメータ:
contentパラメータ:
音声認識 SDK インスタンスを初期化します。SDK はシングルトンを使用します。
パラメータ
このメソッドを使用して、
パラメータ
認識を開始します。
メソッドシグネチャ
パラメータ
この非リアルタイム音声認識機能は同期リクエストのみをサポートしています。このメソッドは無視できます。
メソッドシグネチャ
パラメータ
現在のタスクを即座にキャンセルします。
メソッドシグネチャ
パラメータ
内部 SDK リソースをすべて解放し、進行中のすべてのタスクを強制的に停止します。この呼び出しの後、SDK インスタンスは使用できなくなります。再度使用するには、
現在のSDKバージョンを取得します。
メソッドシグネチャ
戻り値
現在の SDK バージョン。
メソッドシグネチャ
パラメータ
このコールバックは、トラブルシューティングとデバッグのために詳細な内部SDKログを受信します。
クイックスタート
- API キーの取得: API キーの取得
- SDKをダウンロードしてサンプルコードを実行します:
- 最新のSDKバンドルのダウンロード。
- ZIP アーカイブを抽出し、nuisdk.framework をプロジェクトに追加します。
- Build Phases → Link Binary With Libraries に nuisdk.xcframework を追加します。
- [General] → [Frameworks, Libraries, and Embedded Content] で、nuisdk.xcframework を [Embed & Sign] に設定します。
- Xcode でサンプルプロジェクトを開きます。サンプルコードは
DashFunAsrFlashFileTranscriberViewController.mにあります。API キーを置き換えて機能を試してください。
呼び出し手順
同期モード
- SDKを初期化する
- ビジネス要件に基づいてパラメータを設定する
-
nui_file_trans_startを呼び出して非リアルタイム音声認識リクエストを送信します。 -
onFileTransEventCallbackを使用してEVENT_FILE_TRANS_RESULTイベントをリッスンし、最終的な認識結果を取得します -
nui_releaseを呼び出してSDKリソースを解放する
リクエストパラメータ
接続および制御パラメータ
これらの設定を構成するには、JSON 文字列を nui_initialize メソッドの parameters パラメータに渡します。
パラメータ例:以下のJSON文字列は例であり、すべてのパラメータをリストしているわけではありません。必要に応じてコードにパラメータを追加してください。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
url | String | はい | サービスエンドポイント:
{WorkspaceId} を実際の ワークスペースID. |
apikey | String | はい | APIキー。 |
service_mode | String | はい | 動作モード。非リアルタイム音声認識の場合、このパラメータを"1"に設定します。 |
device_id | String | はい | エンドユーザーを識別する一意の文字列。アプリ内ユーザーIDまたはクライアント生成の一意のデバイス識別子を使用できます。このIDは主にログのトレースとトラブルシューティングに使用されます。 |
debug_path | String | いいえ | ログファイルのパス。このパラメータは、save_log を YES に設定して nui_initialize を呼び出した場合にのみ有効になります。この場合、ログファイルのパスを指定する必要があります。指定しない場合、エラーが発生します。ローカルには最大 2 つのログファイルが保持されます。 |
max_log_file_size | int | いいえ | ログファイルの最大サイズ(バイト単位)。このパラメータは、save_log を YES に設定して nui_initialize を呼び出した場合にのみ有効になります。デフォルト:104857600(100 * 1024 * 1024 バイト、または 100 MiB)。 |
log_track_level | int | いいえ | ログコールバック(onFileTransLogTrackCallback)を介して送信されるログのフィルタリングレベル。デフォルト:2。有効な値:
log_track_level と level(nui_initialize メソッドで設定)が共同で配信されるログを決定します。ログが配信されるには、ログの数値レベルが log_track_level と level の両方以上である必要があります。たとえば、log_track_level が 2(INFO)に設定され、level が 3(WARNING)に設定されている場合、WARNING 以上の重大度のログ(数値レベル >= 3)のみが配信されます。 |
認識パラメータ
nui_file_trans_start を使用してすべての認識パラメータを構成します。
パラメータ例:以下のJSON文字列は例であり、すべてのパラメータをリストしているわけではありません。必要に応じてコードにパラメータを追加してください。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
apikey | string | いいえ | 接続と制御のパラメータ apikeyで一時的なAPIキーを使用している場合、有効期限切れを防ぐためにここで更新できます。 |
nls_config | object | はい | 認識を制御するモデルとパラメータを含む、コア音声認識設定オブジェクト。 |
nls_config.model | string | はい | モデル名。 |
nls_config.format | string | はい | 音声形式。このパラメータを実際の形式に設定します。サポートされている形式には、wav、mp3、opusが含まれます。詳細については、音声仕様を参照してください。 |
nls_config.sample_rate | string | いいえ | 音声のサンプルレート(Hz単位)。たとえば、16000は16 kHzのサンプルレートを示します。詳細については、音声仕様を参照してください。 |
nls_config.vocabulary_id | string | いいえ | 事前コンパイルされた語彙のID。事前に語彙を作成し、認識時にそのIDを渡してホットワードを使用します。語彙が既知で、比較的安定しており、リクエスト間で再利用される場合にこのオプションを使用します。使用方法については、事前コンパイル済みホットワードを参照してください。 |
nls_config.language_hints | array[string] | いいえ | 認識する言語コードを指定します。事前に言語が不明な場合は省略すると、モデルが自動検出します。最大 1 個の値を指定でき、それ以上指定した場合は最初の 1 個だけが有効です。
サポートされている言語コード
|
messages | array[object] | はい | メッセージのリスト。認識する音声と、認識精度を向上させるためのオプションの会話コンテキストが含まれています。以下の説明を参照してください。 |
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
role | string | はい | メッセージのロール。有効な値:
|
content | array[object] | はい | メッセージコンテンツのリスト。以下の説明を参照してください。 |
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
type | string | はい | コンテンツタイプ。各リクエストには少なくとも1つの input_audio メッセージが必要です。有効な値:
|
input_audio | object | いいえ | typeがinput_audioの場合に必須。 |
input_audio.data | string | はい | 認識するオーディオデータ。サポートされているオーディオ形式、ファイルサイズ制限、再生時間制限、その他の入力要件については、 オーディオ仕様を参照してください。次の2つの入力方法がサポートされています:
https://example.com/audio/sample.wav例 (Base64): data:audio/wav;base64,{BASE64_ENCODED_DATA} |
text | string | いいえ | type が input_text の場合は必須で、前のターンのユーザー発話の認識結果またはドメイン固有の語彙を指定します。type が text の場合は、前のターンの大規模言語モデルの応答を指定します。テキスト長は文字数でカウントされ、各文字は1文字としてカウントされます。各コンテキストターンにおけるすべてのメッセージの text フィールドの合計長は 400 文字を超えてはなりません。超過した文字は末尾から切り捨てられます。 |
主要インターフェース
NeoNui
nui_initialize
音声認識 SDK インスタンスを初期化します。SDK はシングルトンを使用します。 nui_release を呼び出す前に再度初期化しないでください。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
parameters | char* | 認証、接続、およびデバッグパラメータを含むJSON文字列。接続と制御のパラメータを参照してください。 |
level | NuiSdkLogLevel | SDKによって出力されるログのレベル。 |
save_log | BOOL | ログをローカルに保存するかどうか。YESに設定した場合、接続と制御のパラメータを使用してdebug_pathを設定してパスを指定し、max_log_file_sizeを使用してファイルサイズを設定します。 |
nui_set_params
このメソッドを使用して、 nls_config を個別に設定または更新します。すべてのパラメータが1回の呼び出しで nui_file_trans_start に指定されている場合、このメソッドを呼び出す必要はありません。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
params | char* | nls_config内の認識パラメータおよびmessagesパラメータ。例: |
nui_file_trans_start
認識を開始します。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
params | char* | 認識パラメータ。例: |
task_id | char* | このパラメータは無視してnullを渡すことができます。 |
nui_file_trans_query
この非リアルタイム音声認識機能は同期リクエストのみをサポートしています。このメソッドは無視できます。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
task_id | char* | クエリを実行するタスクの ID。EVENT_FILE_TRANS_UPLOADED から取得します。 |
nui_file_trans_cancel
現在のタスクを即座にキャンセルします。
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
task_id | char* | EVENT_FILE_TRANS_UPLOADEDから取得した、キャンセルするタスクのID。 |
nui_release
内部 SDK リソースをすべて解放し、進行中のすべてのタスクを強制的に停止します。この呼び出しの後、SDK インスタンスは使用できなくなります。再度使用するには、nui_initialize を呼び出して再初期化してください。
メソッドシグネチャ
nui_get_version
現在のSDKバージョンを取得します。
メソッドシグネチャ
NeoNuiSdkDelegate:コールバック
onFileTransEventCallback:イベントと認識結果をリッスンする
メソッドシグネチャ
| パラメータ | 型 | 説明 |
|---|---|---|
nuiEvent | NuiCallbackEvent | コールバックイベント。 |
asr_result | char* | 音声認識結果。 |
task_id | char* | タスクID。 |
finish | BOOL | このターンの認識が完了したかどうか。 |
code | int | EVENT_ASR_ERROR イベントが発生した場合にのみ有効です。 |
onFileTransLogTrackCallback:トレースログをリッスンする
このコールバックは、トラブルシューティングとデバッグのために詳細な内部SDKログを受信します。
NuiCallbackEvent:イベントタイプ
| イベント | 説明 |
|---|---|
EVENT_FILE_TRANS_CONNECTED | サービスに正常に接続しました。 |
EVENT_FILE_TRANS_UPLOADED | 音声ファイルが正常にアップロードされました。この時点で現在のtask_idを取得できます。 |
EVENT_FILE_TRANS_RESULT | 最終認識結果。 |
EVENT_ASR_ERROR | 音声認識中にエラーが発生しました。 |