GenAI
Ask Your Data in Plain Language: Start With Your BI Tool or Data Platform, and When to Build Your Own
Test the AI in the tool that already holds your reports or your data, such as Power BI, Tableau, Snowflake or Databricks. Build your own when the answers go inside your product or the data sits where those tools cannot reach. Whichever you choose, the main risk is a wrong number that looks right, so agree your metric definitions and test with answers you already know.
By amBrain10 min read
In this article
An ask-your-data assistant lets your staff type a question such as “What was gross margin by region last quarter?” and get a number or a chart back. In most of these products a language model, the kind of AI behind ChatGPT, turns the question into a database query, and the database does the counting. Your business intelligence (BI) tool or data platform may already offer one, so test that first and build your own only for cases those tools cannot cover. Most of the work on any route goes into agreeing what your metrics mean.
The short answer: if your reports already live in Power BI or Tableau and most questions are about those reports, test that tool's AI first. Where your data sits in Snowflake or Databricks and your analysts are buried in one-off questions, that platform's assistant is the one to test. Build your own when the answers go inside your product to your own clients, or when one question needs data from systems those tools cannot reach. Before you buy anything, write down how your company calculates its main metrics and collect questions whose answers you already know.
Read next
GenAI10 min read
How to Test an AI Assistant Before Launch: Build a Test Set From Your Own Cases, Set Pass Marks, and Decide Who Signs Off
GenAI10 min read
ChatGPT Enterprise and Microsoft Copilot Seats or a Document Processing Pipeline: What a Regulated Company Needs
GenAI10 min read
An AI Assistant for Customer Support: Your Helpdesk's AI Add-On, a Chatbot Platform, or a Custom Assistant on Your Own Data
How does a plain-language question become a number?
The assistant reads your question and writes a query in the language your data tool understands. Databases use SQL, and Power BI uses one called DAX. The database or BI tool runs that query and returns the result, which the assistant shows as a number or a chart. Tableau Agent in Pulse works differently. It uses statistical checks on metrics you have already defined and describes what it finds.
Databricks says its Genie product uses names and descriptions from your tables “to convert natural language questions to an equivalent SQL query”. The total will be right for the query that ran, because a database did the sum, but that query may not be the one you wanted.
Can the assistant give us a wrong number that looks right?
If a query fails, you usually get an error and someone can look into it. A query that runs but counts the wrong thing gives you a clean chart with a wrong figure on it, and nothing on the screen says so. Revenue that still includes refunds looks like any other revenue figure. So does a calendar-quarter figure when your company reports on a fiscal year.
Vendors warn about this in their own documentation. Microsoft's page on responsible use of Copilot says “Copilot responses can include inaccurate or low-quality content, so make sure to review outputs before you use them in your work”. Tableau says generative AI “can be prone to creating output that sounds plausible but contains incorrect or irrelevant information”.
Microsoft also says that if a question does not relate to the semantic model, which describes your data to Copilot, it “answers from the large language model's (LLM) general knowledge”. So an answer may not come from your data at all. Its guidance adds that “AI behavior is nondeterministic”, which means the same question can come back with a different answer.
Why do we need to agree metric definitions first?
A database table holds column names and values. It does not know whether your company counts revenue before or after refunds, and that knowledge often lives in a finance spreadsheet or in someone's head. A semantic model is where those meanings are written down for the software, such as which tables join and how each metric is calculated.
“Generic AI solutions often struggle with text-to-SQL conversions when given only a database schema, as schemas lack critical knowledge like business process definitions and metrics handling”, Snowflake's documentation says. Microsoft tells semantic model owners that “Without preparation, Copilot can misinterpret the data and return generic or inaccurate results”.
You can also set the exact logic behind common questions by hand. Power BI calls these verified answers and Snowflake calls them verified queries. Databricks has trusted assets, which it describes as “Parameterized example queries and SQL functions whose exact logic has been verified by an agent author”. Even so, Microsoft says its preparation features “can't ensure a specific output every time”.
If sales and finance each have their own revenue figure, no software can settle it. Someone senior has to decide which definition wins and write it down before any demo.
What do we get from the AI inside our BI tool?
Copilot for Power BI works from your existing semantic models, so you reuse work already done. Microsoft lists the pane beside a report as generally available. The full-screen standalone chat is still in preview, and Microsoft says it “will be retired” in a future phase, when Microsoft Copilot, now in public preview inside Power BI, becomes the main experience. No date is set, and Microsoft says it “will publish the final retirement date”.
Copilot for Power BI needs “Paid Fabric capacity (F2 or higher) or Power BI Premium (P1 or higher)”, a block of computing power your company pays for, so a per-person Pro licence alone is not enough. The newer Copilot works on different terms, since Microsoft says “You don't need to use Copilot in Fabric, or have access to an F SKU, to use Copilot in this scenario”, so ask which one your licences cover.
Tableau has two assistants for this. Tableau Agent in Dashboards lets people type a question on a published dashboard, and Tableau says it “will query the underlying data source”. It needs the Tableau Cloud+ edition or the Tableau+ Bundle on Tableau Cloud, or Tableau Server+ from version 2026.3 on Tableau Server, where it is still in beta. Tableau Agent in Pulse, described on Tableau's help pages as “a Tableau+ feature” of Tableau Cloud, answers from metrics you have already defined. It “can't answer questions about columns that aren't used in the metrics or metadata about the data source”. Tableau says Pulse insights start from “standardized, deterministic statistical models to detect facts about metrics”, and the sentences you read are generated from those facts.
The assistant sees only what has been set up for reporting, so it cannot use a field nobody added to the model. Microsoft picks the language model for Copilot. For staff who work in other languages, Microsoft says Copilot features “might not perform as well” as in English. Tableau Server is different, because it “relies on connecting to and using your own LLM provider”.
What do we get from our data platform's assistant?
These assistants work on the tables you connect to them, so they can reach data that never made it into a report. Those tables are the limit. Databricks says a Genie Agent “uses only the data sources explicitly attached”, at most 50 tables or views, and advises “Aim for five or fewer tables”. Snowflake's Cortex Analyst answers from “structured data in Snowflake”, although Snowflake now “recommends transitioning to Cortex Agents, which supports every Cortex Analyst capability with higher answer quality”.
Databricks offers Genie, where data teams set up Genie Agents with “trusted data, metrics, and business rules” and staff ask questions through Genie One.
Someone on your side has to write good descriptions of your data, because in Databricks' words “Quality table and column descriptions in Unity Catalog are critical for Genie accuracy”. Databricks also says “The data for the Genie Agent must be registered to Unity Catalog”, its central list of tables and permissions. Anything outside the platform has to be moved in or connected first.
On data handling, Snowflake says Cortex Analyst “does not train on Customer Data”. It also says “You cannot choose a model directly”, because each request goes to the highest-ranked model your role can use, from a list that starts with Anthropic Claude Sonnet 4.6 and ends with Mistral Large 2 and Llama 3.1 70b.
On these routes the language model is run by the vendor or a partner it names, and Databricks lists Azure OpenAI service and OpenAI on Databricks for Genie Agents in Chat mode. Tableau Server is the exception, since it connects to your own model provider. If your rules require servers you control, the article on a private ChatGPT, linked below, covers what that takes.
When is it worth building our own?
A custom build is software made for you around a language model. It turns questions into queries using your own definitions and returns answers wherever you choose. Building is worth it when at least one of these is true:
- The answers go inside your own product, for your own clients
- One question needs data from systems the vendor tools do not reach, such as an in-house back office alongside a data warehouse
- Your rules say the data and the model must stay on servers you control
- You need behaviour your chosen vendor tool does not offer, such as refusing any question outside a list of approved metrics
If your data already sits on one platform, a smaller step can come first. Snowflake offers Cortex Analyst as a REST API, an interface other programs can call, for uses such as “custom chat interfaces”, and Cortex Agents, the product it now recommends, can be called the same way. Databricks says you can “Integrate Genie Agents into your own chatbot, agent, or application”. You build the screens and the platform writes the queries.
Building is hard to justify when the questions come from your own staff and one platform's assistant passes your test. It also does not fix unclear definitions. If you cannot yet say how revenue is calculated, a custom build will give you wrong numbers too, and it will cost more. After launch you own the upkeep, and the articles below cover who can do that work and why AI pilots stall.
Read next
GenAI10 min read
No ML Team: Who Runs an LLM System for Support Tickets and Documents on Your Own Servers After Launch
GenAI10 min read
A Private ChatGPT for Your Company on Your Own Servers: What It Takes and Who Can Set It Up
GenAI10 min read
The AI Pilot That Never Reached Production: What Was Missing in Data and Operations
Can the assistant show people data they are not allowed to see?
Row-level security (RLS) is what stops, for example, a regional manager from seeing any region but their own. It has to be enforced where the data lives, since a line in the assistant's instructions cannot stop a query from reading a table. Each route handles this differently:
- Power BI: “Copilot can only access data that the current user has permission to access”. Microsoft adds that “it's critical that content consumers and creators only possess Read permission on the underlying semantic model when RLS must be enforced”, because row-level security may not apply to people with more access
- Tableau: for metrics in Pulse, “the data that users see when viewing a metric respects row-level security applied to the data source”, and Tableau says Tableau Agent in Dashboards works by “strictly adhering to all of your existing Tableau permissions, access controls, and row-level security”
- Snowflake: generated queries “adhere to all established access controls”, and row access policies set on the underlying tables “propagate to semantic views and are enforced”. Row access policies need Enterprise edition or higher, and a person who can query a semantic view “does not require separate access to its underlying tables”, so table grants alone will not separate people
- Databricks: “Data access is always evaluated using each end user's own Unity Catalog permissions”, and row filters in Unity Catalog are “enforced per user automatically”
- Custom build: your software has to pass each person's identity down to the database, or every question runs under one shared account and people see whatever that account can see. Snowflake's guide for products serving many clients says “Snowflake does not authenticate your end users; your app server does.” For one Power BI connection built for AI agents, Microsoft warns that “Power BI doesn't enforce RLS when you use service principal authentication”, which means signing in with a software account
Access rules can also make the assistant say something false. One of Snowflake's developer guides lists the case of an agent reporting a region as having no revenue. It gives the cause as “The row access policy hid those rows, and the agent cannot tell hidden from absent”. Have the assistant say that its results cover only what the person may see, and test each role with a login that should not see the data.
How much does an ask-your-data assistant cost?
You pay for two things on most routes. Compute is the computing power that runs the query on your data. Model usage covers turning the question into a query, and most vendors bill it in tokens, the chunks of text a language model reads and writes. Snowflake's Cortex Analyst bills per message when called through its own API. Prices below are in US dollars, from published vendor pricing for US regions:
- Power BI: Copilot for Power BI draws on the Fabric or Premium capacity you pay for, at 100 capacity-unit seconds per 1,000 input tokens and 400 per 1,000 output tokens. Azure's public retail price list shows $0.18 per capacity unit per hour, pay-as-you-go in East US, so Microsoft's example request of 2,000 input and 500 output tokens uses about 2 cents of capacity. A 64-unit F64 capacity, the size in Microsoft's example, costs about $276 a day at that rate, and your reports use the same capacity. Microsoft says “Fabric bills separately for any downstream actions that Copilot triggers”
- Tableau: its help pages tie these AI features to the Tableau Cloud+ edition or the Tableau+ Bundle on Tableau Cloud, and to Tableau Server+ on Tableau Server, where model usage is “billed directly, according to your specific LLM provider agreement”. Ask Tableau for a quote
- Snowflake: Cortex Analyst through its API is listed at 67 Platform Credits per 1,000 messages. On demand in AWS US East, a credit costs $2.00 on the Standard edition and $3.00 on Enterprise, so 1,000 messages cost $134 or $201. “Additional warehouse costs apply when you execute the SQL generated by Cortex Analyst.” Through Cortex Agents, billing moves to tokens at per-model rates
- Databricks: “Genie One and Genie Agents usage by users is free through January 31, 2027.” Software accounts (service principals) are excluded and “their usage is billed”, and “Compute used to run the queries Genie generates, such as a SQL warehouse, is billed separately”. After that date, Databricks says Genie products are “billed with a pay-as-you-go model”, with a free monthly allowance for each user, so ask what usage will cost at your volume
- Custom build: you pay the model provider directly, plus your own database compute and the engineers who build and run the system. Anthropic lists Claude Sonnet 5.5 at $2 per million input tokens and $10 per million output tokens, so the same 2,000 input and 500 output tokens cost about 1 cent. Real requests carry your table descriptions and run larger
These figures do not cover the same things, so add compute to each before you compare them. Microsoft advises starting with a small pilot group and says “Deploying broadly without validating consumption patterns can quickly exhaust your capacity”.
How do we test it with questions we already know the answers to?
Build the test before you choose a product. Take a few dozen real questions your staff ask, and record the right answer for each from a report your finance team has signed off. Run them through each product on your shortlist and score every answer. The set should include:
- Questions with one right answer, from signed-off reports, including ones that combine two subjects, such as margin by product and month
- The same question in different words, from people in different departments, to see whether your definitions hold
- Questions the assistant should decline, such as one about data it does not hold, since a made-up answer is the failure you most need to catch
- The same question under the logins of people with different access, to check the row-level security
A correct total can come from a wrong query by luck, so score the query as well as the number. Databricks has benchmarks to “test and score your agent for overall accuracy systematically”, and Snowflake says you can run “your verified queries against Cortex Analyst” and measure how accurately it generates SQL. The article on testing an AI assistant, linked above, explains how to set pass marks in advance.
Microsoft says that if you ask the same question on an unchanged semantic model “within a rolling 24-hour window”, Copilot answers from its cache, a saved copy of the earlier answer. So do not count a retest the next morning. Run the whole set again more than 24 hours later, and again whenever the vendor changes a model or you change a definition.
How can staff check where an answer came from?
People cannot check a bare number, so ask for each answer to name the definition it used and the period it covers. Power BI offers a view called “How Copilot arrived at this”, and Genie responds with “the generated query and results table, if possible”. Microsoft's page on its newer Copilot preview also asks people to “validate important decisions against the source data”. Set a rule that any number going to the board or to a client is checked against the source report first.
What should we ask a BI or data platform vendor?
- Which of our metrics will it answer from agreed definitions, and what happens to a question outside them?
- Whose permissions run each query, and how do we test that for one person's login?
- Which model providers process our questions and data, and in which region?
- What does one month of our real question volume cost, with query compute and minimums included?
- Can we see the query behind every answer and keep a log of them?
- Is this feature generally available, and what is scheduled to replace it?
- How much notice do we get before the model changes, so we can rerun our tests?
What should we ask a firm that would build it?
- Where will the metric definitions live, and can our analysts change them without a developer?
- How does each person's identity reach the database, and what happens when it is missing?
- Which model writes the queries, and what data leaves our servers?
- How will you test with questions whose answers we already know, and who on our side signs off?
- When the assistant is unsure, does it say so or does it guess?
- Will we own the code, definitions, test sets and logs at the end?
Where does amBrain fit?
amBrain publishes this blog. On its own product, it says: “Our own product, shyash.ai, runs on AI agents that research, write, check and measure from one shared memory of company facts. A person approves everything that goes out.”
This article is not a case study and describes no client work, and it does not claim that amBrain has built an ask-your-data assistant for any client. The line above is about amBrain's own product, and the examples are general.
The companies named here are cited from their published pages, all opened on 9 November 2026. The article claims no relationship between amBrain and any of them and gives no amBrain prices or timelines.
amBrain has been building software since 2019. On how it works with clients, it says: “Three formats: full delivery, a dedicated team, or engineers embedded in your team.” Its line on ownership is “The client keeps full ownership of the product and the code, except our reusable components.” Ask for the list of those components by name before you sign.
If amBrain is on your shortlist, ask it the same questions as any other firm.
Topics
- AI Assistants
- Business Intelligence
- Build or Buy
- Data Access