22 October, 2024
Is it Too Soon or Too Late to Learn About AI?
Is it too soon or too late to learn about AI's potential? How to start exploring its possibilities and contributing to the ever-evolving AI landscape?

- Why it can be too soon?
- Why it can be too late?
- My POV
- How to get started?
- Some terms to know
- Learning resources
- Conclusion
I remembered first time I know about machine learning in around 2016, the world was very different then. There was not very much comprehensive documents or guides. Most things I can found was highly technical documents that made my head spin - you know, the kind where every other word is a mathematical formula! Fast forward to today, the Machine learning (ML) and Artificial Intelligence (AI) domain in general has expanded very quickly. There are also much more easy-to-follow guides on the internet to get started.
With the introduction of ChatGPT in 2022, we started a brand new era of AI technology and LLM-powered applications. It's grow so quick that sometimes I feel like I need to check the news every morning just to keep up! But nowadays, still, some people are hesitate if it's too soon or too late to learn about the domain AI. In this article, I share my POV about this subject.
Why it can be too soon?
The development velocity is very fast. Things that you learn now may become obsolete in next few months. Let me give you a real example: LangChain, which is a framework used to connect LLM when open-source LLM was initially introduced in earlier 2023. It's now become much less relevant because most hosted LLM API now provide tool call capability. It's like learning to use a horse carriage right when cars were being invented!
It can also be too soon because some technology are not yet emerged. For example, as of writing this blog post, the vision capability started to become mainstream for most open-source LLM (they can finally see what's in your images!). However, the voice capability is still quite experimental. Currently, "Moshi" model from kyutai is the only somewhat usable open-source model that can understand and response with voice - and trust me, it still sounds more robot than human.
Why it can be too late?
Nowadays, there are many things to learn if you're new comer. Not just understand the underlay technical details of machine learning architectures, but also common techniques that people use to connect the model to the outside world. This can be very challenging if you haven't actively followed the evolution recently. It's like jumping into the middle of a TV series - you might feel lost about who is who and what's happening!
An example could be RAG (Retrieval-augmented generation), which allow user to re-use the one base model with custom set of data, effectively make your own chatbot without having to train it. However, this requires not only basic knowledge about how LLM works, but also knowledge about common RAG techniques and how to connect them together to make a final usable product. It's like needing to learn not just how to drive a car, but also how the engine works, how to maintain it, and how to modify it for different purposes.
My POV
If you're hesitate about learning AI-related skills, then you should not. I always believe that AI is not a trend and that it will be an integrated part of our life in the future. It's like the internet in the 90s - some people thought it was just a fad, but look where we are now!
Also, to me, if there is one thing to learn, then it's better to learn it, even it's too late, rather than never. After all, better late than never, right?
Most importantly, if you're still an under-graduated or actively looking for a job, having experience in AI and LLM can help you gain much more visibility, specially if you contributes to open-source projects. Let me share a personal story: since I became an active maintainer of llama.cpp, which is a fairly well-known open-source project for running LLM locally, I have been receiving many job offers, people who want me to work with them. I was very lucky to receive an offer from Hugging Face, which is a very reputable company in the domain of AI. Not bad for someone who started "late", huh?
How to get started?
Nowadays, we have many way to start learning about AI and LLM. However, ability to access to many learning material can make new learners confused. To have a better view on the learning path, you must firstly understand some common terms and relationship among them.
Some terms to know
Artificial intelligence (AI) is the idea of a machine that can mimic human intelligence. There are many ways to archive AI, but the most common way nowadays is via machine learning. Remember not to be confused, AI is not machine learning - just like how a square is a rectangle, but a rectangle isn't always a square!
Machine learning (ML) is a subfield of AI that gives computers the ability to learn without explicitly being programmed. For example, you can take a handwriting dataset as an input for a ML algorithm, and it will learn the pattern to detect what is a specific letter, number, etc. Think of it as teaching a computer by showing examples rather than giving it strict if-else
rules.
Generative AI (or GenAI) describes algorithms that can be used to create new content, including audio, code, images, text, simulations, and videos.
Large language models (LLM) are machine learning models that can comprehend and generate human language text. LLM is also a Generative AI. For example, ChatGPT is a LLM that can understand and response to requests written in natural language.
Nowadays, there is a wide field of careers related to LLM and AI, for example:
- Prompt engineering: the process of iterating a generative AI prompt to improve its accuracy and effectiveness
- Conversational AI Developer: create chatbots, virtual assistants, and dialogue systems. This is the most well-known branch if you're a new comer, because it allow you to add AI-powered features on top of your existing applications.
- Machine Learning Engineer: focus on building and deploying machine learning systems, including LLMs. In short, people working in this domain usually train and optimize the model.
- AIOps (AI for IT Operations): an approach that leverages artificial intelligence and machine learning techniques to automate and enhance IT operations and processes. It is closely related to DevOps.
Learning resources
Now that you have a sense of what to discover, let's have a look on my list of recommended learning resources.
Since many of people reading this comes from web/application development background, let's focus on what's can be applied in your current domain. Here is a list of what you should firstly learn about:
- Glossary of LLM Terms (click here to read)
- What is Natural Language Processing and how ChatGPT works? (click here to read my blog post)
- What is RAG? (click here to see video)
- Try using ollama with a local model and connect it to your application (click here to see the guide) - Explain: Ollama is a tool that allows you to run open-source models locally on your computer
- What is Prompt Engineering? (click here to read)
The list above only covers the topic about LLM and building chatbots. If you want to discover more about image generation models, I recommend watching this video from bycloud to have a basic understand about it.
Once you're already familiar with these terms, let's take time to discover about open-source AI:
- Let's code your own tokenizer and GPT-2 from scratch (video by Andrej Karpathy)
- Take a look on open source projects like transformers, llama.cpp, jan, ollama, vllm
- Follow community platform like Hugging Face, where people make models and share then
- Join various discord channels, like one from Jan (Homebrew) and Hugging Face are very good resources to learn and to ask when you have questions
If you have a lot of time and want to dive even deeper into mathematics concepts:
- Watch this video series from 3blue1brown covers many fundamental concept about machine learning
- Read research papers for very technical details
Conclusion
So, is it too soon or too late to learn AI? I'd say it's neither - it's actually just the right time! The field is mature enough to have good learning resources, but still young enough that there's plenty of room for newcomers to make their mark.
Think of it this way: the best time to plant a tree was 20 years ago, the second best time is now. Same goes for learning AI - while it might have been great to start earlier, starting now is still better than not starting at all.
Remember, every expert was once a beginner who decided to take that first step. So why not make today your day to start? And who knows, maybe in a few months, you'll be the one writing a blog post about your AI journey!