如何在 Google 语音 API 中显示单词级置信度分数
How to show Word Level Confidence Score in Google Speech API
我已将 Google 演讲 API 包含在 Cloud Functions 中。我想获得单词级别的置信度分数,所以我将 'enableWordConfidence' 设置为 true。出于某种原因,响应没有 return 单词级别的置信度分数。
我试过 de-DE 和 en-US 作为 languageCode,但都没有用。
这是来自 Google 的官方文档,但复制该代码并 运行 在云函数中也没有 return 单词级别的置信度。
https://cloud.google.com/speech-to-text/docs/word-confidence
代码如下:
const filePath = `gs://PATH_TO_AUDIO.flac`
const audio = {
uri: filePath,
};
const config = {
encoding: 'FLAC',
sampleRateHertz: 16000,
languageCode: languageCode,
enableSpeakerDiarization: true,
enableWordConfidence: true,
useEnhanced: true,
enableWordTimeOffsets: true,
enableAutomaticPunctuation: true,
};
if(languageCode == 'en-US') {
config.model = 'video'
}
const request = {
audio: audio,
config: config,
};
const client = new speech.SpeechClient();
return client
.longRunningRecognize(request)
.then(data => {
const operation = data[0];
return operation.promise();
}).then(data => {
const response = data[0];
if(response.results) {
return storeSegmentInMeeting(response.results, noteId);
} else {
return null;
}
}).catch(err => {
return console.error('ERROR:', err);
});
我希望得到每个单词的置信度分数,有什么想法吗?
好的,除非您切换到 "V1P1BETA" 版本的库,否则这可能无法正常工作。它具有更多功能,包括单词级别的置信度。我建议你试试看。
我不知道你是否已经这样做了,所以我分享这个以防万一。
你需要:
const speech = require('@google-cloud/speech').v1p1beta1;
我已将 Google 演讲 API 包含在 Cloud Functions 中。我想获得单词级别的置信度分数,所以我将 'enableWordConfidence' 设置为 true。出于某种原因,响应没有 return 单词级别的置信度分数。
我试过 de-DE 和 en-US 作为 languageCode,但都没有用。 这是来自 Google 的官方文档,但复制该代码并 运行 在云函数中也没有 return 单词级别的置信度。 https://cloud.google.com/speech-to-text/docs/word-confidence
代码如下:
const filePath = `gs://PATH_TO_AUDIO.flac`
const audio = {
uri: filePath,
};
const config = {
encoding: 'FLAC',
sampleRateHertz: 16000,
languageCode: languageCode,
enableSpeakerDiarization: true,
enableWordConfidence: true,
useEnhanced: true,
enableWordTimeOffsets: true,
enableAutomaticPunctuation: true,
};
if(languageCode == 'en-US') {
config.model = 'video'
}
const request = {
audio: audio,
config: config,
};
const client = new speech.SpeechClient();
return client
.longRunningRecognize(request)
.then(data => {
const operation = data[0];
return operation.promise();
}).then(data => {
const response = data[0];
if(response.results) {
return storeSegmentInMeeting(response.results, noteId);
} else {
return null;
}
}).catch(err => {
return console.error('ERROR:', err);
});
我希望得到每个单词的置信度分数,有什么想法吗?
好的,除非您切换到 "V1P1BETA" 版本的库,否则这可能无法正常工作。它具有更多功能,包括单词级别的置信度。我建议你试试看。
我不知道你是否已经这样做了,所以我分享这个以防万一。
你需要:
const speech = require('@google-cloud/speech').v1p1beta1;