From Slackbot to ChatGPT - The Journey to Automating DevOps
The journey begins with DevOps bottlenecks - the backup of requests for resources. During his time as Head of Platform at BlueVine, a financial services technology company, Shaked Asakyo, CTO and Co-Founder of Kubuyia.ai, supported 200+ engineers with a small team of 5 DevOps and SREs. This situation led to DevOps bottlenecks - over 800 tickets a week in Slack and Jira and five sites to maintain in production. Shaked realized that the best way to relieve this painful exchange is to create a virtual Shaked - one that sits between developers and operators - that can work 24/7 in all time zones and has the full context to resolve the tickets.
Since 2017, Shaked’s first bot has evolved through the eras of machine learning and now Langchain and Large Language Models.
This talk will discuss the use cases for AI in DevOps and also the learnings from using not just LLMs such as Llama 1 & 2, Claude, GPT 3,3.5 and 4, and Anthropic but also the usage of vector stores and classifiers to make AI more secure, predictable, and extendable.
This is a chance to see live examples of using AI to make DevOps more productive and less tedious.
Full transcript
The complete talk — auto-generated from the talk's captions.
Okay, we want to get started. So if you can take a seat. Okay, perfect. So we're closing the door.
Guess That's my mark. Uh, hi, I, I'm Shana. This is, uh, oer. We're with, uh, KU ai, so if you're here to see it there, it's the wrong place.
Long time. Um, Kubis a conversational AI based DevOps assistant. Uh, so we've been on this journey of, uh, ai, LLM and various other worlds, uh, over the last, uh, three, four years. So we'll talk a little bit about this journey.
Just before I get started, uh, how many here are, uh, either part of DevOps organization or managing DevOps organizations? Quite a few. Keep your hands up. How many of you, uh, while sitting in this room actually have, uh, dev develop a request for infrastructure, whatever it is, uh, sitting in your Jira board, in your Slack, in your WhatsApp, in your email?
Okay. Quite, quite a few. So this is, this is a lot for you, but, uh, but also for the board of audience. So, uh, um, before I get started, uh, you know, a quick story of, uh, how we got here.
So, uh, this is, uh, shake, uh, shake used to be head of DevOps and SOA at a company called BlueVine. And, uh, he managed the team of five. And in this picture, he is smiling, but that's because we forced him to smile for the photo. Uh, in reality, he wasn't smiling, uh, because probably like a lot of you, he was supporting over 200 developers, uh, across five sites, and again, with a team of five.
And so at peak times, he would get over 800 requests, uh, coming from the dev team on a weekly basis. And these would come, uh, through Slack, through and, uh, WhatsApp. A lot of them required contact switching. And, you know, the team never really got to the strategic stuff.
They were always focused on kind of the day-to-day request. And every time there was something urgent, and usually they would come at like odd hours. And so, uh, um, COVID, uh, hit and, uh, he got sick. Uh, I don't know, when I get sick, I usually lay in bed.
He got sick and he started programming and, uh, tried to create something that looked like him and imitated him, but essentially was, uh, was some kind of automated agent that would address at least the most frequent and repetitive request. And this is how Virtual Shake was born. Um, now Virtual Shake was essentially, uh, a simple flat bot. And, uh, uh, you know, it wasn't a huge success, but this is kind of where the journey to AI started with, uh, a, a slimer Slack boat, probably about, uh, five, six years ago.
Uh, actually a little less, uh, it was during Covid, so, um, wasn't, again, like I said, it wasn't a good success. It didn't really feel like, uh, you know, like a human effect, you know, slash commands. And, uh, you were limited by the number of, uh, workflows and automations that you could create. And, uh, there was no, you know, audit trail.
There was no system, so you couldn't really control what experience to give, which person it wasn't learning. Um, but, um, you know, it was a little bit encouraged by the fact that he took about 10% of those 800 tickets and, and essentially automated them. And that kind of got him to think about, uh, you know, where he can take that next. Now, I assume, um, I assume a lot of you, uh, I mean, he was considering the same thing that probably many of you are doing, which is either using some kind of CI or some kind of infrastructure as code.
Uh, that's typically what I hear when, uh, when I talk to, uh, to DevOps managers. Uh, CI is great, but you know, most people complain about the maintenance. And if you're using, I don't know, Jenkins forms or something like that, then every time you add a microservice, you have to update those forms. It's all manual.
Uh, you make a change to the infrastructure, you add another database instance. All of that requires maintenance. Also, you really need to know what you want. And so you need to know the specific APIs and the specific parameters.
And if you just join the team, it's a long ramp up. Plus, there's no way to like, uh, well, I want to get logs for my, uh, deployment, but I don't really know under what namespace it is or something like that. So there's no something to guide you on top of that. Don't get me started on like Jenkins ui, where if you're trying to find logs, it's, uh, it's a hell.
But, uh, so that's one thing that he was considering. The other thing was infrastructure as code. And kind of at a very high level, he was just discouraged by the fact that, you know, you see a configuration file with, uh, dozens of values in order to change just one or two values plus, uh, uh, the potential of exposing secrets and, and other stuff. And so, uh, he decided to keep that inside, uh, inside flack.
And that kind of led to the first generation of ai, which was essentially based on workflows and vectors. So, um, let me just explain what a little bit of what I just mentioned. So the idea was that the user would ask something in natural language and would tag an agent the same way that they would text a kid or someone on his team, and that agent would know what workflow to trigger. The workflow is essentially a sequence of dynamic actions, um, that would feed one another.
So an example would be, I, I wanna get, uh, logs. So the first question would be, you know, which cluster it would list dynamically all the clusters. You would choose a cluster, it would list all the namespaces under that cluster. You would choose the namespace, and it would list all the deployments under that namespace.
Um, in practical terms, what would happen is when you would deploy this workflow, we would create an embedding in a vector database, and then we would compare the embeddings between a conversation and the vector database. Um, Omar, I mentioned a couple of terms vectors embedding, so maybe you can give us just a little bit of clarity to that. Yes, I'd love to. I'd love to do that.
Uh, you guys hear me, right? Yes. Um, amazing. So what are we embedding?
So embeddings kind of sound scary at the beginning, uh, but they're not that bad. Uh, so we can understand what they are. Uh, let's start with the obvious. Uh, words have meaning, uh, that meaning can change on the context of the word, could be the word before it, after it, the sentence sits in.
Um, and, uh, computers until recently actually saw words as just, uh, bunch of characters. And, uh, we interacted with them, uh, as characters. We could search for subset of, uh, characters or a subset of, uh, phrase, um, for example. And embeddings actually changed all of that.
Um, so what are embeddings? Embeddings are just vectors. And, uh, for us in our context, uh, vectors are just gonna be a list of numbers. Uh, we have an example here, zero, one and four.
That's an embedding a vector. Uh, so what do these numbers, uh, actually represent? Um, to understand that we need to talk about a semantic feature. And the semantic feature is a basic trait or characteristic, uh, that describes the, uh, meaning of a word or a phrase.
Uh, let's, uh, look at a couple of examples to understand that if we have a semantic feature of age, and we, uh, have two words, a man and a boy, uh, only from the word, we can, uh, understand that the man, uh, is probably older than the boy. So if we, uh, rank that, uh, um, from zero to 10, uh, we give a man a seven in the age semantic, uh, feature in a boy, something less than that, an infant would be even lower than a boy. Uh, and we have a couple words up here. You can see them, uh, and we, uh, have a gender semantic, uh, feature also.
Um, these, uh, vectors actually represent the words in this two D uh, two D semantical feature. And take a look at the graph. We're gonna use it in the next, uh, slide. Um, so we're gonna kick it up a notch and look at, uh, three D embeddings.
We're just gonna add another semantic feature, that's all, uh, which is loyalty. And, uh, we're gonna have new words, uh, king, queen, prince, and princess. They'll have loyalty associated with them. Um, and the words we had before don't, uh, so again, give the other words, uh, a one which is pretty low, and the king, queen, prince, and princess, we're gonna give him an eight, which is pretty high.
And when we graph that as a three D semantical feature space, uh, we can kind of understand the relativity between these words, uh, which is interesting. Uh, so if we go and look, uh, a queen is to a girl, um, what a boy is to a king, pretty much. And lemme, uh, explain that. If we take the girl word on the semantic feature space, and we draw a line the queen, and we take exactly that line, the same direction and the same distance from boy, we're gonna get pretty much to a can.
Uh, and that is how, uh, embed help computers understand words and the relativity between them. Uh, so in the real world, uh, we're gonna talk about, uh, more dimensions, of course. Uh, just a couple of, uh, models here. Uh, open AI's model is, uh, 1,536 dimensions.
And all that means is the vectors representing the words are just gonna be one, 1,536 numbers. And cohere is more than that. Uh, it's not always the case that the more dimensions, the better the embeddings. It's a little bit more complicated than that.
Um, so let's look at a real world, uh, example. Um, and, uh, I have here three phases. Um, this e uh, AWS Eecs instances and Liz Jenkins job. These could be pretty much functions that we want run behind the scenes.
Uh, and we have a user input, which is, which is a show, E Cs instances, and us, uh, west too. And, uh, to understand what the user, uh, is, uh, trying, uh, to do, or what we need to do behind the scenes. We can take these phrases, embed them, uh, with an embedding model. We get that vectors.
And, uh, you can see at the bottom the first three numbers of, uh, how a vector looks like. Uh, and we, we can compare them, uh, how similar they are. Um, so the user text and list a Ws EECS instances, uh, uh, they're pretty close, but you can see they're, uh, 0.66, uh, in similarity. Uh, and, uh, user text and, uh, excuse me, uh, Jenkins jobs, uh, they're farther.
Um, they're not as similar, so it's 0.2. If we have the exact same vector, we're actually gonna get a one. So, uh, this is how embeddings work, actually. You want to tell us more about Gen one?
So, so essentially the idea is, as I mentioned, again, you create some kind of, uh, workflow. That workflow is describing the Python or Yammer function you deploy, that embeddings get created, uh, and then you ask, uh, the agent to do something. And essentially, um, uh, it compares the embeddings between the conversation and the vector database. It worked well because it was very natural language, so the user didn't know, didn't need to remember a specific API.
Um, it was also dynamic. So again, there wasn't a lot of maintenance required. I think the biggest pain point was kind of creating those workflows. And so each organization, you know, have a certain level of flexibility they want give to the developers in terms of deploying e EC tools or deploying, uh, or creating a squeeze, giving permission, et cetera.
But, uh, and we try to address that a little bit with generative ai. So you would actually describe the workflow and the workflow would get created, but the mop was pretty high. And, uh, and that kind of led us to where we are today, which is, uh, LLM and, uh, and conversational ai, which is kind of what you see on the right side. So the idea is, uh, use Python to essentially wrap the An API on SDK, uh, deploy that to the, uh, vector database.
And then as you have a conversation, it actually knows which part can function to trigger and what, and have a conversation on what parameters that function requires. Having a conversation, easier said than done. If you think about us human having conversation, you know, I might refer to something that, uh, you know, you or you mentioned five minutes ago. And so you need to have memory, you need to have context.
Uh, you need to identify what context are we talking about. So the world deployment can have a different meaning in, uh, in the world of, uh, Terraform versus the world of Jenkins, for example. Um, and it needs to be responsive. You can sit there and wait for 60 seconds for something to respond.
So a lot of challenges. I'll have er talk a little bit about kind of how we address some of those challenges in the world of LLM. So, uh, LLM is pretty LMS are pretty new, uh, and, uh, there's, uh, challenges we are facing, everybody's facing. Um, and, uh, we'll talk a little bit about them.
Um, the first aspect would be, uh, conversational aspect. Jenny mentioned, uh, response time. Response time for, uh, AI and for chat bots, uh, especially is, uh, is a big deal. And, uh, it's always too high.
And, uh, the different lms, they have different response times. Uh, the smarter they are usually, uh, the more time, uh, they take to respond. Um, an interesting one is actually memory and context. Um, when you talk to an AI or check UPT, um, you're actually, uh, thinking that it remembers everything, uh, you said before, but ATMs, they're stateless.
Um, now you're wondering how it works then. Uh, so I have another, uh, example here lined up for you. Um, and, uh, you can see the prompt. This is me talking to chat GPT 3.5.
This is the first message I'm actually sending it, and I'm starting with the conversation history that we never had. Um, it says, uh, I said that, uh, my name is Omar, and, uh, the AI responds with, uh, nice to meet you, Omar. How can I help? I say, actually, it's Bob.
And the AI says, how can I assist you today, Bob? And this is all made up by me. This is a previous, uh, conversation that never happened, and my message. Um, the last one would be, uh, I changed via my name from what to what?
And you can see the AI responded. You changed, uh, your name from owner, the Bobs. So it took the conversation history that, um, I, uh, sent it, uh, and it, uh, answered based on that. And that is how uhms actually work.
Um, and when you think they remember what you said, it's because, uh, the history is actually being added to the prompt. Um, and this, uh, has a lot of challenges, uh, associated to it. Um, the longer the conversation, I can throw off the LLM, uh, there are ways, um, to fix it or, uh, try to make it, uh, better, for example, um, only give the last, uh, end messages to it or have a summary, um, of, uh, of the history. Uh, but then you lose some of the context.
Um, okay, so let's talk about Smarter LLMs. Uh, they sound great. Uh, the pair of double-edged, uh, sword, like I mentioned before, they take longer to, um, to response most of the time again. Uh, and, uh, when we started using them, we had the urge to rely on them for business logic, uh, which worked at first, uh, but then we had problems with it.
And, uh, another, uh, example here is, uh, we have part of a prompt. Uh, so it fits on the, on the slide, and it goes collect all the parameters and return a json only, uh, uh, return a JSON only when you have all the context. And we're actually asking it to do a couple things. We're asking it to, uh, collect all the parameters.
The full prompt has the parameters of course, and only when it's done collecting them. It could be a couple of back and forth with the user stating what parameters we need to collect, uh, and, uh, him collecting, um, actually giving the parameters. Um, and, uh, only when it has all the parameters, it gives us a json we can parse it and move on. Um, with it, uh, this worked at first, uh, and then it became super complicated, uh, and gave us a lot of trouble.
Uh, and we're just gonna see, uh, one reason why, um, so small changes in prompts, uh, they, uh, change behavior unexpectedly. And again, to understand what I'm talking about, uh, I have another example lined up for you. Um, and these are two prompts. Uh, this is me talking to Chad g, PT 3.5, and they're basically the same with little changes.
So let's go over the first one, um, and, uh, and see what I'm trying to, uh, show you guys here. So, does the text address something frequent or rare? Um, right there, spots in JSON format, for example, and we give it an example of the jss o we wanna get back. Um, and then the text is rain falls once in a blue moon in the desert.
And of course, that is something that happens on a rare occasion. We can see to the left, uh, that we actually get the jss o we wanted. We can parse this, save it to the database, do whatever we want with it. Um, and now if we only change two small things, the, all the other parameters the same, and we change, write the response to return response, and then we add a blank line at the end.
And that happens all the times when you rewrite prompts, uh, you don't even notice. Uh, and now you can see that, uh, the response is different. It gives us the json at the end, but it also describes why, uh, why it chose, uh, that interval is rare. Uh, and this is perfectly fine when a human is talking to an LLM, but we're calling it from code, uh, and we wanna parse it.
This could, uh, lead to a lot of errors. So how do we overcome these challenges? Uh, mainly, um, we split into small prompts, uh, and, uh, it's not as easy as it sounds. Um, we'll see later.
Um, but this gives us a lot of abilities. Um, first and foremost, it gives us the ability to fine tune prompts. Um, we're only asking for one thing, so we're gonna, uh, have the best wording, the best prompt to do that task and that task only. Um, and then it lets us, the ability to play with history and context we talked about before.
Um, not all prompts, uh, need all the history. Um, and, um, like I said before, um, if you give a history, it can change, uh, the response of the LLM. So, uh, we can play with that. Uh, it gives us the power, uh, to pass the history and prompt and context only when we need it.
Um, this also gives us a better way to test changes, uh, and, uh, see what they can affect. Uh, we all know that a function that does multiple things is always harder to test. And, uh, when you change stuff, it can change things you never thought, um, possible or break things even, uh, that's even worse. Um, and same with lms.
If you have a prompt that does multiple things and you change it and you think, or you fix one thing, it can break another one. When you have a small prompt, you know, uh, with one task, you know exactly what you wanna, um, test and if something breaks, you know, uh, what it can affect. Um, this also gives us by ability to use different models for specific tasks. Uh, and this is a big one, um, choosing the best model.
Um, not all, uh, models are the same. Some do a better job at specific tasks, and splitting to small prompts gives us the ability to use good best models for the job. Also, fine tuning custom models is a big opinion. It's gonna become, uh, more and more, uh, mainstream, I think.
Um, and, uh, it's just taking a model and fine tuning it to do one thing or, um, have, uh, one type of thing, uh, that it does better. Um, you give it a lot of examples, and then, um, usually you get a better response and a faster one too. And I have an example here, uh, showing different models. Um, this is me, uh, again, talking to chat GPT four, 3.5, and then cloud by, uh, and it's pretty silly prompt.
I'm asking, uh, return a yes or a no. How are you today? And you can see that chat. GPP four actually says, artificial intelligence, I don't have feelings.
So it actually answered the question, how are you today? Same as, uh, cat GPT three, five, but cloud on the other hand, it just replied with a yes. So it took my command and did what I asked it to do. It didn't answer the question following it.
Um, so this is an interesting, uh, behavior of different models and see how they can, uh, respond, uh, differently. Um, you do see an asterisk on the CHT four prompt, and that is because when I, uh, try to reproduce this right before the talk, it actually, uh, returned a no to me, which is interesting. Uh, and, uh, this is, uh, brings up another challenge, um, actually, um, models they change all the time. Um, this is a real world example, um, of a, of a sentence, uh, of, uh, something that, uh, Shani asked ku.
And you can see that, um, it's a pretty complicated text, and you need to, um, get multiple things out of the same text. And this is, again, where small prompts help us, um, to, to get the right results. Um, these are various lms, uh, I don't have time to talk about all of them, uh, but they're really interesting. I encourage you to, uh, read about them.
Uh, so most of the chat models, uh, or the lms, you know, are actually, uh, general chat models, um, the, uh, chat GPTs and then cloud. Um, but there's other models, uh, and I'm gonna mention them. Uh, there's a classification model, which is a classifier, and it actually uses embeddings, um, uh, to classify known labels of, uh, preowned labels. Uh, and then they get a text and they, uh, say, what label, um, it's, they give it the label with the most, uh, probability.
We're gonna talk a little bit about that, uh, in the next couple of slides. And there's a command model, um, by code here. Um, and it responds well with instruction like prompts, for example. Um, if you're asking, uh, the command model, um, to write a blog post for LinkedIn about ai, it's probably gonna do a better job.
There isn't a back and forth with it, with it. Um, and again, it's just interesting to note that there's a different, um, LLMs that are, um, meant and trying to do different kind of things. So how do we know what prompt to call when, um, we have, or orchestration and classification? Um, so the first, uh, thing, orchestrator is a fancy word for, uh, handling the flow.
Um, so we know what prompt to run when, and, uh, and then take the response and do what we need with it. Um, this gives us the ability actually to, uh, better understand what is happening behind the scenes. Uh, when we have small prompts, um, we, uh, go back to the code when they respond to us, and then we can do tracing, logging, durations, um, and we know what is happening behind the scenes. And this was a big win for us, um, when Orchestrator.
Um, and also this gives us the ability to add deterministic programming for specific tasks. LLMs are not a silver bullet. Um, and, uh, the good old, uh, code we know and love, uh, does better job at specific tasks. And, um, we use that, uh, between the LLMs calls, uh, and you can see to the right, um, there's, uh, an image of, uh, how an orchestrator or a low chart would kind of look like, um, which is interesting.
You can look at the, uh, you can, um, look at the circles as prompts, and then the lines, you can do whatever you want with the code. Um, and how do we navigate that, um, through classification? Um, not only, but, uh, this is a big part. Um, so we talked about a classifier model, and this is, uh, where, uh, we use it, uh, and again, we class, it classifies text into known labels, and we have a small example here.
Again, um, for example, our known labels would be an action in general. Um, an action would be something we need to, uh, run behind the scenes, um, run a function or get, uh, data from AWS, for example, and then, uh, get the data, make, uh, uh, create the response to the user. Uh, and a general, uh, classification would be something we just wanna pass over to lm, for example. Uh, tell me a joke, uh, wrote that.
Um, and then we wanna just pass it over to an l lm, get the response, and then, um, send it back to the user. And you can see how this, uh, correlates to the, uh, to the image on top. Um, we also use, uh, NLP, which is a natural language, uh, processing, which is the old school, uh, machine learning, you could say. Um, uh, and, uh, we use spacey, which is a Python package, and more, um, not exactly machine learning, but again, natural language processing.
Um, so you wanna tell us about the future? Yeah, so before I talk about the future, just, it's kind of everything that Omar said in 60 seconds. So, uh, user experience, you ask, uh, the agent to do something, uh, it's classifying, uh, what's your intent, the general conversation. Is it the knowledge based conversation?
Is it, uh, uh, calling your cloud resources or you trying to action something? Um, then it figures what action are you trying to perform, assuming it's an action for a second, and, uh, um, and then it's having a full fledged conversation to gather all the required parameters and confirm that. And while it's doing that, as Zoma mentioned, um, you know, a user can give a small, a short 10, so a user can give a very long sentence. So you need to be able to cut it into small pieces, digested one after the other, while making sure that you keep context.
Uh, you need to use various, you also need to be able to handle the changes in the various, as almost said, uh, LMS are evolving. So a lot that goes into that. And honestly, kind of seeing the evolution over the last couple of, uh, uh, couple of years was, was pretty phenomenal to get to the point where I'm literally having a fun conversation with, uh, with something that's a boat. But, uh, if you wouldn't tell me, I wouldn't even know that it's a boat.
Um, as I mentioned, uh, well, actually one last thing to probably emphasize here. Uh, uh, I might have mentioned that previously, but at the end of the day, we're in the world of bevo. So you wanna make sure that the functions that get executed are deterministic. You don't want someone taking some cuts from core GPT wanting that on, uh, you know, staging and production, and then it takes, uh, you know, a few hours of fire drill to recover back from that.
So at the end of the day, execution needs to be deterministic. You need to be able to test that ahead of time, um, debug that, et cetera. As I mentioned, a lot of this conversation was really about, uh, what's available today. Uh, you know, we wanted to make sure that, uh, you know, we don't talk about futuristic things and things that will come in the next couple of years, but whether about, you know, how AI can help you today and give you, uh, some live examples, I wanna talk in the last two minutes, uh, about what's coming down the pipe.
Uh, and again, I'm not gonna talk about a year or two down the line. I'm actually gonna talk about, uh, a few weeks to a few months. Um, so Gen 2.5, I call it Gen 2.5, 'cause I'm already playing along with that in, uh, in a sandbox environment, is really about two capabilities. So the first one is, uh, up until now, the conversations were triggered in one way, the user would ask something and then the agent would respond.
This is the beginning of a two-way conversation where, uh, you know, you plug the agent into a monitoring system like, uh, like PagerDuty, an event happened, an incident happens, and, um, uh, and, and the agent proactively, uh, form something on Slack. Uh, and the nice thing is you can start running, uh, you can start creating one books, and those one books would've all the context. So you can see in the example here, if we have a crash loop back off, then, uh, you know, here are three things that, uh, typically, you know, experienced, uh, Les are doing. And, uh, would you like to do one, two, or three?
Would you like to restart? Would you like to look at logs? Uh, would you like to wall back? And then it has the full context already so it knows which walkers under which namespace, et cetera.
Um, so that's great because one, it enables us to do all of that, uh, while on the go, as opposed to like in front of our laptop, logging into a terminal two, it powers, um, or it, it helps junior, uh, SREs ramp up much faster. Um, so one aspect of it is, again, have being able to have, uh, a bi-directional conversation. The second aspect is being able to answer, uh, knowledge. I, I, um, you know, a lot of people here in the audience earlier today actually saw me with the shirt and that says out TFM, and, you know, we started making fun of that.
And that happens more frequently than you would expect. Uh, you know, we all spend time writing document, but nobody bothered reading the document. And so ma, multiple times a day you would get asked a question that, uh, there isn't a document and you would just send a link to that document. Uh, so making knowledge much more accessible is, uh, the other thing and offloading a lot of these, uh, you know, how do I do this?
How do I do that? How do I set up AV vpn? How do I create a new user? How do I give the user access to, um, you know, this system or that system?
So, um, the smart agent, essentially, in a similar way, uh, as, as with workflows, is able to take those documents, um, you know, creating beddings for them. And then, uh, assuming the classification works properly and it's able to identify that it's a knowledge question, uh, it can find the right document. So that's already in Stan books. I can tell you I'm already playing along with that.
Pretty exciting. Let's talk about kind of the, uh, you know, the longer future, which again, I mean, we're talking about, uh, Q four or maybe beginning of next year, which is proactive ai. So I talked already about the fact that, uh, you can, uh, take that smart agent and, uh, why right now it's one way or it's a conversation that starts one way by user asking something where books will create an experience that's, uh, that's a two way. And then, uh, the next level of that is making the AI much more proactive.
And these are some of the use cases I'm actually hearing, uh, you know, talking to devils manager day in and day out. Uh, you know, can you alert me on, uh, easy two instances that are either for the last 24 hours, can you alert me on, uh, ports that are showing high utilization and let and suggest that I scale up, uh, scale them up. Um, so the proactive AI is really about identifying incidents or identifying scenarios in your, uh, uh, environment and, uh, and being, being able to suggest actions around that. Same thing around cost.
Uh, you know, your EC two cost has increased in the last seven days. Would you like me to look into that? And then the second thing is being able to learn from other conversations. So the fact that this agent, uh, which we like to call kbi, so maybe I should stop calling it an agent.
The fact that KBI is part of your organization and can participate in conversations, uh, means that, uh, you can tag it on an existing conversation, have it learn, uh, you know, how you handle a certain incident, and then in future incidents it can identify the pattern and say, Hey, you know, in the past you did A, B, and C, would you like me to do that? And so, you know, making sure that it constantly involves, uh, but not, you know, kind of general word evolution, just learning from, uh, generic knowledge, but actually learning from the practices inside the organization. I think that's, uh, generally kind of what, uh, i, I think the next step of AI is about, is not just, uh, learning from, uh, you know, general data, but actually, you know, learning from the specific data inside the each and every organization. So that was, you know, kind of, uh, a, a quick summary of the journey that we went through from, uh, you know, a simple Slack bot a few years ago, um, to a fully fledged AI that's able to have conversations.
Uh, we just scratched the surface. There's a lot of other topics to talk about. We're gonna stay here. Uh, if anyone has specific questions, um, if you wanna try it out, you can actually talk to Kube.
We set up a playground, uh, with our resources so you can use our AWS or Jira, et cetera, and, and start having conversations with kuby. You just need a a Slack account and that's about it. So you can scan the QR code and, uh, feel free to join in. Uh, thank you again for the time.
I hope you enjoyed this session. And, uh, have a great rest of the conference. bye-bye.