AI development is simply not what it used to be. As someone who developed and sold my first AI project back in 2018, I can assure you that success in this field requires a completely different skill set. So in this article, I will reveal the three key areas that I’m learning as an AI developer in 2023, which not only helped me stay ahead of the game but also allowed me to consistently generate around $10,000 a month in profit in this ever-evolving field. Let’s dive in!
1. Software Architecture
Yes, architecture, not development. As an AI developer, I am no longer even learning AI development itself. Instead, I am learning design patterns and architectural styles that are essential to designing maintainable and scalable systems. So what does it even have to do with AI?
Well, first of all, I believe that very soon GPT models and autonomous agents will be able to handle most of the development by themselves. We have already seen projects like GPT Engineer or Smol-AI that can develop and even debug their code. If you ask ChatGPT, it can spit out any sorting algorithm in 3 seconds. All of these algorithms took me months to master, and even right now I can barely recall the difference between bubble and selection sorts. Where autonomous agents and GPT models fall short, however, is in reasoning and design work. Design work is valued much higher because it goes beyond mere knowledge and requires a thorough understanding of the domain and context of the task at hand. There are no right answers; everything in architecture is a tradeoff.
Think about Tesla, for example. It can easily take you from destination A to destination B without your direct involvement, but it can’t decide for you where you want to go. The same goes for the development of large code bases. Even if there were no token limits, there is no way you can communicate all the context about your problem to AI. We incorporate so much information into our minds that it’s simply not possible to put it all into words. So while I can confidently outsource development, I would never outsource the design and architecture of a big project to AI. At least not without my direct supervision. I do sometimes consult with GPT-4 on certain design decisions, but doing so still requires you to know the right questions to ask.
And secondly, AI models are no longer trained from scratch for every project. Just a few years ago, it was common for me to build AI models from scratch for each specific use case. Today, I wouldn’t even think of building a model without first considering commercial or open-source solutions. This means that our codebases must be more adaptable than ever. We must be able to easily switch from one model to another in case a better solution becomes available. Moreover, many of my clients already have some sort of infrastructure setup, and as an AI developer, I must make sure that the AI solution does not conflict with their existing systems. Some resources that I highly recommend for learning software architecture are the book “Fundamentals of Software Architecture” by Mark Richards and Neal Ford, which I am currently reading, and a software architecture course on Coursera.
2. Exploring Edge AI
Edge AI is the process of integrating and running AI directly on a local
devices like smartphones or IoT. If you had a chance to look at the most recent Apple presentation, even our watches can now run language models like Siri locally. And although Siri is probably still far behind the latest transformer models, the trend is pretty clear. We have so much extra computing in our devices that running AI models is the only reasonable way to utilize all this power. This has tremendous potential to revolutionize how we interact with technology.
Transformer models can easily call third-party APIs and take actions on our behalf. So just imagine if you could not only run ChatGPT locally on your iPhone but also allow it to control your favorite apps, like Uber or Twitter. What if you could make a post or order a taxi without even needing to touch your phone? If this were the case, you would not even need a screen. You would be able to do anything that you do on your smartphone directly from your Apple Watch.
So keep an eye on CoreML, which is Apple’s machine learning framework, because it’s only a matter of time before they add the latest transformer models and stable diffusion. A book that I am reading on edge AI is called AI at the Edge.
3. Venturing into Web Development
And finally, I am learning web development. The most important takeaway that I have discovered over the last few years of AI development is that around 95% of all AI projects also require some form of user interface to monitor or run the model.
It is very rare nowadays to encounter a project that runs only on the backend without displaying any information. Moreover, the implementation of such backend projects is already handled by products like AutoML by Google, which allows anyone to upload their data and create a machine learning model without any AI expertise.
So, especially with generative AI, I believe that the success of your project relies more heavily on the convenience of your user interface than on the performance of your model. And the most ubiquitous way to allow anyone to interact with your model is, of course, through the browser. Just think about it. Anything that has a screen nowadays also has a browser; even my ebook does. So it only makes sense to develop UIs where most people will be able to access them.
I am constantly keeping an eye on all the latest web frameworks to check if any of them release any exciting features; however, for now, I am mostly focusing on Next.js, which is a framework built on top of React. The best resource for web development is Coursera, where you can find thousands of free courses or project walkthroughs. Additionally, for simpler user interfaces, you can leverage Python libraries like Streamlit and Gradio, which are sometimes more than enough for internal projects.
So, as you might have noticed, I mostly learn technologies that help me integrate existing AI solutions rather than build AI from scratch. There is no way I could possibly train a more powerful model than what OpenAI provides, but what I could do, however, is help businesses leverage OpenAI to drive growth and profits. And yes, data privacy is often a major concern with such projects. Still, if you go to Microsoft Azure, you can find out that their OpenAI service actually does not even share data with OpenAI itself. This means that you would be running OpenAI models just like if you were hosting any other open-source model, which is what most companies concerned with privacy still revert to.