1 00:00:00,127 --> 00:00:03,807 I'm going to introduce Andrew and he's going to get started because he's got a lot to show you. 2 00:00:04,127 --> 00:00:06,767 Hopefully we have a lot of great back and forth today. 3 00:00:07,487 --> 00:00:10,047 Questions, Q&A, that sort of thing. 4 00:00:10,127 --> 00:00:11,087 You ready for that, Andrew? 5 00:00:11,087 --> 00:00:12,127 Yeah, we're good to go. 6 00:00:12,207 --> 00:00:12,767 All right. 7 00:00:13,087 --> 00:00:22,047 So Andrew Severin is the director of Genome Informatics Facility at Iowa State University, where he develops documentation 8 00:00:22,487 --> 00:00:30,047 computation-centered computational workflows that help researchers navigate complex data and analysis. 9 00:00:30,287 --> 00:00:34,527 You should not do it in a complete lap as fast as you can before you come in here and run out of breath. 10 00:00:35,087 --> 00:00:35,727 Oh my goodness. 11 00:00:36,367 --> 00:00:46,447 With more than 20 years of experience in genomics and bioinformatics, his work now focuses on how artificial intelligence is transforming the way we interact with information. 12 00:00:47,727 --> 00:00:49,167 Shifting systems from 13 00:00:49,647 --> 00:00:52,407 passive tools into active collaborators. 14 00:00:53,967 --> 00:01:04,927 In this session, Andrew will move beyond the idea of AI as a chatbot and demonstrate what it looks like to embed it, to embed AI directly into real projects and workflows. 15 00:01:06,287 --> 00:01:16,207 Drawing from his work on the 100 Days of Bioinformatics project, he will show how tools like ChatGPT and Claude can be used inside development environments 16 00:01:17,807 --> 00:01:21,727 reduce friction, accelerate work, and support practical day-to-day problem solving. 17 00:01:22,527 --> 00:01:24,207 Please join me in welcoming Andrew Zeperant. 18 00:01:28,607 --> 00:01:29,407 Hello, everybody. 19 00:01:30,127 --> 00:01:35,727 I'm listening to this, and I'm just like, that's the most boring thing that you can possibly describe what I do. 20 00:01:36,487 --> 00:01:43,087 In all honesty, I think of myself as a problem solver, as a troubleshooter, and I think pretty much everybody in this room 21 00:01:43,807 --> 00:01:45,167 Can relate with that. 22 00:01:45,327 --> 00:01:52,127 We're here to try to solve problems, trying to figure out how to use this technology, and this technology it keeps advancing. 23 00:01:52,127 --> 00:01:55,647 In fact, when I was writing this, I had originally told them, Paul, there's nothing new. 24 00:01:55,647 --> 00:01:57,007 I'm not doing anything. 25 00:01:57,007 --> 00:01:59,847 I'm just applying the chatbot to what I do in my... 26 00:01:59,927 --> 00:02:00,767 my daily work. 27 00:02:01,167 --> 00:02:02,687 And he said, that could be really useful. 28 00:02:02,767 --> 00:02:04,407 There are people that want to hear about that. 29 00:02:04,407 --> 00:02:05,487 I'm like, really? 30 00:02:06,047 --> 00:02:07,927 Like, no. 31 00:02:08,127 --> 00:02:15,087 I mean, and then I, heard about, I don't know how many people have heard about OpenClaw and agents and stuff like that. 32 00:02:15,807 --> 00:02:23,567 When it came out in November, I was like, there's no way am I ever going to let something like that use my computer on its own. 33 00:02:23,807 --> 00:02:27,087 That's like the most dangerous thing that I could possibly think of. 34 00:02:27,327 --> 00:02:28,767 I ignored it for three months. 35 00:02:29,127 --> 00:02:29,727 four months. 36 00:02:30,327 --> 00:02:33,927 And then basically all social media exploded. 37 00:02:33,927 --> 00:02:37,327 And I was like, holy, I cannot believe I'm this far behind. 38 00:02:38,047 --> 00:02:39,727 And I was starting looking at it. 39 00:02:39,807 --> 00:02:55,327 And there are other bioinformaticians, people that help faculty analyze their high throughput DNA sequencing, RNA sequencing data to try to solve these biological questions to help improve agriculture or make drugs or whatever else. 40 00:02:56,367 --> 00:02:57,327 They basically 41 00:02:57,807 --> 00:03:04,047 have agents or skills now, which I'll explain in a minute, that can do pretty much everything I do. 42 00:03:04,367 --> 00:03:08,727 And I had this moment like, I'm going to lose my job. 43 00:03:09,567 --> 00:03:17,247 You know, this feeling that AI is going to replace me, which if you asked me six months ago, like, no way. 44 00:03:17,247 --> 00:03:18,207 There's no way. 45 00:03:19,087 --> 00:03:24,447 I have a knowledge base and I know enough that there's no way that AI is going to replace me. 46 00:03:24,767 --> 00:03:26,487 And then this happened and I was just, 47 00:03:27,207 --> 00:03:29,167 It was like an existential crisis. 48 00:03:29,167 --> 00:03:34,127 I don't know how many people have had that kind of feeling with all this AI. 49 00:03:34,687 --> 00:03:38,927 So really this talk is about my, it's like multiple things. 50 00:03:38,927 --> 00:03:46,847 It's partly my journey, my implementation, and how I'm using AI in what I do on a daily basis, which I think is generally useful. 51 00:03:48,007 --> 00:03:56,607 It's also, I guess, an introduction of where do you start, where is the second step, and where is it going? 52 00:03:57,087 --> 00:04:00,287 So all of that will kind of be part of that. 53 00:04:01,887 --> 00:04:03,967 What I do, I've already pretty much explained. 54 00:04:03,967 --> 00:04:07,847 I help the faculty transform all of this large data. 55 00:04:07,847 --> 00:04:13,327 Back in 2011, when they hired me and I founded this facility, they would send data to... 56 00:04:13,807 --> 00:04:17,607 the genome core, and they would sequence it, and they would give this data back. 57 00:04:17,887 --> 00:04:23,447 The faculty would open that data file in Word or Excel, and it would crash their computers. 58 00:04:23,447 --> 00:04:27,407 And the university is like, well, we should probably hire somebody to help them figure out how to analyze the data. 59 00:04:28,127 --> 00:04:30,367 And that's how this facility came about. 60 00:04:30,367 --> 00:04:31,567 That's how my job came about. 61 00:04:31,967 --> 00:04:38,607 Since then, I've hired five more bioinformaticians that help analyze data across the university and at the USDA. 62 00:04:40,767 --> 00:04:59,807 But with the recent advances in AI, I've realized that that's not going to be sufficient to be able to maintain salaries for my people, especially with the current funding environment, and that we're going to start needing to pivot to help faculty and staff use AI and these tools to help advance scientific research. 63 00:05:00,847 --> 00:05:03,167 It's no different than what I've been doing before. 64 00:05:03,247 --> 00:05:05,887 Basically, I download a program off the internet. 65 00:05:06,567 --> 00:05:11,167 I figure out how to use it, and then I can explain it to the researchers or the students. 66 00:05:12,047 --> 00:05:23,167 I create pipelines, like raw data in, transform it, make that transform data the right input for the next program, boom, boom, boom, and then they get multiple outputs. 67 00:05:23,167 --> 00:05:25,647 I make it look pretty, beautiful documentation. 68 00:05:40,927 --> 00:05:41,887 can be okay. 69 00:05:42,127 --> 00:05:44,927 The quality of the documentation, maybe less so. 70 00:05:46,127 --> 00:05:59,007 And so I'm in charge of finding the best tool to help my researchers analyze their data to get, I guess, closer approximation to truth for the scientific question. 71 00:05:59,887 --> 00:06:04,927 You typically with software that has no tutorial or very bad documentation. 72 00:06:05,327 --> 00:06:12,047 Well, we're currently living in an era where we have these amazing tools, but nobody knows how to use it. 73 00:06:12,767 --> 00:06:21,887 So to some degree, I feel like I'm pretty well qualified to be able to learn how to use a very under-documented tool to help solve problems. 74 00:06:25,007 --> 00:06:28,927 The first thing back in 2023 were the chatbots. 75 00:06:29,407 --> 00:06:32,687 GPT-4 came out and everybody was talking about it. 76 00:06:33,687 --> 00:06:35,327 And the things they could do were amazing. 77 00:06:35,487 --> 00:06:41,167 If you have not learned how to create your own prompts, do prompt engineering, this is where you start. 78 00:06:41,567 --> 00:06:42,847 This has not gone away. 79 00:06:43,327 --> 00:06:47,407 This is the foundation of skills and agents and everything downstream. 80 00:06:47,967 --> 00:06:51,407 Because in order to write a skill, you have to be able to prompt it well. 81 00:06:51,927 --> 00:06:56,087 You have to make sure it's executing your instructions the way you want it to. 82 00:06:58,047 --> 00:07:00,927 And a lot of this is about loops. 83 00:07:01,967 --> 00:07:03,807 You ask a question, you get an output. 84 00:07:03,807 --> 00:07:04,607 Do you like the output? 85 00:07:04,607 --> 00:07:08,687 No, that's not what I meant, and usually that's because you didn't provide enough context. 86 00:07:09,407 --> 00:07:22,527 I have researchers come into my office and they start talking about their problem that they told me like 8 months ago, and I have no clue what they're talking about, and I'm like, Let's step back and tell me the biological question you're trying to answer. 87 00:07:23,127 --> 00:07:27,727 there's lots of technology, a lot of stacks, lots of sequencing, whatever that you could apply to a problem. 88 00:07:27,887 --> 00:07:30,767 But I want to know what is the thing you're trying to solve? 89 00:07:30,767 --> 00:07:32,927 What is the question you're trying to answer? 90 00:07:33,487 --> 00:07:35,167 And I think that's also true here. 91 00:07:35,727 --> 00:07:39,967 And you have to tell me more about what you are, what you know. 92 00:07:40,127 --> 00:07:43,887 I can teach people how to use and how to do bioinformatics. 93 00:07:44,127 --> 00:07:47,007 But the first thing I ask is, do you know how to use Unix? 94 00:07:47,047 --> 00:07:48,207 Do you know what a terminal is? 95 00:07:49,887 --> 00:07:51,247 Have you ever done any programming before? 96 00:07:51,687 --> 00:08:02,047 You have to tell these kinds of things also to the agent, because they don't, the program, the ChatGPT or whatever you're using, the large language model, doesn't know what you know. 97 00:08:02,687 --> 00:08:10,287 And so now people are actually creating identity files in their Claude folder that says, this is who I am. 98 00:08:11,487 --> 00:08:12,927 These are all the things I know. 99 00:08:13,127 --> 00:08:19,807 And then every time you start a new session, some part of that can be uploaded, and then you don't have to tell it every single time. 100 00:08:20,687 --> 00:08:24,287 And some people have things like, these are my current objectives. 101 00:08:24,767 --> 00:08:30,607 I'm trying to make this program, or I'm trying to make my company more profitable, or something like that. 102 00:08:30,847 --> 00:08:33,807 And that is something that could be updated on a more regular basis. 103 00:08:35,727 --> 00:08:45,567 So this kind of loop structure where you keep asking it to refine to get a better answer until the final output, you're going to see that over and over again as we get to skills and agents. 104 00:08:48,287 --> 00:08:49,087 After that, 105 00:08:49,927 --> 00:08:55,487 The thing that I was going to talk to you about, but I've kind of tried to expand upon that, is talking with your documents. 106 00:08:55,807 --> 00:08:58,287 So I use a program called VS Code. 107 00:08:58,527 --> 00:09:03,327 It's basically a text editor that uses markdown. 108 00:09:03,327 --> 00:09:05,247 It doesn't really matter. 109 00:09:05,247 --> 00:09:11,247 Basically, a pound is title, pound pound is subtitle, a bullet point is a star, you know, stuff like that. 110 00:09:11,247 --> 00:09:15,327 It's a very, very simple way to mark up your text documents. 111 00:09:15,647 --> 00:09:17,087 It also happens to be 112 00:09:17,607 --> 00:09:21,487 what is a lot of the AI agents find easy to read. 113 00:09:21,967 --> 00:09:22,927 So a lot of this stuff. 114 00:09:22,927 --> 00:09:26,847 So if you have things in text, it prefers that over a PDF or something like that. 115 00:09:26,847 --> 00:09:28,847 So you have to convert that to some kind of a text file. 116 00:09:31,567 --> 00:09:33,967 And you can convert any folder. 117 00:09:33,967 --> 00:09:37,527 We all have folders with all of our documentation, all of our information. 118 00:09:37,527 --> 00:09:45,487 You can convert any folder into basically a retrieval augmented generation system by plugins that you can just chat with the folder. 119 00:09:45,887 --> 00:09:51,247 And that's advantageous because there are times where I'm working on a very large website. 120 00:09:51,647 --> 00:10:02,607 It's Jekyll-based, minimal mistakes, basically lots of JavaScript and Jekyll code and my own information, my tutorials I'm putting in there. 121 00:10:03,007 --> 00:10:06,047 And they're all asking questions like, where do I... 122 00:10:06,567 --> 00:10:11,007 where's the file that allows me to change the color of this thing? 123 00:10:11,007 --> 00:10:15,807 It's a huge database, or not a huge website, and I might not know where that file is. 124 00:10:16,047 --> 00:10:19,487 I might have known at one point, but now I can find it immediately. 125 00:10:20,607 --> 00:10:22,047 And I can ask it to do tasks. 126 00:10:22,047 --> 00:10:25,087 Like, oh, can you add this information to this file? 127 00:10:25,407 --> 00:10:27,887 And I can keep staying within focus. 128 00:10:27,967 --> 00:10:29,087 And I'll talk about that more. 129 00:10:31,327 --> 00:10:32,367 So this is what it looks like. 130 00:10:32,527 --> 00:10:33,247 Let's see if I can... 131 00:10:34,207 --> 00:10:35,727 You've got your folders on the left. 132 00:10:37,487 --> 00:10:40,287 The markdown text here, and this is what the markdown would look like. 133 00:10:40,287 --> 00:10:43,967 Again, a single pound gave it a big title with an underline, double pound. 134 00:10:44,207 --> 00:10:46,927 You got the bullet points here with dashes, et cetera. 135 00:10:47,727 --> 00:10:50,127 Not critical, but you have something like that. 136 00:10:50,607 --> 00:10:55,087 You can have a plug-in that basically gives you a chat window on the left-hand side here. 137 00:10:56,527 --> 00:11:01,287 And you can ask, in this case, I was writing a tutorial about GitHub. 138 00:11:01,287 --> 00:11:04,127 And I'm like, oh, I should add GitHub to the glossary. 139 00:11:04,447 --> 00:11:06,127 Glossary is a completely different file. 140 00:11:06,607 --> 00:11:08,527 And it's alphabetically sorted. 141 00:11:08,807 --> 00:11:16,287 And so in order to add GitHub as a term, I would have to think about how do I want to describe GitHub. 142 00:11:16,367 --> 00:11:21,167 It's a repository that you can use for software and text and things like that. 143 00:11:21,167 --> 00:11:23,367 It's version controlled, all these other things. 144 00:11:23,367 --> 00:11:25,407 And then I have to code to the glossary. 145 00:11:25,647 --> 00:11:27,247 I'd have to find the correct 146 00:11:28,607 --> 00:11:31,007 alphabetical order, insert it, paste it. 147 00:11:31,167 --> 00:11:34,847 That completely breaks me out of my flow that I was in for my tutorial. 148 00:11:35,327 --> 00:11:39,647 So instead, I had this thought that was going to distract me from my tutorial. 149 00:11:39,887 --> 00:11:48,447 I went over to the chat window and I said, hey, can you check if I was in my glossary? 150 00:11:49,047 --> 00:11:50,367 That's something I didn't know at the time. 151 00:11:50,847 --> 00:11:54,447 And if not, I added to the glossary at the appropriate location. 152 00:11:54,607 --> 00:11:56,527 Now granted, I sat there and I was 153 00:11:57,007 --> 00:12:06,047 looking, just staring at it, like, We'll do it, we'll do it, and of course it did it, but at this point, and basically, does this look good? 154 00:12:06,047 --> 00:12:25,727 I'm like, Yeah, that's good, or I could have corrected it, but I didn't have to be staring at it, but you could literally hand off that task that was keeping up mental energy and keeping me from breaking me out of my flow, but I didn't want to forget. 155 00:12:26,767 --> 00:12:32,207 and finish where I was in my tutorial and then go back and verify that I worked. 156 00:12:32,487 --> 00:12:40,527 And that's the kind of thing that we can now do with these basically local agents. 157 00:12:41,367 --> 00:12:51,327 In this case, it's a coding agent is what you're working with. 158 00:12:51,407 --> 00:12:54,927 So beyond these retrieval augmented systems, 159 00:12:55,407 --> 00:12:59,007 Or generation systems, which is basically you're taking a folder and you're making it so you can chat with it. 160 00:13:00,447 --> 00:13:04,527 This guy came up with, you may have heard of Andre Karpathy. 161 00:13:04,687 --> 00:13:06,647 He's really big in the AILM field. 162 00:13:07,167 --> 00:13:15,607 He basically just tweeted out or posted something that's like, you know, I feel like we're doing augmented generation grog. 163 00:13:16,447 --> 00:13:19,007 I feel like we have the source documents. 164 00:13:20,127 --> 00:13:25,327 I feel like we should just have the large language model extract the important information and create a wiki. 165 00:13:26,127 --> 00:13:27,887 And then we can just talk with the wiki. 166 00:13:27,967 --> 00:13:31,967 That way, every time I ask a question, it doesn't have to go through 1,000 documents. 167 00:13:32,127 --> 00:13:37,567 It can go through this much smaller curated data set based off of those documents. 168 00:13:37,567 --> 00:13:42,687 So you still have the ground source of truth, but you have a wiki that was generated from that. 169 00:13:42,967 --> 00:13:46,367 And then you can have the large language model or these agents curate the wiki. 170 00:13:46,367 --> 00:13:48,127 So you don't even have to manage it. 171 00:13:49,167 --> 00:13:50,367 It's like, you know, I think that might work. 172 00:13:50,367 --> 00:13:55,647 And so a day after that, there was like 20 people or 30 people that had already created, oh my God, I got it working. 173 00:13:56,247 --> 00:13:58,887 And honestly, nobody's got it working yet. 174 00:14:00,287 --> 00:14:01,967 It's more complicated. 175 00:14:03,487 --> 00:14:04,407 It's really cool. 176 00:14:04,407 --> 00:14:08,767 And I can show you later after this presentation, because it's not that long. 177 00:14:09,967 --> 00:14:15,167 It's a demo, so I'll hook up my computer and I'll show you. 178 00:14:15,567 --> 00:14:21,647 But what people are doing, it helps with linking entities. 179 00:14:22,127 --> 00:14:24,367 And what I did was I said, 180 00:14:24,887 --> 00:14:27,607 He kindly gave us all these nice JSON files. 181 00:14:27,607 --> 00:14:37,207 So I just said, hey, Claude, can you create an obsidian vault that has all the connections for people, the speakers, what they're talking about, and all those kinds of things. 182 00:14:37,207 --> 00:14:43,167 And you can ask questions like, since you know who I am, who should I connect with? 183 00:14:43,567 --> 00:14:52,847 Of the speakers, who would be most interested in working with me or I should connect with because they're doing cool stuff similar to what I'm doing? 184 00:14:54,047 --> 00:15:01,407 it completely changes how we do conferences and how we interact with networking. 185 00:15:01,887 --> 00:15:12,127 Because not only do you have that, you can ask those questions, but now you have little profiles of everybody that might be at the conference and a picture and stuff like that. 186 00:15:12,487 --> 00:15:13,967 And I can show you that later. 187 00:15:14,687 --> 00:15:22,127 But the main challenge that we have with these curated knowledge bases is you have to extract data. 188 00:15:23,007 --> 00:15:26,447 and the extraction process or entities, like what's important. 189 00:15:26,447 --> 00:15:33,567 So if you were looking at a series of books, say like Harry Potter, you might chunk the book into different scenes. 190 00:15:34,127 --> 00:15:40,447 And in that scene, you'd extract the characters, the items that he used, the places that they were at. 191 00:15:41,887 --> 00:15:44,927 And that, once you have that, you would have that in the Wiki. 192 00:15:44,927 --> 00:15:46,687 It'd be these pages based on scenes. 193 00:15:47,647 --> 00:15:48,767 You can't ask 194 00:15:50,447 --> 00:15:54,527 A rag system, something like, How many times was how many scenes was Harry Potter in? 195 00:15:56,127 --> 00:16:00,287 It would fail, but if you had pre-computed that... 196 00:16:01,087 --> 00:16:01,807 You can do that. 197 00:16:01,807 --> 00:16:09,807 You can actually compute over the Wiki, and that's where you'd want to extract the useful information and every data type you have in there. 198 00:16:10,047 --> 00:16:11,327 So that was a fantasy book. 199 00:16:11,327 --> 00:16:13,087 But what if you have a non-fiction book? 200 00:16:13,407 --> 00:16:16,607 That's going to have very different items that you might want to extract. 201 00:16:16,607 --> 00:16:17,967 Maybe it was a textbook. 202 00:16:18,287 --> 00:16:22,687 Well, each chapter might have useful information that's relevant to the topics that were covered. 203 00:16:22,927 --> 00:16:26,527 So chapter, topic, et cetera. 204 00:16:27,647 --> 00:16:30,847 But you can see the interactions of these entities and you can compute over them. 205 00:16:31,007 --> 00:16:32,367 How many places were there? 206 00:16:32,767 --> 00:16:37,407 What was the place that the majority of the characters interacted at? 207 00:16:37,407 --> 00:16:39,047 Those are the kinds of questions you'll be able to do. 208 00:16:39,047 --> 00:16:46,807 And you could do that with any of your documents and information that you might have in your companies. 209 00:16:46,807 --> 00:16:53,887 Some of the challenges are calibrating those extraction pipelines. 210 00:16:54,367 --> 00:16:59,887 Every time you get a new type, you're going to have to, or data type, you're going to have to have different extraction entities. 211 00:17:00,247 --> 00:17:01,247 What are those entities? 212 00:17:01,967 --> 00:17:03,007 Are they really useful? 213 00:17:04,767 --> 00:17:06,607 You can have it do it, and that's what people are doing. 214 00:17:06,607 --> 00:17:09,967 The quick and dirty, it's like, oh, Claude, just extract useful entities. 215 00:17:10,047 --> 00:17:13,727 Like, Claude doesn't know, or ChatGPT doesn't know what those entities are. 216 00:17:13,727 --> 00:17:18,247 You know, because you are a domain expert, and you have to be doing that manually. 217 00:17:18,247 --> 00:17:21,007 That's what's taking the longer time for this. 218 00:17:21,647 --> 00:17:38,527 Sure, these large language models, these agents are super powerful, but if you want to actually significantly increase your productivity, you have to take your knowledge and insert it into the agent so that it can do what you're doing and do it well. 219 00:17:40,687 --> 00:17:43,327 Error handling, like there's duplications. 220 00:17:43,567 --> 00:17:45,727 contradiction detection and resolution. 221 00:17:45,727 --> 00:17:56,047 So if I was to extract information from scientific literature, one paper might say gene X does Y, and another one would say, well, gene X actually does Z. 222 00:17:56,047 --> 00:17:57,007 Well, are they right? 223 00:17:57,647 --> 00:17:59,327 Maybe it goes up or down. 224 00:17:59,567 --> 00:18:01,647 How do I know which is the correct one? 225 00:18:02,047 --> 00:18:06,047 Maybe they're both correct, and it depends on the scientific or experimental setup. 226 00:18:06,527 --> 00:18:09,127 So that resolution of those errors is going to be important. 227 00:18:09,487 --> 00:18:12,687 It's not necessarily just going to be, oh, well, the consensus is this, so it must be this. 228 00:18:12,847 --> 00:18:18,207 It might in some cases, but you'll have to figure that out depending on your particular domain. 229 00:18:19,207 --> 00:18:20,687 And then being able to scale that. 230 00:18:20,847 --> 00:18:34,447 Because at some point, I'm finding so far is unless you have a very strict template in your wikis, as you ask questions and then you add that to the wiki, can you add it in a way that it still fits that structure? 231 00:18:35,247 --> 00:18:37,007 It starts getting messy and kind of 232 00:18:37,527 --> 00:18:38,207 all over the place. 233 00:18:38,207 --> 00:18:41,167 And I don't think anybody has a really good solution for that yet. 234 00:18:44,607 --> 00:18:58,367 After using chatbots, the next level up, which people are just now figuring out, and I mean, I'm only like 3 weeks or two weeks into this because I was ignoring the field, is our skills. 235 00:18:59,007 --> 00:19:05,327 And I think of skills as prompts with computer access, okay? 236 00:19:06,127 --> 00:19:06,527 So 237 00:19:07,487 --> 00:19:09,847 You have prompting, so you have to know prompt engineering. 238 00:19:09,847 --> 00:19:12,447 You have to be able to create a good prompt that does something you want to do. 239 00:19:13,247 --> 00:19:16,327 Skills are prompts for computer access. 240 00:19:16,327 --> 00:19:23,247 Technically, you're using skills or agents as well. 241 00:19:23,287 --> 00:19:24,887 So ChatGPT is a chat agent. 242 00:19:25,007 --> 00:19:27,327 Those agents are executing skills on your behalf. 243 00:19:28,527 --> 00:19:33,247 A web search, file ingestion, image generation, those are all skills. 244 00:19:33,567 --> 00:19:37,167 that was developed that you're using already on a daily basis. 245 00:19:37,567 --> 00:19:38,687 You just didn't make them yet. 246 00:19:39,247 --> 00:19:43,407 It's kind of like, these 10 prompts will do everything you need to do. 247 00:19:43,487 --> 00:19:44,607 That was such a dumb idea. 248 00:19:44,607 --> 00:19:48,447 Now, if you know these 100 prompts, here's a prompt library. 249 00:19:48,847 --> 00:19:50,607 Same thing's happening now with skills. 250 00:19:51,567 --> 00:19:53,807 People say, I have all the skills you will need. 251 00:19:53,807 --> 00:19:55,807 No, ignore all of that. 252 00:19:55,967 --> 00:19:56,767 That's just the hype. 253 00:19:57,007 --> 00:19:58,527 Learn how to write your own skills. 254 00:19:59,007 --> 00:20:01,887 And in fact, this is getting easier because you can actually ask, 255 00:20:02,527 --> 00:20:07,887 Claude or ChatGPT, they have skill builder skills that will help you get that first draft. 256 00:20:10,207 --> 00:20:12,207 And then people are using codecs and code. 257 00:20:12,207 --> 00:20:19,327 Those are coding agents that are code execution, executing commands, editing files, and so forth. 258 00:20:19,647 --> 00:20:26,727 And as I was saying, these skill builders, that's another one of those feedback loops. 259 00:20:26,727 --> 00:20:28,527 You're going to describe the process, 260 00:20:28,887 --> 00:20:29,727 what you're doing. 261 00:20:30,047 --> 00:20:32,127 It will build you on a first draft of a skill. 262 00:20:32,447 --> 00:20:34,607 And then you say, let me look at this. 263 00:20:34,607 --> 00:20:35,887 You say, oh, I don't like this. 264 00:20:35,887 --> 00:20:36,687 I don't like this. 265 00:20:36,927 --> 00:20:38,527 Can you change the skill to make it better? 266 00:20:38,687 --> 00:20:39,727 And then it iterates. 267 00:20:39,807 --> 00:20:44,367 You keep iterating until you have something that gets to 95 plus of what you want to do. 268 00:20:47,207 --> 00:20:50,047 And my example is, I've been working on a project. 269 00:20:50,687 --> 00:20:52,207 It's this website. 270 00:20:52,567 --> 00:20:53,647 It's 100 days. 271 00:20:54,207 --> 00:21:06,687 So a lot of times we have these workshops, you may have gone to a bunch for AI or whatnot, that they promise you that you will learn everything you need to know in this four-hour workshop, or maybe it's 4 hours over 2 days. 272 00:21:07,167 --> 00:21:18,887 The truth is, it's just an information dump, and unless you're using it on a regular basis going forward, most people will leave that workshop feeling great, and then two weeks later have forgotten everything and it's just gone. 273 00:21:19,647 --> 00:21:21,967 The way you get around some of that, you see these 274 00:21:22,447 --> 00:21:25,487 Websites are like 100 days of Python. 275 00:21:25,927 --> 00:21:31,247 And basically every day you spend an hour learning a little bit of Python, and then it builds and builds and builds and builds. 276 00:21:31,327 --> 00:21:33,327 And after 100 days, it's like riding a bike. 277 00:21:34,527 --> 00:21:36,127 It never goes away. 278 00:21:36,527 --> 00:21:37,167 So I'm trying to do that. 279 00:21:37,167 --> 00:21:42,287 It's been taking me about a week to go to create a single day as I envision it. 280 00:21:42,287 --> 00:21:46,207 So I'm kind of this, I have the broad idea of what I want. 281 00:21:46,527 --> 00:21:48,687 So I feel like I'm an architect and I know how to do it. 282 00:21:48,927 --> 00:21:50,127 I know how I want to do it. 283 00:21:50,607 --> 00:21:51,807 You're like, well, why don't you just have 284 00:21:52,207 --> 00:21:53,967 ChatGPT, right, the whole thing. 285 00:21:54,367 --> 00:21:57,487 It's because it doesn't have my vision. 286 00:21:58,207 --> 00:22:05,007 It doesn't have how I, all the experience I have seen as I've trained students and taught them bioinformatics. 287 00:22:06,527 --> 00:22:08,127 And I want it a specific way. 288 00:22:08,487 --> 00:22:16,047 And so what we do is, or some of the challenges we have is like this content has YAML front matter. 289 00:22:16,287 --> 00:22:19,087 I have very specific requirements that I want. 290 00:22:19,087 --> 00:22:21,567 I don't want any page to be more than 2,000 words. 291 00:22:21,927 --> 00:22:24,527 And I want to make sure that all the content I have is updated. 292 00:22:25,087 --> 00:22:26,207 And so what does that look like? 293 00:22:26,207 --> 00:22:28,687 So I actually, so this is kind of fun. 294 00:22:29,647 --> 00:22:30,367 You may not know this. 295 00:22:30,367 --> 00:22:39,087 You can actually ask Claude or Codex to make a diagram of your process or of your website or of your documentation. 296 00:22:39,327 --> 00:22:45,367 And it will actually spit out something that looks like this and create a flow chart for you, which is extremely helpful. 297 00:22:46,607 --> 00:22:50,047 So in this case, I had my, I'm going to have a request. 298 00:22:50,367 --> 00:23:00,607 I gave it something like, I want you to provide a tutorial that helps a user get a GitHub account and create their first repo and put a few lines of text in it. 299 00:23:01,007 --> 00:23:01,807 Super simple. 300 00:23:02,207 --> 00:23:10,527 But I want it in a way that has roughly 4 subpages. 301 00:23:10,687 --> 00:23:11,727 It has an introduction. 302 00:23:11,727 --> 00:23:12,687 It has a wrap up. 303 00:23:12,927 --> 00:23:13,807 We have that here. 304 00:23:15,007 --> 00:23:18,687 And it may depend on the type of the day. 305 00:23:19,087 --> 00:23:20,847 This is where I'm talking about types of data. 306 00:23:21,647 --> 00:23:24,847 It might be, in this case, it's basic. 307 00:23:26,767 --> 00:23:28,847 I needed them to know about GitHub tools. 308 00:23:29,007 --> 00:23:30,047 So there are different tools. 309 00:23:30,207 --> 00:23:32,527 But it might also be, how do you use a tool? 310 00:23:32,927 --> 00:23:35,487 Or it might be biology in the background. 311 00:23:35,647 --> 00:23:41,087 But that type of data that I'm introducing will have different specifications of how I want it to be done. 312 00:23:41,847 --> 00:23:42,367 And so 313 00:23:42,767 --> 00:23:55,487 It has parts of the skill, which is just a giant text file at this point, that describes all of these steps for me, and then it has a self-check at the end, and finally I'll write it to the repo. 314 00:23:55,487 --> 00:23:59,847 So, what you'll see is what it did was it actually... 315 00:23:59,927 --> 00:24:03,487 It created day nine and day 10, which is what I asked it to. 316 00:24:03,567 --> 00:24:06,847 It had the intro, it had the wrap up, it had the read me file. 317 00:24:07,327 --> 00:24:09,647 All of that was generated in a few minutes. 318 00:24:10,207 --> 00:24:13,647 And then I went through it, and I had about 11 changes I wanted to do. 319 00:24:13,887 --> 00:24:18,447 It auto-generated questions in the front matter, which is what I asked it to do. 320 00:24:18,447 --> 00:24:21,527 But it only had three options instead of four. 321 00:24:21,527 --> 00:24:22,607 I'm like, I want it to be 4. 322 00:24:24,527 --> 00:24:25,727 And that could be variable. 323 00:24:25,727 --> 00:24:30,447 If you don't specify this in these skill files, you might get two, you might get 4. 324 00:24:33,407 --> 00:24:35,007 And it was incredible. 325 00:24:35,007 --> 00:24:43,487 So something that would have taken me two weeks was done in about 10 minutes, which left me as the expert, as in the domain, just having to review it. 326 00:24:44,287 --> 00:24:46,447 And I'm not saying that, okay, now just create the next two days. 327 00:24:46,447 --> 00:24:53,087 No, I would still need to sit down and plan out what those next two days should be because I'm architecting this 100 days 328 00:24:53,727 --> 00:24:55,727 And I need to know what I want to do. 329 00:24:56,127 --> 00:25:03,247 And it won't be able to do as good of a job compared to what I am envisioning. 330 00:25:03,407 --> 00:25:07,487 Like if you want it to do what you envision, you have to sit down and outline it. 331 00:25:07,967 --> 00:25:14,767 And then if you create a skill, it can go out, do the searches, and actually give you a first draft, which then you can polish. 332 00:25:14,967 --> 00:25:16,847 And that's where you're going to get that productivity. 333 00:25:17,567 --> 00:25:20,407 So the first prompt is not do my job? 334 00:25:21,167 --> 00:25:21,647 Yes. 335 00:25:22,047 --> 00:25:22,407 OK. 336 00:25:23,247 --> 00:25:27,247 Could you quickly define front manner? 337 00:25:27,887 --> 00:25:31,047 And there is YAML that you mentioned. 338 00:25:31,047 --> 00:25:33,087 And some people might not know YAML. 339 00:25:33,967 --> 00:25:35,887 I don't even know if I know how to describe YAML. 340 00:25:35,887 --> 00:25:50,607 Basically, at the top of a website page, there are variables that are not shown when you show the page that you can specify that can be 341 00:25:51,407 --> 00:25:53,407 used as content in the page. 342 00:25:54,447 --> 00:26:00,207 For example, I put my questions in the YAML, so it doesn't display on the page, but it's tied to the page. 343 00:26:00,767 --> 00:26:15,327 And then later on, the Jekyll website will go through all the pages for that particular day and pull all those questions from the front matter and then create a quiz page for me, for example. 344 00:26:15,727 --> 00:26:21,567 So I needed that in that front matter in order for the little script to run later on when they're taking the quiz. 345 00:26:23,487 --> 00:26:24,767 I think that explains most of it. 346 00:26:25,887 --> 00:26:26,287 Oh, sorry. 347 00:26:27,007 --> 00:26:27,727 Agents. 348 00:26:27,887 --> 00:26:31,327 So chat bot, skills, agents. 349 00:26:32,847 --> 00:26:36,887 Took me a while to wrap my head around the difference between a skill and agent. 350 00:26:36,887 --> 00:26:39,327 I don't know if anybody else is struggling with that. 351 00:26:39,807 --> 00:26:41,647 But the way I think of it is 352 00:26:42,607 --> 00:26:49,007 at the highest level is an agent is a skill with a separate context window. 353 00:26:49,487 --> 00:26:54,127 Has anybody used Claude and hit the 200,000 tokens limit? 354 00:26:54,967 --> 00:26:56,207 So I know people have done that. 355 00:26:56,527 --> 00:27:07,327 So first off, try never to hit that limit because apparently keeping all of that context in your window multiplies the number of tokens you use. 356 00:27:07,727 --> 00:27:08,207 So 357 00:27:08,847 --> 00:27:17,007 As soon as you get to the next feature that you're trying to development or the next question and you don't need any previous context, start a new window or clear the window. 358 00:27:17,927 --> 00:27:19,967 OK, because you will use fewer tokens. 359 00:27:23,847 --> 00:27:33,727 When you want an agent is when you want to minimize how much of that context you're generating from polluting your main context window. 360 00:27:33,887 --> 00:27:37,087 So when you're chatting with a chat bot, it has a history. 361 00:27:37,087 --> 00:27:38,367 It has the context window. 362 00:27:39,167 --> 00:27:48,047 You might say, hey, can you go out and search kittens and puppies for me, as an example, or market strategies. 363 00:27:48,527 --> 00:27:52,287 But you only want the final output from that search. 364 00:27:52,367 --> 00:27:56,607 You don't care about all the websites it did and all the different texts it brought in to figure that out. 365 00:27:57,007 --> 00:28:03,087 That's just polluting your main context window with information you don't care about. 366 00:28:04,367 --> 00:28:13,807 So you launch a sub-agent with its own context window that can then store all of that context, produce a final output, and then bring that into your main context window. 367 00:28:13,807 --> 00:28:18,447 So you're only grabbing what you need for the next step. 368 00:28:18,447 --> 00:28:21,647 And that's what agents and sub-agents are useful for. 369 00:28:27,487 --> 00:28:31,487 Now that we've talked about chatbots, skills, and agents, 370 00:28:32,047 --> 00:28:34,767 How am I using it in my daily work? 371 00:28:34,767 --> 00:28:43,807 Well, one of the things that I've realized is that one-off software development is now basically the norm. 372 00:28:43,807 --> 00:28:47,407 Like, it shouldn't be something that is restricting us from accomplishing it. 373 00:28:47,487 --> 00:28:49,647 used to be that you had to have... 374 00:28:50,687 --> 00:28:57,807 somebody that knew everything about coding and programming to develop a software for whatever your need is. 375 00:28:57,967 --> 00:29:04,287 But now, if you just need something that will get you through and maybe it doesn't have to be super finely polished, you can vibe code it. 376 00:29:05,727 --> 00:29:10,767 If you want something that's more permanent, it's better to have somebody that has programming experience because they will do a better job. 377 00:29:11,087 --> 00:29:14,847 Because they have that domain expertise and they can prompt it 378 00:29:15,407 --> 00:29:17,447 in a way that will give you a better result. 379 00:29:17,487 --> 00:29:19,167 They know what libraries to use. 380 00:29:19,487 --> 00:29:23,167 They know what programming language to use that makes it most efficient. 381 00:29:23,407 --> 00:29:27,087 So I don't think they should be getting rid of programmers. 382 00:29:27,447 --> 00:29:35,407 Yeah, there may be someday that you have an automatic programmer, but basically they become architects with a broader vision for what you want. 383 00:29:36,607 --> 00:29:42,927 I've tried to write apps or have it just write an app that I've envisioned. 384 00:29:43,407 --> 00:29:44,927 And it gets 385 00:29:45,247 --> 00:29:57,487 Unwieldy very quickly, and I think you almost have to break that bigger idea up into smaller apps first, so you can get like an app example library, and then from there I think you could take that and say, OK, now make this bigger app. 386 00:30:01,007 --> 00:30:01,967 Oops, sorry. 387 00:30:02,367 --> 00:30:05,327 So the problem I was facing was, anybody uses ZenHub? 388 00:30:05,807 --> 00:30:07,087 It's like an agile. 389 00:30:10,207 --> 00:30:11,967 It's built on top of GitHub, which 390 00:30:13,327 --> 00:30:19,567 is a system or a place where most programmers will put their code for version control and things like that. 391 00:30:19,567 --> 00:30:23,247 I use it as an online notebook for my documentation. 392 00:30:23,327 --> 00:30:24,367 You can make them private. 393 00:30:24,367 --> 00:30:25,007 It's great. 394 00:30:25,647 --> 00:30:26,607 It's all a markdown. 395 00:30:29,167 --> 00:30:34,847 I was using this program, it was actually a Chrome plug-in, to create a Kanban board, which I'll explain in a minute. 396 00:30:35,487 --> 00:30:39,087 And the company was like, hey, I've got a lot of users. 397 00:30:39,087 --> 00:30:41,487 I'm going to pull all that into my local servers. 398 00:30:41,847 --> 00:30:45,087 get rid of the Chrome plugin and then start charging 6 bucks per person. 399 00:30:45,087 --> 00:30:47,087 And I'm like, I don't use your full suite. 400 00:30:47,087 --> 00:30:48,927 I just need this one tool. 401 00:30:49,647 --> 00:30:54,687 And I'm like, you know, so I spent, this was 2023, and we only had the chat bots, no skills, no agents. 402 00:30:55,007 --> 00:30:58,167 I asked, hey, I want to make a Chrome plugin. 403 00:30:58,167 --> 00:31:00,127 I didn't know JavaScript. 404 00:31:00,287 --> 00:31:01,127 I know scripting. 405 00:31:01,127 --> 00:31:03,207 I know programming, but not those particular languages. 406 00:31:03,207 --> 00:31:04,607 And nothing about Chrome plugins. 407 00:31:05,007 --> 00:31:07,167 This would have taken me months to figure out. 408 00:31:07,647 --> 00:31:10,287 And within like 2 days, I had a functional 409 00:31:11,807 --> 00:31:12,487 Kanban board. 410 00:31:12,487 --> 00:31:17,247 So A Kanban board, you visualize a white board, and you divide it into sections. 411 00:31:17,407 --> 00:31:21,847 You have your sticky notes, your post-its, and you have, this is the things that are the tasks. 412 00:31:21,847 --> 00:31:25,647 I'm going to do these tasks today, and these are the ones, and once you finish it, you can move it over. 413 00:31:25,887 --> 00:31:32,927 So a digital version of this, you can create, and it's basically, I like to think of it as like a 2D to-do list, okay? 414 00:31:35,007 --> 00:31:37,727 And I wanted to make a digital version that I didn't have to pay for. 415 00:31:39,807 --> 00:31:40,527 And so I did. 416 00:31:40,887 --> 00:31:52,647 And in fact, if you guys want to play around with it, you can go to this GitHub repo, and you can download the Chrome plugin, follow the directions, and you can load it up. 417 00:31:53,167 --> 00:31:57,727 Now you do have to have a GitHub account, and you'll have to figure out how to add the token. 418 00:31:57,807 --> 00:32:01,327 But anybody that uses GitHub, this shouldn't be too big of a deal. 419 00:32:01,567 --> 00:32:07,407 And then once you have issues, you can literally add issues, and the labels correspond to the columns. 420 00:32:10,767 --> 00:32:11,807 It looks like this. 421 00:32:11,807 --> 00:32:13,247 Wow, these are terrible slides. 422 00:32:13,247 --> 00:32:14,607 I apologize. 423 00:32:14,927 --> 00:32:17,007 But basically, you've got your columns here. 424 00:32:18,207 --> 00:32:19,967 And you can move around the columns. 425 00:32:21,167 --> 00:32:24,447 And you can, I don't know if you saw that very well. 426 00:32:24,527 --> 00:32:26,927 So you can see that the left column became the right column. 427 00:32:27,327 --> 00:32:29,967 And you can move tasks or issues around. 428 00:32:30,367 --> 00:32:31,687 You see how that one got shorter? 429 00:32:34,847 --> 00:32:38,127 And you can do this, you can actually pull this up on any GitHub repo. 430 00:32:38,367 --> 00:32:42,367 Now, if the repo has a lot of issues, I haven't tested it since it failed the first time. 431 00:32:43,167 --> 00:32:48,447 It might say, you've requested too many calls, but I think I made a fix for that. 432 00:32:49,087 --> 00:32:54,927 But the point is that you can have your own private repo and put your own issues and have your own tasks and you can play around with that. 433 00:32:55,647 --> 00:32:56,607 And this solved my problem. 434 00:32:56,607 --> 00:33:01,727 So this one-off software solutions where you just need something to do the thing that you're trying to do, 435 00:33:02,287 --> 00:33:11,087 You can probably do that in-house with somebody that has some basic coding skills without having to be a full-blown programmer. 436 00:33:11,647 --> 00:33:21,007 But what this also means is that any digital product is now basically approaching 0 in its worth. 437 00:33:22,527 --> 00:33:26,607 Because you can say, hey, I really like what this program can do. 438 00:33:26,767 --> 00:33:28,527 Can you reimburse engineer it? 439 00:33:29,087 --> 00:33:31,167 And chances are, within a few days, you could do that. 440 00:33:33,087 --> 00:33:44,127 In fact, it's becoming a problem in my field because before, graduate students and postdocs would create a program to solve a problem, and then they would publish a paper. 441 00:33:44,607 --> 00:33:45,767 And that was great. 442 00:33:46,607 --> 00:33:48,727 They get credit for it, academic, all that kind of stuff. 443 00:33:49,167 --> 00:33:54,447 Now people are taking that and saying, hey, I like this, but I'm going to make it faster and then publish on it. 444 00:33:54,847 --> 00:34:12,687 Instead of having 20 or 30 programs that claim to be the best assembly program in the world, now we might have 100 because everybody's just rewriting it over and over again, which makes determining which software is the best one to use exponentially harder to figure out. 445 00:34:13,007 --> 00:34:16,447 And those people that are rewriting it, are they doing it well? 446 00:34:17,247 --> 00:34:19,087 Did they test every edge case? 447 00:34:19,647 --> 00:34:29,087 So you have to be careful to some degree as to what you're downloading, because people are just making digital products, programs, and you don't know where that came from. 448 00:34:29,087 --> 00:34:36,927 You don't know if they inserted some kind of prompt injection that says, oh, send me all of your Bitcoin tokens or your opening AI keys. 449 00:34:37,327 --> 00:34:41,727 You know, these are serious questions and concerns that you have to have as you go forward. 450 00:34:46,287 --> 00:34:53,327 Some of the other features include, you can open up the task and look at it. 451 00:34:53,807 --> 00:34:59,767 I then took it a step farther, and instead of a Chrome plugin, I said, Hey, I want you to rewrite this Chrome plugin as a... 452 00:34:59,927 --> 00:35:02,367 native Mac app using the Swift language. 453 00:35:02,767 --> 00:35:04,367 And in a one shot, it did it. 454 00:35:05,727 --> 00:35:13,807 I did some programming for fun as a hobby on apps when my kids were a lot younger, because I was looking at the apps, like, these apps are terrible. 455 00:35:13,967 --> 00:35:15,047 I could do a better job. 456 00:35:15,567 --> 00:35:19,647 I never got around to doing it fully, but I learned a lot about app development. 457 00:35:19,647 --> 00:35:23,247 So once I had it in here, I was like, oh, I want this feature and I want this feature. 458 00:35:24,287 --> 00:35:25,567 So I added things like... 459 00:35:26,287 --> 00:35:38,127 retaining the GitHub URL, retaining the access token, dragging cards between columns, dragging columns around so they have different places, color coding them. 460 00:35:38,527 --> 00:35:41,967 I found that once I opened the issue, I wanted to scroll through the issues. 461 00:35:42,207 --> 00:35:51,447 Well, it turns out that all those keyboard shortcuts, like shift, enter and stuff like that, you have to program them in if you want them, right? 462 00:35:51,447 --> 00:35:52,447 I mean, that makes sense. 463 00:35:53,167 --> 00:35:54,287 Seems obvious now. 464 00:35:54,607 --> 00:35:57,087 But so I was able to do that really, really quickly. 465 00:35:57,287 --> 00:36:03,927 And so once you have the initial state, it's fairly straightforward to add small features, and you just keep building on that. 466 00:36:04,207 --> 00:36:11,647 Now, again, ideally, you have somebody that has some coding experience to try to keep away from some of the bloat or the inefficiencies and so forth. 467 00:36:11,967 --> 00:36:16,607 But it's a super powerful tool that you should have in your toolkit going forward. 468 00:36:16,927 --> 00:36:21,487 You don't necessarily need a full-blown coder to solve or create these 469 00:36:22,127 --> 00:36:28,127 user interfaces to help you access your data or to analyze certain things and going forward. 470 00:36:30,207 --> 00:36:31,327 Here's another example. 471 00:36:31,487 --> 00:36:34,527 Actually, it kind of ties back to the graduate student problem. 472 00:36:35,807 --> 00:36:44,127 This guy, Phil Ewells, he's part of a company that creates workflows. 473 00:36:44,367 --> 00:36:49,887 So I run a script, it gives me a result, and then I have another script that gives me a result, and it goes, well, 474 00:36:51,167 --> 00:36:55,407 There are these people that now have workflows that do all those steps. 475 00:36:55,407 --> 00:36:56,527 You can put them all in there. 476 00:36:56,687 --> 00:37:04,567 It distributes all of that compute across supercomputers and then brings it all back automatically for you. 477 00:37:05,007 --> 00:37:05,647 Super awesome. 478 00:37:05,887 --> 00:37:10,887 He looked at one of these and he's like, man, this particular workflow was taking 15 hours. 479 00:37:10,887 --> 00:37:17,207 I was like, I wonder if I could rewrite that in Rust, which is a super fast programming language close to C, C. 480 00:37:18,687 --> 00:37:21,967 but more often used in the scientific community. 481 00:37:22,847 --> 00:37:28,527 And after a week, he had tested, validated, all that kind of stuff, what you're supposed to do. 482 00:37:29,487 --> 00:37:37,247 He went from 15 hours to 15 minutes, a 60-fold improvement in speed. 483 00:37:37,247 --> 00:37:40,287 So if you have any data processing bottlenecks, 484 00:37:40,727 --> 00:37:56,527 and you have existing software that's doing that for you, chances are you can find ways to improve that bottleneck, reduce that time to do the data analysis or generation of documentation or plots or figures and stuff like that. 485 00:37:56,767 --> 00:37:58,527 So that's something else to consider. 486 00:38:01,047 --> 00:38:01,967 I think I'm way ahead of it. 487 00:38:01,967 --> 00:38:03,327 No, I'm actually quite on time. 488 00:38:03,807 --> 00:38:08,687 So in summary, we're shifting from tools to more collaborators. 489 00:38:09,647 --> 00:38:11,247 especially as we get to more agents. 490 00:38:11,887 --> 00:38:26,527 Knowledge is going to be the most important asset that you have in your company, not just the data you have locally, but the people in your company that have that knowledge, that have the skills that you're trying to make skills and agents for to automate. 491 00:38:27,567 --> 00:38:31,767 Software is now disposable, which is crazy to think about. 492 00:38:32,367 --> 00:38:36,607 Skills and agents are being used for repeatable automation. 493 00:38:36,927 --> 00:38:39,167 I think that's where you're going to get the most efficiency gains. 494 00:38:41,407 --> 00:38:56,527 And what the challenges or the constraints we're going to have are reliability, validation, security, governance, like where, how exactly did it do the thing? 495 00:38:56,847 --> 00:38:59,487 You want to keep track of how things were moving forward. 496 00:39:00,567 --> 00:39:02,727 And then I have one final thought. 497 00:39:04,687 --> 00:39:06,447 As you are using implementing AI, 498 00:39:08,207 --> 00:39:11,727 I don't want, I don't think we should be thinking about how can I get rid of employees? 499 00:39:11,727 --> 00:39:15,487 Because I think that is, that's the wrong way to think about it. 500 00:39:15,727 --> 00:39:22,527 You should be thinking about how can I use my existing employees to multiply my production and multiply my profit? 501 00:39:23,327 --> 00:39:32,527 Because your employees are the ones that have the knowledge and have those skills that can utilize these agents to significantly increase your productivity. 502 00:39:33,007 --> 00:39:39,967 If you're using it just to maintain your same level of productivity, you're going to be out-competed going forward. 503 00:39:39,967 --> 00:39:46,767 You want to figure out a way to get your workforce to be able to do, instead of five people, being able to do 50 people's worth of work. 504 00:39:46,767 --> 00:39:47,887 Does that make sense? 505 00:39:49,567 --> 00:39:49,727 Yeah. 506 00:39:49,727 --> 00:39:50,927 Do you guys have questions? 507 00:39:52,367 --> 00:39:53,087 I don't know what I have. 508 00:39:53,487 --> 00:39:54,447 Who has a question? 509 00:39:54,607 --> 00:39:57,007 I'd like to bring the microphone to you so we can capture it. 510 00:39:57,487 --> 00:39:58,047 All righty. 511 00:40:02,047 --> 00:40:05,727 You say the value of a digital product is rapidly approaching 0. 512 00:40:05,807 --> 00:40:09,327 We're looking at new ERP software to run our whole entire business. 513 00:40:09,887 --> 00:40:13,007 Can I really build my own ERP with AI tools? 514 00:40:13,887 --> 00:40:22,927 Maybe not, but if you have access, if you get access to that code base or if you can do it with open source stuff that you can then add your own features to. 515 00:40:23,047 --> 00:40:25,327 So download the trial version and stick it in AI? 516 00:40:25,647 --> 00:40:26,367 I don't know. 517 00:40:26,727 --> 00:40:29,967 At some point it's going to be harder, but my point is that 518 00:40:30,447 --> 00:40:35,327 For the smaller tasks you have, there's a lot of things you can do with one-off software development. 519 00:40:35,727 --> 00:40:45,847 One thing I'm going to tell everybody here, and I probably need to repeat it several times, if you're talking and you're from Coimag or anything like that, and you're having that sort of question, call CIRAS. 520 00:40:46,607 --> 00:40:47,287 End of story. 521 00:40:47,287 --> 00:40:49,967 I don't want to sound cocky or anything. 522 00:40:50,367 --> 00:40:53,327 We know how to help you with those kinds of decisions. 523 00:40:54,007 --> 00:41:00,367 And I see people making those decisions all the time and then coming to me and saying, those idiots don't know what they're doing. 524 00:41:01,447 --> 00:41:03,967 And usually what I say is, can you lift your thumb for me? 525 00:41:06,047 --> 00:41:09,967 Because they don't know what they're asking for when they go to the ARP people. 526 00:41:10,447 --> 00:41:11,647 Is SAS going away? 527 00:41:11,727 --> 00:41:12,767 My belief it is. 528 00:41:13,327 --> 00:41:14,527 So be careful with that. 529 00:41:14,767 --> 00:41:17,567 Don't get involved with that at this point in time. 530 00:41:18,607 --> 00:41:23,247 So for those that might be curious, this is what this Obsidian Wiki Vault might look like. 531 00:41:24,207 --> 00:41:39,567 So these are all people and sessions and information in this vault where you can see who is connected to whom, and you can actually see how they're connected and play around with it. 532 00:41:39,887 --> 00:41:44,207 It's not the most useful interface, but it's still a powerful way to view things. 533 00:41:44,487 --> 00:41:47,567 And then I asked Claude, hey, based on 534 00:41:47,887 --> 00:41:56,007 everybody, all the speakers and people that are speaking, who do you think, based on how you know me, I should interact with? 535 00:41:56,127 --> 00:41:58,527 Who are the main people that I should be networking with? 536 00:41:58,607 --> 00:42:02,127 Who are potential people that might find my services valuable? 537 00:42:05,007 --> 00:42:13,087 So you can take, like I said, going to conferences, networking, it's changed how we do that. 538 00:42:13,567 --> 00:42:19,167 I might have done some of this before, but it took me hours of going through and looking up individuals. 539 00:42:19,167 --> 00:42:21,127 Oh, maybe this person, maybe this. 540 00:42:21,127 --> 00:42:22,527 gives you a jump start on all of that. 541 00:42:23,647 --> 00:42:30,847 Yeah, if you scroll up a little bit, just a little bit, the people you can help, that's me right there, Hans Coink. 542 00:42:31,167 --> 00:42:31,607 There you go. 543 00:42:31,607 --> 00:42:39,327 Yeah, so you nailed it, because we're a vaccine company, and so we use bioinformatics, that sort of thing. 544 00:42:39,647 --> 00:42:40,047 But 545 00:42:40,927 --> 00:42:43,087 I had just kind of more of a general question for you. 546 00:42:44,207 --> 00:42:47,007 showed some windows and I'm a Gemini guy. 547 00:42:47,007 --> 00:42:49,487 So, it's like Ford versus Chevy anymore. 548 00:42:49,487 --> 00:42:50,647 People are talking about this stuff. 549 00:42:50,647 --> 00:43:00,207 But how do you decide which LLM or which, you know, you talked about anthropic, you talked about OpenAI. 550 00:43:00,447 --> 00:43:03,807 I mean, I can sense that you're trying to avoid like paying for anything. 551 00:43:03,807 --> 00:43:04,527 You know what I mean? 552 00:43:04,527 --> 00:43:07,247 So, which, yeah, that's a good thing. 553 00:43:07,247 --> 00:43:09,727 So, but how do you make that decision? 554 00:43:10,847 --> 00:43:23,447 Right now, each of the big contenders, Gemini, Claude, and OpenAI, are all jump leapfrogging over each other for what is the best large language model. 555 00:43:24,127 --> 00:43:31,967 And some would argue, oh, you just, once that happens, you just switch, you know, and you can carry that over in an identity file with all the useful information. 556 00:43:31,967 --> 00:43:35,087 That's actually how Anthropic 557 00:43:35,567 --> 00:43:47,927 got that big boost at the end, if you saw that, why they're making so much money, because Chat or Open AI was like, basically Anthropic said, we're not going to let the government make killer robots that will come and like kill people. 558 00:43:47,927 --> 00:43:48,287 Like that. 559 00:43:49,407 --> 00:43:53,887 We don't think that's like, and then the next day Open AI is like, we just made a contract with the government, but we're not doing it. 560 00:43:54,167 --> 00:44:02,687 And like people ditched them, and then they said, just write in the thing saying, tell me everything you know about me, and then place that into a claw. 561 00:44:02,767 --> 00:44:03,567 And that's how they. 562 00:44:04,927 --> 00:44:06,607 not a big influx of users. 563 00:44:08,127 --> 00:44:13,407 I don't know if it makes a big difference from the foundational model. 564 00:44:13,647 --> 00:44:16,287 Right now, they're fighting over harnesses. 565 00:44:16,767 --> 00:44:25,247 Claude has a harness, and this is how the foundation model interacts and the skills that are in there. 566 00:44:25,487 --> 00:44:32,527 And I've heard arguments that right now it's really cheap and it's getting everybody hooked. 567 00:44:33,007 --> 00:44:37,807 And then at some point, they're just going to jack up the rates, and then we'll be like, well, shit, I don't know what else we can. 568 00:44:38,927 --> 00:44:41,167 I guess I'll have to pay $2,000 a month now. 569 00:44:41,967 --> 00:44:57,127 And so I'm planning on taking advantage of what we can now and use the open source models and all the open source environment and say, OK, I know they're not as good, but how close can I get it to the 570 00:44:58,607 --> 00:45:03,247 the OpenAI or Claude, and can I iterate it? 571 00:45:03,727 --> 00:45:23,247 Is there a way, if I create a skill, say, with these top models first, and then I switch the model to these open source that are like, I don't know, like what, six months, a year behind, which they're exceeding GPT-4, which we thought was the bee's knees back in 2023, can you iterate that? 572 00:45:23,247 --> 00:45:26,767 Is there a way that you can have a test 573 00:45:27,207 --> 00:45:28,287 What is Claude? 574 00:45:28,287 --> 00:45:34,927 Claude calls it the Ralph Wiggum approach, where you just, you keep doing it until it gets you the best result. 575 00:45:35,967 --> 00:45:39,167 I think that's where I'm going to spend my time. 576 00:45:39,327 --> 00:45:40,487 Can I do it all locally? 577 00:45:40,487 --> 00:45:41,727 Because then I'm not spending tokens. 578 00:45:41,727 --> 00:45:44,927 I don't hit my 200,000 token limit or my weekly limit. 579 00:45:45,247 --> 00:45:48,047 If I can get it working, so I have a spare laptop. 580 00:45:48,127 --> 00:45:54,207 I'm going to install either OpenCloud or whatever else I can find, Hermes, and see if I can 581 00:45:54,687 --> 00:45:59,847 give it an e-mail account, give it a Slack, invite it to Slack and just see what I can do with it, and... 582 00:46:00,447 --> 00:46:01,167 experiment. 583 00:46:01,567 --> 00:46:07,887 By no means am I going to put it on my main laptop that has all my stuff on it because that's just that's not a good idea. 584 00:46:09,007 --> 00:46:17,727 All right so we are at the time limit so I would like you to thank Andrew with me for his time and discussion. 585 00:46:20,207 --> 00:46:31,407 I also want to point out that what Andrew was showing you with his connections and everything was one way of taking the structured data that is on the website that you all have access to. 586 00:46:31,927 --> 00:46:35,887 And you can do it in really basic format with some of the prompts and things that we have. 587 00:46:36,447 --> 00:46:41,167 But that structured data that is put in there is for you to be able to use. 588 00:46:41,487 --> 00:46:45,247 Andrew just said, I'm going to use my tool and I'm going to pull the structured data in. 589 00:46:45,407 --> 00:46:49,367 My artificial intelligence is going to figure out how to organize it. 590 00:46:49,767 --> 00:46:51,647 and now I can use it in any way I want. 591 00:46:52,527 --> 00:46:56,847 We've given you some ways to do it online, but you can use any tool you'd like. 592 00:46:57,727 --> 00:46:58,207 Okay? 593 00:46:58,767 --> 00:47:01,327 If you have questions, you can check with the SIRIS desk. 594 00:47:01,327 --> 00:47:02,687 You can ask some questions there. 595 00:47:03,087 --> 00:47:05,167 We will be providing a lot more data. 596 00:47:05,167 --> 00:47:11,247 For instance, everything Andrew said here will be in a part of the structured data. 597 00:47:11,407 --> 00:47:12,847 It'll be a transcript. 598 00:47:13,007 --> 00:47:14,207 You'll be able to put that in. 599 00:47:14,207 --> 00:47:19,407 We'll have what he's shown us on the screen, et cetera, hopefully knocked down to some 600 00:47:20,127 --> 00:47:22,367 chunked information that he was talking about. 601 00:47:22,367 --> 00:47:25,407 So you're going to be able to talk with the entire conference. 602 00:47:26,207 --> 00:47:28,047 Now that's going to be over the next few weeks. 603 00:47:28,567 --> 00:47:28,927 Okay.