El SDK de Android para reconocimiento de voz no en tiempo real Fun-ASR-Flash convierte el habla en texto.
Para formatos de audio admitidos, límites de tamaño de archivo, límites de duración y otros requisitos de entrada, consulte Especificaciones de audio.
Pase una cadena JSON al parámetro
Parámetros
Use
Parámetros
parámetros de messages:
parámetros de content:
Inicialice la instancia del SDK de reconocimiento de voz. El SDK utiliza un singleton. No lo inicialice nuevamente antes de llamar a
Parámetros
Use este método para establecer o actualizar
Parámetros
Iniciar el reconocimiento.
Firma del método
Parámetros
Esta función de reconocimiento de voz no en tiempo real solo admite solicitudes síncronas. Puede ignorar este método.
Cancelar inmediatamente la tarea actual.
Firma del método
Parámetros
Libere todos los recursos internos del SDK. Después de esta llamada, la instancia del SDK deja de estar disponible. Para usarla nuevamente, llame a
Obtener la versión actual del SDK.
Firma del método
Valor de retorno
La versión actual del SDK.
Firma del método
Parámetros
Este callback recibe registros internos detallados del SDK para resolución de problemas y depuración.
Inicio rápido
- Obtener una clave API: Obtener una clave API. Por seguridad, recomendamos configurar la clave API en una variable de entorno.
- Descargue el SDK y ejecute el código de ejemplo:
- Descargue el paquete más reciente del SDK.
- Extraiga el archivo ZIP. Obtenga el SDK en formato AAR de
app/libsy agréguelo a las dependencias de su proyecto. Para la integración Android CPP, useandroid_libsyandroid_includeen el archivo ZIP para obtener las bibliotecas dinámicas y los archivos de encabezado. - Abra el proyecto en Android Studio. El código de ejemplo se encuentra en
DashFunAsrFlashFileTranscriberActivity.java. Reemplace la clave de API para probar la función.
Procedimiento de llamada
Modo síncrono
- Inicializar el SDK
- Configure los parámetros según sus requisitos comerciales
-
Llame a
startFileTranscriberpara enviar una solicitud de reconocimiento de voz no en tiempo real y esperar el resultado. -
Use
onFileTransEventCallbackpara escuchar el eventoEVENT_FILE_TRANS_RESULTy obtener el resultado final del reconocimiento. -
Llame a
releasepara liberar los recursos del SDK
Parámetros de solicitud
Parámetros de conexión y control
Pase una cadena JSON al parámetro parameters del método initialize para configurar estos ajustes.
Ejemplo de parámetro: La siguiente cadena JSON es un ejemplo y no enumera todos los parámetros. Agregue parámetros según sea necesario en su código:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
url | String | Sí | Endpoints de servicio:
{WorkspaceId} con su ID de espacio de trabajo. |
apikey | String | Sí | Clave de API. |
service_mode | String | Sí | El modo de operación. Para el reconocimiento de voz no en tiempo real, establezca este parámetro en "1". |
device_id | String | Sí | Una cadena única que identifica al usuario final. Puede usar un ID de usuario dentro de la aplicación o un identificador de dispositivo único generado por el cliente. Este ID se utiliza principalmente para el rastreo de registros y la resolución de problemas. |
debug_path | String | No | La ruta para los archivos de registro. Este parámetro solo tiene efecto cuando llama a initialize con save_log establecido en true. En este caso, debe especificar la ruta del archivo de registro. De lo contrario, se producirá un error. Se conservan hasta dos archivos de registro localmente. |
max_log_file_size | int | No | El tamaño máximo del archivo de registro en bytes. Este parámetro solo tiene efecto cuando llama a initialize con save_log establecido en true. Valor predeterminado: 104857600 (100 * 1024 * 1024 bytes, o 100 MiB). |
log_track_level | int | No | El nivel de filtrado para los registros enviados a través del callback de registro (onFileTransLogTrackCallback). Valor predeterminado: 2. Valores válidos:
log_track_level y level (configurados a través del método initialize) determinan conjuntamente qué registros se entregan. El nivel numérico de un registro debe ser mayor o igual tanto a log_track_level como a level para que el registro se entregue. Por ejemplo, si log_track_level está establecido en 2 (INFO) y level está establecido en 3 (WARNING), solo se entregan registros de WARNING y de mayor severidad (nivel numérico >= 3). |
Parámetros de reconocimiento
Use startFileTranscriber para configurar todos los parámetros de reconocimiento.
Ejemplo de parámetro: La siguiente cadena JSON es un ejemplo y no enumera todos los parámetros. Agregue parámetros según sea necesario en su código:
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
apikey | string | No | Si Parámetros de conexión y control apikey utiliza una clave API temporal, puede actualizarla aquí para evitar su caducidad. |
nls_config | object | Sí | El objeto de configuración principal de reconocimiento de voz, que incluye el modelo y los parámetros que controlan el reconocimiento. |
nls_config.model | string | Sí | El nombre del modelo. |
nls_config.format | string | Sí | El formato de audio. Establezca este parámetro en el formato real. Los formatos admitidos incluyen wav, mp3, opus. Para más detalles, consulte Especificaciones de audio. |
nls_config.sample_rate | string | No | La frecuencia de muestreo de audio en Hz. Por ejemplo, 16000 indica una frecuencia de muestreo de 16 kHz. Para más detalles, consulte Especificaciones de audio. |
nls_config.vocabulary_id | string | No | El ID de vocabulario precompilado. Cree un vocabulario con antelación y pase su ID durante el reconocimiento para usar sus palabras clave. Use esta opción cuando el vocabulario es conocido, relativamente estable y se reutiliza en varias solicitudes. Para instrucciones de uso, consulte Palabras clave precompiladas. |
nls_config.language_hints | array[string] | No | Los códigos de idioma que se reconocerán. Si desconoce el idioma, omita este parámetro para que el modelo lo detecte automáticamente. Puede especificar hasta 1 valor. Si especifica más, solo los primeros 1 tendrán efecto.
Códigos de idioma admitidos
|
messages | array[object] | Sí | La lista de mensajes. Contiene el audio a reconocer y el contexto de conversación opcional para mejorar el reconocimiento.Consulte las siguientes descripciones. |
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
role | string | Sí | El rol del mensaje. Valores válidos:
|
content | array[object] | Sí | La lista de contenido de mensajes. Consulte las siguientes descripciones. |
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
type | string | Sí | El tipo de contenido. Cada solicitud requiere al menos un mensaje input_audio . Valores válidos:
|
input_audio | object | No | Requerido cuando type es input_audio. |
input_audio.data | string | Sí | Los datos de audio a reconocer. Para formatos de audio admitidos, límites de tamaño de archivo, límites de duración y otros requisitos de entrada, consulte Especificaciones de audio. Se admiten los siguientes dos métodos de entrada:
https://example.com/audio/sample.wavEjemplo (Base64): data:audio/wav;base64,{BASE64_ENCODED_DATA} |
text | string | No | Requerido cuando type es input_text, proporcione resultados de reconocimiento del habla del usuario de turnos anteriores o un vocabulario específico del dominio. Cuando type es text, proporcione respuestas del modelo de lenguaje grande de turnos anteriores. La longitud del texto se cuenta en caracteres, y cada carácter cuenta como uno. La longitud total de todos los campos text de los mensajes en cada turno de contexto no debe exceder 400 caracteres. Los caracteres excedentes se truncan desde el final. |
Interfaces clave
NativeNui
initialize
Inicialice la instancia del SDK de reconocimiento de voz. El SDK utiliza un singleton. No lo inicialice nuevamente antes de llamar a release.
Este método es bloqueante. Llámelo desde un hilo que no sea de UI.
Firma del método
| Parámetro | Tipo | Descripción |
|---|---|---|
callback | INativeFileTransCallback | La implementación de la interfaz de devolución de llamada de eventos y datos. |
parameters | String | Una cadena JSON que contiene parámetros de autenticación, conexión y depuración. Consulte Parámetros de conexión y control. |
level | Constants.LogLevel | El nivel de registros impresos por el SDK. |
save_log | boolean | Indica si se deben guardar los registros localmente. Si se establece en true, use Parámetros de conexión y control para establecer debug_path y especificar la ruta, y use max_log_file_size para establecer el tamaño del archivo. |
setParams
Use este método para establecer o actualizar nls_config por separado. No necesita llamar a este método si todos los parámetros se proporcionan en startFileTranscriber en una sola llamada.
Firma del método
| Parámetro | Tipo | Descripción |
|---|---|---|
params | String | Parámetros de reconocimiento en nls_config y parámetros de messages.Ejemplo: |
startFileTranscriber
Iniciar el reconocimiento.
Firma del método
| Parámetro | Tipo | Descripción |
|---|---|---|
params | String | Parámetros de reconocimiento. Ejemplo: |
task_id | byte[ ] | Puede ignorar este parámetro y pasar null. |
queryFileTranscriber
Esta función de reconocimiento de voz no en tiempo real solo admite solicitudes síncronas. Puede ignorar este método.
cancelFileTranscriber
Cancelar inmediatamente la tarea actual.
Firma del método
| Parámetro | Tipo | Descripción |
|---|---|---|
task_id | String | El ID de la tarea a cancelar, obtenido de EVENT_FILE_TRANS_UPLOADED. |
release
Libere todos los recursos internos del SDK. Después de esta llamada, la instancia del SDK deja de estar disponible. Para usarla nuevamente, llame a initialize para inicializarla de nuevo.
Firma del método
GetVersion
Obtener la versión actual del SDK.
Firma del método
INativeFileTransCallback: Callbacks
onFileTransEventCallback: Escuchar eventos y resultados de reconocimiento
Firma del método
| Parámetro | Tipo | Descripción |
|---|---|---|
event | NuiEvent | El evento de devolución de llamada. |
resultCode | int | Válido solo cuando ocurre el evento EVENT_ASR_ERROR. |
asrResult | AsrResult | El resultado del reconocimiento de voz. |
taskId | String | El ID de la tarea. |
arg2 | int | Reservado. |
onFileTransLogTrackCallback: Escuchar registros de rastreo
Este callback recibe registros internos detallados del SDK para resolución de problemas y depuración.
Tipos de eventos
| Evento | Descripción |
|---|---|
EVENT_FILE_TRANS_CONNECTED | Conectado correctamente al servicio. |
EVENT_FILE_TRANS_UPLOADED | El archivo de audio se cargó correctamente. Puede obtener el task_id actual en este punto. |
EVENT_FILE_TRANS_RESULT | El resultado final del reconocimiento. |
EVENT_ASR_ERROR | Ocurrió un error durante el reconocimiento de voz. |