The invention claimed is:
1. An apparatus comprising at least one processor and at least one non-transitory memory comprising program code, the at least one non-transitory memory and the program code configured to, the at least one processor, cause the apparatus to at least:
receive a first natural language query from a client device;
generate, based at least in part on the first natural language query, one or more semantic frames;
retrieve, based at least in part on the one or more semantic frames, a multi-dimensional dataset comprising one or more multi-dimensional data objects each placed in a feature space of a plurality of feature spaces, wherein each feature space comprises one or more dimensions corresponding to categorical data;
generate, based at least in part on the one or more semantic frames, an expected structure of a resulting multi-dimensional data object and a first analytic operation query to be performed on the resulting multi-dimensional data object, wherein the first analytic operation query defines at least one analytic operation type of a plurality of analytic operation types;
generate, based at least in part on executing the first analytic operation query on the resulting multi-dimensional data object, insights associated with data represented by the resulting multi-dimensional data object;
generate a first natural language response to the first natural language query based at least in part on the insights;
convert the first natural language response from text to audio output; and
transmit the audio output of the first natural language response to the client device.
2. The apparatus of claim 1 , wherein the first analytic operation query further defines at least one query parameter.
3. The apparatus of claim 2 , wherein the at least one query parameter corresponds to a dimension instance in a feature space of the plurality of feature spaces associated with the multi-dimensional dataset.
4. The apparatus of claim 2 , wherein the at least one analytic operation type comprises one or more of a filtering operation, a grouping operation, or a variance operation.
5. The apparatus of claim 3 , wherein the feature space comprises a corresponding measure representing numerical data that a given multi-dimensional data object represents.
6. The apparatus of claim 1 , wherein the at least one non-transitory memory and the program code configured to, with the at least one processor, cause the apparatus to further:
select a narrative function script based at least in part on the first natural language query; and
generate the first natural language response further based at least in part on the narrative function script.
7. The apparatus of claim 1 , wherein, subsequent to transmitting the first natural language response to the client device, the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to further:
update contextual data stored in a discourse model based at least in part on the first natural language query and the first natural language response;
receive a second natural language query from the client device;
generate, based at least in part on the second natural language query and the contextual data, a second analytic operation query associated with the multi-dimensional dataset;
generate, based at least in part on the multi-dimensional dataset and executing the second analytic operation query, a second multi-dimensional data object;
generate a second natural language response to the second natural language query based at least in part on the second multi-dimensional data object; and
transmit the second natural language response to the client device.
8. The apparatus of claim 7 , wherein, when generating the second analytic operation query, the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to further:
generate at least one inferred query parameter based at least in part on the second natural language query and the contextual data.
9. The apparatus of claim 8 , wherein, when generating the second multi-dimensional data object, the at least one non-transitory memory and the program code are configured to, with the at least one processor, cause the apparatus to further:
generate the second multi-dimensional data object based at least in part on the at least one inferred query parameter.
10. A computer-implemented method comprising:
receiving a first natural language query from a client device;
generating, based at least in part on the first natural language query, one or more semantic frames;
retrieving, based at least in part on the one or more semantic frames, a multi-dimensional dataset comprising one or more multi-dimensional data objects each placed in a feature space of a plurality of feature spaces, wherein each feature space comprise one or more dimensions corresponding to categorical data;
generating, based at least in part on the one or more semantic frames, an expected structure of a resulting multi-dimensional data object and a first analytic operation query to be performed on the resulting multi-dimensional data object, wherein the first analytic operation query defines at least one analytic operation type of a plurality of analytic operation types;
generating, based at least in part on executing the first analytic operation query on the resulting multi-dimensional data object, insights associated with data represented by the resulting multi-dimensional data object;
generating a first natural language response to the first natural language query based at least in part on the insights;
converting the first natural language response from text to audio output; and
transmitting the audio output of the first natural language response to the client device.
11. The computer-implemented method of claim 10 , wherein the first analytic operation query further defines at least one query parameter.
12. The computer-implemented method of claim 11 , wherein the at least one query parameter corresponds to a dimension instance in a feature space of the plurality of feature spaces associated with the multi-dimensional dataset.
13. The computer-implemented method of claim 11 , wherein the at least one analytic operation type comprises one or more of a filtering operation, a grouping operation, or a variance operation.
14. The computer-implemented method of claim 11 , wherein the feature space comprises a corresponding measure representing numerical data that a given multi-dimensional data object represents.
15. The computer-implemented method of claim 10 , further comprising:
selecting a narrative function script based at least in part on the first natural language query; and
generating the first natural language response further based at least in part on the narrative function script.
16. The computer-implemented method of claim 10 , wherein, subsequent to transmitting the first natural language response to the client device, the computer-implemented method further comprises:
updating contextual data stored in a discourse model based at least in part on the first natural language query and the first natural language response;
receiving a second natural language query from the client device;
generating, based at least in part on the second natural language query and the contextual data, a second analytic operation query associated with the multi-dimensional dataset;
generating a second multi-dimensional data object based at least in part on the multi-dimensional dataset and executing the se