#azure #microsoft-cognitive #speech #microsoft-speech-api #microsoft-speech-platform
#azure #microsoft-когнитивный #речь #microsoft-speech-api #microsoft-speech-platform
Вопрос:
В настоящее время я использую speech studio от micro soft для создания простого чат-бота. Для всех моих вопросов мне нужно добавить правило подтверждения, чтобы спросить, нужна ли им дополнительная помощь, чтобы добраться до места, которое они ищут. Однако после того, как он переходит к последней части речевой команды, он продолжает произносить речь 2 раза, а не только один раз. Например, для этого вопроса о том, где находится камера b, например, он произнесет речевой ответ дважды, а не только один раз, который он использовал для вывода всего 2 дня назад.
это моя команда подтверждения в студии речи, чтобы спросить, нужна ли им помощь, чтобы добраться до местоположения
это моя успешная команда, предполагающая, что пользователь говорит «да» на этапе подтверждения
Однако проблема возникла только вчера, когда я тестировал чат-бота. Я получил этот вывод во время тестирования: «Конечно, пожалуйста, следуйте за мной сейчас» дважды, а не только один раз, что мне было нужно. это то, что возникло на этапе тестирования. Как вы можете видеть, он сказал, что, пожалуйста, следуйте за мной сейчас 2 раза, а не только 1 раз, который мне был нужен
Ответ №1:
Спасибо, что обратились.
Конфигурация на скриншотах выглядит нормально.
Я создал пример подтверждения для проверки поведения, и я не смог воспроизвести это с помощью клиента Windows (то же самое, что вы использовали на своих скриншотах).
Вот пример приложения, которое вы можете импортировать, чтобы попробовать его.
{
"entityResolver": {
"searchConfiguration": {
"maxEdits": 0
},
"type": "internal",
"isGenerated": true
},
"minIntentConfidence": 0.4,
"highIntentConfidence": 0.8,
"lgTemplates": [
"# FallbackResponse",
"- Add your fallback message here",
"# TestCommand-MyNumber",
"- what number?",
"# TestCommand-27dfe650040311ebb2dccf4459b3ff8b",
"- confirmed.",
"# TestCommand-3228f4d0040311ebb2dccf4459b3ff8b",
"- denied.",
"# TestCommand-4ea19f40040311ebb2dccf4459b3ff8b",
"- sure?"
],
"type": "BaseLanguage",
"recognizer": {
"application": "",
"isStaging": false,
"versionId": "0.1",
"type": "luis"
},
"speechOutput": {
"font": "Microsoft Server Speech Text to Speech Voice (en-US, Aria24kRUS)",
"locale": "en-US"
},
"webEndpoints": [],
"globalParameters": [],
"commands": [
{
"name": "FallbackCommand",
"completionStrategy": "OnRequiredParameters",
"parameters": [],
"rules": [],
"completionRules": [
{
"name": "DefaultResponse",
"conditions": [
{
"type": "True"
}
],
"actions": [
{
"type": "SpeechResponse",
"response": {
"type": "Template",
"templateName": "# FallbackResponse"
}
}
],
"postExecutionState": "None"
}
],
"triggeringExamples": [
"> - You can start sentences with '>' to add comments.",
"> - You can also use parameters by adding the name of the parameter within curly braces, i.e.",
"> Set an alarm to {YourDateParameterName}",
"> Where YourDateParameterName is the name of a parameter defined in the 'Parameters' section.",
"Help",
"Help me",
"What can you do?",
"How can I start?",
"Hello",
"Hi"
],
"multiTurnExamples": []
},
{
"name": "TestCommand",
"completionStrategy": "OnRequiredParameters",
"parameters": [
{
"name": "MyNumber",
"type": {
"name": "Number"
},
"elicitResponse": {
"type": "Template",
"templateName": "# TestCommand-MyNumber"
}
}
],
"rules": [
{
"name": "Confirm command",
"conditions": [
{
"type": "AllRequiredParameters"
}
],
"actions": [
{
"type": "SpeechResponse",
"response": {
"type": "Template",
"templateName": "# TestCommand-4ea19f40040311ebb2dccf4459b3ff8b"
}
}
],
"nextTurnExpectations": [
{
"type": "Confirmation"
}
],
"postExecutionState": "WaitForInput"
},
{
"name": "Confirmation succeeded",
"conditions": [
{
"type": "SuccessfulConfirmation"
}
],
"actions": [
{
"type": "SpeechResponse",
"response": {
"type": "Template",
"templateName": "# TestCommand-27dfe650040311ebb2dccf4459b3ff8b"
}
}
],
"nextTurnExpectations": [],
"postExecutionState": "ReadyForCompletion"
},
{
"name": "Confirmation denied",
"conditions": [
{
"type": "DeniedConfirmation"
}
],
"actions": [
{
"type": "SpeechResponse",
"response": {
"type": "Template",
"templateName": "# TestCommand-3228f4d0040311ebb2dccf4459b3ff8b"
}
}
],
"nextTurnExpectations": [],
"postExecutionState": "CompleteCommand"
}
],
"completionRules": [
{
"name": "Done",
"conditions": [
{
"type": "True"
}
],
"actions": [],
"nextTurnExpectations": [],
"postExecutionState": "CompleteCommand"
}
],
"triggeringExamples": [
"number {MyNumber}",
"my number is {MyNumber}"
]
}
]
}
И вот пример вывода с помощью клиента Windows.
Надеюсь, это поможет! o.w. Если бы вы могли клонировать свое приложение и предоставить урезанную версию с ошибкой, и мы будем рады помочь вам в дальнейшем устранении неполадок.