← All AI Engineer talks

AI Engineer Summit 2025

Your Evals Are Meaningless (And Here’s How to Fix Them)

Read the talk

Make Your Evals Measure Production Quality

A passing test suite means little if its judges reward the wrong behavior or its cases miss real users. Build evaluation around expert judgment, production failures, and measured alignment.

From a talk by Mohak Sharma

What does a passing test suite actually prove?

You have automated tests, you run them before production, and the results look good. Does that establish that your AI application works for its users? Mohak Sharma recalls having the same confidence while building the ML systems platform at Templafy—before seeing recurring evaluation failures across other teams.

Sharma describes co-founding HoneyHive in late 2022 after leading Templafy’s data and ML platform team. Working with hundreds of teams, from two-person startups to Fortune 100 enterprises, exposed similar problems across multi-agent systems, text-to-SQL, and retrieval-augmented generation. These were not confined to one application architecture.

The practical question is whether evaluation helps build a system that delivers value in production. Catching bugs and measuring accuracy matter, but neither guarantees that an application will produce a return on investment beyond a convincing demo. An evaluation must measure the quality the business and its users actually need.

0:200:33
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:20 · section reference included

Define what you are evaluating

Evaluations serve a purpose familiar from unit and integration testing: check quality before shipping changes. But saying that tests exist leaves three questions unanswered: what is being evaluated, what cases represent its workload, and how will its outputs be judged? These correspond to the agent, dataset, and evaluators.

The agent is simply the target under evaluation. It might be an end-to-end agent, a function inside one, or the retrieval pipeline alone. Choosing that boundary matters because a customer service chatbot and a legal-contract Q&A system have different responsibilities, even if both generate text.

Consider financial document Q&A. A correct answer may still be insufficient if the system must comply with regulations, explain its reasoning, or account for nuances in financial accounting standards. Define those requirements before choosing a score; otherwise, a convenient metric can become a substitute for the actual quality contract.

2:072:25
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

2:07 · section reference included

Choose representative cases and meaningful judges

The dataset determines what the evaluation can reveal. Fifty queries handwritten by developers may be a useful beginning, but their existence does not establish coverage. Include both the inputs the system will receive and the ideal outputs that describe successful behavior. Cover ordinary requests and difficult edge cases, with domain experts supplying the business context needed to define what the agent owes its users.

Evaluators then measure whether the outputs meet that contract. The available approaches have different strengths:

EvaluatorUseful capabilityLimitation or tradeoff
Human expertContextual review, scores, and feedbackSlow and expensive
CodeObjective measurements such as latencyThe measurement must represent useful quality
LLMContext-sensitive judgment at automated scaleIts judgments still need validation

Sharma also dismisses ROUGE-L as unsuitable here, without developing a separate argument about when that metric works. The appeal of LLM evaluation is its promise to combine nuanced judgment with automated speed and scale.

Slide defining an agent, a dataset of inputs and ideal outputs, and evaluators using humans, LLMs, or code, beside a “test in production” meme.
An evaluation combines an agent, a dataset, and evaluators.

Together, the three components make the evaluation easier to interrogate: which system behaviors matter, how representative is the dataset, and do the evaluators measure what you think they measure? None is fixed. As the agent improves, the dataset may need harder cases; as the quality criteria become more sophisticated, the evaluator may need to change too.

3:463:58
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

3:46 · section reference included

Why LLM judges are attractive

The appeal is strong enough that Sharma reports seeing teams move their entire evaluation stack to LLM judges. Lower cost and faster turnaround let teams evaluate more frequently. He describes work that took roughly eight to ten hours with human evaluators completing in under an hour with LLM evaluators, then gives a more concrete workload comparison.

These are Sharma’s reported estimates, not a controlled benchmark or a current pricing guide:

WorkloadHuman evaluationLLM evaluation
1,000 test casesAbout eight hoursAbout 50–60 minutes, run sequentially
1,000 ratingsSeveral hundred dollars through Mechanical Turk$30–$120, depending on model

The sequential execution condition matters: the timing example does not assume parallel evaluation. Sharma characterizes the cost improvement as tenfold, but the broad ranges do not establish a fixed savings ratio, and he does not specify the model, token lengths, or matched quality conditions.

Sharma reports over 80% agreement with human judgments in the evaluations he describes. He compares this with the imperfect agreement between human evaluators: humans are not a unanimous reference panel either. That comparison motivates using an LLM judge, but it does not establish its accuracy on a new application.

He points to research under the names NLG-Eval and SPADE, and describes OpenAI and Anthropic as pursuing model-based evaluation for alignment. The research references need to be read narrowly: SPADE concerns synthesizing data-quality assertions from prompt histories, rather than establishing a general human–judge correlation result. The practical promise of an LLM judge still leaves the application-specific question unanswered: what, exactly, is it rewarding?

6:156:32
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

6:15 · section reference included

When relevance scores reward the wrong thing

The first failure is a mismatch between the evaluator’s criteria and the application’s needs. Built-in criteria in frameworks such as Ragas, promptfoo, and LangChain need to work across many applications. That generality does not make their defaults a complete definition of quality for yours. The issue is accepting generic criteria unchanged, not an inherent inability to customize them.

Sharma’s example is an unnamed startup building LLM-based recommendations for e-commerce websites. Its evaluator checked context relevance on the retrieval side and answer relevance on the generation side. Testing looked reassuring. After launch, however, users complained: the relevance checks emphasized keywords without adequately considering what a product description meant or whether the product met the user’s request. The scores missed the relevance failures that mattered in production.

A separate source of instability appeared when an underlying judge model changed without a stable version being used. The same test case could then receive inconsistent judgments. Sharma uses criteria drift broadly for the evaluator’s notion of good diverging from the user’s notion of good; both an unsuitable rubric and changes in judge behavior can undermine that alignment.

EvalGen, introduced by Shreya Shankar and collaborators, highlights a more specific process: people refine their criteria as they observe outputs. That is distinct from changing the underlying judge model. Either way, evaluation criteria cannot simply be assumed correct forever. Sharma connects the repair to measuring agreement with human judgments, balancing true and false positives, and tracking F1.

Slide titled “LLM evaluators exhibit criteria drift,” with bullets on static criteria, changing applications, and findings from the EvalGen paper.
Criteria drift: an evaluator’s notion of good can diverge from users’ expectations.
8:388:53
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

8:38 · section reference included

When clean test cases miss messy inputs

The second failure is dataset drift, which Sharma describes as a lack of test coverage. A team can spend weeks writing clear queries with obvious right and wrong answers, then discover during beta that users submit vague, context-dependent requests. The carefully constructed test bank no longer represents the workload.

The gap takes several forms:

  • Broader topics: users ask about subjects beyond those covered by the test cases.
  • External information: requests may depend on real-world search data, such as SERP API results.
  • Combined questions: users join multiple requests in ways the developers did not anticipate.

The evaluator can continue scoring its existing cases successfully while the application fails on these missing inputs. A capable judge cannot compensate for an unrepresentative dataset.

Sharma compares this to training for a marathon entirely on a treadmill. Improvement on the treadmill does not establish readiness for the course: incline and surface traction are absent. Likewise, better scores on clean, familiar cases can conceal the conditions the application will actually encounter.

11:1211:24
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

11:12 · section reference included

Align the evaluator and dataset together

The repair is to develop evaluators and datasets iteratively, much as you develop the LLM application itself. A one-time setup cannot keep both aligned as requirements, inputs, and model behavior change.

  1. Align the judge with domain experts. Have experts regularly grade outputs and critique the evaluator’s decisions. Ask what it missed and what it overemphasized. Turn those critiques into few-shot examples, inspect the underlying evaluator prompt, and revise it until its judgments reach a satisfactory level of agreement.
  2. Align the dataset with real usage. Start logging production behavior. When a query underperforms, bring it into the test suite, either manually or through automation. The test bank should change as production exposes missing cases.
  3. Measure alignment at every iteration. Use F1 for binary judgments or correlation coefficients for Likert ratings. Compare the evaluator with human judgments to determine whether a revision improves alignment or introduces a regression.

This adds work to evaluator development, but it is the work that makes the resulting scores interpretable. Sharma argues that it is cheaper than dealing with the consequences of evaluations that fail to measure meaningful quality.

12:4513:03
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

12:45 · section reference included

Start with a prompt and an expert spreadsheet

The most useful initial intervention, in Sharma’s experience, is to customize the evaluator prompt. Tune its criteria to the application and business context, then include examples of expert critiques. Choose the rating scale deliberately: a binary judgment and a Likert rating ask the evaluator to make different kinds of decisions. Sharma recommends binary ratings rather than treating a more granular scale as automatically more informative.

Bring domain experts into this process early. A spreadsheet with around 20 examples can provide an initial sense of whether their judgments and the evaluator’s judgments line up. This is a starting review, not a claim that such a small sample establishes comprehensive reliability. The disagreements tell you what to change next in the evaluator prompt.

15:1015:22
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

15:10 · section reference included

Turn production failures into labeled tests

Operationally, begin by reading production logs. Sharma credits Hamel with this emphasis: every underperforming interaction is an opportunity to improve the test bank. Those failures are valuable because they expose the exact situations the application needs to handle better. Add the cases and their ground-truth labels continuously, so the dataset carries both the observed request and a judgment of the desired behavior.

As that bank expands, test new evaluator-prompt versions against it. Make the criteria more specific to the use case rather than treating the original prompt as permanent. Give domain experts an evaluation console where they can edit prompts and inspect the resulting critiques and judgments; build one internally if necessary. Their role should extend beyond supplying labels once at the beginning.

16:1516:32
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

16:15 · section reference included

Track whether the judge is improving

A simple dashboard can make evaluator progress visible. Track alignment with human judgments across evaluator-template revisions: F1 for binary decisions, or correlation for Likert ratings. The dashboard answers a different question from an application quality score. It asks whether the instrument used to judge the application is becoming better aligned with the people who understand the task.

Treat evaluator-prompt changes as systematically as application-prompt changes. The goal is continuous improvement rather than perfection: inspect failures, revise criteria, and measure the effect. Evaluation remains useful only while it stays connected to real-world usage. Build that feedback loop into development instead of treating the test suite as a finished artifact that can be set aside after launch.

17:2217:35
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

17:22 · section reference included

Resources

From the talk

Updates since the talk

Read the complete timestamped transcript
  1. 0:03

    Hey, everyone. Really excited to present today at the AI Engineering Summit. Uh, before we dive into the topic of LLM evaluations, let me set the stage for what we're gonna be covering, uh, why your evals might be meaningless, and more importantly, how can we fix them?

  2. 0:20

    Now, some of you might be thinking, "My evals are fine. We've got a robust testing framework." And you know what? I had the exact same thoughts when I was building the ML systems platform at Templafy.

  3. 0:33

    But after working with hundreds of teams, I've seen patterns emerge that completely changed how I think about evaluation. So let me tell you why this matters.

  4. 0:44

    Though, first of all, a bit about me and why I'm obsessing over this problem.

  5. 0:50

    I co-founded HoneyHive in late twenty twenty-two to build evaluation tooling for AI engineers. Before that, I was leading the data and ML platform team at Templafy, a Series D enterprise startup.

  6. 1:03

    But then something really interesting happened. At HoneyHive, we started working with teams across the entire spectrum of AI. We're talking hundreds of teams, from two-person startups to Fortune one hundred enterprises.

  7. 1:17

    And the use cases, they really span from everything you can imagine: multi-agent systems, text-to-SQL, RAG, so on and so forth. And across all these different teams, we kept seeing the same problems with evaluation coming up again and again, problems that standard testing frameworks just weren't equipped to handle.

  8. 1:39

    Today, I'm going to share what we've learned. We'll look at traditional evaluation approaches, why exactly they fall short, and more importantly, what can you do about it, right? 'Cause here's the thing, like getting your evaluation right isn't just about catching bugs, measuring accuracy, et cetera.

  9. 1:56

    I think it's really just about building AI systems that actually deliver ROI in the real world, and they're not just fancy demos. So let's start with the fundamentals, right?

  10. 2:07

    What exactly is an evaluation? The fundamentals date back to unit integration testing in traditional software. Just like you wouldn't want to push changes to production without any tests in traditional software, you wouldn't want to push changes to your AI application without any evals.

  11. 2:25

    And what's really funny is, like, when I talk to teams and ask them about their evaluation strategy, I often get responses like, "Oh, yeah, we test things before production," or, "We have some automated test setup."

  12. 2:38

    But when we dig deeper, there's really a lot of uncertainty about what makes a good evaluation framework. So let's just break this down piece by piece, right? To test quality before production, we need three key components.

  13. 2:54

    First, we need an agent. Here, this is basically whatever you are evaluating. It could be an end-to-end agent, it could be a small function within an agent, it could be just your retrieval pipeline, so on and so forth.

  14. 3:08

    Now, an agent itself could be many things. It could be a customer service chatbot you've built, maybe it's a Q&A agent that is parsing through legal contracts, and so on and so forth.

  15. 3:18

    Each of these has its own unique requirements, challenges, and such. Like for instance, if you're building a document Q&A system, it needs to not just be accurate, but it also needs to be compliant with regulations, let's say if it's financial Q&A.

  16. 3:34

    You want to be able to explain its reasoning. It needs to have some level of nuance around financial accounting standards, and so on and so forth. Your evaluation needs to account for all these different aspects.

  17. 3:46

    Second component in this sort of piece of evals is a dataset, and it's the most important in my opinion. Really, this is what you're evaluating against. This is where I see a lot of teams stumble.

  18. 3:58

    They'll show me a couple of test cases, maybe they've built fifty queries, all handwritten by their developers, and they say, "Oh, well, yeah, this covers all our use cases," right?

  19. 4:08

    But does it really? I don't think so. Your dataset really needs to include both your inputs, the kinds of queries and requests your system will actually receive in production, and the ideal outputs, what good responses your ideal responses should look like.

  20. 4:24

    And these need to cover not just the happy path, but also the tricky edge cases where things might actually go wrong. And these are the sort of examples that really need to be written by domain experts, people who understand the necessary business context to be able to judge quality and really just define what should be the requirements

  21. 4:44

    for this agent. What exactly is the contract that we're building here? Third, this is really crucial, right? We need evaluators. This is essentially how exactly are you measuring quality.

  22. 4:57

    Now, traditionally, this meant human evaluators. You have subject matter experts reviewing outputs, scoring them, providing feedback. This kind of works, but it's very slow and expensive. Then you have code-based evaluators, great for subjective things like response time, latency.

  23. 5:14

    Could even be metrics like Roche L, which don't really work, but that's a whole another story and a talk in and of itself. And now we have LLM evaluators, which promise to combine the best of both worlds, right?

  24. 5:26

    You have nuanced reasoning with, uh, that can really understand humans and the human nuance and context behind these applications with the speed and scalability of automated systems. So when you sort of break it down into three components, really it's agent, dataset, and evaluators, you can start asking the right questions.

  25. 5:45

    What aspects of your system does really matter? How representative is your test set? Are your evaluation methods really measuring what you think they're measuring, right? And here's the thing, these components aren't static in nature.

  26. 6:01

    They need to evolve over time. As your agent improves, your dataset might need to include more challenges case-- challenging cases. As your evaluation criteria becomes more sophisticated, you might need different kinds of evaluators.

  27. 6:15

    It's a very dynamic system. Now, let's talk a little bit about why LLM evaluators have become so popular, and I really mean popular, right? I'm seeing teams who are switching their entire evaluation stack to rely upon LLMs as a judge.

  28. 6:32

    The main promise here is really compelling. They're cheaper, faster, and more scalable than human evaluation. But why does this actually matter, and what does this mean in practice? First off, it's speed.

  29. 6:45

    We are seeing evaluations that used to take roughly about eight to ten hours with human evaluators. They can now be completed in under an hour. So imagine thousand test cases that you're processing.

  30. 6:56

    With human evals, like something like Mechanical Turk, it might take roughly about a full day of work. So you're talking about eight hours, right? With something like an LLM evaluator, it could be about fifty to sixty minutes, assuming you're executing these evals sequentially and not parallelizing them.

  31. 7:13

    That's just an incremental improvement, right? It's, it's a huge improvement. Cost is another factor. Now, just to throw some real numbers here, uh, a traditional human eval through Mechanical Turk, you're looking at several hundred dollars for about a thousand ratings.

  32. 7:30

    LLM evaluators, we've seen costs roughly in the thirty to hundred twenty dollar range, depending on what model you choose. Now, that's a ten X reduction in cost. Huge ROI.

  33. 7:40

    And here's where things get really interesting. It's the consistency. We are seeing over eighty percent consistency with human judgments. And I know some of you are thinking, "Okay, it's only eighty percent," but here's the thing, right?

  34. 7:54

    When we measure agreement between different human evaluators, we often see similar response rates and similar levels of consistency. Humans don't necessarily agree with each other a hundred percent of the time either, and we see that with LLM-as-a-judge as well.

  35. 8:09

    The research backing this is substantial. There are papers like NLG-Eval and SPADE that showed really strong correlations between human judgments and LLM scores. And major model providers like OpenAI, Anthropic are increasingly pursuing this direction for alignment as well.

  36. 8:28

    Now, all of this sounds amazing, right? It's almost too good to be true. Hold that thought for a sec, because this, this is where things really get very interesting.

  37. 8:38

    I think the most uncomfortable truth that we need to face is that LLM evaluators have two very major problems, right? I think the first one is what I consider criteria drift, and it's a very sneaky one.

  38. 8:53

    If you're using a popular framework, like let's say RAG-AS, PromFu, LangChain, you're likely relying on their built-in evaluation criteria, and it seems pretty reasonable, right? These tools are very established.

  39. 9:06

    They have hundreds of thousands, if not millions of downloads. But here's the thing, their evaluation criteria is designed for generalizability. It doesn't necessarily measure what's important to your unique use case.

  40. 9:20

    So here's a very real-world example that, that I have personally faced working with a customer. We started with a, uh, working with a company, uh, an AI startup building an LLM-based recommendation system for e-commerce websites.

  41. 9:34

    Their evaluator was checking things like all the standard boxes, context relevance on the retrieval side, uh, answer relevance on the generation side of things, and things really look great in testing, right?

  42. 9:47

    But when they pushed this to production, that's where things started breaking. There were a lot of user complaints. The evaluator just completely missed the user's requirements for relevance. Their evaluator indexed too hard on keyword relevance without really thinking about the larger context of what the product description means, how is it relevant to the user query, so on

  43. 10:10

    and so forth. And as a result, their evals couldn't really catch any real relevance issues, right? And I've also seen, uh, the grading of, uh, the, these evaluators where it might work fine on just a single test case, but then it stops grading the user query on the same test case, uh, consistently because, you know, they were

  44. 10:33

    using maybe an LLM that the underlying model just changed. They weren't using a stable version of OpenAI. So this is what we consider criteria drift. Essentially, when your evaluator's notion of what is good no longer aligns with the user's notion of good.

  45. 10:49

    Shreya Shankar and team at Berkeley, they published this paper called EvalGen, which really exposed this concept in depth. They found that evaluation criteria basically needs to evolve over time.

  46. 11:01

    And the main challenge is how you balance true positives with false positives and basically maximize your F1 score when you're measuring alignment against human judgments.

  47. 11:12

    So this is a huge problem, but there's another one here. This is the-- what I like to call dataset drift. This is essentially your datasets basically lack test coverage, right?

  48. 11:24

    So picture this. You spent weeks creating the perfect test cases, clear queries, obvious right answers and wrong answers. Your test suite is golden, right? And then you launch in beta, and then real-world users start using your system.

  49. 11:41

    And then suddenly they type vague, context-dependent, messy inputs, and your beautiful test cases that you spent so hard writing, they just don't hold up. They don't represent reality anymore.

  50. 11:53

    This is a usage pattern that we see everywhere. Users are constantly asking about topics way broader than your actual test cases. Users sometimes ask data that requires you to use real-world user queries, like let's say SERP API results.

  51. 12:08

    Sometimes user ask and combine multiple questions in ways you didn't really anticipate. So this is what really makes, you know, datasets particularly dangerous. Uh, your metrics might still look good, your [REDACTED:username] happily scoring on these test cases.

  52. 12:25

    Uh, it's like practicing for a marathon, right? And you're sort of running on the treadmill. You might think you're getting really good at it, but that's where not the race happens.

  53. 12:35

    You're ultimately not accounting for things like incline, surface traction, and whatnot. Like, your test cases no longer just represent what the reality actually looks like.

  54. 12:45

    And so how do we go about this, right? Uh, how do we fix these problems, and how do we actually make evals work for ourselves? The very simple insight that changed everything for us is this: evaluators and datasets, they need to be iteratively aligned.

  55. 13:03

    Pretty much like how you align your actual LLM application. So here's a three-step approach that I found that I really wanna break down, and this has worked for a lot of our customers, and folks like Hamilton Online have also written extensively about this.

  56. 13:18

    But really, first off, you need to align your evaluators with domain experts. This is crucial. Have your experts regularly grade outputs, not just once during setup, but continuously. Have them critique the evaluator results itself.

  57. 13:34

    What is it missing? What is it overemphasizing? Use the critiques as few short examples in your evaluator prompt, and further ground your evaluator with a real-world notion of what's good, what's bad, right?

  58. 13:46

    There's a lot of massaging and iteration that just needs to be done on the evaluator prompt itself. So don't just go ahead and rely on a templated library of metrics, but look at the underlying prompt, actually iterate upon it, see if you agree with the outputs yourself, and keep that process going until there's some level of agreement

  59. 14:05

    that feels satisfactory. Second, really keep your datasets aligned with u- real-world user queries, right? It all starts by logging. Really, your test bank, it needs to be living, breathing thing, right?

  60. 14:19

    When you see underperforming queries in prod, automatically flow them back into your test suite. You can do this manually, or you can set up automations using the various LLM obstacles that are out there.

  61. 14:30

    Third, this is where most teams really drop the ball. Measure and track alignment over time. Use concrete metrics like F1 score for binary judgments or correlation coef- coefficients for Likert scales.

  62. 14:44

    Track how well your evaluator matches human judgment with every iteration. This will really inform you whether your evaluator is truly improving over time or are you regressing over time, so on and so forth.

  63. 14:56

    And it's a lot of work. It sounds like a lot of work. But here's the thing, right? It's far less work than dealing with the consequences of a meaningless eval that doesn't really tell you anything and doesn't measure anything meaningful.

  64. 15:10

    In practice, the most important step I personally found is to actually customize the LLM evaluator prompt. I think a lot of teams today are relying on these templated metrics that are rather meaningless.

  65. 15:22

    You want to carefully tune your evaluation criteria. Add few short examples of critiques provided by domain experts. Pay attention to whether you're actually using binary scales or Likert scales for ratings.

  66. 15:34

    Highly recommend binary, by the way. And make sure you're measuring something which is actually meaningful instead of just relying on out-of-the-box metrics that, you know, don't really measure what's important to your use case, your application, your business context.

  67. 15:51

    Next, you want to involve domain experts as early as possible and get them to evaluate the evaluator. Doing this in spreadsheets is a really good start. You can start with even, like, twenty examples, and it will give you a good sense of whether your evaluator judgments are actually in line with your domain experts or not.

  68. 16:08

    This will also help inform what changes you should make next as you're improving your evaluator prompt.

  69. 16:15

    Putting this all together in practice, really, I'd recommend to start with logging. Like, as Hamilton really likes to say, "Just read your logs," right? Every time your system u- underperforms in production, that's an opportunity to improve your test bank.

  70. 16:32

    These are real-world failures that are just golden because these are the exact kinds of problems that your application needs to be improving upon. They show exactly where your evaluation system is falling short, and you should continuously add these test cases to your test bank and add the ground true datasets as well, uh, ground true labels, so you

  71. 16:51

    can continuously improve your test bank over time. Next, iteration. Your LLM evaluator prompts, they, they aren't sacred texts, right? They need to evolve over time. Test new versions against your expanding test bank.

  72. 17:06

    Make them more specific to your use case. Invest in a eval console sort of tool. Build this internally if you have to, just to allow domain experts themselves to iterate on the evaluator prompt and get a sense of whether they agree with the evaluator critiques and judgments or not.

  73. 17:22

    Finally, measurement. You can't really improve what you don't measure, so tracking your alignment scores over time is extremely important. We recommend setting up a simple dashboard to track your alignment score.

  74. 17:35

    It could be F1 if you're using simple binary judgments. It could be correlation metrics if you're using Likert scales. Really, this will just allow you to track in a more systematic manner as you're improving your evaluator template, whether it's improving over time or not.

  75. 17:51

    Very similar to how you might be testing your own original prompt for your LLM application as well, right? And remember, the goal here isn't perfection, it's continuous improvement. And here's what I want you to take away from this talk ultimately.

  76. 18:07

    Your LLM evals are really only as good as the alignment with real-world usage. So please don't fall into the trap of static evaluation. Don't treat tests like static tests in traditional software.

  77. 18:20

    LLMs don't work that way. Don't just set it and forget it, right? Build these iterative feedback loops into your development process. The payoff is huge, especially when you're trying to improve your eval over time.

  78. 18:32

    Yep, that's it. Thank you for all your time. Feel free to connect with me on LinkedIn if you want to discuss this more in depth. And if you're looking for tools to implement this workflow inside your team, uh, check out our platform, Honeyhive, at honeyhive.ai.

  79. 18:47

    Thank you.