Copilot for Real-Time Intelligence (preview)
Copilot for Real-Time Intelligence is an advanced AI tool designed to help you explore your data and extract valuable insights. You can input questions about your data, which are then automatically translated into Kusto Query Language (KQL) queries. Copilot streamlines the process of analyzing data for both experienced KQL users and citizen data scientists.
Important
This feature is in preview.
For billing information about Copilot, see Announcing Copilot in Fabric pricing.
Prerequisites
- A workspace with a Microsoft Fabric-enabled capacity
- Read or write access to a KQL queryset
Note
- Your administrator needs to enable the tenant switch before you start using Copilot. See the article Copilot tenant settings for details.
- Your F64 or P1 capacity needs to be in one of the regions listed in this article, Fabric region availability.
- If your tenant or capacity is outside the US or France, Copilot is disabled by default unless your Fabric tenant admin enables the Data sent to Azure OpenAI can be processed outside your tenant's geographic region, compliance boundary, or national cloud instance tenant setting in the Fabric Admin portal.
- Copilot in Microsoft Fabric isn't supported on trial SKUs. Only paid SKUs (F64 or higher, or P1 or higher) are supported.
- Copilot in Fabric is currently rolling out in public preview and is expected to be available for all customers by end of March 2024.
- See the article Overview of Copilot in Fabric and Power BI for more information.
Capabilities of Copilot for Real-Time Intelligence
Copilot for Real-Time Intelligence lets you effortlessly translate natural language queries into Kusto Query Language (KQL). The copilot acts as a bridge between everyday language and KQL's technical intricacies, and in doing so removes adoption barriers for data analysts and citizen data scientists. By harnessing OpenAI's advanced language understanding, this feature allows you to submit business questions in a familiar, natural language format, which are then converted into KQL queries. Copilot accelerates productivity by simplifying the query creation process with a user-friendly and efficient approach to data analysis.
Copilot supports conversational interactions which allows you to clarify, adapt, and extend your queries dynamically, all while maintaining the context of your previous inputs. You can refine queries and ask follow-up questions without starting over:
Dynamic query refinement: You can refine the initial KQL generated by Copilot by refining your prompt to remove ambiguity, specify tables or columns, or provide more context.
Seamless follow-up questions: If the generated KQL is correct but you want to explore the data more deeply, you can ask follow-up questions related to the same task. You can expand the scope of your query, add filters, or explore related data points by building on previous dialogue.
Access the Real-Time Intelligence Copilot
- To access Copilot for Real-Time Intelligence, navigate to a new or existing KQL queryset.
- Connect to a database. For more information, see Select a database
- Select the Copilot button.
- In the Copilot pane, enter your business question in natural language.
- Press Enter. After a few seconds, Copilot will generate a KQL query based on your input. You can copy the query to the clipboard, or Insert it directly in the KQL query editor. To run the query in the query editor, you must have write access to the KQL queryset.
- Select the Run button to execute the query.
Note
- Copilot doesn't generate control commands.
- Copilot doesn't automatically run the generated KQL query. Users are advised to run the queries at their own discretion.
You can continue to ask follow-up questions or further refine your query. To start a new chat, select the speech bubble on the top right of the Copilot pane (1).
Hover over a previous question (2) and select the pencil icon to copy it to the question box to edit it, or copy it to your clipboard.
Improve the accuracy of Copilot for Real-Time Intelligence
Here are some tips that can help improve the accuracy of the KQL queries generated by Copilot:
- Start with simple natural language prompts, to learn the current capabilities and limitations. Then, gradually proceed to more complex prompts.
- State the task precisely, and avoid ambiguity. Imaging you shared the natural language prompt with few KQL experts from your team without adding oral instructions - would they be able to generate the correct query?
- To generate the most accurate query, supply any relevant information that can help the model. If you can, specify tables, operators, or functions that are critical to the query.
- Prepare your database: Add docstring properties to describe common tables and columns. This might be redundant for descriptive names (for example, timestamp) but is critical to describe tables or columns with meaningless names. You don't have to add docstring to tables or columns that are rarely used. For more information, see .alter table column-docstrings command.
- To improve Copilot results, select either the like or dislike icon to submit your comments in the Submit feedback form.
Note
The Submit feedback form submits the name of the database, its url, the KQL query generated by copilot, and any free text response you include in the feedback submission. Results of the executed KQL query aren't sent.
Limitations
- Copilot might suggest potentially inaccurate or misleading suggested KQL queries due to:
- Complex and long user input.
- User input that directs to database entities that aren't KQL Database tables or materialized views (for example KQL function.)
- More than 10,000 concurrent users within an organization can result in failure or a major performance hit.