Как Alexa обрабатывает точку и запятую (и другие знаки препинания)

#nlp #alexa

#nlp #alexa

Вопрос:

При написании намерения Alexa я считываю результаты из списка, и если запись соответствует критериям, я добавляю к ответу. Например:

 alist = ['Boston', 'New York', 'San Francisco', 'San Mateo', 'San Diego']
response = ''
for i in alist:
  if 'San' in i:
    response  = i   '. ' # <-- Here lies my question

print(response)
# San Francisco. San Mateo. San Diego
  

Как вы можете видеть, я использую «точку» для разделения моих ответов. Когда Alexa произносит ответ, я предполагаю, что у точки пауза немного длиннее, чем у «запятой», но я не смог найти никакой документации.

Будет ли Alexa делать паузу дольше или короче, если я использую comma вместо period ? Что, если это semicolon ?

Ответ №1:

На самом деле, пауза после знаков препинания примерно такая же, но Alexa произносит слова совсем по-другому. Например, тон совершенно другой. Она думает, что если есть точка, то это конец предложения, и ее тон ниже. Но если это запятая, то предложение еще не закончено, и тон слова выше.

Вы можете очень легко поиграть с голосом Alexa и выяснить это сами. В консоли разработчика Alexa перейдите на вкладку «Тест», затем выберите вкладку «Голос и тембр».

Вы можете прочитать о языке разметки синтеза речи Alexa (SSML) здесь: https://developer.amazon.com/docs/custom-skills/speech-synthesis-markup-language-ssml-reference.html