Skip to content
Aakash GuptaAakash Gupta

Complete Course: AI Product Management

From prompting through AI PRDs, fine-tuning, RAG, MCP, and AI Agents, today's episode is a complete crash course on how to become an AI PM. Trailer - 00:00 Why AI PMs Are Paid So Much - 1:25 Effective Prompting for AI PMs - 02:39 Ad: Linear - 09:57 Ad: Miro - 10:42 AI PRD Template - 11:54 Fine-Tuning vs RAG - 16:42 Ad: Amplitude - 19:01 Fine-Tuning Demo: Creating a Yoda-Style AI Assistant - 19:52 RAG Implementation: Connecting Documents to AI Chatbots - 30:03 MCP (Machine-Callable Programs): Working with Multiple Tools - 59:00 AI Agents: Creating Advanced Product Research Assistants - 01:18:31 Future of AI Product Management - 01:33:16 Outro - 01:35:49 💼 Check out our sponsors: Linear: Plan and build products like the best - https://linear.app/partners/aakash Miro: The innovation workspace - http://miro.pxf.io/PO4WZX Amplitude: Try their 2-minute assessment of your company’s digital maturity - https://bit.ly/4hl25RG 👀 Where to find Pawel: LinkedIn: https://www.linkedin.com/in/pawel-huryn Newsletter: https://www.productcompass.pm YouTube: https://www.youtube.com/@pawelhuryn 👨‍💻 Where to find Aakash: Twitter: https://www.twitter.com/aakashg0 LinkedIn: https://www.linkedin.com/in/aagupta/ Instagram: https://www.instagram.com/aakashg0/ Transcript: https://www.news.aakashg.com/p/complete-course-ai-product-management 🔔 Subscribe and like the video to support our content! 🔑 Key Takeaways 1. Prompting isn’t a Trick, it’s the Product. Prompting isn’t something you tack on at the end…It’s a core part of how the product works.Well-structured prompts completely change the quality of output. It’s basically the UX layer for LLMs. Your goal isn’t to outsmart the model but to teach it how to behave with clear, repeatable instructions. 2. RAG is How You Stop Hallucinations And Keep Your Product Fresh! Instead of cramming everything into the model or relying on fine-tuning, Retrieval-Augmented Generation (RAG) lets you pull in the right context when you need it. For example, he used it to pull product changelog data and get accurate responses… Without needing the model to already “know” that info. If your product updates often, RAG keeps the AI current without hardcoding anything. This is how you reduce hallucinations and keep things adaptable. 3. Most PMs fine-tune When They Should just Prompt Better. He has seen this mistake countless times: PMs reach for fine-tuning too early. He showed a side-by-side of zero-shot, few-shot, and a fine-tuned model.All summarizing a product dashboard.The few-shot prompt actually did better than the fine-tuned version. Most PMs go straight to fine-tuning, but with the right prompt structure, you can get 95% of the result!And it’s way faster, cheaper, and easier to maintain. 4. An AI Agent Is Just a Pipeline That Thinks The term “agent” gets thrown around a lot, but under the hood, it’s a system that can think: Intent classification, tool selection, execution logic, and error handling. If you don’t design for that structure, your agent becomes unpredictable fast. The real magic happens when you coordinate its behavior with reliable systems thinking and that’s your moat! 5. AI PRDs Need a New Language! Traditional PRDs were built for deterministic systems.You specify inputs, define expected outputs, and call it done. You’re not writing “requirements”, you’re writing intent, behavior, and expected failure modes. Here’s how to write PRDs for AI products: → Include structured prompts, not just user flows→ Provide real input/output examples→ Define what “acceptable variance” looks like→ Plan for fallbacks, retries, and recovery UX Most importantly: You’re not managing the model, you’re collaborating with it. And if your PRD doesn’t reflect that dynamic, your product will feel brittle, unpredictable, or worse… totally misaligned with user needs. #podcast #productmanagement #ai 🧠 About Product Growth: The world's largest podcast focused solely on product + growth, with over 167K listeners. Hosted by Aakash Gupta, who spent 16 years in PM, rising to VP of product, this 2x/ week show covers product and growth topics in depth.

Pawel HurynguestAakash Guptahost
Apr 22, 20251h 36mWatch on YouTube ↗

EVERY SPOKEN WORD

  1. 0:002:58

    Why AI PM roles pay more and what makes them different

    1. PH

      In today's episode, we cover everything, prompting, fine-tuning, RAG building that you need to know to become an AI product managers.

    2. AG

      Are all PMs gonna need to become AI PMs?

    3. PH

      The AI market is growing so fast that there is a high probability that we will need more AI product managers in the future.

    4. AG

      You can't just prompt like an average person, right? You need to be prompting at a very high level.

    5. PH

      And we instruct ChatGPT to think separately from different perspectives. I like adding that you will get $1,000 if you perform this task on a champion level or something like that.

    6. AG

      Why are AI PMs paid so much?

    7. PH

      One of the reasons is that they need to combine business skills with the technical knowledge. Then based on this, uh, generic information, it plans up to 11 separate tasks, and those tasks are distributed to different agents.

    8. AG

      It's not that everyone needs to become an AI PM, but this market is growing really fast, and we just gave you all the tools to become an AI product manager. Looks like that's ultimate list of product metrics. I'm a dummy, so I'm still trying to understand when do I use fine-tuning or when do I use RAG? Really quickly, I think a crazy stat is that more than 50% of you listening are not subscribed. If you can subscribe on YouTube, follow on Apple or Spotify podcasts, my commitment to you is that we'll continue to make this content better and better. And now on to today's episode. Pawel, thank you so much for being here again.

    9. PH

      Yeah, it is great to have, uh, to be here. Thank you, Aakash.

    10. AG

      So I wanna talk a little bit about AI PM. Why are AI PMs paid so much?

    11. PH

      That's a good question. [laughs] Yeah, they are definitely paid more than an average product manager across different industries and regardless of their experience. Uh, one of the reasons is that, uh, they need to combine business skills with the technical knowledge. So even though you do not have to, uh, like, just like with technical product managers, you do not need to code, and in this case, you will not fine-tune or create, uh, AI workflows, uh, but you need to understand the technology good enough, well enough to work with engineers, and that might be challenging. This is a new technology.

    12. AG

      Yeah, I think that's one thing, and then the other thing is it's just such a hot area, right? So all of the PMs wanna go into it, and I think that as a result, what we're seeing is that the best companies, they're trying to pick up the best talent. And to pick up the best talent, you might need to pay a little more. So today, I wanna break down for everybody how you can become an AI PM. And I wanna start at the very basics of AI PM-ing. You need to be able to prompt well. So can you break this down for us?

    13. PH

      Yeah, of course. You want me to demonstrate a prompt, share my screen?

    14. AG

      Yes, I would love to see how you prompt.

  2. 2:586:03

    Prompting as a foundational AI PM skill: context, roles, and assumptions

    1. PH

      So an example, an example prompt from my article where I describe the best practices is like this. So first, this is a prompt about identifying hi- hidden assumptions for, uh, the product trio which performs continuous product discovery. And the first thing we want to do is to explain the context. So just like when we are working with engineers or product teams and, uh, we want to communicate the context, so not only what is the task they are supposed to perform, but also, uh, why it matters and, uh, yeah, how it aligns with the broader organizational context. So in case of working with, uh, LLMs or AI in general, we also want to explain this context. So, uh, I informed ChatGPT that it is working in a product trio performing continuous product discovery. I explained what the goal is, what are the team objectives. Uh, the next thing, uh, that is in this prompt are, uh, identified opportunities related to that objective that are might be the result of interviewing customers. And only after providing all that context, we ask about assumptions that needs to be true for those ideas to work. Uh, so we have, sorry, we have idea, uh, that one of the ideas might be offering automated investment recommendations. Uh, and we instruct ChatGPT to think separately, uh, from different perspectives. So this is an perspective of a product manager, experienced product designer, and experienced software engineer. And we would like for each of those personas to identify assumptions related to value, usability, viability, and feasibility. Uh, and what we have done here is, so the first element is introducing the context, uh, and describing the goal, uh, the broader objectives, uh, what happened before performing this task. So we have identified some opportunities. We have came up with an, an idea. And then, uh, we instruct the, we explain the steps that LLM needs to take in order to perform this task well. So we have, um, iterating for different roles, and for each of those roles, there is a specific task to perform. Uh, let's try what and see what will be the result of the section. Mm. Okay, so we have, we have different assumptions related to the four areas that we mentioned. For product manager, product designer, and engineer, those will not be the same risk areas because each of those persons brings a different perspective to the table. Uh, and when being so specific and defining the steps that LLM needs to take, um, also providing the broader context, we can get much more reliable, much better results.

  3. 6:039:45

    Prompting best practices and “hacks” that improve output quality

    1. PH

      Uh, in the post About, uh, top, uh, high ROI use cases for product managers about the prompting, I explain several, uh, hacks. So one of the hacks is to ask AI to play a role, like a product manager, product designer, or software engineer. Uh, the next hack, the next important thing is to clarify the context, so not only what is import-- what is required, but also why we need it. Uh, another one is, uh, talking like we talk to, to humans, even though LLMs do not have emotions. Uh, you get better results if you, uh, treat them well.

    2. AG

      [laughs]

    3. PH

      Maybe. [laughs]

    4. AG

      Yeah, I feel like it's like a one percent difference, but just being polite, even including a smiley face, helps.

    5. PH

      Yeah. Uh, another one is to set clear expectations, so it's just like when we delegate a task to a human. Uh, it's way better [laughs] when we specify what are the des- what are the desired outcomes and how the response should be formatted. For example, what are the success criteria? Uh, like those four risk areas for each of the persons that we, uh, selected. Uh, in other situations, so for example, if the prompt was about generating a user story, uh, it's very helpful to provide a template. So not just inform LLM that we want a user story, but if we have some user stories that we used in the past, we generated in the past, give them as an example so that, uh, the answers can be better aligned. Another one is providing step-by-step instructions. So for example, first iterate for this and this and this role, then, uh, identify assumptions related to first value, second usability, and so on. Uh, in reasoning models, so here, uh, this is one-shot prompting, so it doesn't actually do it, uh, sequentially. Uh, but in reasoning models, it will actually iterate on those, on those steps. Uh, another one is avoiding leading questions to avoid injecting biases. I have tested several times, and I get better results when I, uh, say AI that they will get a reward. So for example, if I have a prompt that, uh, I, I, I cannot get the s-satisfying answer, I like adding that you will get $1,000 if you perform this task on a champion level or something like that. And it, for some reason, it works, and definitely, LLMs tend to provide longer answers, more detailed answers if you, uh, mention the reward. Um, yeah, and, uh, the last two is, uh, just to iterate. So, uh, there is high chance that, um, if you try it the first time, um, the output might not be ideal. So in that case, we just iterate, try to, uh, improve, and, uh, inspect the outcomes. And in some cases, it also helps if you provide an example of the ideal output, like a user story, let's say, or a product requirement document, and you can ask, uh, LLM to reverse engineering. So what, uh, what should be the prompt, assuming this is the outcome? Uh, and that's a [laughs] very powerful technique.

  4. 9:4512:07

    Sponsor break + prompting mastery mindset (the chess analogy)

    1. AG

      Okay. So that's skill one for AI product managers. You need to be able to prompt well. You can't just prompt like an average person, right? You need to be prompting at a very high level. The way I would think about prompting is try to think about it like chess, right? Hey, let me take a quick break to talk about something that's completely changed my product management workflow: Linear. As a PM, I was drowning in tools, one for planning, another for issue tracking, roadmaps and sheets, and jumping between Slack, Intercom, and app reviews just to piece together customer feedback. Sound familiar? I was spending more time keeping systems in sync than actually building product. Every time development kicked off, my carefully crafted plans would immediately need updating. I was the human API between all our teams, constantly chasing updates and translating between tools. That's why I love Linear. I can capture customer feedback, shape product ideas collaboratively, quarterback cross-functional teams, and monitor development progress in one place. It cuts through the maze of disconnected systems that were complicating my life. Product teams at OpenAI, Vercel, Brex, and Cash App all use Linear. If you're tired of spending your days keeping different tools and teams in sync, check out Linear at linear.app/partners/aakash. That's linear.app/partners/aakash. Today's episode is brought to you by Miro. Let me ask you something. How many tools are you juggling just to get a single project across the finish line? One for brainstorming, another for planning, something else for tracking tickets. That's where Miro comes in. It becomes an all-in-one collaboration workspace. Whether you're consolidating user research from several interviews, developing and synthesizing product briefs or a wireframe, or project managing development, Miro brings everyone into the same space. It's fast, intuitive, and fully loaded with features like project templates, two-way Jira sync, and integration with software like draw.io and PlantUML. Miro's AI features can be used to synthesize elements in a board to develop a ready-to-review product requirements document in seconds. If you're tired of tab overload and scattered workflows, try Miro. Head to miro.com and see why over ninety million users choose Miro to guide from idea to outcome. You can get pretty good at chess if you put in a couple hundred hours, but you're not gonna suddenly be Magnus Carlsen until you put in ten, twenty, thirty thousand hours. And so Pawel is sharing some of his hard-won tips and tricks after putting in those hundreds and thousands of hours. I wanna move to the next area for AI PMs.

  5. 12:0714:51

    How AI PRDs differ: fighting hype, ensuring alignment, adding guardrails

    1. AG

      Which I think this is the one where it's now veering really into the PM skills, which is an AI PRD. How do you write a PRD in an AI context?

    2. PH

      For this one, we partner, we partnered with Mikdat Jaffer for, which is product lead at OpenAI. And so arguably PRD for, uh, AI features or AI products is not something completely unique. Uh, what is unique is a lot of hype around artificial intelligence, and this hype causes that, uh, in some cases, uh, product teams pursue features or products without, uh, uh, a justified business case. So what is included? There are two areas that are included in, in this PRD. One is ensuring that our initiative is aligned with our business strategy, uh, in case of AI features with product team objectives. And the second one is including AI-specific considerations, like how we will, uh, ensure that there are, there are specific, uh, guardrails implemented so that the model is aligned with the user. And, uh, there are several sections. Uh, this post is still free and can be downloaded from, from my newsletter or together with the template. Uh, but with, before we discuss the template, maybe it's worth mentioning that the first, uh, AI PRD, uh, is a tool for alignment, s- uh, building alignment, uh, in the organization. Uh, not... We do not necessarily need, and I actually don't like it, [chuckles] documenting every single detail like user stories, tasks, uh, very detailed deadlines, uh, and, uh, roadmaps. Uh, we would rather, uh, want to use PRD as a tool to, uh, highlight our assumptions and, um, yeah, uh, provide some evidence and also connect our initiative to, to the broader, uh, organizational context. And the second thing is that, uh, it shouldn't be a distinct phase at the beginning of the projec- product or project or initiative. Uh, we usually start with a draft, and as we build our feature or AI-powered product, uh, we iterate on, on our PRD. Uh, and the sections in the PRD, so the first one is executive summary. So just briefly, we briefly

  6. 14:5119:58

    AI PRD template walkthrough: market, users, value prop, moat, scope, GTM

    1. PH

      summarize what this initiative is about and how it will, uh, what are the success criteria, how it will benefit the organization. The second one is about market opportunity, and this is about AI specific, because we would like to explain why this is something that we should build right now, and maybe this is something that has just become possible. And also, what is the, uh, potential for the future? So is this market big enough, or will it become big enough, uh, in the mid or long term? Uh, another one is strategic alignment, and this is also inspired by this, uh, AI hype. So we want to ensure that for an AI product, it is aligned with our vision, our strategy, it supports company objectives. And for AI feature, uh, there is additional assumptions related to our team objective.

    2. AG

      Yeah, 'cause you don't wanna just build AI for AI's sake, even if your board or your investors are asking you. [laughs]

    3. PH

      Uh, customer and user needs, so this is quite straightforward. So what is, what is the problem we are trying to solve? And, uh, let's hope there is some problem and, uh, and the only problem because building, uh, an AI-powered product cannot be the problem in itself. So, uh, we want to identify market segments, um, which are clusters of customers with similar underserved needs. And for each of those segments, we would like to, uh, understand how important those needs are for the customers and how satisfied they are with what they already have. The next one is our value proposition, and the value proposition is about how we will address those, uh, needs for each of the segments. So, um, what is important here is that we do not want to focus only on features, but also we want to mention capabilities, um, and benefits. So what is the current state? What is the customer pain? Um, how we will address it. So, for example, we will introduce a, a specific feature, uh, and what will happen after. So what, what are the benefits for, for the customers, and also how it is different from what our competitors offer, and how we can communicate it. And for this, there is a value proposition template, also value curve, so that we can easily compare, uh, our value proposition to what other companies offer. Uh, the next section, competitive advantage, is about, uh, not just competitive advantage right now, but how we can sustain competitive advantage in the long term. So, um, what can we do so our competitors can't or won't copy our strategy? And this is a classical, uh, can't/won't test from Roger Martin, uh, work from his, uh-

    4. AG

      Yes.

    5. PH

      ... work.

    6. AG

      Whose podcast I believe will be right before yours. [chuckles]

    7. PH

      Oh. [laughs] Yeah. That's nice.

    8. AG

      Yeah.

    9. PH

      And, uh, here, uh, yeah, uh, I'm, I'm a big fan, so I will [laughs] uh, watch it for sure. Okay. And, uh, product scope, so high-level assumptions, use cases, links to Figma prototypes, non-functional requirements, so general requirements and how we will measure them, and also AI specifics, so what are the key architectural choices, um, what are the-- how can we, um, assess, uh, our implementation. So for example, AI evaluation metrics or bias and fairness audits.

    10. AG

      So AI evals, how do you handle those?

    11. PH

      Uh, I will do a simple demonstration when we will be discussing fine-tuning. Okay?

    12. AG

      Perfect.

    13. PH

      Okay. And the last one is go-to-market approach. So what are the build and release phases? What market segments we want to focus on first? So, uh, yeah, this is our-- perhaps we want to apply the Beachheads, uh, strategy and, uh, how we will measure our success. There is also a PRD template to download, which is simplified and much shorter. So even though this article seems long and the actual, uh, template is like three, four pages, a, uh, document. And also there is a case study and here, um, you can read, uh, Mikdat ex-explained, uh, how this AI PRD was applied to Shopify, uh, and he was responsible for releasing a feature called Auto Write, which was about product descriptions.

    14. AG

      Can you walk us through a practical demo of fine-tuning for PMs?

  7. 19:5825:04

    Fine-tuning demo for PMs: when prompts get too big and expensive

    1. PH

      Yeah, sure. Uh, before I demonstrate the fine-tuning and I have an example for you, uh, let me explain what is wrong with the current, with, with the popular approach. So just taking off-the-shelf model and, uh, instructing it to, to perform a prom-- some prompts. Uh, so for example, here, uh, we can see Delphi AI, which is a common platform for building clones. And in order to get, uh, the right results, uh, that resemble your style, you need to inst-- uh, inject a lot of instructions every time you ask a prompt. So for example, this is a purpose of the clone. Uh, here you can see a speaking style, and it is all part of the prompt. So every time user, uh, connects to a chatbot, all those instructions are injected. And, uh, of course, this causes that, uh, you need to select much more expensive model and even with more expensive, more powerful models, uh, it might be challenging to adjust and this is one of the things that is, uh, actually difficult with LLMs to adjust, uh, LLM to your style, uni-unique style like brand voice. Uh, so what fine-tuning allows you to do is that you can take a smaller model like ChatGPT 4o mini and you can train it specifically on your, uh, training data and those are the parts like, uh, user prompt and model response so that it internalizes, uh, this knowledge inside the model parameters. And this as a result you can use much smaller specialized model and you will use much less tokens because you do not need to include all this context every time you ask a question. So I have prepared two datasets with example prompts and answers, uh, to fine-tune ChatGPT, uh, so that it can talk like Yoda from Star Wars. And, um, if we open one of the datasets you can see that, uh, it's just a collection of messages. Uh, so for example, user asks, "Can you explain gravity?" And the response is something what Yoda could resp-- uh, could respond. Uh, okay. So to use this to fine-tune a model the easiest way is to go to platform openai.com and here on the left we should have a Fine-tuning tab and all we need to do is to, uh, click Create. Uh, the default model is supervised and we don't want to touch it. The base model is the model that we will be adjusting. So for example ChatGPT 4o, uh, mini. Uh, next we provide training data and the training data is this data that I presented and the second dataset that I can attach is validation data. So it means that during the training, uh, OpenAI will automatically, uh, run tests on, on this additional dataset to see how well it can predict the answers. And what is important here is that, um, this test data is not present in the training data. So it's like, uh, independent audit of how our training is performing. Uh, okay, number of epochs. So batch size it's, uh, how many examples we will process. Uh, if I remember correctly, uh, at once if I remember correctly it's ju- it's just one record after a-another and we do not want to touch that. Uh, this setting is also something that we can leave, uh, with a default value And number of epochs is how many times we will iterate over the training data. Uh, we will see that in the interface in a moment. So let's say we will do it three times. And after clicking Create, it will start, uh, iterating on, on our files. I have done it several... Uh, and the process takes like 20, 30 minutes, so it's not very, uh, quick. Uh, but I have done it several hours ago, so maybe we can, we can see, um, how it went.

    2. AG

      This is a cooking show. You put it in the oven, and then it comes out ready. [laughs]

    3. PH

      [laughs]

  8. 25:0430:12

    Understanding fine-tuning results: epochs, loss curves, and practical value

    1. PH

      Okay. So what we can see, this green line is, uh, how well the model was able to, after training, was able to predict Yoda answers. So training clause, this is the difference how much texts are, text, generated text was similar to the expected text. And, uh, this is, uh, not comparing characters, but, uh, semantic meaning of the generated answers. So as you see, after 10 iterations, it was still pretty bad. After 40, it, it, it has became pretty good. And after the first epoch, so processing 200 records, um, we see that answers became almost ideal. Additional epochs were not needed, so this, uh, this red, uh, point is that after each epoch, OpenAI, uh, tested the entire test dataset, so the second dataset, and, uh, calculated how well, how well the model was trained. So after, yeah, after the first iteration, we check, uh, probably it was not needed to, to repeat the process. But either way, it was repeated twice. So let's, uh, now take one of those mo- uh, fine-tuned models, and we can preview it here. If I copy the name, I will go to the playground probably, I hope. No? Uh, okay, so I can just take it and go to the playground manually. Something didn't work. Uh, the model we want to interact with is this one. So it is ChatGPT 4o mini, uh, trained to act like, uh, Yoda.

    2. AG

      [laughs]

    3. PH

      And, uh, let's say, uh, "How are you?" Or, uh-

    4. AG

      Well, sounding like Yoda, "Do or do not. There is no try. Clear your mind must be to see the truth in 'How are you?'" [laughs]

    5. PH

      Yeah. "What can you tell me about product management?" So yeah, this is, uh, of course you will not be, uh, you're unlikely to need, uh, Yoda in your, uh, product, AI-powered product or AI-powered features. But adjusting AI to your unique style, your brand voice, it is something that might be much more needed. And also it allows you to, uh, it allows the model to internalize knowledge inside, mm, model weights. So rather than accessing, uh, uh, external data sources, which is also fine, uh, in, in many cases, the model can learn and, um, respond immediately without, uh, accessing kind of database like, uh, RAG.

    6. AG

      So-

    7. PH

      It has this knowledge inside.

    8. AG

      So is a f- is an AI bot posting all your LinkedIn posts yet? Have you fine-tuned it? [laughs]

    9. PH

      No, I actually plan building n-not for posting, but I plan combining fine-tuning with RAG to build a clone 'cause-

    10. AG

      That's awesome. I think this is really powerful. So I've been profiling a lot of AI companies, and they almost all use fine-tuning in this way. Because of what you emphasize, number one, you get to use a much cheaper model, and number two, just read this Yoda response, right? "Named, must be your fear. Before it banish it, you can. Understand it, you will, in time." To get it to speak in a certain way, you can also do that. So you can actually increase the quality of the results while reducing costs. So fine-tuning is just one of the most important concepts out there.

    11. PH

      Yeah, this is probably must-have for every, any query, any prompt that you are, uh, executing repeatedly in your product.

    12. AG

      Today's episode is brought to you by Amplitude. Building great digital products is hard. You know that better than anyone. Getting teams aligned, measuring what matters, and scaling your product strategy isn't easy. But what if you had a clear framework to guide your next steps? That's exactly what Amplitude built. They studied the best product teams to understand what really drives impact and turned those insights into the Digital Experience Maturity Assessment. In two minutes, you'll be able to see where your team stands and what you can improve to build better products faster. Click the link in the caption to take the free assessment and get a clear path to product growth. Because we know those expensive models, they're way too expensive if you have somebody paying you $20 a month, so you have to reduce the cost on these things, and this is how you do it. So the other concept that people talk a lot about is RAG. Can you explain that to us and show us how that works?

  9. 30:1232:44

    RAG explained: when to use retrieval vs fine-tuning (and when to combine)

    1. PH

      Uh, yeah, sure. So for that, I have, uh... Okay, what we will build first, so I have this Google Drive folder in which I store different documents, and those are, uh, those will be my articles. And I would like to build a chatbot that can connect to this, uh, that can use documents that I will be storing here, uh, to answer the questions. And of course, someone can say that, "Yeah, but if you have 10 documents, you can just read all of them and, uh, get the entire content and inject it inside the prompt." And, uh, the first problem with that approach is that, uh, you pay for every input token. So if you have 10 documents, you include all the, the entire content, it's, uh, it will be expensive. And another reason is that, uh, in many products you don't work with 10 documents but with millions of documents. For example, when working with Ideas, uh, which is a VDR solution, we've been working with millions of documents, so it would be impossible to read the entire content and create a, like, big prompt for, that will include all the information. So we need to use RAG, and, uh, in order to do that, uh, I will-

    2. AG

      I'm a dummy, so... Or I'm simulating a dummy. So I'm still trying to understand when do I use fine-tuning or when do I use RAG?

    3. PH

      Uh, those are two different use cases, and there is no contradiction between them, so you can combine fine-tuning with, uh, RAG. Uh, if you want the model to... If you want the mo- the, the model answers will be based on some data, then you use RAG. You can, of course, you can combine it with fine-tuning, which will, uh, to some extent, uh, encode this data also in model weights. But if you wanted to quote documents or you have a lot of documents, uh, a much better solution is connecting, the default solution is connecting to a RAG data source, and only later you can fine-tune the model to, uh, so that it also has a general knowledge about your documents.

    4. AG

      Yep. Thanks for that clarification.

  10. 32:4449:20

    Building the RAG pipeline live: Pinecone + embeddings + n8n ingestion

    1. PH

      Uh, okay, so let's imagine this folder has, mm, 100,000 of documents.

    2. AG

      Okay.

    3. PH

      So in order to do that, uh, we won't connect with this folder directly, but we want to use a vector database. I will create a new database, uh, and, uh, there are many solutions. My favorite is using a Pinecone, which is quite easy to, [chuckles] to use. And, uh, what happens inside Pinecone is that documents are not stored in the original form, but they are converted into multidimensional vectors and stored as chunks. I will demonstrate it. We can preview it in a moment. Uh, but first, let's create this database. Uh, there are different ways to convert a chunk of the do- of document to a vector, different algorithms. Let's, let's say, uh, I will use text embeddings by OpenAI Small, which is cost-effective. Um, and let's call this index or database demo-product-growth. And the next thing is to take documents and put them inside this, this vector store. And for that we can use N-A- n8n. Oh, sorry. Uh, this will take a moment. Okay. So n8n it's, it's a, mm, it's a solution that you can host for free on your local environment, uh, to create agentic workflows and also agents. Uh, it can use MCP servers. Um, yeah, but today we will focus on simple workflow. So the first step, uh, we would like to perform is that when the new document appears in this folder, we would like to take this document, download it from Google Drive, and save it in our vector store. Uh, and we can do that by creating something that we call trigger. This is the way how the, how our workflow can start. And, uh, we will be reacting to changes in a specific folder. I previously, uh, provided my Google Drive credentials, so I will not repeat that process, but you can, you can easily find information how to do that. Uh, you need to open Google, uh, Cloud Console and create an authentication token. Okay. And, uh, the folder we are going to monitor is Product Compass Demo. So, uh, let's find this folder. Okay. And we wait for file created. Uh, this will be a simplified example because in real life you also want to react on file updated or file removed so that we sync all those changes with, with a vector store. But I hope it's, it's enough to, to understand the, uh, how to, how we can do that. Okay. And, uh, I clicked Fetch Test Event, so it simulated an event for, for this one document that we currently have in, on, in Google Drive. So every time a new documents appear, uh, we will get something like this, so basic information about the document. Uh, I will pin this data so I do not have to repeat this process so that i-it's used as a mock data that when working with the editor in the test, uh, in the test environment. Uh, what we want to do next is to download this document. So Google Drive once again. Uh, we want to download file also using my Google credentials file, uh, by ID. And on the left you can preview the data that we previously got this... And one of the properties is identifier of the file. Okay. So it can download this file. I hope. [laughs] Yeah. Yeah, it, it was downloaded.

    4. AG

      This is live, folks. [laughs]

    5. PH

      Yeah, this is l- this is live. So the next step, uh, we want to split this file into small chunks and convert each chunk into, into a vector, multidimensional vector, uh, that can be stored in, in our Pinecone here, demo product growth. So let's do that. Uh, there is a ready-to-use node, uh, Pinecone vector store, and, um, we want to add documents to vector store, right? Uh, okay. And... Oh, sorry, one more thing. I think I should, uh... No, we don't need it. It's okay. Sorry. Uh, so we want to insert this document, uh, to... And also I have previously generated an, uh, API token for, for Pinecone that we can see our new, uh, index. Uh, and then we need to provide a few additional information. So, so first how the, how this node can get the document, get chunks of the document because we cannot just take the entire Google Drive file. And for that we'll use default data loader. It will just take data from the previous step. Uh, the type of data is not JSON, it's a binary file. We know we expect, uh, Word documents or PDFs, things like that. And what we want to load is not all the metadata, we don't need it, but specific, um, specific data, this one, uh, with the file, uh, content. And also I would like to add some metadata in case in the future we would like to search documents in a vector store by, by properties. So for example, by, by file name, like in a traditional SQL database. And for that we can just include, uh, let's see if we can find it something. File name. Yeah, we have name, we have ordinary file name. Uh, let's say name just by dragging and dropping those elements. So it, it will also be stored in a Pinecone store, uh, in addition to, to the, mm, chunk of the content. And the, this text splitter is about how we will split document into different chunks, and we will use the default one, uh, default policy. [laughs] Let's, uh, not dive too deep into this. And then the next thing is that we need to decide how we can generate those vectors. In Pinecone, we have already, uh, defined that our embedding model is, uh, this model by OpenAI. And so we use, we need to use the same model here. Uh, I also previously generated an OpenAI, uh, API key.

    6. AG

      Yeah.

    7. PH

      So NAN already knows it, and we will use text embeddings more. Uh, okay. Uh, like this, and let's see if it works. I will disable this, unpin the data, and let's test the workflow so it gets real document data once again from, uh, from Google Drive. It generates some vectors, and as we can see here, it's generated 18 items. We can preview those items. Uh, so what it generated is, um, maybe here it will be better. So, hmm. Yep. Uh, so we have the basic metadata for each chunk about the document, including, I hope including the file name that we asked it to include and a chunk of the text from this document, and this is repeated 18 times. Okay. We can now go to our Pinecone-

    8. AG

      [laughs]

    9. PH

      ... refresh it and see if those document chunks are inside. Uh, okay. So if we open one of them, we should see that there is a chunk of the text and also metadata that we can use for additional filtering. Uh, to fully test it, I will now publish this workflow. Okay? And add more documents to this folder. Uh, without this, this document that is already there.

    10. AG

      I like it. So we start with one document, we test out the workflow, then we add more. We don't just start with a million documents. [chuckles]

    11. PH

      Yeah. Uh, this workflow is executed more or less once every minute, so we do not necessarily... It might happen that we will not see it immediately. Okay, it is running. We can preview it. Uh, I know what I... I made a mistake. [sighs] Okay. I will stop it. Uh, we made a mistake because we should, we should repeat this process for every document.

    12. AG

      Okay.

    13. PH

      Um, okay. So we want to loop over items.

    14. AG

      By the way, guys, this is how the process actually happens, right? You put something on paper, then you iterate and improve, and we're actually doing this live for you all.

    15. PH

      Yeah. Okay. So for every new document, it will repeat the process that we already demonstrated. Um, just to make sure, I will remove everything from this database, uh, namespaces. I will remove the entire namespace. It would be... Because it already created some records. Okay, and now the database is empty. I can also remove documents from Google Drive. Uh, save this workflow. And yeah. Just in case. And let's try again.

    16. AG

      All right. So let's upload those documents again. Let's see.

    17. PH

      Mm-hmm. Yeah. Uh, it should soon detect that, that there are new documents. Uh, and let's, let's see if it will, if we will succeed this time.

    18. AG

      [chuckles] It's cool how it detected it so fast.

    19. PH

      Okay. It detected only two items, so probably it will detect more items [chuckles] in one minute.

    20. AG

      Okay.

    21. PH

      Uh, oh, wait. Maybe, maybe detected more. Hmm. Uh, yeah, I think we need to wait because it's, it detected only one file.

    22. AG

      Okay.

    23. PH

      Yeah. Now, now it is adding more.

    24. AG

      There we go. It's working every minute.

    25. PH

      Hmm, yeah, maybe it does it in batches. Anyway, it, it succeeded again. [chuckles] So let's, uh, let's see what is, what's, what is inside this, uh, this index. Uh, yeah, we have 77 records. Uh, for some reason I cannot see it.

    26. AG

      Just needed a refresh.

    27. PH

      Okay. Uh, yeah. We have 10 documents chunks, and it's detected... The first document it detected is objectives and key results PDF. And let's see if there is any other objectives and key results. Not really. Mm, but it is, yeah, top. Let's try again.

    28. AG

      Looks like that's ultimate list of product metrics. So it did find the other documents.

    29. PH

      Well, yeah. Okay, let's... Hmm, I think we have two documents. Is that enough or...?

    30. AG

      Sure.

  11. 49:2059:01

    Serving RAG answers: webhook endpoint, retrieval, aggregation, and citations

    1. PH

      of, uh, indexing all the documents. Uh, so the next step is to, uh, create an endpoint for our chat that will connect to this RAG. So let's try to do this, uh, because we want, we, we now want to use this, uh, those documents inside our chatbot. And in order to do that, we will create something called a webhook. This is like an inbox for, for your, uh, web service, uh, where different apps can, can ask a question and get a response. Uh, okay, let's say, um, other apps will call this webhook, so our chatbot will call this webhook. And they will provide the question like here. So, uh... Okay. So the question, the user query will be part of the URL. Um, and we can see that we received that query. Uh, user message is here. So let's now retrieve documents from our vector store. So the next, the next step is getting ranked documents. Uh, as we already explained, in vector store we store document chunks, not the entire documents, so we will get different chunks from, uh, our demo. Let's say we will get 10 most similar chunks. Uh, of course, we compare vectors, not, not, uh, not text. And here we could ask, uh, OpenAI or another LLM to generate a specific prompt to generate a query to our vector store, um, like different phrases by which we will, uh, search documents. But in this case, to simplify, I will just rewrite the user query from, uh, the user message from the, from the URL. So we will use the same query parameter. And just for the demonstration, there is no authentication. I will disable this, uh, webhook after the demonstration. Okay. After we, uh... In order to re- retrieve document chunks, uh, they are represented as vectors, so we also need to represent our query as vector. Uh, and the vectors will be compared across those different dimensions. Okay. So user query from the URL becomes a vector, and then we ask Pinecone to retrieve similar vectors. Uh, the next step is to combine those responses so that we can use it, uh, do something with them. It will be easier, uh, if we just merge them. Uh, actually aggregate will be better. And what we want to aggregate is this page content, which is document chunk. Uh, dot se- What we also want to include is the file name. So if the chatbot provides an answer, uh, based on, based on some document, uh, I would like our chatbot to quote this document. So to do that, we can refer to, to this metadata that we previously exported to Pinecone. Okay. Let's test. Okay. We have page content and, uh, yeah, different names combined. Uh, that's okay. And the next step is to call OpenAI. So now we want to call an LLM that will, uh, look at the user request, uh, analyze different chunks from the database, and provide the, an answer. So let's say this will be an OpenAI. We want to message a model. Uh, I can also access fine-tuned models. So for example, we could ask this, uh, Jedi. Uh-

    2. SP

      [laughs]

    3. PH

      Don't let's... [laughs] But we will not see anything, uh, smart. It is, it is not trained to perform those operations. Uh, okay, so I will just, uh, ask ChatGPT for all I have previously prepared a prompt that we can now reuse. So the prompt is as follows. Uh, so answer the user request only based on RAG data below. Um, provide the answer and at the end of your response, quote the sources. Uh, the property is not n- file name, but actually it is name, so let's rename it. And yeah. User request was, uh, we can take it from the webhook, from the URL. Oh. Okay. And, uh, additional context for our chatbot will be what we have, uh, from, uh, Pinecone. Uh, okay. We have our document chunks and document names. And let's keep it simple. Uh, okay. Uh, let's try to test it. So the query will be OKR, and the assistant replies, "What is OKR?" And let's see if it will quote the source. Yeah. In the sources we have a specific document name. Uh, so the last step will be, uh, changing the webhook so it doesn't reply immediately, but actually waits for this logic to be executed, because we want to process w- w- w- w- we want to get chunks from vector store and use OpenAI, and at the end, uh, uh, we want to respond to a webhook with text, and the text will be this content provided by OpenAI, right? Uh, let's activate our workflow. We can also test it, but I will take the production URL this time. Uh, okay, and let's say that our message is, "North Star, what it is?" [sighs]

    4. AG

      The workflow was started.

    5. PH

      Uh, yeah. It provided some answer.

    6. AG

      Oh, nice.

    7. PH

      Yeah.

    8. AG

      And this is based on your article about it.

    9. PH

      Yeah.

    10. AG

      That's awesome. "The North Star Metric is a critical measure that aligns a business or product's focus-"

    11. PH

      You see it-

    12. AG

      Yeah, the-

    13. PH

      ... for some reason it provided several quotes [chuckles] because North Star Metric, uh, North Star Metric... But those are real documents names, so measuring and maximizing customer value. This is also part of, of my folder. Uh, there is a PDF. Uh, yeah. So it-- As we see, it started processing more. There, there are already more documents processed that we initially seen. Okay, now the last

  12. 59:011:07:20

    Turning the endpoint into a chatbot UI with Lovable (and dealing with formatting issues)

    1. PH

      step, because this was only debugging, would be going to Lovable and asking it to create a chatbot.

    2. AG

      Okay.

    3. PH

      So please create a simple, simple chatbot that will call a, a webhook like this. Uh, message. This is a user input. I hope Lovable will understand it, that this is... [chuckles] Uh, okay. Uh, call a webhook like this to get a response. Uh, to complicate it, interpret, uh, responses as markdown. This is a special type of formatting, and inside the workflow, this was part of the prompt that, uh, an agent should reply with using markdown formatting. So let's see if Lovable [chuckles] will do this.

    4. AG

      Such a good tool. So powerful.

    5. PH

      Yeah.

    6. AG

      So to summarize so far, we used n8n for our workflows, Pinecone for our database, and Lovable for our front end. Is that right?

    7. PH

      Yeah. Lovable and previously we have used fine-tuning, but not in this case here. We have Pinecone as a vector store for storing those, um, uh, embeddings. Uh, we also used, uh, OpenAI text embeddings model- Which was one of the choices because Pinecone offers many others. Uh, what is important is using the same embedding model when we ask a question because, uh, we need to compare vectors and so that document chunks are s- are represented as, as vectors, and also the query we are asking, um, to Pinecone later needs to be encoded in the same way.

    8. AG

      Okay.

    9. PH

      Uh, okay. Mm, nothing unexpected. It should re-resolve this problem in a moment.

    10. AG

      Yeah. Typical. Did it all on its own. You didn't even have to prompt it?

    11. PH

      Yes. I'm sorry?

    12. AG

      You didn't even have to click anything, right? It just fixed the error on its own.

    13. PH

      Yes. Sometimes it happens. Yeah. No, just, just, uh, just, uh, just fix the error. I have not even...

    14. AG

      So we're clicking to fix this too.

    15. PH

      Uh, I, I just keep clicking fix.

    16. AG

      [laughs]

    17. PH

      I hope it will figure it out. It's, it's the best sonnet on the market, the best, uh, coding model on the market. Uh, okay. Mm. Ah. I tested it before and-

    18. AG

      [laughs] These things are stochastic, right?

    19. PH

      Uh, if it doesn't solve the problem, I will just remove this. Mm. Okay. Like remove the requirement.

    20. AG

      Looks like it's rendering something. Here we go. We have a chatbot.

    21. PH

      It's... What is the North Star metric?

    22. AG

      Let's see if it does it.

    23. PH

      I don't know if it will work.

    24. AG

      It worked.

    25. PH

      Ah. It worked, but this is not formatted, uh, fully formatted as markdown. Yeah, yeah. You know, didn't format... If we go to Executions, we should see that there was a production request. The response was this. Uh, the response, it was...

    26. AG

      Okay.

    27. PH

      Yeah, maybe it will fix that. If not, uh, maybe it's already enough.

    28. AG

      [laughs] This part's giving it some troubles.

    29. PH

      Yeah, it's, it happens of- more often than usual. Uh, usually when working with Lovable, I don't have those issues, but yeah. Not at this stage.

    30. AG

      [laughs]

  13. 1:07:201:19:10

    MCP demo: connecting Figma → generating Jira epics and stories automatically

    1. AG

      Yes, absolutely. So let's move on to our next concept, MCP, and you have a really fascinating use case that I haven't seen anyone else talk about.

    2. PH

      Uh, yeah. So MCP, it's a standard for, uh, developed by Anthropic for, uh, AI agents and agentic workflows to talk to different systems. So previously, when you wanted, for example, uh, if you develop an app and you want to integrate with Stripe, you need to, uh, read the entire Stripe, uh, API documentation and understand how to call different methods. Uh, what, uh, MCP does is that it m- for every service, it provides a set of standard methods. One of them is to, uh, explain what actions are, uh, possible, what tools this, uh, MCP server offers, and another one is a standardized way to execute those tools. So for example, uh, my chatbot can ask when using Stripe's MCP server, it can ask, uh, what actions, what tools, uh, what do you support? And one of the responses can be, "I can find a customer if you provide me customer ID." And then, uh, our chatbot can understand, will understand how to call this method, how to use this tool, and, uh, what are the required parameters. And to demonstrate it, I, uh, have a demo in Cloud. What I would like to achieve is to connect to a Figma design, uh, which is just a copy of a random Figma design-

    3. AG

      [chuckles]

    4. PH

      ... from the public repository. Uh, something about task management, uh, with desktop and mobile views.

    5. AG

      Okay.

    6. PH

      And I would like to create a set of epics and user stories in my Jira.

    7. AG

      Yeah. Save you a huge amount of time.

    8. PH

      Yeah, based on those designs. Uh, for that, let's create a new Jira project so that we... Hmm, okay, let's, let's just create a project. I will use a standard template for Scrum-

    9. AG

      Yeah

    10. PH

      ... simplified. No need to complicate this. Um, uh, okay. Demo. Ah. The project key will be demo. Um, I will just continue and use the default settings.

    11. AG

      Okay.

    12. PH

      Um, uh, we don't need the Confluence. By the way, the method that I will be demonstrating also allows interacting with Confluence. So for example, it could create Confluence pages or read Confluence documentation. And if you, if you have some, some standards like how user stories or how epics should be created, um, it can get this, get those instructions. And it, it can also use user stories created in the past to, to write new user stories. Uh, but let's, let's go to the backlog. Uh, I will take this, uh, Figma URL. And if we go to Cloud, by default it cannot connect to any tools. We need to go to the settings. So File, Settings. And after opening the Developer tab, I can click Edit Config. And here is, uh, a file where I can define my connections, those standard M- MCP servers. We can present those keys. I will remove them after the, the demo. And I already configured two connections. One is, uh, connection to Figma MCP server with my Figma ID, and another one is Atlassian, so Jira, Confluence, and other products, uh, with some standard parameters. And I have recently described where to f- where you can find, uh, basically it is easy to find [chuckles] MCP server, MCP server repositories, uh, in the internet, or you can Google them and what parameters, uh, you should put here. Hmm, if you want to, uh, get configuration and very detailed steps on configuring the specific workflows, you can go to my newsletter and I have explained it. Uh, okay. So I have those connections to Figma and Atlassian defined. Uh, so now I can... And Cloud, even though those are only two connections, Cloud has asked those MCP servers what are the supported tools. So we have a set of tools related to Confluence, related to Jira, like adding comment, creating issues, and, uh- Uh, yeah, uh, searching in Jira. And also there should be something, uh, related to Figma. Mm, maybe it was hidden somewhere. Yeah.

    13. AG

      There it is.

    14. PH

      We, we can download Figma images and we can get data from Figma. So now my prompt will be, uh, this is the URL, and I have this prompt that I have prepared previously, but yeah, maybe we can just write it from scratch. So, uh, please connect to my Figma project. Uh, what it really needs is the Figma file, uh, ID, which is only this part, but we can put the entire URL and that's fine. Next, create a set of user epics and user stories, which in Jira are just stories, uh, based on that design. Make sure stories follow the INVEST, which is independent, uh, valuable, uh, possible to estimate, short, and so on, testable. Uh, those are good practices for user stories, uh, following it if possible. Next, we... In the... And, uh, our Jira project is, I forgot, uh, demo. Okay. I can also use the entire...

    15. AG

      In the back, yeah.

    16. PH

      In a, in a real-life example, it would be better to provide some context. We already discussed it when discussing, uh, best practices for prompting. So what is the, the goal of this initiative, uh, how we will measure success, maybe some examples of user stories or user story templates from the past.

    17. AG

      Mm-hmm.

    18. PH

      We could also ask it to, uh, just analyze the existing user stories and create, uh, new user stories based on all, on those existing ones. Um, but just to simplify. Uh, in Cloud we need to, uh, confirm that we allow performing every single, uh, connect using every single tool. Uh, I will soon... I'm, I'm currently doing research of, uh, using NAN and MCP servers. Uh, you cannot do it in Cloud, but you can do it when you host NAN, uh, for free in Docker or also you can host it in cloud like DigitalOcean. And then, um, there are no restrictions, so it means that if you, uh, from N8N, if you call MCP server, you don't need to confirm anything.

    19. AG

      Got it.

    20. PH

      And as we can see, it started reading information, create some epics and user stories in, in Jira. Uh, maybe to make it better visible, I can split the screen a little bit. And, uh, I have a special add-in which refreshes the, will refresh the page every... Uh, but before I do that, I will enable an epic panel, and now let's refresh the page every five seconds. So as we can see, there are already some epics created, and after creating all the epics, Cloud should start creating user stories-

    21. AG

      Wow

    22. PH

      ... based on that design, and we don't need to do anything else. Uh, if we used a smaller model, this is Cloud Sonnet, 3.7 Sonnet, so, uh, the best but also, uh, the slowest that [laughs] we can choose. Uh, yeah, it started creating user stories. Previously, uh, when I, uh, did this, uh, exercise, it generated about 20 user stories and six or seven epics, and it took it, uh, nine minutes with some sec- additional seconds.

    23. AG

      Got it.

    24. PH

      Uh, we can already see some user stories, like for example, just let's stop this auto-refresh. Uh, implement site navigation menu.

    25. AG

      Yeah. And it's really nice, right? It has a great description. It has acceptance criteria. This is saving you hours of work.

    26. PH

      [laughs] Yeah. We can ask it to add links to Figma design because, uh, yeah, we can do many things, uh, and adjust how those user stories are generated. Uh, links to Figma would be, we only need note ID, and it can access notes IDs, so I can imagine that we could generate those URLs and link specific notes from C- if from Figma dynamically or just link to the design. If it has many pages, link to the specific page. And yeah, I suppose we will not be waiting. [laughs]

    27. AG

      That's it for MCP. We wanna finally turn to our last topic, which is AI agents.

  14. 1:19:101:24:59

    AI agents in practice: deep market research + agent orchestration patterns

    1. PH

      Yes. Yeah Uh, AI agents. So this is my platform built with Lovable and why I call some of them are just agentic work pros, so there is LLM inside, but the process is predictable. Uh, so it can generate PRDs, it can, uh, review, uh, product manager resume, uh, create product strategy and so on. And the most complex one, which is really an agent, at least according to how I understand the agents, is a deep market researcher. So it can use tools like, uh, web search, it can scrape, um, a website's content. It can also plan research steps and then delegate those research steps to, to other agents that will, uh, focus on specific, uh, research areas. Um, the goal of this agent is to perform market research for a specific company or product like Netflix movies, let's say, or we can do something else. Do you have an idea, Aakash?

    2. AG

      Um, let's pretend I'm Amazon Prime Video PM and I wanna analyze, you know, what new Netflix-- how Netflix is thinking about its content right now.

    3. PH

      Oh, compare with Netflix. Um... Something like this?

    4. AG

      Yep. We'll focus on comparison with Netflix and content strategy.

    5. PH

      Okay. So the first thing it will do, it will, uh, search for some important context. So what is Amazon? What is Netflix? This is quite obvious, but maybe something has happened recently that can influence, uh, our research. And then based on this generic information, it plans up to, if I remember correctly, up, up to 11, uh, separate tasks, and those tasks are distributed to, to different a- um, agents, which again search the web, uh, scrap websites, and then the entire, uh, all the results are combined, uh, and presented to the user.

    6. AG

      Very cool.

    7. PH

      It should take like 20, 25 seconds. It's pretty fast. Uh, of course it is not, uh... I, I didn't try to build the second Grok or, or OpenAI deep research, uh, but I think it, it is more focused on market research and it will also fuel the other agents that I created like, uh, this PRD generator or my product trio ideation. So it will also get this, uh, context about the company, about the market, and use it to generate some product artifacts. Um, yeah. Deep market researcher. So first, as I explained, uh, planning the research, um, like the context of about Amazon Pri-Prime and Netflix, and then, uh, yeah, detailed findings. So Amazon Prime Video content strategy analysis, analysis, uh, Amazon versus Netflix, financial and market insights, potential gaps and opportunities. There is quite a lot of elements. I'm not sure we, we can, uh, we can discuss everything, but the next one is comparative analysis.

    8. AG

      Wow.

    9. PH

      Uh, we also have value proposition. What is the difference between value proposition of those two platforms? Uh, user demographics, preferences, and, uh, as you can see, there are quotes to some external websites. Uh, location markets, uh, market share key insights. Uh, yeah, market share dy- uh, share dynamics.

    10. AG

      Awesome.

    11. PH

      2024. It's quite, quite long and quite extensive. It's, [chuckles] and it's focused on, uh, on product management. Uh, there are 50 sources. You can probably get more from some platforms, but yeah, my, uh, uh, my agents focus on this product management perspective. And how it was done, it, it was done without any [chuckles] platform oth-other than, uh, Lovable. Uh, but, uh, what is important, the entire business logic is, um, and this is the default option that Lovable, uh, allows you to do, is to host your business logic inside, uh, Superbase, uh, Superbase functions. So it is not inside the browser, but user interface, uh, sends a request and request is, uh, executed, uh, on the backend. And the backend has information, has secrets about different AP, AI keys, other services that are, uh, I described the logic. I didn't code anything, but described the logic of how I imagine this, um, entire orchestration should work and it came up with, with the edge function. The, the, it is called an edge function, uh, that is executed in Superbase.

    12. AG

      Wow.

  15. 1:24:591:33:16

    Building agents with n8n: memory + tool use (calendar/email) and real-world caveats

    1. PH

      Uh, a different approach, uh, probably easier one if I did it right now, maybe, maybe I would approach it differently. Uh, you, you could use, uh, n8n.

    2. AG

      Yep.

    3. PH

      Um, so- Just like we created a webhook, uh, when demonstrating RAG, I could create a webhook or a chat or whatever. Uh, it would be easier to, to test with a chat. And here we can have an AI agent. There is a dif- uh, special node for that, uh, which can be, for example, Sonnet, or we can use OpenAI or anything else. I will use OpenAI because OpenAI is-- I already has, have credentials, uh, saved for OpenAI. Okay. Our agent can have memory, so it can remember interactions with the user, uh, or interactions within workflow execution if there are loops or, uh, yeah, some iteration inside our workflow. We can use just a simple memory with session ID, so it means that as long the s- the, the session is the same session, it can access the old memories up to five by default. But still, uh, there are also more complex memory types that we can use. Okay. And we can give our agent some tools. Uh, in a community edition, and I will demonstrate it, uh, in a few days, so probably before this video is published, I will prese- I will publish how to do that. Uh, but even without MCP, n8n, uh, offers a lot of tools that you can just connect to your agent like... I'm not sure if Jira is here. Yeah. Jira is here. Uh, create issue. Create... You just need to provide parameters. Uh, similarly, you can connect to your Google Drive or do something else like, uh, Gmail. Send message, and you can say that, uh, it will be defined, that the parameters will be defined by the model. So let's say to, subject, message are defined by the model. Uh, and another tool I will, uh... Calendar, Google Calendar. And, uh, we want to get information about events. Okay. Uh, by the way, I, I did not plan demonstrating it, so I'm not sure it will work.

    4. SP

      [chuckles]

    5. PH

      Uh, okay, I have some fake email account that we can possibly use, but this is not, not my, my email account. All right. And, uh, maybe let's not test it. Uh, in theory, uh, even though this is not an MCP server, I can provide a set of tools, and there are many demonstrations on YouTube how to do that. Uh, those tools can include voice generation or image generation and, uh, yeah, uh, much more complex stuff than just, uh, using two tools.

    6. SP

      Yeah.

    7. PH

      And in theory, we could, uh, our agent even without MCP can, can access those tools. So, uh, let's say, uh, send, uh, send an email to, uh, about... Just random creating an invitation for the next week in my calendar and send an email to someone. Uh, probably not ideal. Let's say work. It, it created some event. Uh, there are also, uh, services that allow you to, uh, make voice calls. So this is really cool that an agent can perform a voice call. For example, call restaurant, um, make a reservation, and then add-- compare it with your calendar, and then add it your, to your calendar. And I will check in another screen if it's sent a message, and we'll share it in a moment. Yeah. Uh, I just need to present it carefully. So it-- this is the message that was sent from n8n. I am planning to schedule a meeting next week. Um, yeah, I don't have any events in my calendar, and possibly if I look for the next week, maybe it has created something. Mm. No, it didn't create anything. It would be nice to. Ah, because we-- the only action that we, uh, added was getting information about... [chuckles] And, uh, yeah Uh, let's add the tool to create, to create, uh, something in the calendar, and let's, uh, save and repeat.

    8. AG

      Okay.

    9. PH

      Uh, requesting him to attend it. Okay. It has, it has created some event.

    10. AG

      Yay.

    11. PH

      Sending an email.

    12. AG

      Whoa!

    13. PH

      Okay.

    14. AG

      This is so fast.

    15. PH

      Mm, okay, let's... I need to... Okay, so first I have this, uh, meeting invitation sent-

    16. AG

      Wow

    17. PH

      ... by the agent. And also, I hope October [laughs] October 9, uh, maybe he, he doesn't know what is the current date. [laughs]

    18. AG

      [laughs] In the distant future.

    19. PH

      Okay.

    20. AG

      It's creating an email.

    21. PH

      Uh, we should probably, probably add some other tool so it can... [laughs]

    22. AG

      That's fine, yeah. So we got the basic idea, right? Which is this agent is going out there, it's creating e- calendar events, it's sending emails, and we built it all in like, literally you built that without any preparation in like 10 minutes. So that-

    23. PH

      That was improvised. I'm sorry, uh, uh, that it [laughs] didn't fully work. I did not plan this.

    24. AG

      It worked well, I think.

    25. PH

      Yeah.

  16. 1:33:161:36:20

    Wrap-up: the AI PM toolkit and the future of AI product management

    1. AG

      So that's it for our live cooking session. We just walked people through a hierarchy of everything they need to know about AI product management, right? We started at the base of the pyramid. We went through prompting. We went up a level. We talked about PRDs. Then we went through fine-tuning, RAG, AI agents. We have given you the full toolkit of how to become an AI product manager. So I just wanna end on some hot questions for you here. Are all PMs gonna need to become AI PMs?

    2. PH

      Mm, that's a hard one. I thought, I don't think so, but, uh, there is a high probability because the market, the AI market is growing so fast that there is a high probability that we will need more AI product managers in the future. Uh, the, the market for other product managers might not necessarily grow that fast.

    3. AG

      Yeah. It's not that everyone needs to become an AI PM, but this market is growing really fast, and we just gave you all the tools to become an AI product manager. Pawel, I literally think there is no one else in the world who could have done this set of demos this fast. Thank you so much.

    4. PH

      Yeah. Thank you, Aakash. That was a, a pleasure.

    5. AG

      So if you wanna find him, make sure you check him out. His Product Compass Newsletter, for my money, it is a no-brainer. You should check out the paid newsletter. I am a subscriber to his paid newsletter. He gives out demos like this every single week. Um, is there anything else you wanna say before we break, Pawel?

    6. PH

      No. Uh, actually, I started, uh, being a full-time, uh, full-time focus on my newsletter a month ago. So just as you said, Aakash, uh, right now every week we have, uh, open hours and, uh, for example, tomorrow, which is probably, uh, probably it will not be the case, uh, because this, we publish this later, but for example, tomorrow we will, uh, discuss MCPs in detail. And yeah, there are slots for AI sessions every week inside our paid community.

    7. AG

      He's building up an awesome community. He's already got an awesome newsletter. It's one of the top newsletters in tech on Substack. Check him out. If you haven't seen him on LinkedIn, he has over 190,000 followers on LinkedIn. Pawel Huryn, my very first guest to appear two times on the podcast. Thank you.

    8. PH

      Thank you, Aakash. Take care.

    9. AG

      All right. Bye everyone. I really hope you guys enjoyed that episode. It would mean a ton to me and the team if you could please subscribe on YouTube, follow on Apple and Spotify podcasts, and leave a rating and review. Those ratings and reviews really help grow the show and help other people discover the show. And they help fund the production so that we can do bigger and better productions. Can't wait to share the next episode with you. Until then, see you later.

Episode duration: 1:36:30

Install uListen for AI-powered chat & search across the full episode — Get Full Transcript

Transcript of episode IfW1FMDkw4k

Get more out of YouTube videos.

High quality summaries for YouTube videos. Accurate transcripts to search & find moments. Powered by ChatGPT & Claude AI.