Chapter 6. Evaluating GenAI Applications with MLflow
By this point, you have a tool-calling agent that does more than answer questions. It shows its work. You can inspect the trace, follow the retrieval steps, and see how the final response was produced. That is a strong foundation, but observability is only half the picture. The real question is whether a change actually makes the application better.
For classical machine learning, that question is often answered with a small set of familiar metrics. Generative AI is less tidy. A response can be accurate but unhelpful, fluent but unsafe, or impressive in isolation and unreliable in practice. Quality has several dimensions, and so do the trade-offs around latency and cost.
This is where evaluation becomes a first-class part of the workflow. In MLflow 3.x, evaluation is part of the same system that tracks prompts, code, data, and traces. In this chapter, we show how to build a practical evaluation stack for the Unity Airways assistant: how to create and version evaluation datasets, define meaningful scorers, capture human feedback, and compare a candidate against a baseline. By the end, you will have a repeatable way to decide what is ready to move forward and what still needs work.
The MLflow Evaluation Framework
The evaluation framework in MLflow 3.x provides a structured, traceable, and reproducible way to measure the quality of GenAI applications. It brings together four building blocks:
- Datasets
-
These are the base of ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access