Menentukan tingkat keyakinan akurasi tingkat kata

Anda dapat menentukan bahwa Cloud Speech-to-Text menunjukkan nilai akurasi, atau tingkat keyakinan, untuk setiap kata dalam transkripsi.

Keyakinan tingkat kata

Saat mentranskripsikan klip audio, Cloud Speech-to-Text juga mengukur tingkat akurasi respons. Respons yang dikirim dari Cloud STT menyatakan tingkat keyakinan untuk seluruh permintaan transkripsi sebagai angka antara 0,0 dan 1,0. Contoh kode berikut menunjukkan contoh nilai tingkat keyakinan yang ditampilkan oleh Cloud STT.

{
  "results": [
    {
      "alternatives": [
        {
          "transcript": "how old is the Brooklyn Bridge",
          "confidence": 0.96748614
        }
      ]
    }
  ]
}

Selain tingkat keyakinan seluruh transkripsi, Cloud STT juga dapat memberikan tingkat keyakinan setiap kata dalam transkripsi. Respons ini kemudian menyertakan detail WordInfo dalam transkripsi, yang menunjukkan tingkat keyakinan untuk setiap kata seperti yang ditunjukkan dalam contoh berikut.

{
  "results": [
    {
      "alternatives": [
        {
          "transcript": "how old is the Brooklyn Bridge",
          "confidence": 0.98360395,
          "words": [
            {
              "startOffset": "0s",
              "endOffset": "0.300s",
              "word": "how",
              "confidence": SOME NUMBER
            },
            ...
          ]
        }
      ]
    }
  ]
}

Mengaktifkan keyakinan tingkat kata dalam permintaan

Cuplikan kode berikut menunjukkan cara mengaktifkan keyakinan tingkat kata dalam permintaan transkripsi ke Cloud Speech-to-Text menggunakan file lokal dan jarak jauh.

Menggunakan file lokal

REST

Lihat endpoint API speech:recognize untuk mengetahui detail selengkapnya.

Untuk melakukan pengenalan ucapan sinkron, buat permintaan POST dan berikan isi permintaan yang sesuai. Berikut ini contoh permintaan POST yang menggunakan curl. Contoh ini menggunakan Google Cloud CLI untuk membuat token akses. Untuk mengetahui petunjuk tentang cara menginstal gcloud CLI, lihat panduan memulai.

Contoh berikut menunjukkan cara mengirim permintaan POST menggunakan curl, di mana isi permintaan mengaktifkan keyakinan tingkat kata.

curl -s -H "Content-Type: application/json" \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    https://speech.googleapis.com/v2/projects/{project}/locations/global/recognizers/{recognizers}:recognize \
    --data '{
    "config": {
        "features": {
            "enableWordTimeOffsets": true,
            "enableWordConfidence": true
        }
    },
    "uri": "gs://cloud-samples-tests/speech/brooklyn.flac"
}' > word-level-confidence.txt

Jika permintaan berhasil, server akan menampilkan kode status HTTP 200 OK dan respons dalam format JSON, yang disimpan ke file bernama word-level-confidence.txt.

{
  "results": [
    {
      "alternatives": [
        {
          "transcript": "how old is the Brooklyn Bridge",
          "confidence": 0.98360395,
          "words": [
            {
              "startOffset": "0s",
              "endOffset": "0.300s",
              "word": "how",
              "confidence": 0.98762906
            },
            {
              "startOffset": "0.300s",
              "endOffset": "0.600s",
              "word": "old",
              "confidence": 0.96929157
            },
            {
              "startOffset": "0.600s",
              "endOffset": "0.800s",
              "word": "is",
              "confidence": 0.98271006
            },
            {
              "startOffset": "0.800s",
              "endOffset": "0.900s",
              "word": "the",
              "confidence": 0.98271006
            },
            {
              "startOffset": "0.900s",
              "endOffset": "1.100s",
              "word": "Brooklyn",
              "confidence": 0.98762906
            },
            {
              "startOffset": "1.100s",
              "endOffset": "1.500s",
              "word": "Bridge",
              "confidence": 0.98762906
            }
          ]
        }
      ],
      "languageCode": "en-us"
    }
  ]
}

Python

Untuk mempelajari cara menginstal dan menggunakan library klien untuk Cloud STT, lihat library klien Cloud STT. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Cloud STT.

Untuk melakukan autentikasi ke Cloud STT, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

from google.cloud import speech_v1p1beta1 as speech

client = speech.SpeechClient()

speech_file = "resources/Google_Gnome.wav"

with open(speech_file, "rb") as audio_file:
    content = audio_file.read()

audio = speech.RecognitionAudio(content=content)

config = speech.RecognitionConfig(
    encoding=speech.RecognitionConfig.AudioEncoding.LINEAR16,
    sample_rate_hertz=16000,
    language_code="en-US",
    enable_word_confidence=True,
)

response = client.recognize(config=config, audio=audio)

for i, result in enumerate(response.results):
    alternative = result.alternatives[0]
    print("-" * 20)
    print(f"First alternative of result {i}")
    print(f"Transcript: {alternative.transcript}")
    print(
        "First Word and Confidence: ({}, {})".format(
            alternative.words[0].word, alternative.words[0].confidence
        )
    )

return response.results