A Practical Blueprint for Evaluating Conversational AI at Scale
dropbox · Tech · 2025 · source Agentic: no · promotional bias: low · source-backed · extracted with prompt 0.5.2 (schema v2)
Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.
Problem
Domain: Conversational AI evaluation
Dropbox needed repeatable evaluation for Dropbox Dash because pipeline changes could regress intent classification, retrieval, ranking, prompts, inference, or safety.
Constraints:
- Conversational answers need factuality and citation checks
- Public datasets do not cover internal phrasing
- Judge prompts also need calibration
Architecture
Dropbox Dash is framed as a multi-stage conversational AI pipeline wrapped by a first-class evaluation system. The product path includes intent classification, document retrieval, ranking, prompt construction, LLM inference, and safety filtering; the evaluation path surrounds that pipeline with public and internal datasets, LLM-as-judge rubrics, Braintrust experiment management, pull-request/staging/live gates, dashboards, and low-scoring trace mining. The result is less a single model change than an evaluation operating system for safely changing prompts, retrievers, models, and context selection.
Diagram confidence: explicit (topology described by the source).
flowchart LR dropbox-dash-conversational-pipeline[Dropbox Dash conversational pipeline] --> intent-classifier[Intent classifier] intent-classifier --> document-retriever[Document retriever] document-retriever --> ranker[Ranker] ranker --> prompt-constructor[Prompt constructor] prompt-constructor --> model-inference[Model inference] model-inference --> safety-filter[Safety filter] evaluation-datasets[Evaluation datasets] --> llm-judge[LLM judge] llm-judge --> braintrust[Braintrust] braintrust --> github-action-gates[GitHub Action gates] braintrust --> dashboards[Dashboards] dropbox-dash-conversational-pipeline --> live-traffic-scorer[Live traffic scorer] live-traffic-scorer --> dashboards document-retriever --> trace-level-debugging[Trace-level debugging] trace-level-debugging --> braintrust
Components
| Component | Role | Interacts with |
|---|---|---|
Dropbox Dash conversational pipeline |
User-facing conversational AI system whose stages can regress independently. | Intent classifier, Document retriever, Ranker, Prompt constructor, Model inference, Safety filter |
Intent classifier |
Classifies the user request before retrieval and answer generation. | Dropbox Dash conversational pipeline, Document retriever |
Document retriever |
Finds candidate source material and connector content for the answer. | Intent classifier, Ranker, Trace-level debugging |
Ranker |
Orders retrieved material before prompt construction. | Document retriever, Prompt constructor |
Prompt constructor |
Builds the model prompt from query, retrieved context, and settings. | Ranker, Model inference |
Model inference |
Generates the conversational answer. | Prompt constructor, Safety filter, LLM judge |
Safety filter |
Final product-path guard before answers are returned. | Model inference |
Evaluation datasets |
Public, internal, representative, and synthetic datasets used for regression and sweep coverage. | LLM judge, Braintrust |
LLM judge |
Scores answer correctness, citations, formatting, tone, and other rubric dimensions. | Evaluation datasets, Braintrust, Model inference |
Braintrust |
Versioned evaluation platform for datasets, scorers, experiments, automation, tracing, and monitoring. | Evaluation datasets, LLM judge, Dashboards |
GitHub Action gates |
Runs canonical evaluation queries for pull-request and merge checks. | Braintrust, Dashboards |
Live traffic scorer |
Asynchronously scores sampled production traffic without adding user latency. | Dropbox Dash conversational pipeline, Dashboards |
Dashboards |
Expose pass/fail rates, drift, latency, cost, and rolling quality metrics to engineering and product. | Braintrust, GitHub Action gates, Live traffic scorer |
Trace-level debugging |
Drills into retrieval hits, prompt payloads, generated answers, and judge critiques. | Document retriever, Braintrust |
Data flow
A Dash query moves through intent classification, retrieval, ranking, prompt construction, inference, and safety filtering. Proposed changes to any of those stages are evaluated against curated public/internal datasets, scored by rubrics and LLM judges, tracked in Braintrust runs, gated in pull requests and staging, then monitored by asynchronous live-traffic scoring once deployed.
Why this architecture
Dropbox chose layered evaluation because ad-hoc testing could not control regressions in a probabilistic multi-stage pipeline. A versioned platform and automated gates made prompt, retriever, model, and context-selection changes reproducible, comparable, and enforceable before they reached users.
Models used: LLM judges
Scale
- Every pull request ran about 150 canonical judged queries and returned results in under 10 minutes.“Every pull request kicked off about 150 canonical queries, which were judged automatically and returned results in under 10 minutes.”article, stated
- Engineers manually reviewed 5-10% of each release regression suite as calibration against automated judges.“For each release, human engineers manually reviewed 5–10% of the regression suite. Any discrepancies were logged and traced back to either prompt bugs or model hallucinations, and recurring issues triggered prompt rewrites or more fine-grained scoring.”article, stated
- Production scoring tracked rolling medians over one-hour, six-hour, and 24-hour windows.“Dashboards visible to both engineering and product teams tracked rolling quality and performance medians; for example, over one-hour, six-hour, and 24-hour intervals.”article, stated
Alternatives considered (roads not taken)
Traditional lexical and embedding metrics
Rejected because: They caught extreme drift but missed citation gaps, hallucinated filenames, formatting errors, and factual failures.
Public benchmark datasets alone
Rejected because: Public datasets lacked the long-tail phrasing and content mix of real Dash users.
Spreadsheet-managed experiments
Rejected because: Spreadsheets made results scattered, hard to reproduce, and hard to compare across model or prompt versions.
Only offline or staging evaluation
Rejected because: Dropbox needed asynchronous live-traffic scoring to catch silent degradation from real user queries without adding latency.
Patterns
eval-driven-development (evaluation)
Experimental changes are treated like production code and measured against curated datasets and rubrics.
llm-as-judge (evaluation)
Judge models assess factual correctness, citation use, formatting, and tone when lexical metrics are insufficient.
Tradeoffs
Treat model, retrieval, and prompt changes as gated code changes.
Chose Automated evaluation gates on every material pipeline change over Faster ad-hoc experimentation without hard regression thresholds.
Rationale: Dropbox accepted extra evaluation overhead because conversational AI regressions could appear in any stage of the pipeline.
How to score conversational AI quality.
Chose LLM judges with calibrated rubrics over BLEU, ROUGE, BERTScore, and embedding similarity alone.
Rationale: Dropbox needed factuality, citation, formatting, and tone checks that traditional text metrics did not enforce.
Where to catch production regressions.
Chose layered merge, stage, and production gates over one large evaluation pass late in release.
Rationale: Layered gates let Dropbox block obvious regressions early and catch scale-only issues in production-like or live settings.
Gotchas (what bit them)
Traditional text metrics did not enforce deployment-ready correctness.
Root cause: BLEU/ROUGE-like metrics missed citation and factual failures.
Resolution: Dropbox added LLM-based rubrics and judge calibration.
Evaluation
The case itself is an evaluation architecture, combining curated datasets, rubrics, judge models, and development workflows.
Metrics: factual correctness · citation correctness · formatting · tone
Outcomes
- Created a systematic evaluation-first methodology for conversational AI changes.
The system is positioned as a reusable playbook for multi-modal conversational AI evaluation.