Semantics Layer Genie & Data Agents - Ep.527
Mike and Tommy explore what ‘semantic layer genies’ and data agents could mean for Fabric and Power BI teams, from metadata-driven modeling to assisted development workflows. They break down where agents help today, what needs governance, and how to stay practical as the hype accelerates.
News & Announcements
- Watch Episode 527 on YouTube — Catch the full conversation and examples, including practical perspectives on how agents may (and may not) fit into real analytics teams.
Main Discussion
Topic: Semantics Layer Genie & Data Agents
- Agents are most useful when they can rely on well-structured metadata (model definitions, naming standards, and documented measures).
- A “semantic layer genie” is only as good as the semantic model hygiene behind it—garbage in still becomes garbage out.
- The best early wins are assistance workflows: generating drafts, suggesting patterns, and accelerating repetitive modeling tasks.
- Governance matters: you need a way to review changes, test impacts, and prevent silent breaking edits.
- Treat agent output like a junior developer: helpful, fast, and sometimes wrong—so you need guardrails and validation.
- Practical adoption path: pilot agents in a narrow scope (one dataset or one domain), measure value, then expand.
Looking Forward
Start by improving model metadata (descriptions, naming, measure groups), because that’s the foundation that makes any “data agent” actually dependable.
Episode Transcript
0:02 up the sky. Dance to the day to [music] laugh in the mix. Fabric and A. I get your feels. Explicit measures. Drop the beat now. [music] P feel the crowd. Explicit measures. Good morning everyone and welcome back to the explicit measures podcast. How you doing Tommy? Man, Mike, I’m doing great. How you doing?
0:32 great. How you doing? I am doing well. We are clipping along. Things are getting busy., things at work have been ramping up fairly well. So, in general, I’m pretty pleased with things where things are happening., build is coming up here pretty soon. Microsoft Build is coming in the beginning of June., so we’re looking forward to the next conference. I will be actually speaking at Microsoft Build conference and helping out and volunteering and a lot of things. I’ll be I’ll be all over the the conference area there. So,, it’s actually in San Francisco. I’ve never been to a conference in San Francisco, so it’ll be
1:02 conference in San Francisco, so it’ll be a new experience for me. Dude, I should have gone because that’s the perfect baseball weather, too, in San Francisco. Go to a baseball game for me, Mike. me, Mike. We’ll see if I have time. I don’t It’s going to be like quick and hang out, and then leave., who plays in San Francisco? The Giants. Oh, San Francisco Giants. So apparently that’s like the mecca of baseball stadiums. Like in terms of like you want to feel like you went to a ball game after the ball game, that’s the stadium you want to go to.
1:32 you want to go to. Really? Have you been to a game there? No, it it’s it is on my bucket list. So Well, I know Tommy, you’ve been going through you go through. Anyways, you’re trying to hit every stadium in the US. Yeah. So you So I actually have a poster over here that has I’m Xing them out. It has all the stadiums on it and I have it just it’s not dry erase but it’s all the stadiums mapped out and I just have an X anytime I go any conference if you’re a client and I’ve not been to your stadium call me and I’ll come visit you. [laughter]
2:02 I’ll come visit you. [laughter] I’ll come visit. Yeah. Amazing. How many of like how many stadiums are there total? Do? There are 30 total. And you have been to roughly how many? 11. 11 or 12. Okay. You’re almost breaking halfway mark. mark. Yeah. So, yeah. So, it’s something again if you have a training if you’re like, “Hey, we really need some PowerBI fabric training.” And we live in San Francisco, Baltimore, or Philadelphia. Oh, it’s funny that you say Baltimore because Baltimore is where I grew up. I went to a lot of Baltimore Orio games.
2:34 went to a lot of Baltimore Orio games. You I heard that’s a great stadium, too. Yeah, it’s a good That’s a That was a fun stadium. I had good memories there. I also remember Cal Ripken Jr. at that stadium and he had the longest running consecutive games being played in the thousands or something like this. I can’t remember exactly. We’ll never be broken. It’s crazy. It’s like Yeah, this guy was like like Iron Man for sure cuz he never got sick. Even if he was, he still played. It’s crazy. Anyways, do where Yankee fans call Baltimore or are they Camden Yards? New York South.
3:05 New York South. New York South. [laughter] Oh my goodness. All right. Well, we are a PowerBI podcast, so we got a bunch of stuff today. today. All right, let’s jump in. Today, the main topic for today is an article from Advancing Analytics, which I really love what they talk about there. Advancing Analytics is a consulting firm. They do a lot of like data bricks and and spark and a lot of big data warehouse projects as well. Pretty big team. My understanding is they’re like 25 30 people, maybe even 50 people now. I don’t even know how how big they are, but they’re a pretty large team., but there’s a great article that came out
3:36 there’s a great article that came out talking about Genie is a semantic layer problem, not a chat problem. Which while this article is very much written around Genie and data bricks, I think this is the exact same issue that we’re seeing with data agents. And I want to just maybe go through a couple of points on this one and just like really unpack this because I think the concept of semantic model issues, that’s really the issue that we’re trying to talk about here. Then more and more as organizations are growing, I’m finding more and more effort around,
4:06 finding more and more effort around, okay, do we have the right models? Do we have too many models? Should we get them down to like more manageable domainbased modeling? There’s a lot of things that have to fluctuate and float around here in this model space. But regardless, at the end of the day, whether you’re talking with a chatbot, whe you’re talking with people or humans, the semantics layer is so important in anything we’re doing here. And I think we’re all we’re seeing now is if you want agents to talk to your models, you just need better definitions and semantic layers on top of it because even you have people or
4:37 of it because even you have people or you have bots, they both need to understand what’s going on there, right? right? Oh, I love that’s going to be our main topic today. Tommy, you brought us a couple news items. What news did you bring us today? us today? Yeah, I’m going to give I’m going to start off right off on deck or or right to bat. We’ll keep the baseball theme going here. One league catalog is now natively available in Foundry. So this is a GA feature. We have two GA features today. You and I, we love when things become GA. And what we have is simply this idea where one lake catalog is now available in AI foundry or just foundry now as a
5:09 in AI foundry or just foundry now as a native experience. So users can now browse and select one lake data inside of foundry without wiring up the sources manually. So it’s a much smoother path for your govern enterprise data to something grounded in your AI workflows. And again this goes great Mike with what one lake already is. It already acts as the unified data foundation. It’s already this whole layer for us to do everything in fabric. So the fact that now integrates with the cat founded catalog is a huge win. And again anything that becomes less fragmented
5:40 anything that becomes less fragmented and more natural is a huge thing. more native, more governed, better context, and better direction in terms of what Microsoft’s trying to do towards this unified data and AI experience., you’ve got to get better this regardless. Yeah. Yeah. Especially when you start building more and more and more items inside Fabric. I and more and more items inside Fabric., lineage of things is getting I mean, lineage of things is getting I think me me personally, I’m getting I’m having a hard time, Tommy, just finding things throughout reports and and
6:11 things throughout reports and and different areas as well. Like I I find that that’s going to be that’s really it’s difficult in general, right? And I think the story is very complex. I don’t know why we haven’t solved it yet. It must be harder than I think it is. Yeah. My simple mind thinks, “Oh, we have visuals. Visuals have columns and measures.” Oh yeah, Oh yeah, right. Visuals live on a page. Pages have filters. Pages are part of a report. Reports are part of a semantic
6:43 report. Reports are part of a semantic model. Semantical model points at bronze, silver, gold. Like I can mentally I have this,, path in my mind that I could work my way from the visual all the way back up to the other end of things. I don’t get to see that stuff. It’s just not available. It’s not There’s not an easy way. We get a little bit of lineage. And one thing Okay, Tommy, this is really weird. I don’t know if you’re having the same issue, too. When you go into a fabric or any workspace and you say view item lineage. Oh, yeah. Oh, yeah. Okay. It gives you the little lineage diagram for that item.
7:14 diagram for that item. Okay. [clears throat] When the icons are there, you can It looks like you can click an item. Your cursor changes to like a little hand that’s going to click something. Whenever I click an item, I expect it to open the item. Like I’m I’m doing the view item lineage. Yeah. Yeah. Yeah. Yeah. Because two different kinds of lineage. Well, I was looking at yesterday. I was like I you’ve shown me the items and how they like stitch together. Why can’t I click that item and have it
7:44 Why can’t I click that item and have it open up in a different window and or have the for whatever reason that doesn’t exist. I’m like this is a very big creature comfort that I think I need. I’m probably missing it. try the workspace lineage because actually now there’s two types of lineage. You can either say view the workspace lineage for the item or view the single item lineage that the workspace lineage allows you to click but again shows you just that workspace. But I want to get back it’s inconsistent like why would you look at the item lineage and not be able to click it but then you work at the workspace and there lineage for an
8:15 the workspace and there lineage for an item. Yeah. Well I it’s also noisy too. Like if you’re doing the lineage for the whole workspace, it there’s can be workspaces have a lot of things in them and sometimes that’s just too much for me. me. Sometimes I want to be less. Right. And go back to your Yeah, I do like the item lineage because a lot of times I’m trying to figure out where this item come from. What’s it touching? I want to go back to your first point though about this must be difficult for us to do around our lineage and also around understanding the semantic model because Mike, this is nothing new. This is something that we’ve been dealing with and frustrated with probably
8:47 with and frustrated with probably Yeah. Since honestly we’ve been building out semantic models since we started with PowerBI everything you said you could subtract foundry or data agents from that conversation and that is still been the biggest issue to tackle call it the holy grail something that no one has universally found a practice for to do across all of your models. Maybe you’ve been able to master one. Great. But there’s no great practice here that
9:17 But there’s no great practice here that you can do across every single semantic model to have a good understanding of what’s going on. And then more importantly, Mike, not just for you, the author, but to document that and then to build that out so everyone else will have that understanding. And as we get into the main topic today, too, I think this is going to be such a big point. But this is great with Foundry because one lake I think is going to hopefully solve that a bit. We’ll see where we get there. But I’m happy to see anything become GA and I’m happy to see more
9:48 happy to see more more relationship or conversation between Foundry and One Lake Catalog. Yeah, this will be interesting to see where this is going to go. I’m not quite sure where I see this right now. I just know that I need more of it. 100%. whatever Microsoft’s doing right now. My sentiment before Fabcon in March was Microsoft is lagging behind. I don’t know what they’re building. Like I feel like all these other exciting agentic tooling pieces were showing up and Microsoft was like not responding with
10:18 Microsoft was like not responding with any semblance of a tool that’s useful. After March, it feels like there’s been a wave of releases and or focused attention towards building agentic things in fabric for creators. And the shift I think for me that’s happening is Mhm. [clears throat] I’m very much looking to use agents to help me do things. But it’s on the creator side, right? I want to come to an agent with a problem, reason with the agent to figure something out and then
10:49 agent to figure something out and then once I understand it, I want it to build the simple repeatable Python or or you the simple repeatable Python or or Spark script or I guess it’s not know Spark script or I guess it’s not Spark but it be like PIS spark or pi spark SQL right I want it to build the simple code that it can just run very cheaply and efficiently over and over and over again right the agent is so good at building those simple tools on top of stuff that’s where we should be spending our time right now. I have a thought about this because I’ve been tinkering in my head about this conversation you and I have both had and
11:19 conversation you and I have both had and I realized I think Microsoft angle here is is it’s really much that they’re building the tools for people to build the tools rather than everything else that you and I are used to, right? Like so you and I are used to claude and GPT and cloud code or open cloud whatever those tools are where it’s a basically plug in and play right because as a developer all I have to do is just get started type in my prompt we’re on our way but all the AI tools are meant to be built
11:50 all the AI tools are meant to be built on they are very much like your IKEA board where it’s like it works but you got to construct it or actually IKEA is probably too extreme because that has instructions I think what we’re seeing a lot with Microsoft is like hey you are going to build it for the organization. We are not building anything that’s plugandplay right now
12:09 anything that’s plugandplay right now because based on your data and your process and your people it’s going to be a mix of this a touch of that a little spice of this a little salt and that really matches the Microsoft I think methodology or at least their idea when it comes to AI. This is interesting you say this Tommy because I I feel like to some degree I agree with your statement around Microsoft is providing the tooling or the infrastructures. Honestly, I think that’s what they’re
12:39 Honestly, I think that’s what they’re really good at. Microsoft is really good at building infrastructure level things. What they’re not what they have not traditionally been good at is building like the UI or the complete experience of everything that I need as a creator to build stuff that I want. there’s always like little miss like paper cuts of like this doesn’t quite work how I want it. want it. So, So, if I had to give words words back to Microsoft, it’s it’s more about especially now with the with the economy of agents in our hands, Tommy, we don’t need to build UIs anymore.
13:09 need to build UIs anymore. I just need really good connection to like MCP servers. I need really good connections to databases. is I need really I need to make it I need to make it as easy as I can for me to like communicate with some agent thing to figure out what I want to go build and then say just go build it. Right. When I did the ABcon precon yeah we talked about using the the fabric MCP modeling server. So how do you manipulate a data model? People loved it. I think people were really engaged with it. They were
13:39 really engaged with it. They were they’re trying to edit things. Now we’re at a place where well even at the end of that the next [clears throat] logical question for everyone was I want to use the same technology to modify my reports make a new report make some visuals change a visual so it it’s it’s a lot about like the the tooling is going to enable users to create things much more efficiently and faster but we need we need the infrastructure to support how can my agent make a report how can my agent create page
14:10 report how can my agent create page pages. How can I,, instead of having to go to there and find a a bunch of clicks, how do I communicate generally to some agent and it just knows what I want and how to do it? That’s that’s the part that I want better, tighter connection between the agent elements that I’m owning, right? I’m going to GitHub copilot. I’m using my agents there there versus,, going into co-pilot inside fabric. Again, I’m I’m going to push back here because with giving the preface of saying I
14:41 with giving the preface of saying I agree with everything you’re saying in terms of what I want as a developer, but where I’m going to push back here is from Microsoft’s point of view and I think when you really look at it, if Microsoft’s awesome mentality here is if it’s not universal, it’s not something we’re pushing out universal. And what by this is if I am relying on MCPs for a workflow, I don’t think we’re at a point yet, Mike, where I can then push that onto the client to say, “Hey, the process that I built for you relies on and requires MCPs, which
15:14 you relies on and requires MCPs, which then you will have to use for the solution to be complete when I hand it off to you. I can use MP MCPS myself because I’m an advanced developer. And again, you and I talked about that learning curve of AI. I think was a mailback question and SCPs are in that intermediate to,, advanced range. range. So, if something’s in that area, Mike, then I’m it’s going to be I’m going to have a hard time pushing that to the client to hand that off to say, “Oh, by the way, the whole solution, while great, you need an MCP.
15:44 great, you need an MCP. We’re not at that point yet, right? We’re not at that point yet.” Then, you are correct. But I’m but I but if I’m building them a report or a semantic model, I’m going to edit those things all day long with my MCPs or my servers and my skills. Like that’s the secret sauce that I’ve learned how to do. And I can be so much more effective by having these things. And now I’m looking at I these things. And now I’m looking at everything mean everything everything I’m thinking in my world right now is like, okay, I could I could I automate this? This seem this seems like a skill I could figure out how to build build it. It’s I had an epiphany about a week ago, Tommy, where I was using agents to
16:16 ago, Tommy, where I was using agents to help me create build experiences, building things with with the agents, right? And I had the same epiphany as this is the same moment I had when I found Power Query for the first time. Prior to Power Query, I was doing a lot of manual Excel copy pasting. I was taking data I was putting in taking it from one sheet put into a different sheet and then I had a whole bunch of format formulas and rules and formatting to get the data to shaped into what I want and then I could get my reports and my visuals out of it. Like so that’s what I was doing and then all of a sudden Power Query shows up and I’m like
16:46 sudden Power Query shows up and I’m like oh my gosh I can load data from a folder. I don’t have to modify the data upstream. And so I had to slow down and work on my Power Query skills to get better at loading data into my Excel files and into PowerBI. And this is the same moment. I’m having the same like I could do it. I could just make the work happen, but I’m intentionally slowing myself down and saying I will learn how to use agents to do the same thing. thing. That way in 3 weeks from now, I have the
17:16 That way in 3 weeks from now, I have the skill to have it help me go faster now. Right. And to the same point, when you were learning Power Query, you weren’t built., you could build things in Excel, but if you couldn’t hand that off to a colleague, if they had no experience or knowledge on Power Query at the time and until it became something that was universally acceptable, I have a question for you and I need you to answer honestly, as honestly as you can here. Sure. Sure. Okay. So, I need you to think back to your enlightenment towards Power Query back in 2014 2015. What was the big
17:48 back in 2014 2015. What was the big bigger game changer for you? Power Query or MCPS. This is really interesting. I know. And I’m trying to figure out where I if I’m actually looking at myself honestly here. It’s a little bit unfair to ask the question only because only because an AI agent that does everything for me. Well, I’ve got let’s call it since 2015, right? I’ve got 11 years of and even
18:18 right? I’ve got 11 years of and even before then, right? So 2015 was when PowerBI desktop came out. So even probably before then. So like a couple years before that I is when I was exposed to Power Query, right? so call it 2015 is when PowerBI desktop came out. Call let’s say like a year or two before that. So 2013 so so from 2013 till now I have all this run history on Power Query and loading data. And to be honest, Tommy, like for me, if I look at my career, Power Query
18:49 me, if I look at my career, Power Query was a pivotal moment for me in that in that learning that technology really lit up my mind to data and analytics things. Yeah. Yeah. And it was this neat world of like programming, but then data and then visuals. And so my brain really likes the idea of doing like visual and graphical things and doing all the data and the analytics things and putting all that creativity plus data engineering together really makes my mind sing. Like that’s what I like to think about.
19:20 that’s what I like to think about. So So that step was pivotal in for me thinking about well maybe I should be a data scientist, maybe I should get more into this, maybe I like data engineering. Like this that really opened up a new era of me really getting into the analytics space and it changed my whole career. I I left corporate America. I started my own company. I now do exclusively work in PowerBI. We now build apps on top of data things. Like so that moment was very much a direction shift for me. So to compare that to am I seeing another direction shift in AI,
19:52 seeing another direction shift in AI, I I can’t I don’t have enough runtime on the AI to really say is this as much of an impact directionally as what I saw when I had Power Query. And and maybe I would They say they say like in the stock market they say it does not repeat. trends don’t repeat but they rhyme, right? There’s a they they’re similar but they’re not exactly the same. I feel like this agent thing, whatever
20:22 I feel like this agent thing, whatever that may be, agents in VS Code, agents in in building semantic models, I feel like this is a rhyme that I’m seeing again for Power Query. I don’t have enough runtime. It’s only been like since January., I’ve been playing with agents for a while, but like December, January is when I started really playing with them. Mhm. Mhm. The trajectory feels correct. Like I feel like this is a gamechanging moment. We’ve also, Tommy, changed a lot of the podcast podcast as well. So, we’ve talked a lot about fabric and PowerBI previously, and now
20:53 fabric and PowerBI previously, and now almost every episode is talking something about how we’re leveraging or using agents to help us do things. So already it’s so pervasive that we’re shifting what we think about and where we spend our time on. I will say that and I think you would agree too Tommy most of your workloads day-to-day are now impacted or influenced or modified in some way by some agent experience. And I I love that answer because more or less that’s where I lean, Mike, because when you look at that implementation or that gamechanging side, it’s one when a product’s released
21:24 side, it’s one when a product’s released and then two to your point when it becomes a day-to-day part of what you rely on your workflow, right? And when so that I like how you put it there. It’s like agent’s been out for a while, but where it’s actually become in a sense as important as the internet for me. Yeah. I would probably say the last maybe six months. Yeah. Yeah. I do love to on our podcast when we started talking about AI, I think it was very much separate. They were two boxes of data, PowerBI, fabric and then AI.
21:54 of data, PowerBI, fabric and then AI. And we’re finally seeing now both with people asking in the mailbag. And then you and I are own experiences is now finally the that combination or that influx where no, they actually talk to each other. No, they’re actually the workflow I do with Fabric correlates perfectly with the skill I’m doing in AI and relying on both. Yeah. Yeah. That being said, I I feel like for me, I would slightly lean with Power Query right now because all the stuff that
22:25 right now because all the stuff that Power Query did to your point. Mhm. Mhm. Like would not set me up for MCPS. MCPS would be not important if I didn’t have all the experience in Power Query to completely change gears, right? So it’s a tough one. I’ll give you that. I think it’s a bit un Yeah, it’s it’s that’s interesting you say that. Yeah, Yeah, I think I I think right now if I look at let me project like if I was at the Power Query level before I think I think Power Query has a very specific use case
22:56 Power Query has a very specific use case and like a very it solves a very specific problem. I think now when I look at AI and agent things, I think the amount of problems I could potentially solve is actually much wider. wider. Sure. And so I I I’m I’m projecting here a little bit, but I think the future of me working with AI and agents and harnesses and building things, I think that just expanded greatly. And so while Power Query was very specific to like Excel, PowerBI, data, I feel agents have
23:27 Excel, PowerBI, data, I feel agents have a much larger potential to hit many more areas of influence. Oh, visuals, graphics, websites, appation, appation, project management. Yeah. Project management. like there’s a there’s a so the fact that this thing can reach and touch a lot more fields of study I guess I think for me right now right now it’s a good way to put it if it keep if the if the trajectory keeps going the way it’s going which I don’t have any reason to say it won’t it it won’t do this one it’s going to be that much better or a
23:58 it’s going to be that much better or a three or four or 10x more impactful than power query just because I just feel I the feeling feels the same the excitement feels the same about both things. And now that I have a little bit of a platform, I can actually like use my platform to share some of my excitement around like what I’m learning about all these new things. And that
24:17 about all these new things. And that that’s why we started a second podcast, the agentic thinking. there’s going to be more tutorials and things coming and and new software that’s coming out. We’re doing some major updates to Power Designer, which you may have seen inside Fabric as a workload. We’re making some big updates and adjustments there, fixing stuff there, and making some new features., so there’s a lot of things coming down the pipe because we’ve been able to leverage agents to help us build. Yeah. Well, I got I love that we got one quick one more news update because it’s one of those that we just love to do because it this goes in our category or
24:49 because it this goes in our category or a bucket of this wasn’t GA yet. Yes. Yes. So, let’s do that segment here. And mo [laughter] which I love. So,, modern visual tool tips, which if them have been out for years, Yep. Yep. are finally GA. So, again, [screaming] yeah, there we go. Exactly. Appropriately so, which I feel like they’ve also been out for seven years. They’ve been out for a long time. A long time. A long time. But now they’re finally G across all of PowerBI
25:22 they’re finally G across all of PowerBI experiences, desktop, service, mobile, teams, and embedded. Now use the updated tool tip meaning the old one you don’t have to enable it to turn on or you can’t turn off the other one tool tips show show there now. Yeah. And I love though too in the blog because you got to put content in the blog article. They’re like hey here are some major enhancements but they’re not major because for most people you’re used to it already. Drill up, drill down, drill through just by hovering over. You don’t have to right click on anything. Again
25:53 have to right click on anything. Again cool. You can use your theme and style customization. no impact to existing reports. reports. And again, okay, why isn’t this one, I’d hope to see a little more enhancements. And then two, what took it so long to be GA? GA? Just knocking stuff off the GA list is good. Yeah, just just knock the things off. figure out what the gaps are between like what do you need to get done that makes that thing there’s probably some like very minor accessibility thing like so what happens Tommy I think sometimes they just get the feature out see if it gets used
26:24 the feature out see if it gets used people are using it and then at some point they’re like okay well there’s a couple like some accessibility things that we found that we need to fix or add or there might be like a bug on like one or two little things that like ah it’s not big enough that we’re going to fix it we’ll just hang on to it. So, there’s probably like a lot of these like smaller features that need to be figured out until they can officially say, “Yeah, it’s supported. Let’s move on.” I have another I think it’s like when you go into your garage, go, “Why do we still have this? Should we get rid of this? Okay, let’s ship this out. Let’s put this in the garage sale.” I think
26:54 put this in the garage sale.” I think it’s one of those things they just they forget about and they go, “Oh, yeah. Oh, yeah. This isn’t GA yet. We should do that. All right. Ship that out. Ship it. Ship it. Ship it.” Ship it.”, yeah. I agree with that one, Tommy., and also I don’t really know the someone from Microsoft wrote the article, but I don’t know who they are. It’s not really clear on what their username is. So, thank you for releasing GA for person at Microsoft who is a Microsoft employee, but we don’t really know who you are in the community. This community, I will say this, Tommy, the community site has thrown me for a
27:24 community site has thrown me for a little bit of a loop here. Oh, yeah. Oh, yeah. The PowerBI updates blog and like they some of them like most of these names in here are now like not named correctly. They’re usernames, not names. Yeah, it’s like so one I know that there’s there’s one I know I’m pretty sure this one Miguel Lopez is like in here, but his name isn’t really spelled very well and it’s like this abbreviated name all smooshed. Like it’s now to be honest, Tommy, it’s actually much harder to read the blog and know what’s going on. on. I agree. I agree. Than the old one.
27:54 Than the old one. Yes. Yes. So I’m I’m not really loving the new blog. It’s it’s quite difficult to see what it what’s going on there., and the the naming of the Microsoft employees that are pushing stuff out, it was actually really clean and we had a nice little picture of them and they were their profile was updated and now we don’t get any of that. Their profile isn’t really as is updated and their name is shortened to just their Microsoft name. It’s I don’t know. I not a big fan of the new you and I that same that blog format
28:24 you and I that same that blog format that we’re used to has been around since 2015 or even before that. So change it. Why do we need to change it? Why are we moving down this one? I don’t understand. Why do we need to go to something different? I don’t I don’t get it. it. One gallery, one forum, just like one lake. They’re putting everything in the same layer. So, I guess maybe I guess I know., how, the old blog was somewhat searchable. Do you feel like the new blog is any more searchable? No. I, h the other blog wasn’t
28:55 No. I, h the other blog wasn’t great either for searching e both of them. the the old blog was tough and that’s why I always rely on my raindrop and RSS feeds for any of the any blogs because it’s a hit or miss on a lot of sites. This one just gets convoluted with the forum. It’s fine. It’s fine. I guess like it’s nothing I’m not too upset, but I also don’t like I’m not like wow I’m so glad they did this. This was such a needed change. So yeah, it’s difficult Tommy. I’m not
29:27 yeah, it’s difficult Tommy. I’m not not loving it. There’s no there’s no good like thumbnails anymore. The thumbnails are all gone. Like it’s just the search is even if you use a search, it’s like it’s like harder to read. I find I feel like it’s just it’s just difficult. Anyways, not really loving the whole new blog site update. It just seems like it’s thrown together. together. Maybe we’ll get someone on the podcast for Microsoft just to talk about that. [laughter] Why did you break the blog? I don’t think anyone wants to talk about that. that. I’m sure someone would love to come on just to talk about that. Yeah.
29:58 just to talk about that. Yeah. All right, let’s move on to our main topic for today, Tommy. All right, Tommy, let’s get to the main topic. So, this is an article. I’m going to put the article here in the chat window. This is from Advancing Analytics. Great company. Love what they’re doing. They’re very forward thinking and I’ve learned a lot from them. Advancing who’s the gentleman who actually runs all their videos on YouTube. There’s a whole YouTube channel. Advanced Analytics has a great YouTube channel as well and they do deep dive and explanation around, you do deep dive and explanation around,, data bricks and data engineering know, data bricks and data engineering and and semantic modeling. Oh yes, they’re they’re UK company,
30:28 Oh yes, they’re they’re UK company, right? I think I got there at SQL Bits when when I spoke there. Yes. Oh, the guy’s hilarious. Yeah. So I I like their their blog format. Anyways, let’s jump into this one. So the article here, I put the article in the chat window in case for those of you who want to check this out., and this is going to talk a lot more around the data bricks world of things. And I think it would be nice to translate a lot of this language into like the equivalent Microsoft language of what I would say is part of the equivalent of what this
30:58 is part of the equivalent of what this is. is. So So in data bricks, let me just frame up a little bit of this. In data bricks, we have notebooks. We build tables. Tables go through the bronze, silver, and gold layers. This is very similar to what we can do in fabric. we build a lakehouse instead of what data bricks just does is they just put it in like a ADLS gen two which one lake or or lakeouses in fabric is the same thing we also can have schemas the way that data bricks does as well so you can also have a lakehouse with a bronze silver and gold
31:28 lakehouse with a bronze silver and gold schema and you can put tables in there exactly the same concept data bricks has introduced this thing called the unity catalog it’s like their one location to build a catalog where multiple team members can be given access to individual items, the whole catalog like a whole schema or individual tables of what they can read and and write this in the pro the general proxy and how I see this is
31:59 the general proxy and how I see this is their unity catalog is the equivalent to workspaces and lakehouse design inside fabric is how I see the the proxy there. So where they have a single unity catalog central location to govern and administer all the permissions, our permissions are more on the item itself and in the workspace. So we have the same permissioning system. It’s just materialized more on physical items in workspaces and items themselves. Then they’re talking about this agentic
32:30 Then they’re talking about this agentic data. So this is where data bricks has introduced this thing called metrics views. And a metric view describes, you views. And a metric view describes,, the relationships, the tables, and know, the relationships, the tables, and then any calculations, they’re calling them calculations or metrics, we would call the measures. That’s the same thing there. So that’s that’s the business semantics layer of this. How does all the relationships work? What do these columns mean? where did this table come from? Like there’s a lot of business knowledge,, to get this table. Let’s,, customers
33:01 this table. Let’s,, customers table. what data sources had to be brought together to get the customers table with the data in it, right? most of our customers table came directly from,, Salesforce, but we had the sales team add a whole bunch of other metadata that lives on that table and so we maybe added that in or we added some other customer data there. Then once you have these things established, once you have the lakehouse, the tables, and now this metrics layer, they’re calling it the the metrics view now data bricks
33:35 the metrics view now data bricks or metric sets. Yeah. No, not metric sets. Oh yes, not metric sets. Something different. now they’re applying this thing called Genie, right? So their version of co-pilot is genie on top of this metric set and they’re doing like AI BI dashboards which are visualizations layer and now they’re throwing AI agents at things and so there’s there’s genie there’s a BI dashboards there’s AI agents now how I see this I perceive this in the Microsoft world right genie is the equivalent of like running a co-pilot or co-pilot on home asking
34:06 co-pilot or co-pilot on home asking questions having it write natural language DAX or natural language SQL and then that interaction of what is in the semantic model producing visuals in front of the user. AIBI dashboards are the same thing as reports and pageionate reports for PowerBI and then AI agents are now the equivalent of data agents inside fabric. So I see a lot of these there’s a lot of similarities across the products. Okay. So now that we’ve level set the architecture in both places
34:37 set the architecture in both places really the article here is and the point I think of the article is teams are spending so much time creating and building the genie space to show a demo get excited highlight something and then they typically watch the the pattern of usage just flatten. People are excited initially they get some value out of it and adoption doesn’t really grow. It’s like great, we built this novel thing. I can ask it some questions.
35:08 can ask it some questions. But the soon as soon as you start having users ask questions that get like wrong or not useful answers or confusing answers, as soon as things get confusing, you’re not going to come back to it. You’re not going to revisit that experience again for quite a while unless something’s getting better there. So the and the article here here sounds familiar, right? Doesn’t this So the the note here is the fix is always almost always upstream. It’s not the chat interface.
35:40 upstream. It’s not the chat interface. It’s not the prompt engineering that you’re giving it. It’s in the semantic layer. And the the I think the note of the article here is when you have a half authored metrics view and in our world it would be a half authored data agent or half authored semantic model your joins are need to be correct your KPI definition needs to be right all the cinnamons and display names to be need to be corrected right so whatever your users are showing up to the model their understanding of what’s in the model has to match what’s
36:11 in the model has to match what’s actually documented in the model so the agent can understand the model enough to give re relevant answers back. So, let me just pause there. Tommy, what are your thoughts on this? Well, first, right off the bat, we really need to think of something better
36:25 really need to think of something better than AIBI dashboards that there’s got to be a better name. Hopefully, one day., , that’s just a I’m sorry. I’m sorry. That’s just they bloated the name with like I don’t see much AI in the dashboards to begin with when I work on it. [laughter] It’s just it’s just dashboards like I know. But I we’re hearing that more and more. I’m I’m hearing that more and more as a buzz word. I’m like, we can do better. We can do better as a community. But no, I think Mike, it’s funny you all the things you said and I love the article, but nothing here’s new especially take away the agentic
36:57 especially take away the agentic side of this and nothing here’s that new when it comes to the importance of anyone trying to understand the context of a semantic model whether you’re building it manually as a maybe managed self-service or you are trying to do something with a data agent or something agentic around this. None of these concepts are new. And I think it’s almost frustrating, not the article, I love the article, but it’s almost frustrating that we keep going back to the same cause and the same effect here,
37:30 the same cause and the same effect here, the same problem where again, whether it’s Genie or data agents or some or claude that’s running over your model, it doesn’t know the answers because it still has to write some code to get some output because it’s writing in SQL, it’s writing in a DAX, it doesn’t matter. And the chat problem or the AI problem is always going to go back to the source of data. How often have we said that AI is not a AI a prompting problem. It is a
38:00 is not a AI a prompting problem. It is a data problem first. If your data is bad, if it’s not clear, then AI doesn’t know what to do with it. It’s not going to automatically figure everything out. The reason why Claude and a chat GBT work so well because has billions and billions of data sources. A single semantic model with poorly descriptive columns and poor relationships and poor understanding of the waiting of what’s important is not going to work. We’ve seen this with automated insights that when Microsoft
38:30 automated insights that when Microsoft tried that, we had no ability as authors to be able to build that steer the conversation. Exactly. Okay. So, I I have a lot of thoughts here, but I’m going to pause there and do you agree with me. This is nothing new. I I would agree with you, Tommy. I would maybe even echo this is more,, we didn’t have good practices when we were doing this for people. Yeah. [laughter] And and people are pretty sharp and can figure things out and can discover things to some degree. I would I would agree people are more able to discover
39:01 agree people are more able to discover what’s going on. And also, if I threw a semantic model at you, Tommy, about a topic or domain we’re both interested in, in, yeah, yeah, I may not have a lot of good documentation on it, which is fine, but at least you understand our business. At least you’re in the same arena of like understanding like, oh, I know what customers are. I’m going to assume you may make some assumptions about what I built you for the semantic model, but at least we’re talking about the same stuff, right? We we have relative the similar business context. When we bring in agents to this, they
39:31 When we bring in agents to this, they have no context of this. It’s like bringing in an outsider consultant and saying, “Here you go. Here’s a semantic model. Now, I’m going to ask you very detailed questions about it, and now you you must be right 100% of the time.” Right? Right? The the point here in the end of the article, which I think is once I want to read this paragraph out because I believe this is the core of what we’re talking about. And I think my point here is this isn’t just a agent problem. This is a general semantic modeling problem. And this is what resonated with me in the article. If you’re not building good
40:01 the article. If you’re not building good models for other people to consume, there’s no way on earth any agent’s going to come in and do any better than what you’ve already used, what you’ve given to other people. Here’s the point. The quality of any AI interface to your data, not just Genie, but also text to SQL, any co-pilot, any agent, is fundamentally constrained by the quality of your semantic monoly. 100% agree with this statement. This is my point. Mhm. If your metadata is sparse, if your documentation is stale, if your business
40:33 documentation is stale, if your business logic lives in people’s heads rather than in the semantic model and or your catalog, no amount of AI capability will compensate for that. Period. And so I like that statement a lot. And I think again towards the end of the article here, it’s talking about well agents expose this weakness more for users, right? If you if you throw an agent at something and you’re not getting the results out of the semantic model that you’re trying to leverage, that’s just throwing a flashlight on the
41:04 that’s just throwing a flashlight on the issue of your model just isn’t well-rounded enough. You don’t have enough information in it. Too much information is living in you, the creator, and your team’s knowledge. Just was working on a project, Tommy. We have a data source system. Data source and I’ll give you the pattern of how the data is moving in. data source got into raw in a lakehouse curated manipulated with notebooks landed into data warehouse data warehouse to semantic model semantic model to reports okay users are trying to use the semantic
41:35 users are trying to use the semantic model to build their own reports there’s no understanding or lineage of in the 40 tables 50 tables that we have in the model there’s no lineage relationship between where did that column come from in the source system when I’m in the UI of the application as a business user entering in data manipulating things does that field match or have some information about where that column is named we have dim customer we have dim
42:05 named we have dim customer we have dim customer address what does that mean we have customer number right what does that mean what field does that represent in the other application so there’s this gap in knowledge between when I interact with the data in my application the the CRM system all This engineering happens not in a black box but like it’s happening behind the scenes and then outcomes a semantic model and report that is supposed to help me report about the the original data source. That’s the gap and there was no lineage. There’s no documentation. I don’t know how things
42:35 documentation. I don’t know how things are modified. So more and more I’m really really leaning on like this is not just one customer’s problem. I’m having like four or five customers ask me about the same problem. Where’s the lineage? How do we track this stuff? If I have three semantic models or four semantic models, are there consistent the same measure across those models? How do we centralize them down to a single place where we know what they’re doing? That’s the problem we’re trying to address here. It’s it’s not just a single semantic model. This problem grows to what is the process you’re
43:06 grows to what is the process you’re using to manage and govern your entire company’s data estate. So, this is an interesting point, Mike, because you’re letting me think about something about when it comes to writing the descriptions and providing those instructions, right? I don’t want to hammer on something we’ve talked about over and over again because I think you and I have done a ample job in spades, however you want to say it, over the cup of talking about the semantic model and the need for, you the semantic model and the need for,, structure around that rather than
43:36 know, structure around that rather than just building that, especially if you want to use it for agentic. But I do want to lean in to this idea of what should teams do or what is the difference if I have a solid semantic model and let’s let’s say for the sake of argument Mike I have a semantic model that I’ve accurately written descriptions for business right I have created a semantic model for the business and teams and I’ve written descriptions I still think there’s an added layer here or a different approach is probably
44:07 here or a different approach is probably the better way to say this if I am building this for anything agentic for data agents or for genie because I can write descriptions for humans for users right but I don’t think that’s ample enough when I’m writing this that I know that semantic model is going to be run through something dealing with AI so let me pause there do you agree with that or do you think I can take the same approach if I’m building that semantic model purely for people to see it in one lake and to see that in the government
44:38 lake and to see that in the government compared to if I’m building this for a data agent. Is that the same approach or do you take a different look at that? Do you work differently to get to the same result or to a different result? I’m I’m finding myself working much harder to make the semantic model as rich as I physically possibly can. Right. it’s also quite extensive to go through and have it describe every So I’ll say
45:09 and have it describe every So I’ll say this one one of the areas I think that is a a weakness of models in general is you you have to get to a place where how do I say this? Users know what they don’t like more than they know what they like is what I would is my argument here. So you could spend a lot of time making a model and putting a bunch and not putting anything in and then going to users and say tell me what this should mean. Explain to me why this is here. And
45:40 And while that adds some level of value, I find a better value ad is show up, have everything as best as you can documented information in it, and explain here’s everything that I’ve built you right and then say, “What is your reaction user? Tell me what I’m missing.” I I I feel like I get better feedback when I come in with some answer and say react to what I’ve built for you and then they have much more of an opinion
46:11 then they have much more of an opinion like I don’t really like this. This this is not really how this works. This relationship doesn’t work for me. when you show people what you’ve built, they’re much more opinionated about helping you correct it and fix it. Does that make sense? I So I completely agree with that. So how would you equate that? I I have a thought here, but I want to hear from you. you. How does that equate then to building for a data agent? What do you do then to get that same feedback? I would build I would build it in the
46:42 I would build I would build it in the same way I would build for a human. I would Okay. All right. So, I would if I’m going to if I’m going to give a model to Tommy and make sure you understand it. And so I was actually doing this with some of our analytics for our podcasts where we have a lot a lot of different social media platforms. We have a lot of data coming different places. I was looking at this going man it would be really nice to have data in one single place. So I start building data and start collecting together and in the report I’m taking screenshots of the related tables and putting them
47:13 of the related tables and putting them in the report as an object. I’m I’m looking at using Yeah, you were telling me about that. There’s some info functions that we can use that describe like the different measures and where they live and what they do. And so having the measures as a table inside the semantic model with their definitions, either descriptions and/or formulas, even if I’m not putting in if I’m not writing the descriptions, like the model is the documentation. I’m going to enhance as much as I can of like how the data is getting into things into the model because that way when I give it to Tommy, Tommy, you can at
47:43 give it to Tommy, Tommy, you can at least look at it, hover over the columns, see what the tables are coming from, define what things are doing. At least you get some semblance of like what I was trying to create. I’m trying to communicate a data structure to you through the semantic model. I I’m going to try to be the best I can to make that model as clear as possible to give it to someone else who doesn’t know what’s going on because I think when you do that, the agent gets the same benefit by default. default. So, I’m going to build it for like a
48:14 So, I’m going to build it for like a brand new intern person to explain how that stuff is going to get there. You’ve never seen this model before. And and you you get better at this by doing it. And what by this is Yeah. Yeah. build a model. Document what you think is in there. Give it to some new user and say, “Hey, I just want I’m going to give you this model. Here’s the here’s the basics of what you need to know. Can
48:34 the basics of what you need to know. Can you go build something with it? Let’s work on let’s do a workshop together and let’s let’s have you build.” And you can see their thinking because there’s things that they’re thinking about relationships between data that you’re maybe not catching or putting together yet. And watching them go through that just helps you understand more of what needs to be in the model that would make it easier for them to consume. So when if you’re not in that, how do I say this? You if you’re not observing how people are using your model, model, it’s more difficult for you to in the front
49:04 front put the information into it that they need. need. Let me let me propose two concepts for you that I think are going to be fundamentally different than building for humans that I think are important in the process. Not so much building semantic model, but building this for something agentic that I think are going to be fundamental to doing it right. So the two concepts here, Mike, are going to be refinement and layering that I want to introduce to you. Refinement is something you were talking about when it comes to asking the user like what do you think about this and getting
49:35 what do you think about this and getting their feedback, but it’s something I find a lot of people don’t give enough time to when they’re building agentically. And what I’m saying here is, have you ever Mike when you’re building something halfway through ask the agent what tell me what about this? tell me what what are the most important parts of it and try to be broad to see based on where you’re at what does the agent know because again I will always know the model so I’ll always know the questions to ask
50:05 to ask but it doesn’t work unless I refine with the agent and if the agent can’t tell me what it knows or a clear description like the right direction then we still have some work to do. So refinement is such an important process in the build because you’re never going to just do this right the first time with descriptions. [snorts] So I really think you’re my compared to working towards the human readable side of things is the refinement process. And I probably do this with semantic models
50:35 probably do this with semantic models three three to four times in in the work where we’re going through and I I pause where I’m at and I start talking with MCPs like hey what’s important in this model? what is this model about? And it’s like, oh wow, we’re completely off. Okay, it’s like, okay, why did you tell me that? Why did you tell me that these measures are the most important? Well, those are the ones that show up at yada yada yada. Okay, how can and you can ask the agent, I don’t again, I love this about agents or where we’re at with AI. You can even say, well, how can I get it for you that
51:07 say, well, how can I get it for you that you focus on these three measures? What can I do in the model to make this better so you focus on these tables? Yep. And the agent will go, “Yeah, if you actually put,, if the relationships were here, if you hid this, that would make me focus here.” So, refinement is such an essential part that I don’t think we give enough credit or attention to. So, let I’ll talk about layering in a second, but let me hear what you think about the refinement process. process. One one thing immediately comes to mind around the refinement process is Tommy,
51:37 around the refinement process is Tommy, you’re spending time figuring out how to use an agent to like work with an agent to figure out what it needs to know about this model. Okay. I’m finding more and more now that the need for me is to step into an agent session and work with the agent to achieve some goal. Here to your point, Tommy, in this example that you’re giving is I have a model. I’m you have made some changes to it and the agent is trying to get through some some of these things.
52:07 of these things. You’re trying to ask questions of the model. I want to get this information out. I want you to understand what’s going on here. How would I build this visual? How would I build this DAX? How what does that look like? Right? As you’re interacting directly with the agent and you’re saying, look, you’re focusing on the wrong thing. You asking the agent, how would I get you to focus on this other area or use these other measures more in a higher priority basically information, right? By you asking that question, you’re developing a little mini process.
52:38 developing a little mini process. And And my thinking here is as you come to the completion of that work, right? You’ve now made the change. You’ve now done this thing. I really like the idea of a pattern here where you you pause and say, “What did we learn here, agent?” Mhm. Mhm. Ask the agent to reflect on the bit of work that you just accomplished with the agent. And then what you do is if you don’t have a skill already or if you don’t have a custom agent that’s going to help you do it, you say add this
53:08 to help you do it, you say add this learned information into our custom agent and our skills. So one of the things I want to just a note here is with these things that are agents, they have an ability to be able to upskill them, provide knowledge you need them, have custom versions of them, use specific semantic models. I was actually just working with somebody else. they were using the simple versions of chat GPT 40 mini to to do some analytics thing and I said well you don’t do that actually go get the higherend models you will get much
53:38 higherend models you will get much better output and results by better reasoning on these bigger models and they were like oh interesting and then they went back and tried it I think it was on chat gpt 5. 4 for and they’re like it built everything correctly. I’m like I know like the even the model that you pick has a huge impact on how good of the answer that comes out of it. So this is one of the things I’m finding Tommy that it for me personally when I go onto a service anything on the websites there’s some
54:09 anything on the websites there’s some level of agent that it’s using to go do things for you. I don’t really know what agent or what level of capability that agent is is reasoning about, right? Is everything in co-pilot in the powerbi. com service chat gpg 40 mini or we using opus 4. 6 I don’t know. We don’t get to see that per se inside the co-pilot experience. But in my personal experience using specific models like if I want to just change
54:40 change some simple things in a model if I want to add some relationships for many probably it’s just fine right updating some relationships not a problem. But if I want to, to your point, Tommy, if I want to reason about what could I do better in this model to make that characteristic, those fields, those features, those measures, how do I highlight them more for you, the agent? That’s a much more of a reasoning and thinking task. I want to give that to a much more a smarter AI to help me reason about that information. And then after I
55:10 about that information. And then after I reason about it, then go back and test that model on the lower-end models because again, I don’t I don’t really want to use models to get information out. I want to use models to help me create things in simple applications, Python scripts, notebooks, simple stuff that I can reuse over and over again,. And it’s funny, too, because I I I’m going to go back to this because I’ve been saying this I feel like the last few episodes, but the death of process with AI is isolation. So once you get that information, like what do
55:40 you get that information, like what do you do with it? Do you just feed it back into the semantic model? Like it’s been incredible for me in my aha moment or just continuing to have these really my eyes open is anytime my Claude or whatever the whatever aentic tool I’m using is learning more about the model. I’m like go to notion, write it to that instructions board, write it to that semantic model page. And that feeds in with my my meetings. It feeds in with all the other notes I have on a project
56:10 all the other notes I have on a project to what we’re doing with it because it’s so hard even with refinement. A semantic model does not live alone. It’s someone’s business. It’s someone’s process. You’re probably talking about those numbers in some capacity. So that’s more of an advanced tooling. I found that to be really successful for me is anytime I’m writing to a semantic model or talking with it, we’re writing back to notion or some documentation that it can read at a future time because it adds this context. But I want to introduce to you this idea of
56:40 to introduce to you this idea of layering with instructions around semantic models. And this is something I’ve been testing now. So this is not we’ll say it’s not perfect but think about if you have a GitHub repo and you have what your cloud MD your agents. mMD well that the way cloud code and a lot of these agents work is it will understand the context of what folder you’re in right so it knows the user it knows the project and it knows
57:11 user it knows the project and it knows what folder you’re in and each of those can have its own instructions document its own claw. md D document say hey you’re looking at Mike Carlos private repo Mike par D I could be in a folder doing work say okay you’re in this folder that builds this app well I’ve also been writing my descriptions in semantic models in the same type of methodology with tables columns and models and even the measures themselves
57:41 themselves so for example rather than just writing hey this table is a fact table fact tables have da da da up., I’ve been writing my fact tables where it’s like, hey, your fact table, by the way, there are three nested folders in here or display folders. These are the measures here, the most important ones, and I’m telling it what the measures that are important in that table are. And the same with dimension tables. I’m letting the table know or the table description contains what the most important columns are rather than
58:13 important columns are rather than writing that in the column itself. Now obviously you’re writing that in the column itself but each layer I’m providing instructions for what’s underneath it in a semantic model because again you are writing descriptions at least to me you’re writing descriptions differently than you’re writing for just the business user user and treating it as if hey do you want to know you’re in this table do you want to know what’s important we’ll find out at the table layer and then once you go into that where to look because that’s every single time the agent it’s
58:45 that’s every single time the agent it’s going through it starts with the model description. It’s going to go to the table description. It’s going to read that and understand that. And if you let it know, by the way, don’t focus on this column. These are the three columns that are essential in this relationship. And I can provide that at the table view, man, that makes the column description a lot easier to do. So, yes. yes. What’s your thought there? Have you tried this? Is some is this new to you? I’ve never, I do I do something I don’t really do something similar. I do a different process but like
59:17 a different process but like a lot of what I’m doing is just focusing on how my main focus here is simplify simplify simplify right I think a lot of what I try to do is get as much out of there that I physically don’t need to have there most of my design and it depends I think it really depends on how detailed that end user is going to be able to understand the model one area that I think is very lacking right now is if I’m building a report There’s no way of understanding if I grab a measure. So let me this is a
59:48 grab a measure. So let me this is a feature that I think needs to exist and maybe I’ll have to build something that shows people how this works. But imagine you grab a measure from the model. Doesn’t matter where it is. Measures table, fact table, doesn’t matter. There’s a measure somewhere. As soon as you grab that measure, the rest of the semantic model should gray out for tables that does not exist. Like you can’t use it. That would be great. Yeah. Right. So my thinking my thinking here is the measure has lineage. Right. That measure lives in a fact table. That fact
60:20 measure lives in a fact table. That fact table has dimension tables with it. As soon as I touch that measure, the list of tables that I can touch are shortened, minimized, reduced, right? Because it doesn’t make sense necessarily to bring a unlin table into my reporting view of that information. So my this is probably like an impossible feature to build because it’s
60:41 impossible feature to build because it’s probably going to be like ridiculously hard to figure out how to do this. But I feel like a lot of times I need so this is this is the miss I think Tommy right the the metrics views that we had and got killed. No one used them. No one used them. I think the I think the main reason those were not used were because it took so much effort for you to specify this measure. Here’s all the dimensions that you need to add to that measure to make it work.
61:12 to add to that measure to make it work. Now, I think there’s a very passive way to do this, right? right? Okay. Okay. Whenever you see a measure, you should be able to see all the related tables you can use with that measure. Period. End of story. The lineage is already in the model. It’s already there. You could have it. So sure. sure. I know this measure is part of these columns. These columns are part of these tables. These tables are part of these other related items. Great. That would simplify so much. Another thing Tommy I can’t in desktop
61:44 Another thing Tommy I can’t in desktop select a perspective. Let’s just say I wanted to make just a handful of perspectives. There’s there’s too many tables for me to pick from, right? I could have used that. out. I could have two or three fact tables that all have a whole bunch of I should be able to select a perspective from the model that says here’s a subset of all the tables I have in the model. I want I only want to see these tables for what I’m building. Duh. Duh. This is like a no-brainer to me. Like why doesn’t this exist?
62:14 why doesn’t this exist? it hasn’t existed for 10 years. not that that means this is fine, but what? Like Yeah. Yeah. Why doesn’t Nothing’s been taken away. Nothing’s been taken away, but I just Why do modern vision tool tips just become GA in 2026? So, this is like where I’m like, while I’m not going down like that deep route of you, Tommy, with the agents and like sub layers and and and focusing the attention of the agent on things because again, I don’t really want the agent to understand and produce visuals for me, I want the agent to help me build stuff,
62:45 want the agent to help me build stuff, right? I focus a lot more on the creator side of the experience. Like, I want the agent to understand the model well enough. And honestly, I’d rather have the agent help me like where’s where’s most of my time spent? What part of this is difficult for me? Where the difficult part for me is on the creation side of stuff. If you have a report that’s already done, you can ask some general questions of it and you can throw an agent at that. Fine. Okay. Where more of my time is spent though,
63:15 Where more of my time is spent though, more of my time is spent creating the report, getting the style right, getting the visuals looking the way I want, picking the right visual. I can make a table all day long. I can drag columns in, not an issue. That’s not my problem. My problem is how can you agent suggest three or four or five different tables? So to me, it’s a lot more on that side of things where I I’m when I focus on the creator story, there’s different needs that I’m looking at than I think what you’re looking at. Tommy Mike I think we’re talking about two different things and possibly
63:45 possibly no really I think you’re talking about a again the developer experience I’m talking about the end user goal I would like to propose something to you and I like to propose something to Microsoft and data bricks and whoever is listening who builds this stuff I think we need in our tables custom instructions per table that or at least a field there where you can add it so you’re saying like description and custom instructions Yeah. And I think two different things I believe. So I think you can do that Tommy but just not in an easy way which
64:16 Tommy but just not in an easy way which means means you need annotations to do that and you have to say these are annotations in the model and use these. I I think the agent can see annotations. That’s a lot more tokens that you’re going to use because it’s still going to have to process. It doesn’t know that the semantic model has custom instructions to look at. Right? So you have to every single time an agent’s now reading your model say, “Oh, by the way, there’s a thing we have custom instructions and has to process that.” It’s not an integrated part. So it’s not going to be any faster if you have it in there as a column though. You’re still going to tell it.
64:46 You’re still going to tell it. Oh, yeah. If Yeah, Mike. So if I had annotations, every single time the agent has to read the semantic model, it has to understand that I provided custom instructions as something new and has to reason what custom instructions are. But let me tease that out. Yeah. Well, let me tease that out though. Even if you didn’t do that, right? Mhm. Mhm. Even Even the the trick I’m what I’m hanging up on is is those custom instructions have to live somewhere. Whether it’s a description
65:17 somewhere. Whether it’s a description column that’s physically is part of like the timle format and then a new one called let’s say there’s a new property introduced called in custom instructions. The agent still has to read that. That’s not the what I’m saying. What I’m saying is if you have an annotation, if this is not an integrated part, one of the reasoning steps that your agent has to do is the user is telling me in annotations, they provided instructions. Okay, these instructions are for me. Okay, now I have to now look through all the annotations, but you that first step
65:48 the annotations, but you that first step that the user said there’s this idea of custom instructions rather than the agent always looking towards a certain field that are instructions. For example, let’s say there was no idea of claw. md, right? Why is one of the first things that claude recommends when you’re working on a new project to create your claw. md file? Because cloud’s going to look for that. Like cloud code first thing it’s going to look for is a cloud. MD file is look for instructions on which the context is
66:18 instructions on which the context is derived or derived from. There is no idea of that. There’s no concept in data agents or concept in genie of this idea of custom instructions for a model. So it has to you have to now provide that reasoning step for it. So I see what you’re saying but rather than looking at descriptions which are descriptions are never going to be clear enough for what an agent should do unless you provide it out which are there I say custom instructions. you’re dealing with this
66:49 instructions. you’re dealing with this loop of an agent being confused. So, I’m I’m gonna push here to say we need custom instructions for models. models. I I don’t see my there’s nothing stopping you today to get those get those today. And I also would argue whatever you’re describing here, there’s no like it’s not going to you’re not going to get it for free regardless of whatever the custom instructions come in as. there’s going to be some level of token usage anyways, of course.
67:19 usage anyways, of course. So whether the custom instructions sit in annotations, whether they sit in something else that the clawed MD file lives in, like it doesn’t matter. It you’re going to have to instruct the the agent with some information that says there are these fields or properties or columns or annotations that have custom instructions in them. Use those custom instructions. I don’t think you’re going to get any more efficiency from that by having a column or an additional element inside the model. That’s just going to be custom instructions. So I don’t
67:50 be custom instructions. So I don’t you’re not going to get it for free. Like if you’re if you’re going to have custom instructions by table. Now what potentially could be better here is there are the MCP server is pretty good at pulling out only the information it needs. Yes. Yes. Right. Yes, I think what you’re maybe you’re describing is we need a smart way of applying instructions strategically into the model only when they’re required. So if you’re using the MCP server to talk to the model,
68:21 talk to the model, that is a good candidate for where you would apply those instructions as annotations because then the MCP server would say, “Oh, I need to go get this. The user is asking me about this fact table. I’m going to go pull that table.” and when they pull the table, they’re only pulling the instructions for that particular table, right? right? So, yes, it’s an additional step, but I I don’t see that as being like a a token saver saver in any way. And I would also argue too, if you’re needing tokens at this level, the value of the added tokens for you to
68:51 the value of the added tokens for you to use them to get the information out about the table is probably more valuable than the tokens you’re using to the additional tokens you’re using to consume to get it to do the answer, right? right? If If if the model without the annotation, the model without the annotation gives you a really crappy answer, you’re just going to burn more tokens anyways to try and get to the right answer. answer. So, I’d rather add the annotation, take the hit on the token cost, and just have it there and get a better result day
69:22 it there and get a better result day one. First question. Yeah. And I I’ll close on this because I do see what you’re saying because my custom instructions when I’m building to your point, we’ll talk about the developer view, the builder view, not so much I’m building for the consumer are coming from notion. So when I’m building Mike, I’m saying don’t look at the don’t connect to my pip first. Connect to notion. Read this page. Here’s the custom instructions on the model. So it’s not necessarily integrated into the model. And from there, we’re building like we’re going. I just say, “Okay, what do we need to do
69:53 I just say, “Okay, what do we need to do first?” It knows what to do because it’s reading some clear instructions here., I think regardless, and I I’ll really want to end on this because I know we’re we we’re way past time, but it’s a great conversation, is regardless if you’re genie, a data agent, or using MCP. MCP. At at some point if your model does not have some structure to it, be it descriptions or simply hiding and showing columns, you are setting yourself up to have a frustrating experience and not a successful
70:23 experience and not a successful experience. Totally agree that. And I would also argue the the the main point I have here is it doesn’t matter if it’s an agent or another person in the team trying you’re going to get frustrated users, you’re going to get frustrated agents and you and you are going to be frustrated because the answers it’s giving you out isn’t really useful to you. So I don’t really think I think the agents throwing agents at models is just highlighting more of your crappy semantic model that you didn’t really do a good job building really none of that right build better models get better semantic model data in it you’ll get
70:54 semantic model data in it you’ll get better results period this happens all the time over and over again all this is doing it’s really highlighting the ability for us to make this much more functional for users you’re going to have to improve your semantic models there’s a lot of good documentation we’re just saying improve it we’re not giving you specifics here but there is a lot of good documentation say go look for prep your model for AI go look up the best practice analyzer all these tools are providing lots and lots of really good recommendations for descriptions and hiding columns and adding names here and naming conventions
71:24 adding names here and naming conventions and making things easy for users to consume a there’s a lot of already best practices to already improve the the level of your model so start using these other tools prep for AI and semantic model analyzer and the the semantic link labs which is best practice analyzer. Use those tools to help you make the model much better that will in turn yield a much better model and I think ultimately better success with deploying these models as well. Anyways,
71:54 these models as well. Anyways, thousand% thousand% great article for advancing analytics. Tommy, thanks for the discussion today. It was super fun. That being said, thank you for listening. And Tommy, where else can you find the podcast? You can find us on Apple, Spotify, wherever your podcast. Make sure to subscribe and leave a rating. helps us out a ton. Do you have a question idea or topic that you want us to talk about in a future episode? Maybe it’s about Genie, maybe it’s about data agents, maybe it’s about modern visual tool tips. Head over to PowerBI. tips/mpodcast. Leave your name and a great question. And finally, join us live every Tuesday and Thursday, a. m. Central on all
72:26 and Thursday, a. m. Central on all of PowerBI tips social media channels. Thank you all so much and we’ll see you next time. measures. [music] Pump it up. Be it high. Tommy and Mike lighting up the sky. Dance to the day to laugh in the mix. Fabric and A. I get your fix. Explicit measures. Drop the [music] beat. Now, kings feel the crowd. Explicit measures.
Thank You
Want to catch us live? Join every Tuesday and Thursday at 7:30 AM Central on YouTube and LinkedIn.
Got a question? Head to powerbi.tips/empodcast and submit your topic ideas.
Listen on Spotify, Apple Podcasts, or wherever you get your podcasts.
