The Best Chatbots Do Less Computation
Hatched by Periklis Papanikolaou
Aug 23, 2026
11 min read
2 views
88%
What if intelligence is mostly the art of not looking?
A chatbot that can answer any question sounds like a triumph of language. But the more consequential question is often hidden underneath: what information should the system refuse to process until it knows that information is relevant?
This question connects two technologies that are usually discussed in separate rooms. One is conversational software, designed to turn human requests into useful interactions. The other is a high performance data system designed to explore enormous tables without loading everything into memory. Their shared lesson is surprisingly simple: intelligence does not require touching all available information. It requires choosing the smallest useful path through it.
That principle changes how we should design chatbots. A capable conversational system is not merely a model that generates fluent replies. It is a selective computation engine. It must interpret a request, identify the relevant data, perform only the necessary calculations, expose uncertainty, and invite correction when the question is underspecified.
The future of useful chatbots may therefore depend less on making them sound more human and more on making them behave like disciplined data explorers.
The hidden cost of answering everything
Imagine asking a business assistant, “Which customers became less active after our pricing change?” A superficial system might search a database, summarize a few records, and produce a confident paragraph. A more sophisticated system might retrieve every customer interaction, every invoice, every support ticket, and every event before attempting an answer.
That sounds thorough. It is often wasteful.
The request contains several unresolved choices. What does “less active” mean? Fewer purchases, fewer logins, lower usage, or fewer support interactions? Which pricing change matters? What time period should be compared? Should new customers be excluded? Should seasonal behavior be normalized?
Until those questions are resolved, processing more data does not create more intelligence. It creates more opportunities for the system to calculate the wrong thing at impressive speed.
This is the central tension in conversational data systems: the user wants an answer, but the system first needs a question precise enough to compute.
A chatbot is often treated as a front end for information. That understates its role. It is a translator between vague human intent and exact machine operations. The user says, “Show me where sales are slipping.” The system must convert that sentence into dimensions, filters, aggregations, comparison periods, and visual representations.
In other words, a conversation is not merely a delivery mechanism for results. It is part of the computation itself.
The smartest response to an ambiguous question is not a guess. It is a smaller question that makes the answer computable.
From massive tables to meaningful questions
Large scale data exploration offers a useful mental model for this problem. A modern data frame can represent billions of rows, yet a person rarely needs all those rows displayed at once. They need a distribution, a trend, an outlier, a comparison, or a region of interest.
The system becomes useful by delaying expensive work. It can inspect metadata, map files into memory, calculate only the requested summary, and materialize detailed records only when the user asks to zoom in. This is the logic of lazy computation: do not perform an operation merely because it is possible. Perform it when the request makes it necessary.
A good chatbot should operate the same way.
Suppose an analyst asks, “What happened to conversion rates last quarter?” The assistant need not immediately retrieve every session. It could follow a progressive sequence:
- Identify the relevant metric and its definition.
- Compare the current quarter with the previous quarter.
- Calculate the result by the most informative dimensions, perhaps device, region, or acquisition channel.
- Display the broad pattern.
- Ask whether the user wants to inspect a particular segment.
This is not just an optimization for speed. It is a protection against cognitive overload. A complete data dump forces the user to perform the exploration manually. A lazy conversational system turns exploration into a guided series of increasingly precise views.
The analogy to a map is useful. When you open a map, it does not render every building on Earth at equal detail. It begins with a broad view, then loads streets, landmarks, and addresses as you zoom. Each level of detail is triggered by a decision about where to look next.
A chatbot should treat data in the same way. Conversation is zooming by language.
“Show overall revenue” is a world view. “Break it down by region” is a zoom. “Why did the Northeast decline?” is a closer inspection. “List the ten accounts responsible” is a request for individual records. The system should not pay the computational and interpretive cost of the final view before the user has chosen that direction.
The conversational query compiler
This suggests a useful architecture: think of the chatbot as a conversational query compiler.
A traditional compiler translates human readable code into machine operations. A conversational query compiler translates ordinary language into a sequence of data operations while preserving the user’s intent and exposing the assumptions introduced along the way.
That process has five stages.
1. Interpret the intent
The system identifies the action the user wants: compare, rank, explain, filter, forecast, summarize, or visualize. “Which products are losing momentum?” is probably a ranking and trend question, not a request for a general product description.
2. Locate the relevant data
The system chooses the tables, columns, time ranges, and relationships that could answer the question. This is where a data catalog and meaningful schema descriptions matter. A column named status_2 is not conversationally useful, even if the underlying values are accurate.
3. Test the question for ambiguity
The system checks whether key terms have multiple operational meanings. “Customer,” “active,” “profit,” and “churned” are not self defining. The assistant should distinguish between harmless ambiguity and ambiguity that could materially change the answer.
4. Execute the least expensive sufficient computation
The system begins with counts, samples, distributions, and aggregates. It avoids copying entire datasets into memory or generating detailed results before they are needed. It should use lazy operations, memory mapping, and zero copy techniques where possible, but the broader design principle matters more than any particular implementation.
5. Return a result that can be inspected
The answer should include the result, the definition used, the time period, the filters applied, and an obvious next step. A chart without its denominator is not insight. A percentage without its comparison group is not context. A conclusion without its assumptions is not trustworthy.
This architecture produces an important distinction between answer generation and evidence navigation. The chatbot is not simply writing a sentence at the end of a pipeline. It is helping the user navigate from an ambiguous intention toward a defensible piece of evidence.
Why visual exploration belongs inside the conversation
Numbers alone often conceal the question that matters. A mean can hide a bimodal distribution. A total can conceal a small number of extreme contributors. An average conversion rate can rise while the largest customer segment deteriorates.
Interactive visual exploration solves part of this problem by allowing the user to see structure before deciding what to ask next. Histograms reveal shape. Density plots reveal concentration. A grid of aggregated values reveals where patterns cluster. Three dimensional visualizations can expose relationships that are difficult to detect in a flat table.
A chatbot can make these representations conversational. Consider a request such as, “Are delivery times getting more variable?” The assistant might first show the distribution of delivery times for two periods. The user may then notice that the average has barely changed, but the right tail has grown. That observation leads to a better question: “Which warehouses account for the long delays?”
The first visualization did not answer the final question. It improved the user’s ability to ask it.
This is a deeper function of conversational interfaces. They can reduce the distance between seeing a pattern and formulating an investigation. The system becomes a partner in hypothesis formation, not just a vending machine for conclusions.
But this only works if the system preserves the distinction between observation and explanation. A chart may show that one region has a higher cancellation rate. It does not, by itself, show that shipping delays caused the difference. The chatbot should help the user move from descriptive analysis to causal investigation without quietly pretending that the transition has already occurred.
A trustworthy response might say: “The cancellation rate is higher in this region, especially for orders placed through mobile devices. This pattern is consistent with several explanations, including delivery times, inventory availability, or customer mix. Shall I compare those factors?”
That answer is less dramatic than a confident causal story. It is far more useful.
The economics of selective attention
The benefits of lazy computation are usually described in technical terms: less memory, fewer copies, faster calculations, and better scalability. In a chatbot, the same principle has an epistemic benefit. It controls how much uncertainty enters the conversation at each step.
Every additional dataset, transformation, and inferred relationship introduces possible error. If the system joins five tables before clarifying the user’s goal, it may produce a polished answer built on mismatched definitions. If it begins with a simple aggregate, the user can inspect the result before the system commits to a more complex interpretation.
Selective computation therefore creates a form of error containment.
A useful rule is to separate the analysis into three layers:
- Orientation: What is in the data? How large is it? Which fields, dates, categories, and missing values matter?
- Evidence: What pattern appears under a stated definition and comparison?
- Investigation: What additional data or analysis could explain the pattern?
Many unreliable systems jump straight to investigation. They infer causes before establishing the basic shape of the evidence. A selective system moves through the layers in order, unless the user explicitly requests a different path.
This framework also clarifies when a chatbot should ask a question instead of answering. The cost of clarification is low when the ambiguity could reverse the conclusion. If “revenue” might mean billed revenue or recognized revenue, clarification is essential. If the user asks for the top five products and the ordering field is obvious, a direct answer is better.
The goal is not to maximize questions. It is to maximize information gained per interaction.
One practical measure is the clarification value of a question:
Clarification value equals the expected change in the answer multiplied by the probability that the ambiguity matters.
A question has high clarification value when different interpretations lead to substantially different results. This gives designers a principled way to decide which ambiguities deserve interruption and which can be handled with a transparent default.
Designing the next best question
The strongest data chatbot does not merely answer the current question. It proposes the next useful move.
After presenting an aggregate, it might offer: “Would you like to compare this by region, customer segment, or product category?” After showing an outlier, it might ask: “Should I inspect the underlying records or compare this period with the previous year?” These options are not generic follow up prompts. They are generated from the structure of the result.
This creates a feedback loop:
- The user expresses an intention.
- The system performs a minimal sufficient computation.
- The result reveals structure or uncertainty.
- The system offers the most informative next exploration.
- The user chooses where to zoom.
The system is valuable not because it eliminates the user’s judgment, but because it makes judgment easier to exercise.
This also changes the definition of personalization. Personalization is often associated with remembering preferences or adopting a friendly tone. In analytical chatbots, the more important form is personalization of exploration. A financial analyst may want variance by portfolio. A support manager may want ticket cohorts. A scientist may want density and confidence intervals. The assistant should learn which dimensions help a particular user make decisions, while still showing the underlying assumptions.
There is a danger here. A system that predicts the next question too aggressively can narrow the investigation and create confirmation bias. If it only offers dimensions that support its first interpretation, it turns guidance into a hidden constraint. Good exploration should include both a likely next step and a way to challenge the current framing.
For example: “The decline is concentrated among new mobile users. I can compare onboarding steps, but I can also test whether a change in traffic source explains the shift.” The assistant is not merely leading the user deeper into one story. It is keeping alternative explanations alive.
Key Takeaways
- Treat the chatbot as a query compiler, not a text generator. Design it to translate intent into explicit filters, metrics, comparisons, and operations.
- Start with the least expensive sufficient computation. Use counts, samples, distributions, and aggregates before retrieving detailed records.
- Make conversation function like zooming. Begin with a broad view, then materialize finer detail only when the user chooses where to look.
- Expose assumptions at the moment they matter. Define ambiguous terms such as active customer, revenue, and churn before they silently shape the result.
- Offer the next best exploration, not a generic follow up. Base suggestions on the structure, uncertainty, and alternatives revealed by the previous computation.
The real measure of an intelligent assistant
A system that can process a billion rows per second is impressive. A system that knows which billion rows do not yet need to be processed is more intelligent.
That distinction reaches beyond performance engineering. It describes a philosophy of knowledge work. Human questions usually begin as compressed intentions, not clean queries. The task is not to eliminate that messiness by guessing. The task is to create a controlled path from ambiguity to evidence.
The best chatbot, then, is not the one that always produces the fastest complete answer. It is the one that helps the user spend attention where attention has the highest value. It delays detail until detail can resolve a real uncertainty. It turns data volume from an obstacle into a sequence of navigable views.
Intelligence is not the ability to touch everything. It is the ability to know what deserves attention next.
Once we see chatbots this way, the design goal changes. We stop asking whether the system can answer any question and start asking whether it can improve the question, constrain the computation, and make the evidence easier to inspect.
That is a more demanding standard than fluency. It is also the one that turns a conversational interface into an instrument for thinking.
Sources
Hatch New Ideas with Glasp AI 🐣
Glasp AI allows you to hatch new ideas based on your curated content. Let's curate and create with Glasp AI :)
Start Hatching 🐣