Latest / Agentic Conversations (formally mlops.community) / It's 2026, and We're Still Talking Evals
Transcript
- 0:00Yeah, I'm a detective. There's not a lot of users that
- 0:02are going to tell you I don't like that setting at twenty
- 0:05types of different evaluators that are not connected to your
- 0:07goal. I would say it's instruction to
- 0:09fail. Evils themselves are not very
- 0:12hard. You say eval.
- 0:19Yeah, it's such a broad term. And my question exactly is like,
- 0:22we have a good eval, but then, you know, we have a issue in
- 0:25production evil start before you ship the agent or before you
- 0:29ship the product. And then you have to completely
- 0:32drift from your approach to a different evil.
- 0:35So you don't continue with the same evaluation system once you
- 0:37have an agent in production because it doesn't match.
- 0:42You have new users, you have, I think weird users.
- 0:45We can say that some users, you know, you don't expect certain
- 0:49types of questions or requests. And to give you an example, like
- 0:53you ship an agent that is a shopping agent like, and you
- 0:56test versus queries like I want to find Adidas size 37 and then
- 1:02another user would in practice in real life.
- 1:04So like I want to have shoes like LeBron James.
- 1:07And you know, that's a different question.
- 1:10And then you have to completely twist your evils from, you know,
- 1:14test cases that you simulated yourself to something that user
- 1:17created. And then you switch from
- 1:20different fader modes to different fader mode, and then
- 1:23you go from online evils to offline online evils.
- 1:27And I think that a lot of teams do it.
- 1:31They completely ship the product and they're like, OK, let's
- 1:33start and do evils. And then everybody's like, oh,
- 1:35what is evils? And then we go into and to be
- 1:38honest, I've heard so many times word evils even when I'm talking
- 1:42about it, you know, I get where the confusion comes from.
- 1:46So yeah, it's really important to to create something.
- 1:50But basically people ship their product and then they come to
- 1:53you and they say, hey, can we set up some evals?
- 1:57Yeah, that's my favorite phrase. OK, Maggie, we have this.
- 2:00Let's run evals. And I'm like, OK, So what do you
- 2:02mean? Evils should be constant within
- 2:07the development team? Evils start the moment the idea
- 2:10of the product starts. So this kind of ensures you that
- 2:14when you ship something you are not, you know this is kind of
- 2:18evil's pre production is for you not to get like burnt and evil
- 2:23in production is to actually do deliver something of quality.
- 2:27And by burnt you just mean like putting the right guardrails on
- 2:30it? Burnt.
- 2:31I mean, you don't, you know, you're not ashamed of your
- 2:33product. What is in production?
- 2:36Because it's so bad. Yeah, it's so bad.
- 2:37It's, you know, you're over complicate things sometimes.
- 2:41I think I also mentioned that you ship more features than you
- 2:44actually evaluated. So features for me always comes
- 2:47later. What is more important a product
- 2:50that works, you know, as far as we are concerned good or a
- 2:54product that has 1000 features, but you know most of them fail
- 2:59and then you know you can ship more features.
- 3:02You can, you can test ad hoc different things.
- 3:04And that's what I'm also understand through what Thiago
- 3:07said about iterations, then you actually set up a different
- 3:10filter mode. So you, you actually discover
- 3:12them once it's shipped. But the first product you should
- 3:16build evals from the very beginning, simulate user
- 3:19scenarios. Actually, you know, try to mimic
- 3:23somebody's brain, create user profiles and not do it once, do
- 3:27it multiple times. Because what is actually
- 3:30interesting for me in current lens is that they don't they,
- 3:34they understand what they're doing.
- 3:35So they understand what the the task that they have to do, but
- 3:38what it fails is after sometime they lose track or they do
- 3:43something four times well and then the fifth time is
- 3:45tragically wrong. So that's the fun part about
- 3:48evils. That is not really deterministic
- 3:51and it's also not a bag that you can systematically improve.
- 3:55So the failure modes, it's something that you should really
- 3:57focus on before and after, but that's a specific difference.
- 4:01And are you talking about the LLMS losing track when you ask
- 4:06them to simulate different personas?
- 4:09Oh, that's as well. I mean, that's another point.
- 4:11Like we evaluate LLMS with LLMS that are also problematic.
- 4:16So yeah, they also lose track. But I think there was research
- 4:19on that, like current LMS, they work very good after, you know,
- 4:23certain, you know, tasks. So the coherence within the LLM,
- 4:27how it works, it, it loses the track of what it was going to do
- 4:30or working on. So yeah, that's the case.
- 4:34But in terms of simulating your user, you're kind of how we do
- 4:37it. I'm going to tell you how we do
- 4:39it. You think of different user
- 4:41personas, is it power user? Is it, you know, very lazy
- 4:46users, busy professional. And you try to describe it as as
- 4:50well as you can. And then you call an agent
- 4:53yourself. So you simulate the scenarios
- 4:561510, sometimes 100 times if you need to, using different types
- 5:02of personas to see how well your agent react to it and what is
- 5:05the variance of the outcomes. So if your agent scales, you
- 5:09know, 95 four times in terms of, you know, I don't accuracy, I'm
- 5:14not really a fan of this performance metric, but yeah.
- 5:17Why not? Yeah, it's too.
- 5:19It actually measures the average of of the performance.
- 5:24That doesn't really give you a quality of this.
- 5:26So yeah, I usually use the TNRTPR.
- 5:29So how well it's, you know, the human label versus the LLM, it's
- 5:32more tangible. And yeah, and I also said that
- 5:37it also performs well in terms of like statistical tests, not
- 5:41really real user scenarios. And that's also the difference
- 5:44between testing with LLM applications and, you know,
- 5:48basic software solution. So yeah, it doesn't work well
- 5:52anymore in my opinion. I think a lot of people would
- 5:54say that as well, but I I very well would like to debate that
- 5:58if you think differently. I got you off track.
- 6:01Yeah, you were saying that's easy to be honest.
- 6:04Like the LLMS? Yeah, yeah.
- 6:07Sorry. Now.
- 6:08We were talking about how you don't like the accuracy, yeah,
- 6:13measurement, but you have the accuracy measurement with LLMS
- 6:17as a judge. Yeah, I don't measure very often
- 6:20accuracy, because what accuracy tells you about real
- 6:22applications like my agent is accurate 95% of time.
- 6:27What does it mean, you know? Yeah, I have no idea.
- 6:30Yeah, me neither because I didn't define that and I don't
- 6:34know what, you know, my agent with I don't know, responds to
- 6:39to my users 95% of time. Well, when it asks for, you
- 6:42know, food recommendation and there's a specific feathered
- 6:45mode that I, I talked about it yesterday in the, in the, in the
- 6:48workshop, like when my user asks for vegetarian pizza
- 6:52recommendation and you know, we always give 5 recommendations
- 6:56and one of them is pepperoni. That's a real use case, right?
- 7:00So it's, you have to, that's why I think failure modes are really
- 7:03important in that. So you catch a specific
- 7:05failures. And what I think people don't do
- 7:08very often is that they don't do error analysis because it takes
- 7:12so much time and it seems like, you know, so much effort into
- 7:17something that, you know, have to change anyway, iterate in a
- 7:20week or two. Because as I'm also going to
- 7:23come back to Thiago, Thiago said, yeah, you have to do look
- 7:25for those fader modes all the time.
- 7:27Yeah. So it's it's cumbersome.
- 7:29It's really time consuming. And you're talking about trying
- 7:34to simulate certain personas, You as the human, putting in
- 7:38your time to think of what a different persona would do or
- 7:42say. And then you do it various
- 7:45attempts. Yeah.
- 7:46What I do, what we do in a team is you design a product.
- 7:50So as a person that designed a product and build it, you are
- 7:53actually having in mind what kind of scenarios this person
- 7:56would take. You design different
- 7:58orchestrations, so you create different tools and then you
- 8:01create different scenarios like, I don't know, 1520 scenarios
- 8:05that your potential user would might want to execute with the
- 8:09tool or with that product that you have.
- 8:11And then what you create, you actually use LLM.
- 8:14Then you describe the prompt LLM and describe the persona that
- 8:18you might want to mimic. And then you run over those, you
- 8:21know, scenarios that predefined and you see how well and what's
- 8:24the variance and behavior of your agent.
- 8:28So you basically you call an agent with an endpoint and
- 8:31that's pretty interesting because usually like one time,
- 8:342-3 times it's go working very well.
- 8:36But then you know, it takes, you know, different Rd. after the
- 8:39word. So it's really it's tricky and
- 8:42it's never the same. That's also another thing.
- 8:44It's always fails in a different place.
- 8:46Yeah. Oh, that's, yeah.
- 8:48Let's get back to that real fast.
- 8:50But the thing that I hear you saying in a way is like before
- 8:56the product goes out there. What you're describing I had
- 9:02thought were simulations. Yeah.
- 9:05And then after it's out and you're just looking at the data,
- 9:08that's like the offline evals. Is that?
- 9:11Or do you see it differently? Yeah, I I get, yeah, I see a
- 9:14different, not, not differently the same actually, but I would
- 9:17expand on that. So you do the evaluations based
- 9:21on the scenarios before the product, you know, is released.
- 9:25You can also create a, you know, specific groups that are going
- 9:28to test your product. You can ask your team members.
- 9:32But I do believe that is a bit biased because you are
- 9:35surrounded by developers usually.
- 9:37So you create the your data set yourself by, you know, trying to
- 9:40break your agent and then you test based on that and then you
- 9:46come to production. And that's what I mean like, OK,
- 9:49we're sure enough that our product is behaving well in the
- 9:53circumstances that we thought of.
- 9:55And then we think about, OK, we put it in production, we trust
- 9:59it to some extent and then we got our what our user are asking
- 10:03for. And that's another part of
- 10:04evaluation because user are going to come up with completely
- 10:07different things and completely different filter modes.
- 10:10And then you can still simulate your agent.
- 10:13For example, if you introduce a new feature, you make sure that
- 10:17your feature does not ruin your product or you introduce, you
- 10:22know, change to a system prompt for your agent.
- 10:24That's also something that you should test as your AB test
- 10:28before you push it, at least to some extent, because of course,
- 10:31again, we're dealing with two different animals here.
- 10:33So before and after. So you make sure that on your
- 10:37side, you did everything to push the product certainty as high as
- 10:42you can actually imagine. And then, you know, you put it
- 10:45in the wild and you, you, you kind of, you know, allow it to
- 10:48work in the wild and see what's going to happen there.
- 10:51And that's another part of the story, so.
- 10:54How much can you get from just trying to tell the LLM to be as
- 11:00unhinged as possible? Is the real world always going
- 11:04to be more unhinged? About now, I thought about it.
- 11:08To be honest, that's not something I've put in before,
- 11:10but if you say like if you actually try to teach your LLM
- 11:14the unhinged behaviors of your previous users, you can actually
- 11:18pick up on it quicker. Pretty far.
- 11:20But yeah, I think it's always something that we're going to
- 11:23come up with. There's always going to be some,
- 11:25you know, an unexpected behavior of LLM that you want to catch.
- 11:28But you're you're right. We can try to be unhinged, like
- 11:31on purpose, even in the team, like, Oh yeah, let's have a
- 11:34break at the agent exercise. That's a yeah.
- 11:37I was thinking like this could be fun activity for the team.
- 11:41Anybody that breaks it gets 50 bucks Amazon gift card or
- 11:44whatever. You know.
- 11:46So that you really are trying to get people thinking outside the
- 11:48box on what they are doing. It's tricky in a way.
- 11:54I think a lot of those topics are still too much conceptual,
- 11:57not practical, and I think there is not really a DNA of evils
- 12:04yet. A lot of people talk about it
- 12:07all conceptually. We could do that, we should do
- 12:09that, and then eventually it's this forgotten piece of
- 12:13development. And why is that?
- 12:15Just because it takes so much time and effort.
- 12:17I think so. I think it's also not very
- 12:19interesting to some extent. Yeah, it's kind of boring.
- 12:22Yeah, it's boring. It takes a lot of time.
- 12:24Yeah. Yeah, and it's, you know, I hear
- 12:27sometimes like, oh, Maggie, why do you want to evals?
- 12:30It's boring. I'm like, why do you think so?
- 12:32It's not because it of course the time consuming exercises of,
- 12:37you know, open eggs or coding or whatever you call it.
- 12:41Yeah, you have to really read into it to to find a mistake to
- 12:45fight a failure mode. So these part are not.
- 12:49But I think the fun part about evils is when you try to
- 12:52translate that into a working and production solution that
- 12:56enables you to catch something sooner and then you like have a
- 13:00hot moment. Oh OK, so I actually helped you
- 13:03with catching it. Because you preemptively catch
- 13:06it. Yeah.
- 13:07And also, like, if you think about it, the fact that we have
- 13:11so much work with evils to make it work, it's also for me,
- 13:15motivation to in some way try to enhance it and automate it.
- 13:20And I know it's also, you know, slippery slope because you
- 13:24should not trust LLM with helping you out with something
- 13:27that, you know, you judge another LLM.
- 13:29But there are ways that you can actually do it.
- 13:31And I think a lot of people get very much hesitant or like,
- 13:35reluctant to go through the error analysis because first, I
- 13:41don't think they even know how much they can get through it
- 13:43because they never get through 1.
- 13:45So there's like, OK, we never done that because it's, you
- 13:47know, boring. It takes too much time.
- 13:49But it's like, you know, trying something for the first time and
- 13:52then afterwards, like, oh, damn, it worked.
- 13:55Yeah. And then the second time is the
- 13:57consistency. So we did it once.
- 14:00And then I'm OK, now let's run evils.
- 14:01And then nobody comes back to the topic.
- 14:05So it's just like, hey, we did that already.
- 14:06Yeah. Isn't it fixed?
- 14:07Yeah, yeah. The educational matter in this
- 14:11part is also very important. I think a lot of teams don't
- 14:13understand that it's a duration. That's a process that you have
- 14:16to come back to, and I struggle with that sometimes, you know,
- 14:21when I do something once and they're like, oh, yeah, we put
- 14:24so much time into it and I'm like, OK, like we're going to
- 14:27meet again in three weeks and do it again.
- 14:28I was like, what? When you're getting pushed back
- 14:31because, oh, we did something, we put so much time into it, it
- 14:35made the product better, are you just not able to show how much
- 14:40better the product is? Yeah, to be honest, that's a
- 14:44very interesting question because I think there's a lot of
- 14:46noise as well there. So you pick up on a lot of
- 14:50errors and then they're being corrected or, you know, you're
- 14:54trying to prompt your agent differently.
- 14:56And everybody is like, oh, we need evils, but we don't want to
- 14:59put that much time into evils. So they see the outcome of it.
- 15:04But I think a lot of development teams are quite messy and we're
- 15:08working on a lot of things at the same time and you know, 5
- 15:10different directions. So Eval's is not only trying to
- 15:13keep up with that, but also catching up and also trying to
- 15:16fix sometimes some stuff. So I think a lot of people see
- 15:20value in it, but at the end of the day, it's still a mentality
- 15:25that you're going to go and fix something else, then go and try
- 15:29to develop. Also I've heard eval's, I think
- 15:33the simplest way that a software engineer understands evals is by
- 15:39saying, oh, it's like testing for AI and tests you kind of are
- 15:43updating a lot but not that much.
- 15:46And tests also aren't something that are going to take you a
- 15:50half a day or two days of work to figure out unless I mean,
- 15:54maybe some tests, but for the most part it's not that big of a
- 15:58time investment. No, it's not.
- 16:00And that's a big difference. We talk about unit tests versus,
- 16:04you know, NLM testing and yeah, they usually, yeah, it's not
- 16:09really the same answer. We're not looking.
- 16:11I think a lot of people compare them and here we are asking
- 16:14completely different questions for those tests.
- 16:18So I think we're also, it's a big misconception for some
- 16:22people. Like we did unit tests, we don't
- 16:23have to do evals or it works well here, but we don't measure
- 16:27actually the trustworthiness of our LLM.
- 16:29We don't measure the. You know how well it behaves in
- 16:32this circumstances. The semantic matter in this in
- 16:36this is actually not measured for unit tests.
- 16:39And Speaking of the evals and going back to the big question
- 16:42at the beginning, what are good evals?
- 16:44Yeah. What are things you're measuring
- 16:47in a good eval to make it? Is it on a system level?
- 16:50Is it all these different? Because I remember we had a talk
- 16:54from a guy from Meta and he had 12 slides with 12 different
- 16:59things you should be measuring in your evals and each slide had
- 17:02like 5 or 6 sub components of what you could be measuring.
- 17:06So it's like, if you really want to measure everything, it can
- 17:09get very nuanced and very cumbersome.
- 17:13Yeah, that's true. And you can get everybody
- 17:15discouraged. Yeah, yeah, whatever you what
- 17:19you measure in your evals is very much custom made for your
- 17:22use case. And the first thing I always ask
- 17:25myself when I start an approach a project with Evo's like what's
- 17:28actually the goal of this? What's the goal of the product?
- 17:31What do you want to achieve with the product?
- 17:33Who are your users? And the most interesting
- 17:36question and the, I think the one of the most important one is
- 17:38what is the definition of good? So can you.
- 17:41Give me an example of what that like actually played out in.
- 17:44Yeah, like, OK, for our food ordering agents, there was a
- 17:51case, we had a lot of interactions and you know, it
- 17:56was interesting case because I think we also imagined how the
- 17:59user would want to interact. So we've we came up with kind of
- 18:03like surprise me intent and create a bit of an issue for
- 18:07ourselves because how do you answer a question, surprise me
- 18:10and then suddenly people ask surprise me and it's an
- 18:13interesting case. Like how do you actually come up
- 18:15with something that might be useful, but makes a bit of more
- 18:18noise for you? So here, who is your user?
- 18:22There are people that are probably, you know, undecided.
- 18:25They are maybe in a rush. They are overwhelmed and
- 18:29overestimated with number of options on your on your, you
- 18:33know, homepage or just definitely they just don't know
- 18:37what to eat or have an occasion to organize.
- 18:39And that's your use case. And then you think like, how
- 18:42would they behave and what's the definition of good?
- 18:44So you have to think if it's better for me to deliver
- 18:48something that is quicker of, of good quality, personalized.
- 18:53And then you have to approach this case 1 by 1 and they ask
- 18:56yourself those questions and then you think like, OK, So what
- 18:59are my evils? So probably my evils would be
- 19:01the recommendation, right? So what would, is it the
- 19:03personalized accommodation? Is it also, you know, how well
- 19:08we execute the task? What is the coherence, how well
- 19:11we remember the context of a conversation?
- 19:14If somebody is vegetarian, we don't, you know, offer meat.
- 19:18And this is a specific use case. So would you apply the same, the
- 19:23same evaluators, the same metrics to a use case about, you
- 19:27know, car dealers? You know, that's why I feel
- 19:31like, Oh yeah, this basic framework, you can put it like,
- 19:35OK, I want to compare myself, which I also don't know how
- 19:40sometimes because they're so different, but usually it's just
- 19:43a very different set of evaluators and approaches, a
- 19:46very set, different set of business measures that you align
- 19:48it with. Yeah, you're waiting.
- 19:49Certain pieces of this interaction stronger than
- 19:53others. Exactly, Plus you know for you
- 19:57know car dealers options that we our team is building an
- 20:01automotive for example, probably the satisfaction measurement is
- 20:05going to be different than for the food ordering.
- 20:08So you also remember that you tied it with the with the
- 20:11different business metrics. So in the evaluation of footer
- 20:15ring agent, we try to combine it with the conversion.
- 20:19So we also test happy paths. We take all of the conversation,
- 20:24we match it with the conversion and we actually look which
- 20:27conversation with what evaluator outcome ended up in conversion
- 20:32or which ended up with frustration.
- 20:36There are also certain cases when users use the product then
- 20:40they're very frustrated but eventually end up buying
- 20:43everything. So it's tricky.
- 20:45It doesn't make sense. No, no.
- 20:47You know what? It's so funny.
- 20:48And I feel like you could easily catch a lot of frustrated users
- 20:55if you just had some kind of simple metric for was caps lock,
- 20:59caps lock on. Yeah.
- 21:02And if you have that show up anywhere in any conversation,
- 21:06you should know, like who we should look into this one a
- 21:09little bit more. I agree and disagree, I think a
- 21:13lot of people are just lazy and consider myself in this group.
- 21:16Yes, I have caps lock when I'm not going to rewrite myself, you
- 21:20know, and we got I also felt like first Oh.
- 21:23You have false positives, yeah. I was thinking about it because
- 21:26I also was reading a lot of interactions in in caps like and
- 21:28I'm like, oh, OK, that's weird. And then I figured out one day I
- 21:32was writing something and I forgot I have a caps look on and
- 21:34I sent it to some AI till I was like, oh, OK, now I get it.
- 21:40So, you know, that's also something we want to pick up on
- 21:42the frustration signals. So it's something that you, you
- 21:46know, is it, for example, given the example of recommendation
- 21:51with somebody ask you all the time more, give me more, give me
- 21:55more. It means like we failed three
- 21:57times in a row. So you also have to, you know,
- 22:01just kind of step into somebody's brain and think of
- 22:04why and how this person could get annoyed and how can I catch
- 22:07it. So yeah, it's not already
- 22:11obvious. So that's why it's really
- 22:13important to try to understand and step into students.
- 22:15We also have some kind of help from, you know, more like groups
- 22:21from, you know, we have that kind of group of lawyer users in
- 22:25terms of that. So they sometimes test out
- 22:27things before we actually put it in the the whole market.
- 22:31That's that's really good. But yeah, it's not obvious and
- 22:35that's why I don't believe that there are a certain set of
- 22:37metrics that can help. You silver bullets because I
- 22:40thought another silver bullet is if there's curse words in it.
- 22:43As soon as I start saying you fucking it, I would figure that
- 22:47is a very high frustration margin.
- 22:50I don't think there's anybody happy redirection saying that
- 22:53so. Somebody might just be angry
- 22:55because they had a bad. Day I wonder like you know if
- 22:57LLM is just in the receiver of those frustrations you know and
- 23:00then I'm like oh if the people real life are talking to users
- 23:03like that I'm just sorry you know it's.
- 23:05Not I think they do. Yeah, I.
- 23:08Am a little bit more reserved when I talk to a real human, but
- 23:13if I know it's a bot on the other end, I'll be and I I think
- 23:17of it, I'm like I'm doing God's work here.
- 23:18I'm helping the evals on trying to make it very easy for you on
- 23:23the other side to know that this was a shitty interaction.
- 23:26I wish, I wish that actually would be true for a lot of us,
- 23:29for a lot of users. We had a conversation yesterday
- 23:31because I created an educational form of traces, and I had a
- 23:36comment that was very good comments in a way.
- 23:40Where did you get this data from?
- 23:41Those users are very informative.
- 23:43Like they tell me so much about what they don't like, what they
- 23:46like. And I'm like, oh, yeah, I had to
- 23:47make it up for us to make it quicker.
- 23:50Yeah. And I think a lot of users, and
- 23:52that's also what evils, why evils matter, is they just drop
- 23:56off. There's not a lot of users that
- 23:58are going to tell you, I don't like that.
- 24:01So these are the, I think the biggest loss loss that you can
- 24:05have is the user that are, you know, talking to you and
- 24:08suddenly drop off because they're not satisfied.
- 24:10But it can be a success too, right?
- 24:12Because they find what they need.
- 24:14Yeah. But yeah, it's also usually
- 24:18it's, we have, when I think about the analytics part, we had
- 24:22a metric that was called user satisfaction and was trying to
- 24:25mimic more or less what user satisfaction means, coming back
- 24:29to what is definition of good, because nobody knew what the
- 24:32satisfied user is. So we came up with it.
- 24:35So you have, I'll say 15% of users that are satisfied, then
- 24:42you have 15% of users that are not satisfied.
- 24:45And then you have big chunk of users that are partially
- 24:48satisfied. What it means because those are
- 24:51the user that dropped off. They didn't tell you anything.
- 24:54They didn't end up with conversion, or they did, but in
- 24:58a very mysterious way. Like this conversation shouldn't
- 25:01have ended with conversion. Like this is not the way we
- 25:04should work. So this is very mysterious.
- 25:07So then you try to, you know, figure this out.
- 25:10And yeah, that's actually fun part about evils.
- 25:14And I don't know, I love this part because then you, you know,
- 25:18yeah, I'm a detective. I'm like, OK, imagine I'm a user
- 25:21that comes to this platform and I want to, you know, literally
- 25:24step into someone's brain. I think of, oh, OK, that would
- 25:27be better. Or, oh, I guess that was it.
- 25:30And then this way you come up with the metric that actually
- 25:32matter for your, for your platform, for your app.
- 25:35But then how do you reincorporate all this eval
- 25:38data? Yeah, back into the product to
- 25:41make it better. It really matters on a team and
- 25:44how well you structured it because usually we had, you
- 25:48know, we make reports, we have weekly meetings and in a
- 25:50corporate setup it usually works like this.
- 25:52So you have some kind of outcome or users are, you know, dropping
- 25:56off after minimum order barrier or, you know, have a lot of
- 26:00pricing discrepancies are getting lost.
- 26:02And it usually is just like iteration, Sprint iteration.
- 26:08And I'm not really a huge fan of that in a way that you have to
- 26:11wait. Oh, yeah, we have to focus on
- 26:13that. But we're going to pick it up in
- 26:15the next Sprint. And like, OK, so for the next
- 26:18few weeks, somebody's going to, you know, bump into the wall.
- 26:21There are things that are more prioritized, obviously, that in
- 26:25a corporate setting. It's not like we try to work as
- 26:27a startup for sure. But if you have, you know,
- 26:29multiple projects, then it's hard to put a structure on
- 26:33something without putting a structure on it.
- 26:35So everything, you know, you know what I mean.
- 26:37It's just it's a tricky fine line between those two.
- 26:41But what do you actually do? You get the data and then you
- 26:44increase. You change the prompt.
- 26:46Oh yeah, that's OK. It's really depends because when
- 26:49you take the data and you look for failure modes, you look for
- 26:54them and then you find, you know some of them might be, we call
- 26:58it specification issue. So issue that is caused by us
- 27:03more or less. So it's a comprehension between
- 27:05you know how the agent work and how the developer thought it
- 27:08would. So some issues are caused by by
- 27:12us, but not really prompting the agent correctly.
- 27:15Or giving it the wrong context in the wrong time.
- 27:17Yeah, or not really specifying things.
- 27:19So, you know, when we specify an agent be helpful in the
- 27:21situation, what does it mean? You know, it also depends on the
- 27:25context. In the context of customer
- 27:27service, hopeful is different in the context of, you know, food
- 27:29ordering or you have to give it the context.
- 27:33So the LLM knows what what helpful means in your case,
- 27:36sometimes it's just a simple prompt change that can, you
- 27:40know, decrease that failure mode for us.
- 27:44And of course, that's also an evaluation play part when you
- 27:47can, you know, detect the regression between different
- 27:49prompts. So you have to have, you know,
- 27:52trustworthy evaluators for that. Don't you feel like you're
- 27:55playing whack A mole, though? You change the prompt a little
- 27:58bit and oh cool. It's evaluations are better over
- 28:01here, but they're worse over here.
- 28:03Oh yeah, that's, But that's also why you want evaluations, right?
- 28:08You want to know what failed? Why?
- 28:10And to be honest is I think it's a little bit of dance, right?
- 28:14You're dancing around trying to change the prompt.
- 28:17And either you do it without, you know, choreography, without
- 28:20music, you know, completely blind, or you do it with evos
- 28:24when you try to, you know, track the regressions between the
- 28:27changes that you make. And of course, there are also
- 28:29different prioritization that you're going to, you know,
- 28:31correct this issue by switching the prompt.
- 28:34They're going to create a new one.
- 28:35But which one is more prominent for a use case?
- 28:38Is it better that the age hallucinates in the minor cases?
- 28:40Or is it better that they recommend something different
- 28:42or, you know, it's, it's an art that you have to, you know, have
- 28:48for every, each of the use case that you have as a as a, you
- 28:51know, developer or product owner.
- 28:54Have you resigned to just knowing that you're never going
- 28:57to get 100%? That is not going to happen.
- 29:00I hope I won't. You hope you won't?
- 29:03Yeah, because something's broken if you're hitting 100.
- 29:06Percent there's always something broken and tell something tells
- 29:08me that's 100% correct I'm like yeah, this bullshit so I hope I
- 29:12won't because I'm I'm not you know that's that's a trustworthy
- 29:15metric in me it's 95% I'm also like OK, that's really high yeah
- 29:20something. Fishy with this data.
- 29:23The key, I guess when you're looking at it is just where
- 29:27you're having the issues. It's not necessarily can we have
- 29:33100% success or 95% success. It's really like out of all of
- 29:38the big flows or the uses that we want, we want to make sure
- 29:42that we're the strongest in these certain ones because they
- 29:46add to conversion or they increase the likelihood of the
- 29:49conversion. Is that kind of how you look at
- 29:51it? Yeah, I think so.
- 29:53You know, we of course, everybody's aiming 200%.
- 29:57So the higher we get, the better.
- 30:00It's also like after a while when you're measuring something
- 30:03and it's, you know, reaching almost 100% all the time, maybe
- 30:08try to focus on something else. And to be honest, it's it's a
- 30:13neverending story in my opinion. That's where the fascinating
- 30:17part of this for me is how to, you know, make it more automated
- 30:19and interesting for for the team to do.
- 30:23And it should be part of the DNA.
- 30:24So it should be a constant dance of like trying to figure out
- 30:28which metric, which evaluator is better for you, what you're
- 30:31trying to aim. That's why, you know, also
- 30:34setting at twenty types of different evaluators that are
- 30:37not connected to your goal and what's hiding inside of them.
- 30:42It's kind of a receive, the kind of, I would say instruction to
- 30:46fail because then you measure 20 different things not related to
- 30:50what you want to achieve to any different things within inside
- 30:54of them. A lot of things are fading that
- 30:55you're nowhere not aware of. Then you're aiming to hit 10%,
- 30:59but you know, a lot of them are sometimes overlapping.
- 31:03So you measure different evaluators that are overlapping
- 31:07themselves and then like, OK, it's confusing.
- 31:10You know, that's why you know, it's, I think a lot of people
- 31:14talk about it within agents, right?
- 31:16You start simple. First you had multi agents.
- 31:20We jumped on that like a multi agent, so crazy.
- 31:23You're building something so nice.
- 31:24And then we said, I'm like, oh, it doesn't work.
- 31:27So with evos is a bit the same. You start slow, you start, you
- 31:30know, to get as far as you can with what you have and then you
- 31:33build up on top of that. And you know, you always make
- 31:37sure that your core is the most reliable that you can have.
- 31:39So your core evaluators that are tied to your business metrics
- 31:43are tied to your behavior. You know, it's going to be
- 31:46always a bit different sets, right?
- 31:48So as mentioned before, it's a constant search.
- 31:51So but they're always going to be like you're a group of like,
- 31:54you know, your puppies that you're going to always want to
- 31:56take care of and you see that they're very much correlated or
- 32:00related to your business metrics.
- 32:03And then on on top of that, you can build something more
- 32:06sophisticated AB testing suite, you know, just check on the
- 32:09regressions. You know, we also started to
- 32:12experiment a bit with DSPI, so trying to, you know, improve the
- 32:16prompts if you showed examples. So there's a lot of even
- 32:20simulation of of the agent that we talked about.
- 32:23I want to know about eval tooling and all the the good,
- 32:28the bad and the ugly. Yeah, I I don't use them that
- 32:32much beside observability so far I think.
- 32:36Observability like Datadog observability.
- 32:38Yeah, it's just, you know, basic metrics or just having a tool
- 32:42that is showing your conversation and a nice way.
- 32:45So you are you're allowing your team to see the conversation
- 32:49turn by turn. And yeah, that's my main thing
- 32:53purpose because I think there's a lot of, as you said, there's a
- 32:55lot of them out there. And as I mentioned before, it
- 32:58links very well to what we talked about.
- 33:01Every use case is different to so name a platform that is able
- 33:04to, you know, match your use case.
- 33:07And all those evaluators are so outdated sometimes, like they're
- 33:11breaking basic rules. That one that you can also
- 33:13create and observe in the tools and themselves.
- 33:17Like if I'm going to see again that is evaluated, that is on a
- 33:19scale of from zero to 1, like I'm not going to trust in any
- 33:22other thing in this app platform because I, I hate this.
- 33:25Like, why would you? We talked about it during the
- 33:28workshop. Like if you have a .6, you know,
- 33:31on a scale about the hallucination.
- 33:35OK, so you wake up on Monday morning, my evaluator is .6.
- 33:38And I'm like, what does it mean? Give me pass or fail, right?
- 33:43Give me the the real actionable insight.
- 33:45So coming back to the tools, I do have my favorites in a way.
- 33:50I call them friendly tools because they're not really
- 33:53useful yet for me, but they're friendly because they help me
- 33:56with my work. So they enable a quick export of
- 33:59the data. So you know, there's my pipeline
- 34:01is working without impediments and there are a lot of tools out
- 34:05there that are, there are huge impediments on that.
- 34:08If I export more than 1000 traces, it suddenly slow down.
- 34:12I have to do things in batches and it takes hours.
- 34:15So imagine you want to run EVO and then you wait hours for for
- 34:19your data set. They also don't enable sampling
- 34:22as far as I'm concerned. And there's another thing, why
- 34:24would you run Evo's in every single trace of yours if you
- 34:27have 100,000 traces? And imagine you have 6
- 34:31evaluators, 100,000 traces, then you want to do it on turn level
- 34:35or multi turn level, so conversation and then you know,
- 34:40you have to pick your strategy for that.
- 34:44You don't want to spend thousands of dollars just to run
- 34:47evaluation to tell you that five of them were wrong.
- 34:49Yeah, So that's what I think. Not a lot of them enable multi
- 34:54turn conversations. If they do, I don't think in a
- 34:57very good way as far as I'm concerned.
- 35:00That's why I look at them how well they enable me the export
- 35:05of data. Not only for UI, but I'm talking
- 35:07mostly of about APIs, how they, how will they work?
- 35:11I will still look how well the dashboard looks like, because I
- 35:15don't want to interest another tool to make only dashboards.
- 35:17I don't want to, you know, have my observability tool with all
- 35:20the traces, do my custom pipeline and then on top of that
- 35:24also introduce another tool that I'm going to put my dashboards
- 35:27in. And then I'm like, OK, that's
- 35:29it's trivial, but it's also not really well yet.
- 35:33Like it's not looking good. But for the team matter, if I
- 35:36want to look at the error rates, I want to look, you know, how
- 35:39what's the changes? What are the regressions?
- 35:41It's also important. So custom friendly too is
- 35:44something that I would look for and it's not a lot of them out
- 35:48there. I work with Arise very often.
- 35:51I do see Phoenix or Arise the enterprise version.
- 35:57There are some issues still with this, so I'm not like 100%
- 36:01happy. I'm not going to go for UI
- 36:03solution inside of it to create my evaluators, although I tried
- 36:07and funny enough, it's way harder to create an evaluator
- 36:10within the platform that if I would just write a code for it
- 36:13because you have to, you know, every data set is different
- 36:16every, each of the tool, whatever you choose.
- 36:19And then you have to match them try to do with a multi turn
- 36:21level. I'm not sure if that even
- 36:22enabled. I tried, I was, you know,
- 36:25tweaking it, you know, I spent the whole day and I was annoyed
- 36:28because I lost it. So yeah, I don't know if that's
- 36:32a hot take. I just don't like them.
- 36:35So I just, you know, try to make sure that they're as friendly as
- 36:38they can be to enable my work to be as quick as it can be.
- 36:42And then, you know, I'm looking forward to maybe explore
- 36:45something more if there's going to be more options.
- 36:47I'm sure there's going to be plenty more that come out.
- 36:49Yeah. Is there something that you wish
- 36:51you had besides the custom ability?
- 36:55Yeah, I do, but actually built it.
- 36:57So tell me more. Yeah, I was thinking about
- 37:01everybody is, you know, enabling you to push out your evaluators,
- 37:05all these experimental things, AB testing suite.
- 37:09And I'm like, OK, but where is the basic?
- 37:11So how do I train my evaluator? How do I, you know, approve, go
- 37:16through actual coding without opening Excel?
- 37:18Because that sounds really funny to me that even in the very
- 37:22famous courses that are promoted on LinkedIn, we do ASO coding
- 37:25and open coding in Excel. I'm like, OK, when I seen it,
- 37:28I'm like, OK, this is not normal.
- 37:30So we're the tools that are enabling that to go through the
- 37:33whole process of discovering your failure modes, sampling
- 37:36your data, which is not really there yet in the in the
- 37:38observability tool. Then, you know, create a good
- 37:42interface to go through the traces without, you know, losing
- 37:46yourself. And then, you know, split the
- 37:48data training, validation. So the basics actually about the
- 37:52evaluator and then pushing into production.
- 37:55So I would say a thing that would enable me creation,
- 38:00creation of evaluators that are reliable and I don't see it yet,
- 38:06but yeah, we solved it internally and the.
- 38:10Thing is just so easy to build now.
- 38:12Yeah. But especially for things that
- 38:15are internal for your team's use case, it's like, do you need to
- 38:19go out on the market and then have a company go through
- 38:22procurement and make sure that all the data sharing privacy
- 38:26laws are right if you can just build it?
- 38:28Yeah, yeah, it's, it's tricky and I think a lot of people just
- 38:33fall for it and I don't want to fall for it.
- 38:38And I very much always, you know, discuss that and go in
- 38:41detail. What's your methodology and
- 38:43training the evaluators? What do you think are your
- 38:45starting points? Another thing, outsourcing the
- 38:48labeling, No, that shouldn't happen.
- 38:52Like why would I, you know, why would I leave the labeling part?
- 38:55First, That's the greatest opportunity for you to learn
- 38:59what's happening. Second of all, why would you
- 39:02trust anybody else if it's your product and you know how you
- 39:06want to assess it? So basic thing, why would I do
- 39:11it? So a lot of those companies are
- 39:13still trying to sell you something that you're going to
- 39:15as source of labeling. This is the quickest way you're
- 39:18going to create evaluator about your house nation.
- 39:22Good. Thanks.
- 39:23Yeah, yeah. And you're very opinionated
- 39:26about how you want your evals to be, and you know from experience
- 39:30what has been working and not working, so it makes sense that
- 39:33you would want more of a custom solution.
- 39:35To be honest, mature product teams are in my opinion, are
- 39:39going to usually go for custom solution because evils
- 39:45themselves are not very hard. Like if you think about the
- 39:48process to grasp the complexity is maybe something hard but
- 39:53simple task. There are simple tasks that you
- 39:55have to do, but you have to structure them in a good way.
- 39:58You have to be consistent, you have to iterate and then you
- 40:04have to have your own strategy. And I think the alignment with
- 40:07being team members and alignment on what it, what matters for
- 40:11your product is the part that is the trickiest part.
- 40:14And the execution part is like, yeah, we finally want to see
- 40:16numbers part. Is the last step in it.
- 40:21So and to be honest, I think a lot of solutions are trying to
- 40:25sell you something that is, you know, trying to replace the
- 40:29first crucial part of the evaluation.
- 40:32So the alignment on it. And I don't think it's
- 40:35replaceable. I don't think it's something
- 40:38that we can, you know, ultimate very quickly.
- 40:41And yeah, that's why it's failing.