Building a Personalized Pep-Talk App with Low Code - Alex Walsh

Introduction

Hi, guys. Hey, everybody. I'm Alex.

Personal Background and Audience Engagement

I thought the last presentation was really interesting because I'm a financial analyst by background. But I come from a less technical background.

I'd be curious, out of the audience here, who would say that you do come from a technical background? Just a quick show of hands. OK, so maybe 50-50.

Building Rapid Prototypes

1So my talk, I really like building things very quickly. I find for people that are non-technical, this gives you a way of approaching this sort of stuff and just getting going. For technical people, I now work with some developers, and I actually find it's really useful just to quickly prototype things before we really get into the nuts and bolts of building it out properly.

Demonstration of a Personalized Daily Pep Talk Tool

So I want to talk through, or at least demo, something that I put together last night in a couple hours. It was just a quick... It's a quick tool that essentially gives me a daily pep talk that pulls in lots of information around me, whether that be the weather, my to-do, or the calendar, or things coming up, and gives me a talk in the style or voice of someone that you can pick.

Choosing a Voice for the Demo

So before we go here, I'm going to give you Three options.

I'm going to apologize in advance because I did have a female option, but I guess Taylor Swift was against the copyright issues in 11 Labs. But I guess the three options I have are Samuel L. Jackson, Elon Musk, or Joe Rogan.

And so I'd love to show our hands of who we'd like to see give the daily talk of the day. So for Samuel L. Jackson, can I get some hands? All right.

Elon Musk. OK, Samuel's winning.

And Joe Rogan. All right, great. So we're going to go with Samuel L. Jackson.

Interactive Demo with Audience Participation

And then on top of that, so I've got my to-do list here. I would love it if someone could just give me a quick thing to add to the to-do list so we can show that it's a live demo and not something I did in advance. Just if anyone could shout out something we need to do.

Not to get sold. Yeah, all right, fine. Yeah. Great. OK.

Technical Difficulties and Live Setup

So now that that's out of there, I'm going to flip back here, go to my integration. That's actually set up here.

I think so, I think so. Yeah, I'm glad.

Oh, sorry. Internet is a little slow. Here we go.

It'll get there eventually. Here we go, okay.

Come on, little AI. Oh, no.

All right, I should have a Telegram message. Oh, it didn't save my last update. Oh, that's a bummer.

Okay, well, I've got one that was set up just earlier today.

Example of the Daily Pep Talk Output

so get up alex today is wednesday april 3rd sometimes you need to get knocked down before you can really figure out what your fight is it's 42.1 degrees fahrenheit with light rain it's expected to heavy rain later today with a high of 43.8 and a low of 42.4

Here's what you have on today. One, MindStone AI New York, 6 p.m. Stay sharp and make an impact.

Two, touch base with Jay, 10 p.m. Keep those connections strong.

And finally, this is what should be top of mind. One, construct a series of UML diagrams regarding content curation. Two, prepare a presentation for Raven Pack on discretionary research processes. Three, write an investor update for the latest quarter.

Now go out there and show them what you're made of, Alex. You got this.

The Purpose of Customized Daily Updates

So I guess I wanted to put that together. And I guess the question is, OK, great. We've got this little thing that we can do. And what's the point?

I mean, we already have Alexa, right? But I think the point for me is I can give this context. I can give this context about my life. And I can also structure it to have the output of what I want it to have.

So in this case, it's a daily update in the morning with my to-do list. But you can imagine there's lots of different applications for this.

For example, you could have it run before an important meeting to give me a briefing of what I need to prepare for. I could have my daily stockbroker call me and give me an update on the markets and how my portfolio is doing.

And I think what's going to be really interesting is when you plug this into some of the other tools that are out there, when we talk about agents that can go out and take action for you, I think the medium with which we exchange information with these tools is going to change. So, you know, you can imagine avatar that you would speak with every day and that will go take actions on your behalf.

From nowadays, everything is just very chat-based, which just doesn't feel you know, consistent with how our brains work. I can definitely see something that's much more attuned to something that's a more push oriented and be more audio oriented.

The Accessibility of Modern Tools for Individual Creators

The second reason why I want to demo this or an application like this is Alexa in 2019 had a team of about 10,000 people I did this as one guy in his bedroom with a couple hours.

So I think what's fascinating is you've got these big tech companies that have really put a lot of engineering and talent into kind of pushing the door forward. But once the door is already open, everybody can kind of just run in and build stuff because we have the building blocks there and the tools there to build stuff. And so I think that's moving from solving the really hard challenging problems to then solving the much more practical problems of what are the workflows in our lives, how do we make decisions, these sorts of things.

So with that being said,

Leveraging No-Code Tools for Building Applications

I had another example, which was Snapchat. I met a team recently that basically had recreated filters. It was a team of two people that had basically hacked together a video filter that you could film yourself and then add something to it in almost real time.

So the tool that I was using to demo this is called make.com. It's one of a couple different no-code coding tools that you can use. This is one of my favorite.

There's also Zapier that has some really interesting integrations. And both Josh and I have done talks on that topic that are already on the MindStone app that you can go check out when you have time.

A Closer Look at Make.com

But to talk through how I would put something like this together. I want to jump in to make and give a quick example of how we would do that.

Yeah, hotspotting off a phone is a little slow. Great.

So in make.com, you can basically create modules. So if I click on a module, it's going to give me a selection of many different apps that I can choose from. I can choose a trigger of, OK, if I get an email, add a sheet to my Google Sheets or something like that. There's lots of simple things.

The Power of HTTP Requests

But I think, for me, what's been one of the most interesting things is that you can make HTTP requests directly from a tool like this. Now, an HTTP request gives you the freedom and the flexibility to engage with pretty much any API that's out there in the world. And so you're not necessarily confined just to the tools that are on or that have direct integrations with the Make platform.

So here, I'd select Make a Request. I've already gone to this weather API. So this is an API that I've previously set up. Drop in the URL. Hit OK. And now that's synced up here. So every time I run that, it's automatically going to go pull the weather information. And it's going to output it in a JSON object.

So I'm going to get data here. That's this long data thing that I could basically parse out. What's interesting now is now make.com has also a very simple, let's just look up the parsing tool. So if I add a parsing module, add basically the output data that comes from my API call, I can then, if I run this, usually you plug in something else. But now out of this, I can basically pick apart that JSON, and I can add another module where I can pick out individual pieces of the output.

So I could take any of these numbers and then directly send them somewhere else. So I could send them to my email. I could send them to a sheet. I could send them many different places. For me, this has been a game changer because it allowed me to build things really quickly. Now, essentially, where I've been sending them to is Google Sheets. And so that essentially gets me talking about how or why Google Sheets and why I would use this.

Prompt Engineering and Google Sheets

So essentially, for me, I do a lot of my prompt engineering within Google Sheets. And I'll talk about that for a couple of minutes.

Well, before I get into that, I guess the key question is, what's the importance, like why do we need to engineer complex prompts to get the things that we want out of these models?

And just as a quick demonstration, so what I've done here is I pulled in the information from my to-do list, my calendar, as well as the weather API. And I combined them all into one single prompt. And I simply said, give me a daily brief in the style of Joe Rogan with this information. Right?

The Importance of Prompt Engineering

So no prompt engineering whatsoever. And this is basically what came back. Alex, listen up.

Right now the conditions may not be ideal. It's cold. Yada, yada, yada. Essentially, yeah, it's kind of cute, but it's a bit nonsense.

Like, it doesn't give me the information value I want. It's not clear. It's not direct. It's not to the point.

Now, if I add a bunch of things to the prompt, so if I add, how do I want the input? How do I want what's going to basically be the data? And then how do I specifically want the output to be structured? I get something that's much more useful that when I then pass that to the 11 labs to produce the audio, it produces something that I would actually get some real value out of listening to that.

Hey, Alex, get up. Here's a quote. This is the Joe Rogan one. Obviously, we just did Samuel L. Jackson.

Creating a Structured Prompt

And it structures it in this way. A lot of people I know are on the lookout or looking for tools that they can manage their prompts in because it's kind of this new space that we're all playing in. I've tried lots of different things, and I still keep coming back to Google Sheets, as silly as it sounds. I really like it because it allows me to be

Effectively quite modular and one it allows me to be modular and how I put the prompts together so I can quickly toggle things in and toggle things out Depending on what cells I link to and then to I guess for me as being a financial analyst It's just the world where I've lived in my life. And so it's with a place that I can move the most quickly and so with any good prompt I basically see that as having three main components So one component is essentially the instructions I'm giving it. So the background information and what I want the model to do for me.

The second part is essentially the data or any incoming data points that I'm giving it that I want to combine into that knowledge store. And then the third bit, which I've talked about, is the output. So to demonstrate, here in the background, I just obviously have user Alex. I could change this out to any other name.

And then I've provided a bit of a paragraph about some information about myself, so what I do for a living. And then here I've given it a character limit as well as a, and so all these things are basically linking into a big text string that I've got into this cell. So that basically has my instructions for what I'm looking for. These cells here effectively all automatically update every time I run that automation.

So every time I run that automation, new information is coming in, automatically updating every one of these cells. And then lastly, with the output variables, I've essentially got a series of instructions that tell me this is what I want it to look like in, out, the other thing. And then I, again, concatenate that into another long texture. And so what that basically comes out to is I end up with this very long prompt.

Modularity and Tone in Prompts

that looks something like this. And it's somewhere between 2,000 and 3,000 characters. But it's been built in a modular way, so I can quickly swap things in and out. So for instance, I often use tones.

So one of the things I've talked about in the past is when I wanted to, let's say, send an email, I'll often try to replicate my voice. And the way I found to be most successful to do that is basically just give it a lot of examples of things I've written in the past. and then combine that into one large prompt, and then say, give me a set of guidelines that a language model could follow to sound like me. And then what that does is it gives it a detailed set of, you know, it's basically a detailed thing of 40 different, well, you'll probably see it over here, but 40 guidelines that maybe sound like my LinkedIn tone.

And I'll append that to my prompts when I'll do that. But I've got many other tones that I use here. And I can kind of link them in via a toggle. So whether it be friends and family, or sales, or these sorts of things.

But for this case, we don't need a tone. So I'm just going to toggle this off. And the reason why I like working here is because I can see my prompt. I can see the character length.

Running Prompts with ChatGPT in Google Sheets

And then immediately, when I'm working, I'll often toggle this off. But I can toggle it on. This is basically going to run a ChatGPT prompt using the prompt. Well, it's going to use the prompt that's in the cell to the left and then run it through.

I think this is GPT-4 that it's using. But you can toggle the model and run GPT directly in Google Sheets. So that's essentially the first two steps. So one is HTTP requests and API calls.

Creating Voices with 11 Labs

Two is thoughtful and organized prompt structuring. The third is really, I wanted to show how you can create voices in 11 Labs.

And it's actually incredibly easy to do. You can do it with only a couple minutes of audio clip from any individual.

So if I go to my 11 Labs account here, And I'll preface this by saying, if you use someone's voice in an unauthorized way and you get in trouble, I did not tell you to do so. Because obviously, it's against their policy. But this is just for demonstration purposes.

You wouldn't want to do this for any commercial purpose. If you go to 11 Labs, go Voices, you can go to Voice Lab. And that will give you examples of voices that I've created in the past.

Instant Voice Cloning Demonstration

So if I just take, this is just in any audio clip that I've taken from the internet, you could do this with just about anything. So this is Peter Griffin. Right. So I can take this Peter Griffin audio clip, I can download this, come back here, add a voice, instant voice cloning, Peter Griffin.

I have done that in the past. But I was using Descript for that at the time. I hope I grabbed the right file. Yeah, that looks like today. Oh, that's 4 o'clock. Let me just make sure that downloaded to the right folder. Download. Oh, it's still downloading. That's the problem. This slow internet is killing me. Yeah. Well, if we ever get time, it's OK if we don't do it.

But we can demonstrate in any voice. If you upload an audio, within literally a minute, it will then be able to take in text and produce a really realistic version of that person's voice. So. Yeah, it's not coming. But that's okay.

Customizing Voices for Specific Tones

Is it? So when you download the voice, do you have to sort of... Will it also take... into context like the way that they speak or is it just like if you were to write a text that isn't really in their voice but will they just read it or how does it work Yeah, so you can add up to 25 files per voice. And if you were very specific about it, so for instance, we did Samuel L. Jackson. You could do like angry Samuel L. Jackson from like Pulp Fiction or something. And if you got 25 clips of that, I'm sure the output would be very different because it's just taking it based on the output that you've given it. So yeah, you can be quite specific.

I don't know if it's going to work. Does it say the file's ready? Oh, yeah. Yeah, that's right. Let's try again. Yeah, that's it. Yep. Okay. I hereby confirm I have... I'm going to call this Peter Griffin. Yeah. So, but I can, I can move away from that and we can come back to it at the end. Okay.

Summary of the Presentation and Workflow

So that basically covers the three major parts, which was one input structuring output. And so then to walk through what the total thing ultimately looks like, um, which is, this is the example we did before. So if I zoom in here, So one, we've got a HTTP request, getting data, parsing it, putting into Google Sheets.

Calendar data, same thing, putting into Google Sheets. Todoist, same thing, putting into Google Sheets. And then here, I'm basically pulling out two things. So one, I'm doing the

all the GPT actions within Google Sheets locally. And then I'm pulling the output of that. And that's basically being stored here. And then I'm also pulling the output of who's the speaker.

And then depending on who's the speaker, that will then decide which avenue we go down in terms of what voice we use. And ultimately, that sends it back to me in Telegram. So we're going to come back here.

Personal Learning Journey and Future Directions

And I will do... So just to sum up, some of the things I've learned as going through this journey, for me, I started with these tools of Zapier and Make. I think the first talk I did at Mindstone was maybe back last July, where I showed basically how to build a email bot that will read your emails and respond to them for you.

Again, just using make.com and Google Sheets. Then I've kind of gone on this journey where that's been really interesting and fun to build more things. And that's then led me to getting a lot more technical, learning Python, learning JavaScript, learning how to basically build much more integrated systems that have cloud-hosted databases and all these certain things. But ultimately, out of that, I've just realized that even when you're working with technical people, you just end up running so much slower when you're climbing over these sort of permissioning issues and other issues that you come across in your setup.

And I personally just prefer to test first, get something working, and then once it's working, structure and scale it. And there are some options in the middle. I'm increasingly working with sort of low code applications, things like Bubble, Build Ship, Flutter Flow. All these are great for different purposes.

Conclusion: Building with Accessible Tools

So in conclusion, I just want to say that the big tech companies have kind of pushed the door open. The door is now open, so just go build stuff. And it doesn't matter what your technical skills are. Even if it's just Google Sheets, you can actually build some really interesting things.

Secondly, if you are new to this, I would say the most valuable things you can do is, one, experiment with a no-code coding tool, Zapier or Make.com. Both are great options. Two, I'd say the highest value thing that I learned to do was basically send get and post requests to APIs because then you take the universe that make.com and Zapier play in and expand it to a much wider space. And then three,

You know, prompt structuring is incredibly important when you actually get into this stuff. And I found it really helpful just to build an ecosystem or an environment where I can really toggle that and play with it. And if you want access to the sheet, happy to share with you. You can follow up with me either on LinkedIn or just chat to me afterwards.

So either way is cool. And yeah, if you've got questions, feel free.

Closing Remarks and Additional Demonstrations

Good morning. Today, complexity becomes clarity.

It's currently a cool 46 degrees Fahrenheit under light rainfall. As the day unfolds, anticipate a shift towards heavier rain, transforming our environment. Expect a high of 48.3, while tonight darkness ushers in a low of 44.5.

As always, adapt and innovate your plans accordingly. Stay dry and have a remarkable day.

Addressing the Non-Technical Audience

So the one thing here that is the obvious gap is before I was including the name of the speaker in my prompts. So it was basically giving me quotes from the name of the speaker and putting in the style of the name of the speaker. I don't think Peter Griffin has this sort of vocabulary. So you can obviously see this is a halfway measure.

But if you include the full thing, it's a lot better. So for somebody who's not technical, I did see that you're trying to parse the JSON files and stuff like that. If you're not technical, you don't know what data is and how to extract it. So what I would say is you can play with these tools without doing that step.

I was just demonstrating that step because it's one of the most powerful steps that you can do on there. But I would say that's more like a layer two of getting into it.

Honestly, if you haven't done with anything at all, what I would say is try Zapier and then just go on. And there's actually a thing where you can talk to it and say, hey, So we've done a few talks in the past.

They're on the MindStone app. But we demonstrated where you can use Zapier Central and you can create a bot that you can talk to. And then you can say, hey, pull information from my calendar. And then it will then query you and say, Can I have access to your calendar? Can you give me a proof? And you hit Approve, and it'll do some authentication.

And then once you do, it'll basically do the same information, and it'll pull that for you on your behalf. So this required a little bit more configuring. With some of those options, there's actually no configuring. And increasingly, I think that's where it's going to go, is instead of it just being a back and forth with ChatGPT, I think we now have the ability to talk with these GPTs, tell them to do things for us, write an email, send an email, you know, do all these things, and it will do that. I think, yeah. And so I just think the medium is probably going to change from chat to other things in the future.

Questions and Discussion

I'm not pitching a business. I just built something last night and thought it was cool. Yeah, of course.

I think someone had done one of either Pablo Escobar or something like that. So you can definitely convert it, and you can convert it in whatever way you want. So, yes.

Yeah. Yeah. I would say the same thing in Chinese. It's very good with Chinese. But it really depends on the language. I know there are people building context-specific for much smaller languages. But those are like, you could find a specific tool, have it do the translation, and then have it upload the voice or something like that. Yeah. Yeah, in the back.

Cost Overview of the Used Services

OK, I pay $20 a month for OpenAI. I pay $11 a month for 11 labs. And make.com might be another $8 or $9 a month. So this stuff's not expensive.

Honestly, I'd say out of all the things that I have in my subscription list, the last thing I would ever cancel is OpenAI, because I use it every day. So I think the thing here is the cost of compute is coming down massively. And with some of these businesses, obviously all they're doing is doing some calculations on the bottom end and then charging you a premium for the convenience. But I think that premium, at least if you're sitting in this room and living in New York, is probably worth it because it's not a big premium unless you're doing some sort of big enterprise application, in which case you shouldn't be using these tools.

Finished reading?