Configurable output data formats
Configurable core domains of a speech processing system are described. A core domain output data format for a given command is originally configured with default content portions. When a user indicates additional content should be output for the command, the speech processing system creates a new output data format for the core domain. The new output data format is user specific and includes both default content portions as well as user preferred content portions.
1. A computer-implemented method, comprising:
receiving, from a device, first audio data corresponding to an utterance;
performing speech on the audio data to determine a command;
determining a category of content associated with the command;
determining a default content type associated with the category;
identifying a user profile associated with the first audio data;
determining, using the user profile, a non-default content type associated with the category;
generating an output data format including a first portion to be populated with the default content type and a second portion to be populated with the non-default content type;
receiving, from a first content source, first text data associated with the default content type;
populating the first portion with the first text data;
receiving, from a second content source, second text data associated with the non-default content type;
populating the second portion with the second text data;
performing text-to-speech (TTS) processing on the output data format, populated with the first text data and the second text data, to generate second audio data; and
causing the device to output audio corresponding to the second audio data.
2. The computer-implemented method of claim 1 ,
further comprising:
storing, in the user profile, the output data format;
receiving, from the device, third audio data corresponding to a second utterance;
performing speech processing on the third audio data to determine a second command;
determining the category is associated with the second command;
based at least in part on the category being associated with the second command, identifying the output data format in the user profile;
receiving, from the first content source, third text data associated with the default content type;
populating the first portion with the third text data;
receiving, from the second content source, fourth text data associated with the non-default content type;
populating the second portion with the fourth text data; and
performing TTS processing on the data format, populated with the third text data and the fourth text data, to generate fourth audio data; and
causing the device to output the data format populated with the third data and the fourth data.
3. The computer-implemented method of claim 1 , further comprising:
determining, in the user profile and associated with the category, a first indicator representing a first type of information; and
determining, in the user profile and associated with the category, a second indicator representing a second type of information, the first indicator and the second indicator being used by the first content source to determine the first text data.
4. The computer-implemented method of claim 1 , further comprising:
determining the category is absent from the user profile;
determining a second output data format including the first portion but not including the second portion;
performing, using the second output data format, TTS processing on the first text data to generate third audio data; and
causing the device to output second audio corresponding to the third audio data.
5. A system, comprising:
at least one processor; and
at least one memory including instructions that, when executed by the at least one processor, cause the system to:
receive text data representing a command;
determine, based at least in part on the text data, a first content source associated with the command, the first content source configured to provide a first type of content;
identify a user profile associated with the text data;
determine, based at least in part on the user profile, a second content source associated with the command, the second content source configured to provide a second type of content different from the first type of content;
generate an output data format including a first data field to be populated with data received from the first content source and a second data field to be populated with data received from the second content source;
receive first data from the first content source;
associate the first data with the first data field;
receive second data from the second content source;
associate the second data with the second data field; and
cause a device to output data corresponding to the output data format, the output data including the first data and the second data.
6. The system of claim 5 , wherein the at least one memory further includes instructions that, when executed by the at least one processor, further cause the system to:
perform natural language understanding (NLU) processing on the text data to generate NLU results; and
determine the command based at least in part on the NLU results.
7. The system of claim 5 , wherein the at least one memory further includes instructions that, when executed by the at least one processor, further cause the system to:
receive second text data representing a second command; and
determine, in the user profile, a second output data format associated with the second command, the second output data format including a third data field configured based at least in part on system preferences and a fourth data field configured based at least in part on user preferences.
8. The system of claim 5 , wherein the at least one memory further includes instructions that, when executed by the at least one processor, further cause the system to:
send, to the second content source, an indicator representing the second type of content, the second content source using the indicator to determine the second data.
9. The system of claim 8 , wherein the at least one memory further includes instructions that, when executed by the at least one processor, further cause the system to:
identify the indicator in the user profile.
10. The system of claim 5 , wherein the at least one memory further includes instructions that, when executed by the at least one processor, further cause the system to:
store the output data format in the user profile;
associate, in the user profile, the first data field with the first content source; and
associate, in the user profile, the second data field with the second content source.
11. The system of claim 5 , wherein the at least one memory further includes instructions that, when executed by the at least one processor, further cause the system to:
determine a change in a user location; and
generate the text data based at least in part on determining the change.
12. The system of claim 11 , wherein the at least one memory further includes instructions that, when executed by the at least one processor, further cause the system to:
determine the change has occurred in conjunction with the command a number of times over a period of time;
determine the number of times satisfies a threshold number of times; and
associate, in the user profile, the change with the command.
13. A computer-implemented method, comprising:
receiving text data representing a command;
determining, based at least in part on the text data, a first content source associated with the command the first content source configured to provide a first type of content;
identifying a user profile associated with the text data;
determining, based at least in part on the user profile, a second content source associated with the command, the second content source configured to provide a second type of content different from the first type of content;
generating an output data format including a first data field to be populated with data received from the first content source and a second data field to be populated with data received from the second content source;
receiving first data from the first content source;
associating the first data with the first data field;
receiving second data from the second content source;
associating the second data with the second data field; and
causing a device to output data corresponding to the output data format, the output data including the first data and the second data.
14. The computer-implemented method of claim 13 , further comprising:
performing natural language understanding (NLU) on the text data to generate NLU results; and
determining the command based at least in part on the NLU results.
15. The computer-implemented method of claim 13 , further comprising:
receiving second text data representing a second command; and
determining, in the user profile, a second output data format associated with the second command, the second output data format including a third data field configured based at least in part on system preferences and a fourth data field configured based at least in part on user preferences.
16. The computer-implemented method of claim 13 , further comprising:
sending, to the second content source, an indicator representing the second type of content, the second content source using the indicator to determine the second data.
17. The computer-implemented method of claim 16 , further comprising:
identifying the indicator in the user profile.
18. The computer-implemented method of claim 13 , further comprising:
storing the output data format in the user profile;
associating, in the user profile, the first data field with the first content source; and
associating, in the user profile, the second data field with the second content source.
19. The computer-implemented method of claim 13 , further comprising:
determining a change in a user location; and
generating the text data based at least in part on determining the change.
20. The computer-implemented method of claim 19 , further comprising:
determining the change has occurred in conjunction with the command a number of times over a period of time;
determining the number of times satisfies a threshold number of times; and
associating, in the user profile, the change with the command.