The Conversational Module of the Data Analyst Assistant facilitates the process of extracting the correct information, allowing the end user to interact with the data in a fluid and natural conversational manner. Before making a final query, the user can check glossary terms, learn about the assistant's capabilities, or review the structure of the data according to the metadata. This preparation enables more precise questions to be formulated and then sent for analysis and final presentation.
The module improves the user experience by simplifying data interaction and eliminating the need for technical query knowledge. It makes data access more inclusive and efficient by automating query generation, which saves time and reduces manual effort. This streamlined approach facilitates quicker, more accurate data analysis.
Once activated, the Conversational Module enhances user interaction with the Data Analyst Assistant by providing a natural conversational interface for data analysis.
Here's how it works:
- End user Input: The module receives end user input in text format. It also considers previous conversation history and the last code generated in the coder (if applicable).
- Context Analysis: The module analyzes the end user's input in the context of the metadata and glossary.
- Query Generation: Based on the context and end user input, the module generates an appropriate query to retrieve the requested data.
- Direct Response: If the query can be answered directly from the assistant's metadata or glossary, the module will provide a direct response.
- Code Generation: If the query requires calculations based on the assistant's dataset, the module will generate the necessary code to retrieve and process the data, then return the calculated result.
- Conversation History: The module maintains a history of the conversation, allowing it to understand the context of subsequent questions and reformulate queries accordingly.
To enable the Conversational Module, you need to configure the conversational_mode node in your Metadata (JSON).
This node is parallel to the dataset definition nodes.
Here's an example of how to configure the conversational_mode node:
{
"conversational_mode": {
"enabled": 1,
"version": 1,
"metadata_interpretation": 1,
"question_reformulation": 1
},
"dataset_name_1": {},
"dataset_name_2": {}
}
- enabled: Set to 1 to activate the Conversational Module.
- version: Specifies the version of the module. The possible values are:
- 1 (Smart Version): Reformulates the question and sends it to the process automatically, without user confirmation.
- 2 (Basic Version): Reformulates the question and requests confirmation from the user before sending it to process and retrieve the data.
- glossary_interpretation: Enables the module to interpret terms from the glossary.
- metadata_interpretation: Enables the module to interpret metadata definitions.
- question_reformulation: Enables the module to reformulate queries based on conversation history.
To enable the Conversational Module in a previously defined Data Analyst Assistant, you need to go to the Edit section and select Replace Datasets in Update mode. You can then edit the Metadata (JSON) to add the configuration node for the Conversational Module.
End user asks: "What are the sales figures for product X?"
Module: If the metadata requires a date range for sales data, the module will prompt the user to specify the desired date range.
End user asks: "Can you show me the top 5 selling products?"
Module: The module will generate a query to retrieve the top 5 selling products based on the available data.
End user asks: "What is the average price of product Y?"
Module: The module will generate a query to calculate the average price of product Y.