Speech Grammar

From LinuxMCE
Jump to: navigation, search

I believe it is important, that we strive for continuous processing of utterances. We should design the systems, and the requirements with this in mind, with no compromise on this goal. Otherwise, we will have honestly missed the point of this whole exercise in the first place.

With that said, homes live in a constant flow of noise, from transient filterable noises like fans, and refrigerator coils, to media being played in rooms, to people in the house NOT talking to the computer.

It is important that we establish a method of imposing modality that can deal with the above issues, and more.

Addressing the System

The system needs a name. Plain and simple. It needs to know we are talking to it, and it needs to be able to distinguish this name from the rest of the members of the house. It may very well behoove us to provide functionality to give the house computer a name and to be able to train it as part of the grammar model.

I use <COMPUTER> here as a stand-in name.

  • <COMPUTER>, Turn on the lights. (explicit set state) ... wait for lights ... Thank you.
  • <COMPUTER>, Lights. (implicit toggle) ... wait for lights ... Thanks.
  • <COMPUTER>, Reading Light. (explicit target) ... wait for light ... Appreciate it.
  • <COMPUTER>, TV. Comedy Central ... wait for TV... Thank you...
  • <COMPUTER>, Are there any security alerts for the last week? "Yes." Show them on my tablet. Any from the week before? "Yes." Show them... Thank you.
  • <COMPUTER>, Dial 617319... nevermind, forget that. Thank you.

(a note here: right now the last statement implies a global return to modelessness with the "thank you" immediately after. It is worth noting, that such words should normally only remove the last constraint on the current interrogative or declarative utterance.)

Now, look what we've done here. We've established a definite way to frame modality, based on polite human conversation. It's natural, and absolutely imperative that we build our grammatical constructs in this manner because it provides a clear way to add additional constraints onto a declarative or interrogative.

The last statement is especially important, because it shows a way to remove a constraint, or zoom out of what you're wanting to do, or to forget the entire declarative or interrogative altogether. It's a way to scribble over the last thing.

The final open ended exception here would be a short timeout, with spoken prompt of "is that all?" to which "Yes" or "No. <additional constraints>" would be answered.

More notes to come, but I needed to get this aspect written while it was in my head. --Tschak909 00:30, 12 November 2010 (CET)