Latest / Agentic Conversations (formally mlops.community) / Conversation with the MLflow Maintainers
Transcript
- 0:00All right, folks, I'm super excited for this conversation
- 0:02that I just had with Jules, Danny, and Corey.
- 0:05They are on the ML Flow team. They are veterans in the space.
- 0:10Jules literally wrote the book on Spark.
- 0:13Now he is leading the developer relations side of ML Flow, and
- 0:17Danny and Corey are both lead engineers crafting what we know
- 0:23and love about this classic tool.
- 0:25And they talked about how ML Flow is leading with open
- 0:31source. They really want to go all in on
- 0:34the open source ML Flow and bring it to this new agent
- 0:38paradigm that we're in. Enough of me chatting.
- 0:41Let's get into the conversation with it.
- 0:49Not every day that I get to hang out with so many incredible
- 0:53people, I am graced by not one, not 2, but three of the ML Flow
- 0:59team. How y'all doing today?
- 1:01I'm super stoked to chat about agents in production.
- 1:05You guys have been doing a lot with it and I think each one of
- 1:09you individually has been on this podcast before, just in
- 1:14different phases of your lives. It's cool to see you all working
- 1:18on ML Flow and doing things in this new.
- 1:22Agent era, absolutely. I think all of us have come a
- 1:28long way and at the same time, some of us are continuing to
- 1:32focus on developer experience for AI in a radically different
- 1:38domain, models to agents, feature stores to agents as it's
- 1:43kind of exciting. Thanks for having us back.
- 1:45Yes, we all, we all, we all, we all will come a long way from
- 1:49from Spark to MO Flow and back to Spark and back to Emma flow.
- 1:53So I'm delighted to be working again with Danny and with Corey
- 1:58and obviously talking to you. We have had many interactions.
- 2:01I just love you. Me serenading on, on, on on the
- 2:04stage with your with your Kalela.
- 2:06That was that was the highlight. Absolutely.
- 2:08That was the highlight. Yeah, Well, I, I feel like a lot
- 2:13of this is reflective just with, it's not just like what like
- 2:16what the three of us have been doing.
- 2:17It's also like MO OPS community is like been shifting as well.
- 2:20Like we've we kind of all working in various versions of
- 2:24the, the classic MO world before and then it kind of evolved
- 2:27shifted over to this like NAI Asians kind of OPS space, right?
- 2:31So. Yeah, it evolved real quick.
- 2:35And so Speaking of evolving, like MO Flow has evolved a ton.
- 2:42You guys have been seeing folks that are putting their agents
- 2:45into production. I would love to start out with
- 2:49just what have you been seeing out there?
- 2:51Each one of you comes at it from a different perspective, so
- 2:53maybe we can get your takes on the conversations you're having
- 2:59each day. Yeah, 100%.
- 3:01I think as we talked about agents in production, the first
- 3:06natural question to ask is what are people trying to put in
- 3:10production, what are they building and and what are they
- 3:12deploying? And after talking to a lot of
- 3:16our customers, open source users can pretty confidently declare
- 3:20that the age of the chat bots is is still here.
- 3:25It ain't going anywhere. The the bulk of our customers,
- 3:29the bulk of our open source users, they're building chat
- 3:32bots. Yes, you know, some of them that
- 3:34started as text only bots a couple years ago have become
- 3:37multimodal. And we do get the occasional
- 3:40like voice application. Folks are doing speech to text
- 3:43and then they get the text back and they go to text to speech.
- 3:46Some are processing images, but the end of the day like that
- 3:49chat interface remains pretty ubiquitous, like well over, you
- 3:55know, 50 or 60% of use cases, which is, is massive.
- 3:59The other thing that I'd say about chat bots and there there
- 4:02are a bunch of other use cases that I'll let Danny and others
- 4:04talk about is that they're pretty much all tool calling
- 4:07chat bots now. And we, we have the age of Rag
- 4:11up until about a year ago that everybody was really excited
- 4:15about document retrieval specifically.
- 4:17And now, yeah, folks are continuing to retrieve
- 4:20documents. They're they're gathering
- 4:22information from knowledge bases, they're indexing them,
- 4:25but they're doing so much more around that as well.
- 4:27You know, they're, they're making real time API calls to
- 4:29other services, other services to fetch information.
- 4:33They're even having their chat bots take various actions.
- 4:36You know, I'm going to go ahead and save some information about
- 4:38this user to a knowledge base. So there's not just read,
- 4:41there's a little bit of rights coming in as well.
- 4:44So this chatbot interface has remained somewhat consistent.
- 4:46Maybe it's become multimodal, but then under the hood, the
- 4:50architecture is has evolved quite a bit.
- 4:52So thanks to the powerful models that seem to be being released
- 4:57every week or two now, I think that's what you can probably
- 5:00attribute to a lot of the upgrades behind the scenes.
- 5:02So that that's my pitch on on chatbot use cases.
- 5:08Danny, Jules, what else are we seeing?
- 5:10Yeah, well just elaborate on that.
- 5:12I think chatbots have all what I've seen is chatbots are
- 5:16getting more and more sophisticated.
- 5:17So maybe an initial just like text based chat chatbots now
- 5:20we're seeing like they're there's a lot more like rich
- 5:24kind of return types, like maybe like rich HTML that's being
- 5:26returned or like more human in the loops or within this agent.
- 5:30Now you're adding like kind of multi agent systems or but it's
- 5:35still like a chat interface to the user or there's a basically
- 5:39yeah, the infrastructure underneath people are building a
- 5:41like more complex like guardrails within the agent, you
- 5:43know, just to as they get closer and closer to production or
- 5:46working with higher stakes use cases, I think people are now
- 5:49just beginning to get some of those like all you can't just
- 5:52Willy nilly launch some of these production kind of use case on
- 5:54the production now. So, so that's been cool to see
- 5:59and. Yeah, I've seen.
- 6:02Let me jump in there, Danny, because when you talk about the
- 6:05advanced, the chatbot is a little bit more advanced.
- 6:09I don't know if you guys saw this website called AIUX design
- 6:14Patterns. It is brilliant.
- 6:17It gives you all these different ways that folks are levelling up
- 6:22chat. And right now a lot of them are
- 6:27just kind of concepts. But you have things like you can
- 6:31highlight certain parts of the response in a chat and then
- 6:36expand on only that part, you know, which is so nice as a user
- 6:42experience because a lot of times you want to say like, Oh
- 6:46yeah, I like all of this, but I don't like that part.
- 6:49Or I've also seen designs where they'll come back with a
- 6:55carousel of items for you that you can scroll through like
- 6:59we're natively used to using, as opposed to only chat in, chat
- 7:04out, that type of thing. But yeah, you were going to say
- 7:06something else, Danny, so hit me with what else you were.
- 7:08Mentioning. Well, that kind of reminds me of
- 7:11a different thing that I'll touch on as well.
- 7:13But I was going to say, even though all the chat bots are
- 7:17getting more and more complex, it's surprising to me how
- 7:21nascent the observability and the eval space has been for for
- 7:25these chat bots. Like you'll notice that the
- 7:28current discourse is a lot about like multi turn evaluation
- 7:31assimilation, how like basically every vendor or solution still
- 7:35is like really just kind of be in to get the free wet.
- 7:38But like multi turns, like conversations in chat bots are
- 7:40naturally multi turns. So like, you know, why hasn't
- 7:42there been kind of more robust tooling in that space?
- 7:44And really a lot of customers have had to just work around
- 7:46that and build their own tooling that's like super bespoke.
- 7:51So yeah, that that's been interesting.
- 7:52Yeah, I mean, I mean talking to Boatwood, Corey and and Danny
- 7:55say they'd be actually begin to see my conversations having a
- 7:59lot of developers out there. The chat boat is seems to be the
- 8:02favorite one and the and and as Danny pointed out, more of these
- 8:06evaluation judges are being written.
- 8:10For example, deep eval and Ragas do provide a very specific board
- 8:14built in as well as custom judges.
- 8:16You can actually do multi turn evaluations.
- 8:18So we begin to see more of that in that particular area where
- 8:23chat ports are being written, but they begin to feel the
- 8:25confident that they can actually write these judges to evaluate
- 8:28the multi turn sessions, to evaluate the entire granular
- 8:30session. And that somehow seems to be the
- 8:34the trend, at least from what I've seen from developers trying
- 8:37to ask questions or, or hit me with, you know, how are, how are
- 8:41you actually evaluating your chat board in production?
- 8:43I'm using my I'm using either ML flow, I'm using some framework
- 8:47that actually has a host of built in judges that allow me to
- 8:52gauge a particular metric, or I can write my custom judges along
- 8:55with agent as a judge. So we we begin to see quite a
- 8:58bit of that trend. But yeah, I I think it people
- 9:04are beginning to talk about multi turn judges now, but not
- 9:07because not because like they didn't need it.
- 9:10Like I think as soon as we launched multi turn judges or we
- 9:12started talking about other people were like, yeah, I need
- 9:14that. That's like the first thing I
- 9:15want to start with. It's like, you know, I want to
- 9:18know is my chap is are humans like escalating to get like, you
- 9:22know, people trying to get escalated to human support?
- 9:25Are they, is the agents repeating it over and over again
- 9:28like all these like common, like Asian problems you really start
- 9:31seeing in the context of a conversation rather than in a
- 9:33single turn? And really as soon as we
- 9:35launched it, people are like, cool, yeah, we're going to use
- 9:37that immediately. We needed that yesterday an.
- 9:40Example of this that I like to use a fair bit is determining
- 9:45whether an agent is being repetitive.
- 9:47I can't figure that out just by looking at one input output.
- 9:51No clue. But if I can see a, you know, 20
- 9:53turn conversation, my God, this agent keeps saying the same
- 9:56thing. It's giving me the same answer I
- 9:57ask For more information and it continues to respond with
- 10:01basically the same stuff rephrased, it becomes a lot more
- 10:04obvious. And so that's where you know, I,
- 10:07I can't figure that out If I have this little function, this
- 10:09thing called a judge is, is looking turn by turn.
- 10:13I have to have the bigger picture.
- 10:15Same thing comes with human feedback though, that, you know,
- 10:18a lot of times folks, rightfully so, are using their end users or
- 10:23internal testers and whatnot to determine whether a chat bot
- 10:27meets their needs and they need that conversational feedback.
- 10:33Indicating that this particular message didn't make a ton of
- 10:36sense is kind of helpful, but it's much more useful if I can
- 10:41say this entire interaction should have been half as long
- 10:45or, you know, I, I got this is what I was trying to achieve
- 10:49with this interaction and this is where I got and what was
- 10:52missing. So I think there's an element of
- 10:54human feedback. There's there are these
- 10:56questions about how I automate the process of finding issues in
- 11:00these multi turn interactions and bugs at my agent.
- 11:04And it's funny, it's taken us long this long to get here and
- 11:06that everything started with sort of single turn input
- 11:08output, because this chatbot interface is especially this
- 11:11multi turn thing was the first thing launched, you know,
- 11:14November of of the three years ago now, you know, ChatGPT was a
- 11:19multi turn chat interface. And so it's kind of funny that
- 11:22we've finally started to catch up in terms of the evaluation
- 11:26and the quality measurement side.
- 11:29Yeah, you touched you touched on 2 very selling .1 is the
- 11:32repetition right? How do I know that if I had if I
- 11:36had a 20 turn conversation, something was not being
- 11:38repeated. And the third was the logical
- 11:41consistency is, is there a logical flow between each and
- 11:44every steps or am I being consistent or I've been
- 11:47contradictory? And I think those are the
- 11:49important elements where where the judges can actually help to
- 11:52detect in the multi turn conversation 1 the coherence.
- 11:56Is there a logical flow B is a context B retention.
- 11:59I refer to something you know, 20 turns before is my agent or
- 12:04is my conversation board has has the ability to remember that in
- 12:08the context. So I think those are the
- 12:10important thing and that actually collectively those met
- 12:13make the the chat board more robust and and and and more
- 12:17cohesive. Yeah.
- 12:18So you, you touched on that important.
- 12:19Point yeah, 'cause you kind of take it for granted us in this
- 12:23field that we understand, oh, potentially a lot of times to
- 12:27get the best result we should just start a new chat and clear
- 12:30the context window. But that's not like I would
- 12:35guess that your average user off the street doesn't know that.
- 12:40And so how can you make sure that what you're talking about,
- 12:43Jules, that stays true? Like if somebody wants to
- 12:47reference back and you're not doing it properly, you know that
- 12:51and you have a way to either be at the janitor of that context
- 12:58or encourage them to start a new chat or do something because
- 13:02that just leads to poor user experience. 100%, And I think it
- 13:08dovetails nicely with this whole topic of memory management for
- 13:12agents that that everybody seems very rightfully excited about
- 13:16the idea that a very long message history gives an agent a
- 13:21ton of rich context. If, if I've been talking with a
- 13:26chatbot for 15 minutes and then I ask it to do something that
- 13:31follows naturally from that 15 minutes conversation, I'm much
- 13:34more likely, I would guess, to to get the result that I'm
- 13:36looking for. At the same time, there is that
- 13:40trapdoor pitfall that I think you rightly point out where if
- 13:43I'm asking for something totally different, you know that 15
- 13:47minutes of context can hurt more than it helps.
- 13:50And so to me, I view it as a problem of memory and state
- 13:54management in an agent across all the conversations that I've
- 13:59had with this particular chatbot.
- 14:01When I go and I ask for something, whether it's in the
- 14:03middle of an active conversation or a brand new one, what
- 14:06information about me or about my intense or previous interactions
- 14:11is this agent drying from? And that's something that they
- 14:15were taking a pretty close look at, at Databricks and then from
- 14:19a research perspective as well. And, and I think it's an
- 14:22important topic for the industry at large, just agent memory.
- 14:25Yeah, yeah. And how do you weight memories?
- 14:28Exactly. So Corey, Corey, you're
- 14:30referring to the short term memory and long term memory
- 14:32where if the 50 minute conversation has has has just
- 14:37passed and nothing has been eluted in further conversation,
- 14:40that 15 minute turn can be actually put in a long term
- 14:43memory and can be retrieved on demand, right?
- 14:46And the short, short term memory is just like, OK, I'm going to
- 14:48flush this out and I'm going to start a new session.
- 14:51But I'll keep that in short term memory.
- 14:52If there is a reference to certain thing that I talked
- 14:56about previously that doesn't exist in my short term memory,
- 14:58I'm going to go and refer to the long term memory to see if the
- 15:01context is there. And that way, as you say it, it
- 15:05maintains a good flow and you as a user has a better experience
- 15:09to say, OK, you know, this guy remembers everything for the
- 15:11last half an hour that I actually had.
- 15:13So it's like a human really be paying attention to you and, and
- 15:17referring to something that you had asked about 15 to 20 minutes
- 15:20half an hour ago, that is. And that is like a moment.
- 15:23Oh, wow, this is this is brilliant.
- 15:25I can't, I can't believe half an hour, half an hour ago, I asked
- 15:28it to do something and I referred it to it.
- 15:30And now he actually comes back and gives me a full answer.
- 15:33That is definitely aha moment. Magical I'll tell you what
- 15:38though, when I encounter chat bots in the wild and they don't
- 15:42work that well, I am very adamant caps locks and
- 15:47everything saying how bad this damn bot is and I just like I'm
- 15:53trying to flag it so whoever is doing evals on the other side,
- 15:57they see that like oh maybe we should try and make it better in
- 16:02this area. You know it's.
- 16:04Funny because 1 customer that we worked with, they were kind of
- 16:09like they lost the production without really doing too much
- 16:11for us Evo. And like at some point they were
- 16:14looking at all their like responses there.
- 16:15It's just like like I think most of their cast were just people
- 16:19swearing at the chat bot. And so really, it was like
- 16:22trying to serve a different purpose, but ended up just being
- 16:24a therapy chat bot for all of all their users.
- 16:28But but interesting, Danny, when you, when you become abusive to
- 16:31the Chatbone, if you have a judge that actually that, that,
- 16:34that has the frustration, like for example, in Nemo Flow, we
- 16:36have the built in evaluation called user frustration, right?
- 16:41And so it detects, it detects your language and tonality and
- 16:45based on that, it would actually respond.
- 16:47Sometimes it surprises you when you know, you, you were
- 16:49frustrated about this topic and you, you would come back with a
- 16:52nice polite answer to mitigate the frustration.
- 16:55I think that's an interesting way how how chatbots can somehow
- 16:58appear like human interaction because of the fact that we
- 17:01actually have this old both built in as well as custom
- 17:04judges that you can actually write and you can specify and
- 17:07tailor it to your to your chat bot, right.
- 17:10That the chat bot is talking about insects then, and
- 17:12everything dealing with insects would be sort of more tailored
- 17:15to that. The other piece of this, beyond
- 17:19yelling at the chat bot, is the degree to which folks are
- 17:23collecting like thumbs up, thumbs down, categorical and and
- 17:28free form feedback from their chat bots.
- 17:31I I noticed that a lot of folks, the first time they deploy to
- 17:35production, haven't really thought about collecting those
- 17:38signals as much as you might expect.
- 17:41As a result, you know, like Dimitrios, you resort to caps
- 17:44locking and yelling at an agent in the chat window.
- 17:48But it's often high signal for developers if they can get a
- 17:53more structured set of feedback, if they can get thumbs up,
- 17:56thumbs down, or they can get a 1 to 5 rating and they can, they
- 18:00can carve out a separate text window or field for an
- 18:04explanation about why things are going well or where that they or
- 18:07where they can improve. I think a lot of folks treat
- 18:10that as an afterthought. And it's a little bit
- 18:13surprising, at least to me, because it's pretty fundamental
- 18:15to A, figuring out if you deployed something that's
- 18:19working reasonably well, and then B, automating that process
- 18:23of fixing and identifying quality issues in the future.
- 18:26Like it's hard to sort of automate the detection of a real
- 18:30quality problem without having some early signal from your
- 18:33users about what the quality problems are.
- 18:36So the The upshot here would be feedback collection is massively
- 18:40important and to some extent under invested in in the chat
- 18:44bot ecosystem. And the interesting thing is
- 18:46it's very easy to build all the all the stuff that folks are
- 18:49doing around stitching together, you know, tool calling chat bots
- 18:53with knowledge databases and external APIs and putting that
- 18:57in an awesome web front end and storing data securely.
- 19:00All that stuff is hard. You know, collecting a little
- 19:03bit of end user feedback is pretty straightforward and all
- 19:05shamelessly, you know, plug the ML flow feedback collection AP
- 19:09is as being a particularly low friction and an easy product
- 19:13surface to use. But the the point is like, spend
- 19:17that extra hour that's that's really all it should take to
- 19:20wire up some end user feedback to and understand the quality of
- 19:23your agents. Corey, you, you, you touch on a
- 19:27very important point. How do we actually take the
- 19:29human feedback and what, and, and operationalize it from your,
- 19:33you know, from your experience talking to customers, even
- 19:37developers, how do you think they're actually doing it?
- 19:39So when they have the MO flow deployed and, and they're going
- 19:42through the UI to add additional feedback, how does it get
- 19:45injected into, into the, into the traces so they can improve
- 19:50that? Yeah.
- 19:52It's a great question. So what you have with most
- 19:56deployed agents where you've integrated some amount of
- 19:58tracing is effectively this massive log statements, whether
- 20:03you collected them with them all flow or a variety of other
- 20:05solutions. You you have thousands, hundreds
- 20:08of thousands, even millions of these time stamped logs.
- 20:12You can open them up and you can see the statement by statement
- 20:14stacked trace. What feedback helps you do is
- 20:17filter those. So I want to.
- 20:20You know, find the needles in this haystack in most of my
- 20:23hundreds of thousands of interactions aren't necessarily
- 20:26going to be labeled. The quality might be reasonably
- 20:29good if folks didn't take the time to express their
- 20:32frustration or, you know, provide some feedback.
- 20:35And So what I would like to quickly do is ignore all the
- 20:38stuff that I know is working well and I don't have to look at
- 20:41closely. I want to, you know, click in
- 20:43this UI, apply a filter for certain types of negative
- 20:48feedback. You know, for example, user
- 20:50frustration is is high. OK, I'm going to apply that
- 20:53filter. Or the completeness of whatever
- 20:57task the agent was being asked to perform is is low.
- 21:01It's only providing partial information or not fully meeting
- 21:04the users objective that condenses this log of thousands
- 21:09and hundreds of thousands of stack traces into a few things
- 21:14that I can then analyze more deeply and start to root cause.
- 21:18It's great to understand that the user was frustrated why?
- 21:21And then now I have to actually take a look at those particular
- 21:23log statements. Then in the future, once I've
- 21:27uncovered that root cause and I've started to implement a fix,
- 21:30I don't want to have to go back to my end user and say, is this
- 21:32better now I should be able to like take their their feedback
- 21:36and turn it into some sort of unit test.
- 21:38And that's where these like evals, you know, automated
- 21:42techniques really help. So that that's sort of the
- 21:46pipeline that I see. It starts with the feedback that
- 21:47collection and proceeds to filtering.
- 21:50There is some human debugging and then you're fixing with
- 21:53these automated unit tests that you can build.
- 21:56And those, those unit tests somehow help us to improve the
- 21:59the prompt as well, right? Not to not.
- 22:01Not to get repeat the same rut again, not to get into the same
- 22:05frustration loop and all that. Yeah, I think there's a variety
- 22:08of of solutions out there. So prompt optimization is
- 22:11certainly one that prompts and still remain, I think a major
- 22:17determining factor of agent quality.
- 22:20Two or three years ago, everybody was talking about
- 22:22hiring professional prompt engineers.
- 22:24A year after that it was, well, you know, this prompt
- 22:26engineering thing is brittle. We should look at fine tuning.
- 22:30We, yeah, there are other techniques that that may serve
- 22:33us better and get us further. It seems like prompt
- 22:36engineering, though, has sort of remained front and Center for a
- 22:39lot of agent developers. So you're absolutely right.
- 22:41In the process of fixing an issue, I may want to do a fair
- 22:45bit of prompt engineering to get the agents to make better
- 22:48decisions, retrieve information from a knowledge source more
- 22:52proactively, issue queries against the web service somewhat
- 22:57differently and beyond or, or to take on a different persona.
- 23:01These are all valid use cases for prompt engineering.
- 23:03And so something that we've been investing in quite a bit in them
- 23:07all flow is making that quick and, and effective.
- 23:10I've personally spent days prompt engineering Voice
- 23:15Assistant that I build at home and it can be agonizing.
- 23:19Wouldn't it be great if there was some automated technique
- 23:21that I could use to to make that process a little more efficient?
- 23:25And that's where, you know, the research folks at Databricks,
- 23:30but also just more broadly in academia, I have been pushing
- 23:33forward this concept of prompt optimization.
- 23:36So given the collection of negative feedback, given some
- 23:41information about what isn't working in an agent and given a
- 23:44set of prompts, how can I come up with better the versions of
- 23:48those prompts that that mitigate and fix those issues?
- 23:52And, and can I treat this basically like a optimization
- 23:56job and an automated automated solution rather than this human
- 24:02in the loop English instruction modification thing where you
- 24:06know, I, I don't know if I'm making deterministic progress
- 24:09and I might be spending like hours or days coming up with
- 24:12better versions of my prompt. You're talking about this where
- 24:15the gap optimization comes into play, where you can actually
- 24:17optimize your prompt engineering using the the the gap
- 24:21optimization as part of the MO Flow library.
- 24:24So one of the things as you mentioned that when you actually
- 24:27want to automate that the prompt engineering part will be OK.
- 24:29Here's a here's a set of prompts.
- 24:31Run you through the gap Run you through the gap optimization to
- 24:34get the best prompt to see how how you can actually do that.
- 24:38One thing that I find interesting when it comes to
- 24:42trying to optimize your prompts from when you're out there and
- 24:47you're trying to Add all these edge cases, you can quickly get
- 24:50into a place where you've got this massive prompt because
- 24:53you've added all these edge cases in and then you end up
- 24:58destroying your usability of the agent since you tried to cover
- 25:04for all this. And I, I know I've seen folks
- 25:06that will focus on like dynamically adding in or
- 25:11injecting in the context. And that's why we have all
- 25:15heard, you know, the rise of the context engineer, because you
- 25:17got to throw the right context in at the right time and you
- 25:21really want to. Have.
- 25:23Not more than you need. It's If it's anything, it's like
- 25:27just enough but not too much. Certainly.
- 25:32And. And if you're not careful, like
- 25:33you said, you end up rewriting a rule based system.
- 25:37Except this time you're not writing it in Python or
- 25:39TypeScript or or Java or whatever.
- 25:41You're writing it in English and you know that that is
- 25:44effectively becomes lower quality and more brittle almost
- 25:48than just writing it in code. So you're 100% right.
- 25:51And that's where some of these optimization techniques and
- 25:53optimizer like EPPA frameworks like DS Pi that we try to
- 25:57integrate closely with an ML flow can help you avoid that
- 26:01because they're, you have to force them to generalize across
- 26:04a whole bunch of samples at once.
- 26:06So you can't necessarily overfit sample by sample by sample.
- 26:11The ultimately that optimizer is not going to be able to produce
- 26:16good quality that way across thousands of of test cases.
- 26:20So that that's certainly one way to arrive at a prompt that a
- 26:23fixes your problem, but B avoids that overfitting and then sort
- 26:27of rule based prompting that can quickly really get out of hand.
- 26:31So that really resonates. Absolutely.
- 26:35Yeah, I, I don't know if we've seen our own kind of like
- 26:38customers hit the case where they're just like adding so much
- 26:41stuff into the prompt that it's like really polluting the the
- 26:44conversation. I think they, they're still more
- 26:48in the state of we've thrown something in there and we're
- 26:50still trying to figure out like how good is the the agent in
- 26:53general. But yeah, also I feel like
- 26:57people have stopped short of that because they are cost
- 26:59conscious as well. Like they don't want to just
- 27:01blow their own kind of token budget, and that is something
- 27:04they're tracking very closely. So you don't want to construct
- 27:06this like massive prompts that just continuously sucks all your
- 27:09budget every single turn. And you were you were talking
- 27:13about something before gory that I think is fascinating when it
- 27:16comes to the feedback collection and how like you normally need
- 27:22to bring in the subject matter experts for that type of a
- 27:26thing. When you get that feedback, it's
- 27:28great from users if they raise their hand and they're kind
- 27:32enough to take the time and tell you what's wrong with it.
- 27:34But a lot of times when you're looking at these multi turn
- 27:37conversations, you're just going to bring in a subject matter
- 27:39expert and say, like, is it doing what we want it to be
- 27:42doing? And I've heard a huge complaint
- 27:46from folks about how subject matter experts don't want to be
- 27:51looking at like Jason, they in fact they can't really be doing
- 27:55that. So you have to figure out how
- 27:57can I give these folks the data in a way that they can properly
- 28:02annotate it and add value to it that isn't just like logs dump.
- 28:10100%, absolutely. And that's something that we've
- 28:14spent quite a bit of time at data breaks and in the ML flow
- 28:18open source community investing in attempting to address that
- 28:23challenge of as a domain expert, how do I quickly like recreate
- 28:28that same view that that end user had, overlay some extra
- 28:32information that helps the domain expert get to the bottom
- 28:35of what went wrong and then very quickly provide their expertise.
- 28:41And so that's a matter of if I have a chat bot out there and
- 28:45user said, hey, this really isn't going well.
- 28:47You know, I'm Dimitrios, I'm yelling at the thing.
- 28:49I'm frustrated. Whatever.
- 28:51I as I then call in my domain expert, Danny or Jules, and
- 28:55they're reviewing this interaction.
- 28:56They're trying to figure out whether this agents that's
- 29:00designed to answer questions about like telecom customers or
- 29:03something is what, what is it that is making Demetrios so
- 29:08frustrated? They should be able to replay
- 29:11that exact chat. They they should have access to
- 29:13the turn by turn chat first and foremost, but then often times
- 29:17that isn't 100% sufficient. They should also be able to see,
- 29:23OK, this particular turn of the chat, the agent went and
- 29:26accessed information. Where did it access?
- 29:28OK, it accessed information about the user's account rather
- 29:34than about like the the line of products.
- 29:36And Dimitrios was trying to get a new phone.
- 29:38He's not asking about his account or billing related
- 29:41questions. So if I can give Danny and Jules
- 29:43that information in AUI and they can look through it and very
- 29:47quickly go, OK, this thing is fetching the wrong info, then
- 29:50that's very, it's very easy for them to come back back and say,
- 29:53all right, I found the source of Demetrios's frustration.
- 29:56It was, you know, the sort of knowledge retrieval problem.
- 30:00And so data bricks, we've invested quite a bit of time
- 30:02building this review application where I can collect a bunch of
- 30:06these chat sessions and I can send them over to domain experts
- 30:10in my organization. They get back that full chat
- 30:13view with the overlay of what information was retrieved.
- 30:16That way they can dive deeper and they get this awesome
- 30:19feedback form where they can provide root cause analysis,
- 30:23which then helps the developer go back and fix their agent.
- 30:26They can then send that review app to any other member of their
- 30:29organization. And we've been really invested
- 30:33and actively working on bringing this into the open source
- 30:35community as well. The vision is that anybody
- 30:39running open source on all flow should be able to spin up
- 30:42exactly the same UI, send it to any other member of their
- 30:45organization, start collecting these labels.
- 30:47And so that's a problem that it's home is deeply, I think,
- 30:53personal to all of us on this call at this point.
- 30:55Well, maybe it's interesting to talk for a second about how ML
- 31:00flow. You traditionally were building
- 31:02for data scientists, right? And now do you feel like the
- 31:07persona has changed? And if so, who are you building
- 31:11for? There's more stakeholders
- 31:12involved. What does it look like now?
- 31:14A. 100%, but we, we are focused on continuing to serve that
- 31:19community of data scientists who want to build awesome high
- 31:22quality models to, to make clear that's not going anywhere and is
- 31:26is super important to us. At the same time, what we found
- 31:30a couple of years ago is there's so much synergy between agent
- 31:33developments and model developments.
- 31:35You're going to this process of building an initial version of
- 31:41an AI application, you're measuring its quality, you're
- 31:45iterating on it, you're managing the deployments of that thing.
- 31:48You're collecting signals from your end users once you've
- 31:52deployed it. Yeah, that's true whether you're
- 31:54building an agent or a model. And so we felt like, wow, we
- 31:56can, we can take on this problem, we can start addressing
- 32:00the needs of agent developers. But as you dive in the next
- 32:05order of detail around, OK, how do I measure the quality?
- 32:08How do I deploy this thing and and understand whether it's
- 32:11operating well in in production, as we've talked, talked about,
- 32:14looks a fair bit different. And so that's where you have to
- 32:17serve your agent developer who's building that initial version of
- 32:22an agent by giving them logs and observability and stack traces
- 32:25so they can debug the same way that you serve the model
- 32:27developer by giving them a way to track, train, test and valve
- 32:33loss during the training process.
- 32:35It's you're meeting similar needs, but you're doing it with
- 32:38different tooling. And then at the point of I'm
- 32:41trying to evaluate and improve quality.
- 32:44OK, well, the, the for the model developer, again, they're going
- 32:48to take a look at that test loss and they're going to go and do
- 32:51feature engineering and things like that.
- 32:53But for the agent developer to evaluate quality, they need to
- 32:58go talk to a domain expert within their organization, or
- 33:01they need to have these awesome out-of-the-box LLM judges that
- 33:07can look at the natural language response and determine whether
- 33:11it meets the needs of the user who sent the query or not.
- 33:15So again, similar objectives, very different sort of sets of
- 33:19tools underneath as we're still serving, you know, AI
- 33:23developers, model developers and agent developers, but it's
- 33:26required us to tap these brand new spaces of agent evaluations
- 33:31and things like prompt optimization and build higher
- 33:34fidelity feedback collection into the platform.
- 33:36So what you'll see now when you go to mlflow.org, you install ML
- 33:40Flow and open it up is you get this sort of structured
- 33:45experimentation and deployment platform for ML and Gen.
- 33:50AI. But you you pick the the
- 33:52objective, am I building an AI agent or am I building an ML
- 33:56model? We tailor the experience based
- 33:58on that selection. I think Corey is absolutely
- 34:02right in terms of this is sort of a natural progression that we
- 34:05actually serving in two different audiences, right.
- 34:07As as you pointed out, the data scientists deal with models
- 34:10which are sort of deterministic and the evaluation criteria is,
- 34:13is more quantitative. You know, you have, you have a
- 34:16certain position that you're actually referring to, you have
- 34:18certain recall. Whereas if you look at the
- 34:21experimentation, they go through the same process, but the
- 34:23evaluation process is quite different, right?
- 34:26You have more a non deterministic model where you
- 34:28actually now have this set of built in judges and set of
- 34:31custom judges that evaluate based on the criteria.
- 34:35And I see, I see a similarity between prompt optimization and
- 34:39fine tuning a traditional model. They are sort of similar,
- 34:43similar tools and similar techniques to use, but it's an
- 34:46actual progression. And then we ML Flow currently
- 34:48serves both needs. So with your traditional ML
- 34:51engineer or ML data scientist, you can use ML Flow for that
- 34:54particular need. And if you had the recent more
- 34:56engineers, engineering developers with building agents,
- 35:00as Corey pointed out, we have a set of techniques and tools and
- 35:04judges that allow you to measure that in a way that that meets
- 35:09your meets your demands and meets your needs.
- 35:11Right, but also very often it's the same person doing both,
- 35:15right. So I think a while back we were
- 35:18like, you know, who is actually building agents and I'm actually
- 35:20curious, Dimitris, like whether you've seen this as well.
- 35:24We're like, oh, maybe it's like all these like new class of
- 35:26engineers who are building agents and like we're not
- 35:27talking about them at all. Then we went on and just talked
- 35:30to like a bunch of bunch of people, including a lot of non
- 35:33amicable users. And it seems like actually a lot
- 35:36of people just shifted from being like, OK, I used to be a
- 35:38data scientist or data engineer collaborating on the plastic
- 35:41model. And now I've just rebranded into
- 35:43like a Jenny I engineer. And so that's, that's still
- 35:47probably like, you know, like half the market is like he's
- 35:50like former data scientists or data engineers or ML ES
- 35:53converted into these Jenny I people.
- 35:55So that that's where they often then will come to us and be
- 35:58like, hey, we've already used ML flow in the past.
- 36:00Like we would love to continue using ML flow.
- 36:02But certainly there are these kind of like new like engineers
- 36:05who haven't really gone through this process before.
- 36:08And then they're like, what is an eval?
- 36:10What is? And so then just have an
- 36:11education component there of like, you know, hey, we've
- 36:14already built all these expertise over like decades of
- 36:17how do like how do you iterate quickly to get high quality, you
- 36:20know, outputs, right? Let us teach you kind of one of
- 36:25the best practices there, so. Well, that the answer is my
- 36:29question. That was going through my head
- 36:31as you guys were talking, which is like, why not make a
- 36:34different product? Why not separate the two?
- 36:37But it feels like if it is for almost this very similar
- 36:43persona, then it makes sense because they're already familiar
- 36:47with MO Flow. They're just going to extend the
- 36:49capabilities. Absolutely the case.
- 36:53I think that there are, from what I've seen, two temptations
- 36:58that product developers, competitors out there have
- 37:04they've had to grapple with. The first, like you say, is that
- 37:07temptation to I'm going to build a brand new product, throw
- 37:10everything out. You know that it's a brand new
- 37:12world of Asian developments. We don't need all that ML stuff.
- 37:15People can install a totally separate package, hope host a
- 37:18separate service, manage the the work entirely separately.
- 37:24Our agent developers who, as Danny points out, are often the
- 37:27same folks, need a different platform.
- 37:28They're going to install something else that we build and
- 37:31we're going to have to maintain two different ecosystems that
- 37:33that's sort of the, the first temptation, second temptation is
- 37:36there's nothing different here. It's all just kind of, you know,
- 37:39training jobs and, and, you know, quality measurements for
- 37:44agents and, and for models. It all just comes down to
- 37:46metrics anyway. You know what?
- 37:48What's the difference? And that that has its own
- 37:51problems, is that the Asian developer needs traces.
- 37:53The model developer, yeah, I mean, they might want them like
- 37:57way in the future after they deploy something, but it's not
- 37:59even something they're thinking about as they start to build a
- 38:02new use case. You know, the Asian developer
- 38:04needs LLM as a judge. I don't know why the heck I
- 38:06would use that. I thought I was building like a
- 38:08traditional machine learning classifier.
- 38:10So you definitely have to like understand the workflows are
- 38:12different and the tools are different, but the, the
- 38:15objectives and the, the persona, the person that's, that's trying
- 38:19to meet those objectives remains the same.
- 38:21They don't want to, you know, they have to learn and install a
- 38:24separate platform and the the business stakeholders or folks
- 38:29that are making purchasing and decisions within an organization
- 38:34don't want to pay for multiple platforms and set them up and
- 38:36figure out how to make them available.
- 38:39So we believe we found a pretty good happy middle here.
- 38:42You know, the one platform with the right tooling for those
- 38:46Asian devs and model developers who were often just data
- 38:51scientists. So fair bit of software
- 38:52engineers as well. Yeah, the personas really had to
- 38:56meet in the middle, in a way, like data scientists had to
- 39:00learn how to become better software engineers.
- 39:03And then software engineers had to learn how to become better
- 39:06data scientists. And so you have this nice like
- 39:10Venn diagram of, of both of those skill sets that you need
- 39:14and you want to take advantage of.
- 39:17And I do see like the agent building very much as lots of
- 39:23software skills that we're talking about.
- 39:26But being able to fall back on fundamental data science type
- 39:30stuff is crucial. It really is, especially as the
- 39:35actual software development part of it is increasingly automated.
- 39:39The coding assistance 8 basically agents, building
- 39:43agents are kind of becoming the de facto pattern for a new use
- 39:48case. We talk to customers all the
- 39:49time where, you know, despite the fact that Claude code and
- 39:53codecs and other tools really only rose to prominence within
- 39:57the last year or so, everybody has subscriptions throughout.
- 40:02A lot of our customers, the entire dev team is using these
- 40:05things to build their agents. And so it's easier than ever for
- 40:09them to integrate new tools into their agent or connect a new
- 40:13data source or, or even ask, you know, something like Clot or
- 40:17Codex to prompt engineer. And so then because the software
- 40:20development life cycle is so accelerated.
- 40:23They have to fall back even more quickly in their workflow to OK,
- 40:26like, what does the quality look like?
- 40:27How well is this going? Like those data science skills,
- 40:30to your point, become increasingly important earlier.
- 40:34You know, I'm not thinking about it 3 or 4 weeks from now after
- 40:37I've hand coded an entire agent. I'm thinking about it 3 or 4
- 40:40hours from now because the the code is already written because
- 40:44I, you know, I asked a coding assistant to do it.
- 40:48And so where this is all leading, I believe is a,
- 40:52ensuring that folks can do the data science properly
- 40:55themselves, but the, B, why can't we enable coding
- 40:59assistance to do some of this too?
- 41:00So there there is, I think, an appetite out there for, you
- 41:04know, if I'm asking Claude or Codex to build a, an awesome
- 41:08agent, can I ask it to evaluate it as well?
- 41:11Can I give it some example inputs or tell it more about
- 41:14what I'm trying to build and let it come up with those inputs?
- 41:17Can I then ask it to assess quality and iterate?
- 41:20And so as a result, we've tried to make all of them, all flows,
- 41:24judges, evaluation capabilities, feedback functionality available
- 41:28to coding assistants through MCP.
- 41:30So I, I can basically drop ML flow into my coding assistant
- 41:34and have it act like the, the agent developer, which includes
- 41:38the eval and the more data sciency work.
- 41:41And that's something that folks seem to appreciate as well.
- 41:44Joe, as you're off mute, I get the feeling you got something to
- 41:47say. No, I mean, you know, Corey just
- 41:50articulated very well that the the persona is now sort of
- 41:53merging along And it's hard to say I'm a data scientist or I'm
- 41:56a data engineer or I am an architect given the ability and
- 42:01the extensibility of code assistant to say go ahead and
- 42:04create a traditional model for me.
- 42:06And I'm not even a data scientist, but I'm just saying
- 42:09that the Rover might say, I'm not a data scientist, but I
- 42:11heard about you can actually create it, a classical
- 42:13traditional model and it will do it for me.
- 42:15So I don't have to actually have the skill.
- 42:17The skills comes in, how do you actually measure the metrics and
- 42:20which metrics do you actually want to use for a classical
- 42:23model or for an agent? I think that's where the skills
- 42:26can be. That's where the background
- 42:27knowledge comes in. But the coding assistance can do
- 42:30one thing or the other is, as Corey pointed out, you drop in
- 42:33an MCP server with code and you can say, go ahead and go ahead
- 42:36and write, write me an agent to, to evaluate this particular chat
- 42:39pod that I've written and it'll spill one out.
- 42:42So I think we're entering, we're entering this new frontier where
- 42:45where the personas are very Gray area, but you just need the
- 42:50background to be able to say how I'm going to assess and what are
- 42:53the things that I need to know to understand to, to get the
- 42:57best out of this particular piece of software that the agent
- 43:00has actually created. Yeah, I think one kind of cool
- 43:05thing that's at least I'm also seeing is that, yes, these
- 43:10personas are merging, but also a lot of the innovation seems to
- 43:13be coming from the like more data science kind of persona or
- 43:17like people who are wall versus net space.
- 43:20A couple of examples of this would be I think we've seen on
- 43:24our so like very good success with if you want to switch
- 43:27between different. So like you know, you're using
- 43:29like a gem, a model you want to switch to GBT or or vice versa.
- 43:33How do you actually like how do you make that switch?
- 43:35Your prompts are tied to your models.
- 43:37I think there's the kind of the data science world kind of was
- 43:40like, well, this kind of just looks like a model distillation.
- 43:42How do I like teach a model to act like a different model?
- 43:45And I think we've seen that actually, if you combine, if you
- 43:48try to do that and use DS Π in the mix to do that, you get like
- 43:51really, really good results. And in fact, you know, we've,
- 43:55we've even seen results where you can use like a, a smaller,
- 43:58cheaper model and I can really accurately reflect the outputs
- 44:02of like a much more expensive model.
- 44:03So it's almost a cost optimization, right?
- 44:04So that's kind of like 1 innovation.
- 44:07I think that's like coming out of like more traditional like
- 44:09researcher data science kind of spaces.
- 44:12I just want to return some what Corey said, which was I think
- 44:16the MLFO team has done a fabulous job of even though
- 44:19having two distinct platform, one for the Asian developers and
- 44:22Jenna developed and the other one for the for the MLFO
- 44:25traditional machine learning scientists, the concepts are not
- 44:28really dissimilar, right? Both need experimentation.
- 44:31Board needs way to to fine tune, as I said earlier, which one one
- 44:36does a prompt normalization, the other does the fine tuning.
- 44:39Board needs a set of data sets that you can actually provision
- 44:41over, you know, your training data set, you need a evaluation
- 44:44data set, you need a test set. We do the same thing in, in, in
- 44:48general where you actually have the data sets.
- 44:50So I think the concepts are very similar and the underlying tools
- 44:52and techniques used are, are, are pervasive across both both
- 44:57this particular platforms. So somebody who's familiar with
- 45:01with with ML and is coming into Gen.
- 45:04AI can actually do that or somebody who's familiar with
- 45:06Gen. AI and is going into ML can
- 45:08easily transport those pretty good here.
- 45:10So I think conceptually and visually and, and through
- 45:14workflow, they're not very dissimilar.
- 45:16I think the MO Flow team has done a very conscious job in
- 45:20making sure that the efforts are flawless from one to the other.
- 45:24It's not like you're you're in a completely different world.
- 45:26There is some concepts that actually come from there.
- 45:28There's a Venn diagram as as as dimension point.
- 45:31There's kind of a Venn diagram of set of tools and concepts
- 45:33that merge together. Absolutely the case.
- 45:37I also wanted to dive deeper into that sort of model
- 45:41distillation piece that that Danny was bringing up because I
- 45:43think it's a great example of the capability that folks
- 45:47resonate with, whether they're coming from a data science
- 45:50background doing model development or they're building
- 45:53agents. Everybody wants as high quality
- 45:57and AI powered application as possible and they want it for
- 45:59$0.00. And like obviously you trade off
- 46:02cost and quality a fair bit. But the real upshot, I think a
- 46:06lot of this work in model distillation is, you know, I can
- 46:10build a great agent using frontier models.
- 46:12And then over time, once I understand the quality of that
- 46:15agent and the factors that determine quality, I can, I can
- 46:20ramp that choice of model down to a less intelligent, less
- 46:25expensive frontier without sacrificing quality.
- 46:27And what I need is a structured way to measure it.
- 46:31And, and what I need is a structured way to adjust my
- 46:34agent's prompts. Actually, in particular if I'm
- 46:37going to change models, so the the task of moving from like a G
- 46:42PT52 down to a G PT-5 Mini, for example, or a Gemini Pro to, to
- 46:48flash that, that process requires me to understand what
- 46:53are the examples of great agent quality?
- 46:56What are the examples of negative quality that I'm trying
- 46:59to avoid? And how do I tailor my agents
- 47:04instructions so that many can understand those instructions
- 47:08just as well as as GPT 52 etcetera.
- 47:13So if I have both of those pieces, which I'm awful
- 47:14provides, I can get to a point of cutting my costs, you know,
- 47:18by a factor of 10, even 20X just by virtue of, of switching the
- 47:23model. And so that's pretty powerful as
- 47:25well. One other area I wanted to hit
- 47:28on Danny we talked about a little bit last time we chatted
- 47:32was the idea of governance and how folks are really trying to
- 47:40figure that out right now, especially with agents being
- 47:42able to read and write and you're like, so who we going to
- 47:49blame when they right the wrong thing?
- 47:52How are we going to keep tabs on this, especially if we're at an
- 47:56organization with 100,000 people and they all know are leveraging
- 48:01agents? Yeah, I, I think governance is a
- 48:04super hot topic for us right now at database.
- 48:07And Corey's been actually in a lot of these conversations more
- 48:10recently than I have. Obviously.
- 48:12I guess database is what we're known for.
- 48:14Governance. We, we think about governance a
- 48:16lot. I think AI governance kind of
- 48:18breaks down into a couple of components here.
- 48:20Probably the first thing that people talk to us about is like,
- 48:23well, I have like Pi and this and all my different like agents
- 48:27and traces, like what do I do? We'll do with that?
- 48:29I don't know, how do I kind of ensure only the right people can
- 48:31have access to that? And then there's also, I guess
- 48:35it if funnels out into well, what data does the agent have
- 48:39access to as well, who can use what agents?
- 48:43And also kind of really kind of gets into that like AI gateway
- 48:47kind of realm as well like well kind of like fall back to
- 48:50different models kind of control costs and we're not.
- 48:53So I think we're thinking about all that stuff right now on our
- 48:56side, what we do have an AI gateway kind of managed
- 49:00component. I think Corey, we've now is it
- 49:03controversial to say that we are kind of exploring open source
- 49:08for. I would go beyond that and say
- 49:09you know that MFL has and and. For we have an open source
- 49:12gateway, but like kind of like we are, I think the plan is to
- 49:15invest substantially more into kind of an open source
- 49:18governance kind of gateway solution here. 100%, absolutely.
- 49:23And so going a little deeper on on that axis and I think Danny
- 49:28just did a fantastic job of discussing the the sort of
- 49:31aspects of model access to data and then developer access to the
- 49:36data that an agent produces. So going back to that, that
- 49:38model access to data problem, we are invested pretty heavily in
- 49:43providing cost controls for model access as part of open
- 49:48source ML flow, also providing data access controls.
- 49:51So I, I've built a bunch of tools I have like this awesome
- 49:55tool catalog with MCP. I'm going to hook it up to my
- 49:58agents. How do I make sure that, you
- 50:00know, the right tools are exposed to the right agents for
- 50:04different use cases and that you know, they, you don't have an
- 50:07agent accessing data that it shouldn't be allowed to, for
- 50:09example, about a completely different customer.
- 50:12Like these knowledge bases are, are pretty sensitive.
- 50:14And then so walking down tool access is really important.
- 50:17But then as I mentioned, just the cost controls.
- 50:20I have two teams building agents.
- 50:23You know, 11 is building a low QPS chatbot.
- 50:26The other one is processing billions of documents every day.
- 50:31They require different budgets and blowing the budget out of
- 50:33one the project and then sort of exceeding costs can mean that
- 50:37the other developers don't get to do anything.
- 50:39And so like folks definitely need what we call this AI
- 50:42gateway that allows organizations to say, hey, all
- 50:45right, for your use case, here's your budget.
- 50:47Here are the models you have access to.
- 50:49Here are the tools that you have access to.
- 50:51If you need something else, you know, come and talk to us, talk
- 50:53to your admins and we'll grant that access in a structured
- 50:57manner. Otherwise it's, you know, API
- 51:00keys flying around, access to data, unregulated it, it becomes
- 51:04chaos. And so there's like real risks
- 51:06there from a model access to data and costs of governance
- 51:10perspective. And I think we could probably
- 51:12talk about that all day. And as as Danny mentioned, in
- 51:16terms of developer access to agent data, that that second
- 51:19consideration, there's some big challenges around that as well.
- 51:22PII ensuring that the only privileged eyes can look at that
- 51:29certain slices of those traces. That's all super important.
- 51:34And that's where Data Brick Community Catalog has been
- 51:38crafted and tuned for years to provide governed access to model
- 51:45data, agent data, BI data, all of all of basically this is no
- 51:52different than any arbitrary set of sensitive data you're
- 51:56ingesting into a platform. It's just that it's, it's coming
- 51:59out of an agent. You need to govern and manage it
- 52:01and share it just as securely. And so that's where like we've
- 52:05been building data bricks and all flow on top of Unity Catalog
- 52:09in this amazing secure enterprise grade and governed
- 52:12data lake on data bricks. You know, yeah, I, I, I have a
- 52:17separate life of database where I also think a lot about Pi
- 52:19detection and, and how it relates to Unity catalog.
- 52:23And I think one thing is similar to what we're seeing here, which
- 52:27is the easiest thing that people will start with is they will
- 52:30just redact all Pi. And so like nobody has access to
- 52:32this or totally lock it down, but rarely is that the actual
- 52:35goal. So you need to catalog and
- 52:38there's been a lot of investments on like how do you
- 52:39do, you know, a back attribute based access control?
- 52:42So that and, and what people are trying to do now is like, OK,
- 52:45well, if there's a scalable way to manage governance, then I
- 52:49would actually open up data as much as possible to the people
- 52:51who should have access to it. But in absence of that
- 52:54technology, then they'll say, let me just fully lock it down.
- 52:58Nobody can see this information. And that's kind of like now
- 53:00you're, you're losing a lot of that business value that you
- 53:03that you could be kind of getting access to, right?
- 53:06I think that's also going to be playing out within the agent
- 53:09space too, where if you want to really debug why is an agent
- 53:13going wrong or you want to do like downstream, like BI
- 53:15insights out of this stuff. Sometimes you are going to need
- 53:17to capture some sort of like Pi information.
- 53:20Just not everybody has access to that.
- 53:22And so at least we're, we've seen some early kind of success
- 53:25here is having all this traces get ingested directly into
- 53:32adults table. And then now you have access to
- 53:34all the governance controls you have with the Unity catalog.
- 53:37And now, you know, you can go back to kind of having Open
- 53:41Access and sharing and doing all your dash of insights, right?
- 53:44Whereas a lot of, I think the other competitors or, or vendor
- 53:47solutions out there, their default reaction is like, let's
- 53:50give you a tool to just redact all API and have it never landed
- 53:53to begin with. To me, that's that's a great
- 53:55first step, but it means that you're you're locking away a lot
- 53:58of that like super valuable data that you could be really
- 54:01analysing and and parsing well. I've talked to people who can't
- 54:05use memory tools because the memory tools just by default,
- 54:10you know, the open source ones that you get off the shelf now
- 54:15expose all of this conversation that's happening with their
- 54:21users and and there's Pi all over.
- 54:25It's just like littered throughout that even if you
- 54:28extract away sensitive data that's obviously sensitive, like
- 54:32a Social Security number, for example, inside of the
- 54:36enterprise, if you're asking a chat bot to help you craft an
- 54:41e-mail to fire someone, that's also sensitive.
- 54:44And like, that's much harder to get when you're thinking of it
- 54:51at it like in the traditional sense of PII, you know, it's not
- 54:55like, oh, that's not my credit card number, that's not my
- 54:58Social Security number, but that is very sensitive.
- 55:00So you're talking about Dimitri, you're talking about, you know,
- 55:03the the what Danny was talking about the PII that can be
- 55:06redacted and and that comes up quite a bit in in meet up talks
- 55:10about how we actually going to redact the traces.
- 55:12But images. I think you we bring up a point
- 55:14very important is I'm crafting an e-mail which is going to fire
- 55:17someone or I'm crafting an e-mail that's going to promote
- 55:20someone that's considered kind of, you know, private
- 55:23information. How do you actually read out?
- 55:26That, you know, what's the context, so that the context is
- 55:28important. How do I actually take a piece
- 55:30of trace or a piece of output that has come up and then
- 55:33evaluate and categorize that as sensitive or nonsensitive?
- 55:37Right. That's again an evaluation
- 55:39criteria. I was going to say that actually
- 55:41the process of redacting π is actually a hard process.
- 55:45So I think a lot of people will start thinking like, let me just
- 55:47write something like write on my jacks.
- 55:49For people who are a little bit more sophisticated, they might
- 55:51use like Microsoft Presidio. But I think everybody I've
- 55:54talked to, including ourselves, who, who've tried it is like,
- 55:58you just get so many false positives.
- 55:59You, you, you miss everything. So you know what, what we end up
- 56:02having to build for our own like Pi detection offering is we had
- 56:05to build an agency essentially like a whole like kind of
- 56:08complex like sequence of LLMS and heuristics and what not to
- 56:11kind of actually figure out, you know, with relatively low cost,
- 56:15what is PIL, what is not and that we've seen that is much,
- 56:18much better than like kind of the off the off the shelf
- 56:21solutions out there. And what makes this a lot easier
- 56:25is actually having access to the raw data.
- 56:28If I can treat this thing as a data frame or as a table and use
- 56:34all the brilliance, you know, Sequel and Python And ecosystem
- 56:38tools for scrubbing that data, analyzing it, tweaking and
- 56:42feeding only subsets that I know are safe into a, a memory
- 56:45database. So that when Demetrius tool
- 56:48reads from and I know that it's, it's reading information that
- 56:52you know is is safe and and secure.
- 56:54That's really important. Unfortunately, a lot of
- 56:57solutions out there don't actually give you access to the
- 56:59raw data. Like typically these traces get
- 57:01dumped into some shared like big multi tenant like Postgres
- 57:06database. And if you ask for like, hey,
- 57:08how can I get like a table or a data frame or the raw records
- 57:12that I can do some sort of more complex analysis or find PII and
- 57:16redact it. The answer is good luck.
- 57:19You can't actually get that data back.
- 57:21And so that's where again, this sort of data bricks, Unity
- 57:27catalog delta table approach that stores all of your data as
- 57:32the beautiful tabular formats and, and, and data frames makes
- 57:37this kind of analysis a lot easy, easier.
- 57:39You can plug in any tool from the ecosystem.
- 57:41You can use Sequel, you can express any sort of
- 57:44transformation or Pai redaction task that you'd like.
- 57:49And so that's really powerful as well.
- 57:51Yeah, I I'm excited for kind of what feature stuff we start
- 57:53building with Lake base as well, because like base is kind of
- 57:57tailored to this kind of use case that Dimitra you're talking
- 57:59about, right. You, you want like a database
- 58:03that has fast access and retrieval and whatnot, but is
- 58:06well governed, right. And and that is I think kind of
- 58:09the promise of lake based on database as well.