Как я могу изменить язык при бинг речи у бота
Я использую Bing речь в Botframeowrk, как показано ниже:
var speechOptions =
{
speechRecognizer: new CognitiveServices.SpeechRecognizer(
{
subscriptionKey: 'YOUR_COGNITIVE_SPEECH_API_KEY'
}),
speechSynthesizer: new CognitiveServices.SpeechSynthesizer(
{
subscriptionKey: 'YOUR_COGNITIVE_SPEECH_API_KEY',
gender: CognitiveServices.SynthesisGender.Female,
voiceName: 'Microsoft Server Speech Text to Speech Voice (en-US, JessaRUS)'
})
}
Я хочу изменить язык с "en-us" на какой-то другой язык, есть ли варианты, которые я должен добавить, например, lang: "it-it".
А также есть ли способ, которым я могу менять языки в зависимости от того, на каком языке говорит пользователь?
1 ответ
Есть 2 различных элемента: голосовой ввод (SpeechRecognizer) и голосовой вывод (SpeechSynthesizer)
SpeechRecognizer
Есть необязательный locale
параметр, который вы можете передать, как вы передаете subscriptionKey
см. источники:
export interface ICognitiveServicesSpeechRecognizerProperties {
locale?: string,
subscriptionKey?: string,
fetchCallback?: (authFetchEventId: string) => Promise<string>,
fetchOnExpiryCallback?: (authFetchEventId: string) => Promise<string>
}
Существует запасной вариант, если он не предоставлен ( источник):
const locale = properties.locale || 'en-US';
SpeechSynthesizer
использование gender
а также voiceName
параметры ( источники):
export interface ICognitiveServicesSpeechSynthesisProperties {
subscriptionKey?: string,
gender?: SynthesisGender,
voiceName?: string,
fetchCallback?: (authFetchEventId: string) => Promise<string>,
fetchOnExpiryCallback?: (authFetchEventId: string) => Promise<string>
}
Список возможных значений этих параметров приведен здесь: https://docs.microsoft.com/en-us/azure/cognitive-services/speech/api-reference-rest/bingvoiceoutput