All Products
Search
Document Center

OpenSearch:Pengenalan suara

Last Updated:Aug 06, 2025

Platform Open AI Search mendukung pemanggilan layanan pengenalan suara melalui API. Layanan ini dapat mengonversi konten suara dalam video atau audio menjadi teks terstruktur dan digunakan untuk skenario seperti pencatatan rapat, pengambilan video, serta layanan pelanggan online.

Daftar layanan

Nama layanan

ID Layanan (service_id)

Deskripsi layanan

Batas QPS panggilan API (termasuk Akun Alibaba Cloud dan Pengguna RAM)

Layanan pengenalan suara

ops-audio-asr-001

Mengekstrak informasi audio untuk menghasilkan file subtitle.

5

Catatan

Untuk mengajukan QPS yang lebih tinggi, kirimkan tiket.

  • Informasi otentikasi diperoleh.

    Saat memanggil layanan Platform Open AI Search menggunakan API, Anda perlu mengotentikasi identitas pemanggil.

  • Alamat akses layanan diperoleh.

    Anda dapat memanggil layanan melalui Internet atau virtual private cloud (VPC). Untuk informasi lebih lanjut, lihat Dapatkan Alamat Pendaftaran Layanan.

Buat tugas pengenalan suara asinkron

Metode Permintaan: POST

URL

POST {host}/v3/openapi/workspaces/{workspace_name}/audio-asr/{service_id}/async 
  • workspace_name: Nama ruang kerja, seperti default.

  • service_id: ID layanan bawaan di sistem, seperti ops-audio-asr-001.

Parameter permintaan

Parameter header

Otentikasi API-KEY

Parameter

Tipe

Diperlukan

Deskripsi

Nilai contoh

Content-Type

String

Ya

Jenis permintaan: application/json

application/json

Authorization

String

Ya

API-Key

Bearer OS-d1**2a

Parameter body

Parameter

Tipe

Diperlukan

Deskripsi

input

Object(input)

Ya

Menentukan file multimedia yang akan diproses.

parameters

Object

Tidak

Menentukan parameter untuk layanan.

output

Object(output)

Ya

Mengontrol output.

input

Parameter

Tipe

Diperlukan

Deskripsi

content

String

Tidak

Data encoding Base64 dari konten video/audio.

Format audio yang didukung termasuk mp3, wav, aac, flac, ogg, m4a, alac, dan wma.

Format video yang didukung termasuk mp4, avi, mkv, mov, flv, dan webm.

Catatan

Parameter input.content dan input.oss saling eksklusif. Anda hanya dapat memilih salah satu dari mereka.

Menggunakan data BASE64: Kirimkan data BASE64 yang telah dienkoding ke parameter content dalam format data:<TYPE>/<FORMAT>;base64,<BASE64_DATA>, dimana:

  • <TYPE>/<FORMAT>

    • Untuk audio (seperti MP3), isi audio/mp3.

    • Untuk video (seperti MOV), isi video/mov.

  • <BASE64_DATA>: Data BASE64 yang dienkoding dari audio atau video.

Contoh:

  • Audio: data:audio/mp3;base64,AAAAIGZ0eXBtcDQyAAABAGlzbWZj...

  • Video: data:video/mov;base64,AAAAIGZ0eXBtcDQyAAABAGlzbWZj...

oss

String

Tidak

Path OSS dari file input, misalnya oss://<BUCKET_NAME>/xxx/xxx.mp3.

file_name

String

Tidak

Nama file video/audio. Jika tidak disetel, itu akan diurai dari nama file dalam konten.

output

Parameter

Tipe

Diperlukan

Deskripsi

type

String

Tidak

text: Mengembalikan hasil pengenalan suara dalam bentuk teks, hanya didukung dalam pemanggilan tugas sinkron.

oss: File audio disimpan di OSS (default).

oss

String

Tidak

Path OSS dari file output. Ini harus diisi saat type adalah oss.

Contoh: oss://<BUCKET_NAME>/result

Parameter respons

Parameter

Tipe

Deskripsi

Nilai contoh

result.task_id

String

ID pengenal unik dari tugas pengenalan suara.

asr-xxxx-abc-123

Contoh permintaan Curl

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <Your API-KEY>" \
  "http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/audio-asr/ops-audio-asr-001/async"
  --data '{
  "input":{
      "oss":"oss://<BUCKET_NAME>/xxx/xxx.mp3",
      "file_name":"xxx"
    },
    "output" :{
      "type":"oss",
      "oss":"oss://<BUCKET_NAME>/result"
    }
  }' \ 

Respons sampel

{
  "request_id":"3eb8de02091b59431601f3bff******",
   "latency":37,
   "usage":{},
   "result":{
         "task_id":"asr-20250610164552-1108418170738252-******",
         "status":"PENDING"
             }
}

Dapatkan status tugas pengenalan suara asinkron

Metode Permintaan: GET

URL

{host}/v3/openapi/workspaces/{workspace_name}/audio-asr/{service_id}/async/task-status?task_id={task_id}
  • host: Alamat untuk memanggil layanan. Panggil layanan API melalui Internet atau VPC. Untuk informasi lebih lanjut, lihat Dapatkan Alamat Pendaftaran Layanan.

  • workspace_name: Nama ruang kerja, seperti default.

  • service_id: ID layanan bawaan di sistem, seperti ops-audio-asr-001.

  • task_id: Pengidentifikasi tugas dalam parameter return dari pembuatan tugas pengenalan suara asinkron.

Parameter permintaan

Parameter

Tipe

Diperlukan

Deskripsi

Contoh

Content-Type

String

Ya

Jenis permintaan: application/json

application/json

Authorization

String

Ya

API-Key

Bearer OS-d1**2a

Parameter respons

Parameter

Tipe

Deskripsi

Contoh

request_id

String

ID permintaan.

3C09570D-12DB-46B4-BF0F-A100D79B****

latency

Float/Int

Latensi permintaan dalam ms.

3.0

result.task_id

String

ID tugas asinkron.

a7e4c0f6-874c-47e3-b05b-02278a96e****

result.status

String

Status tugas:

  • PENDING: Menunggu untuk diproses.

  • SUCCESS: Tugas berhasil diselesaikan.

  • FAIL: Tugas gagal dan dihentikan.

PENDING

result.error

String

Pesan kesalahan ketika status=FAIL. Kosong dalam kondisi normal.

result.data

List(AsrResult)

Hasil pengenalan suara. Bidang ini kosong ketika status tugas asinkron belum selesai dengan sukses (SUCCESS).

usage.duration

Float.duration

Durasi file audio.

AsrResult

Parameter

Tipe

Deskripsi

text

String

Data teks yang diperoleh dari pengenalan suara.

start

Float

Timestamp awal teks saat ini dalam video, dalam detik.

end

Float

Timestamp akhir dari teks saat ini dalam video, dalam detik.

Contoh permintaan Curl

curl -X GET \
-H"Content-Type: application/json" \
-H "Authorization: Bearer <Your API-KEY>" \
"http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/audio-asr/ops-audio-asr-001/async/task-status?task_id=asr-20250618112151-1108418170738252-******" 
 

Respons sampel

{
  "request_id": "1a1a4ca4b7a91dd630a40c54af******",
  "latency": 9,
  "usage": {
    "duration": 9
  },
  "result": {
    "task_id": "asr-20250618112151-1108418170738252-******",
    "status": "SUCCESS",
    "data": [
      {
        "text": "Rong Jielvdou mulai berbicara, suaranya sehangat matahari musim semi,",
        "start": 0.0,
        "end": 3.9
      },
      {
        "text": "penuh kehidupan dan menghangatkan hati semua orang yang mendengarkannya.",
        "start": 4.24,
        "end": 9.06
      }
    ]
  }
}

Buat tugas pengenalan suara sinkron

Metode Permintaan: POST

URL

{host}/v3/openapi/workspaces/{workspace_name}/audio-asr/{service_id}/sync
  • host: Alamat untuk memanggil layanan. Anda dapat memanggil layanan API melalui Internet atau VPC. Untuk informasi lebih lanjut, lihat Dapatkan Alamat Pendaftaran Layanan.

  • workspace_name: Nama ruang kerja, seperti default.

  • service_id: ID layanan bawaan di sistem, seperti ops-audio-asr-001.

Parameter permintaan

Parameter header

Otentikasi API-KEY

Parameter

Tipe

Diperlukan

Deskripsi

Nilai contoh

Content-Type

String

Ya

Jenis permintaan: application/json

application/json

Authorization

String

Ya

API-Key

Bearer OS-d1**2a

Parameter body

Parameter

Tipe

Diperlukan

Deskripsi

input

Object(input)

Ya

Menentukan file multimedia yang akan diproses.

parameters

Object

Tidak

Menentukan parameter untuk layanan.

output

Object(output)

Ya

Mengontrol output.

input

Parameter

Tipe

Diperlukan

Deskripsi

content

String

Tidak

Data encoding Base64 dari konten video/audio.

Format audio yang didukung termasuk mp3, wav, aac, flac, ogg, m4a, alac, dan wma.

Format video yang didukung termasuk mp4, avi, mkv, mov, flv, dan webm.

Catatan

Parameter input.content dan input.oss saling eksklusif. Anda hanya dapat memilih salah satu dari mereka.

Menggunakan data BASE64: Kirimkan data BASE64 yang telah dienkoding ke parameter content dalam format data:<TYPE>/<FORMAT>;base64,<BASE64_DATA>, dimana:

  • <TYPE>/<FORMAT>

    • Untuk audio (seperti MP3), isi audio/mp3.

    • Untuk video (seperti MOV), isi video/mov.

  • <BASE64_DATA>: Data BASE64 yang dienkoding dari audio atau video.

Contoh:

  • Audio: data:audio/mp3;base64,AAAAIGZ0eXBtcDQyAAABAGlzbWZj...

  • Video: data:video/mov;base64,AAAAIGZ0eXBtcDQyAAABAGlzbWZj...

oss

String

Tidak

Path OSS dari file input, misalnya oss://<BUCKET_NAME>/xxx/xxx.mp3.

file_name

String

Tidak

Nama file video/audio. Jika tidak disetel, itu akan diurai dari nama file dalam konten.

Output

Parameter

Tipe

Diperlukan

Deskripsi

type

String

Tidak

text: Mengembalikan hasil pengenalan suara dalam bentuk teks. Hanya mendukung panggilan sinkron.

oss: File video/audio disimpan di OSS (default).

oss

String

Tidak

Path OSS dari file output. Ini harus diisi ketika type adalah oss.

Contoh: oss://<BUCKET_NAME>/result

Parameter respons

Parameter

Tipe

Deskripsi

Nilai contoh

result.task_id

String

ID pengenal unik dari tugas pengenalan suara.

asr-xxxx-abc-123

Contoh permintaan Curl

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <Your API-KEY>" \
  "http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/audio-asr/ops-audio-asr-001/sync"
  --data '{
  "input":{
      "oss":"oss://<BUCKET_NAME>/xxx/xxx.mp3",
      "file_name":"xxx"
    },
    "output" :{
      "type":"oss",
      "oss":"oss://<BUCKET_NAME>/result"
    }
  }' \ 

Respons sampel

{
  "request_id": "df96b5c444281e0e79561fe9f8******",
  "latency": 570,
  "usage": {
    "duration": 9
  },
  "result": {
    "task_id": "asr-20250618132401-1108418170738252-******",
    "status": "SUCCESS",
    "data": [
      {
        "text": "Rong Jielvdou mulai berbicara, suaranya sehangat matahari musim semi,",
        "start": 0.0,
        "end": 3.9
      },
      {
        "text": "penuh kehidupan dan menghangatkan hati semua orang yang mendengarkannya.",
        "start": 4.24,
        "end": 9.06
      }
    ]
  }
}

Deskripsi kode status

Dalam kasus kesalahan permintaan, hasil output akan menunjukkan alasan kesalahan melalui kode dan pesan.

{
    "request_id": "6F33AFB6-A35C-4DA7-AFD2-9EA16CCF****",
    "latency": 2.0,
    "code": "InvalidParameter",
    "http_code": 400,
    "message": "JSON parse error: Cannot deserialize value of type `ImageStorage` from String \\"xxx\\"
}

Kode status HTTP

Kode kesalahan

Deskripsi

200

-

Permintaan berhasil, termasuk skenario kegagalan tugas. Status tugas aktual perlu ditentukan dari result.status.

404

BadRequest.TaskNotExist

Pesan kesalahan dikembalikan karena tugas tidak ada.

400

InvalidParameter

Permintaan Tidak Valid.

500

InternalServerError

Kesalahan internal.

Untuk informasi lebih lanjut tentang kode status, lihat Deskripsi Kode Status.