Back office ops · Production

Solving Data Discovery at Scale: How Wix Uses RAG and Multi-Agent Systems to Find the Right Data Fast

The problem

Wix's data spans hundreds of tables and thousands of dimensions across multiple product domains, making it complex and time-consuming for users to locate the right data without depending on domain experts.

First attempt

Initial embedding approaches—first at the table level, then at the individual dimension level—were ineffective due to sparse metadata and cross-domain variation before a question-to-question matching breakthrough was found.

Workflow diagram · grounded in source
1
Natural language query to Anna
trigger
“Anna allows them to ask questions in natural language via chat”
2
Root Agent intent resolution
ai_action
“The Root Agent is responsible for identifying user intent. It determines whether the user is asking about Wix data or a general Wix-related question. Additionally, it resolves ambiguity by requesting more input when needed”
3
Question Validation Agent check
validation
“The Question Validation Agent ensures that the question pertains to one of Wix's supported entities and verifies if it fits the supported question types.”
4
Question Divider Agent decomposition
ai_action
“For complex queries containing multiple conditions, the Question Divider Agent simplifies them into smaller, more manageable sub-questions.”
5
Question-to-question RAG matching
ai_action
“we tried comparing business questions to business questions. This approach significantly improved search accuracy and ensured more relevant results. After a few more iterations on the way the questions were created, we got to 83% success…”
6
Data Playground Agent query creation
ai_action
“the Data Playground Agent takes over. This agent determines the best dimensions for answering the user's question by analyzing the top results from the semantic search. Using this information, it generates a structured API payload based …”
7
Data Playground Retry Agent error handling
validation
“the Data Playground Retry Agent steps in. It receives the error message and the failed payload, attempts to correct the issue, and retries the structured query creation.”
8
Results returned to user
output
“Part of the agent's response is a link to the Data playground application UI, where the user can view the query results, edit them, and explore breakdowns and segmentations. It all goes back to the Root Agent, which presents it to the us…”
Reported outcome

The multi-agent Anna system achieved an 83% success rate for RAG-based dimension matching, and user feedback has been overwhelmingly positive, with natural language queries reducing the barrier to entry for data exploration.

Reported metrics
RAG dimension-matching success rate83%
User feedbackoverwhelmingly positive
Barrier to data explorationreducing the barrier to entry for data exploration
Reported stack
AnnaData PlaygroundVespaCubeAirflowTrino
Source
https://www.wix.engineering/post/solving-data-discovery-at-scale-how-wix-uses-rag-and-multi-agent-systems-to-find-the-right-data-fas
Read source ↗

Frequently asked questions

What did this team achieve with this AI workflow?

The multi-agent Anna system achieved an 83% success rate for RAG-based dimension matching, and user feedback has been overwhelmingly positive, with natural language queries reducing the barrier to entry for data explo…

What tools did this team use?

Anna, Data Playground, Vespa, Cube, Airflow, Trino.

What results were reported?

RAG dimension-matching success rate: 83%; User feedback: overwhelmingly positive; Barrier to data exploration: reducing the barrier to entry for data exploration (source-reported, not independently verified).

What failed first in this deployment?

Initial embedding approaches—first at the table level, then at the individual dimension level—were ineffective due to sparse metadata and cross-domain variation before a question-to-question matching breakthrough was…

How is this back office ops AI workflow structured?

Natural language query to Anna → Root Agent intent resolution → Question Validation Agent check → Question Divider Agent decomposition → Question-to-question RAG matching → Data Playground Agent query creation → Data Playground Retry Agent error handling → Results returned to user.