Artificial intelligence · 5 stages · about 40 weeks
AI engineer (LLM apps, prompt engineering, RAG) roadmap
0/26 tasks done (ticks are kept on this device)
- 1
Beginner · about 8 weeks
Python, APIs and how LLMs work
What to learn
Python basics: Python is the main language for AI work.
Learn variables, lists, dictionaries, if/else, loops and functions. Then learn to read and write files and install packages with pip. Almost every AI library and example online is written in Python, so take your time here.
Virtual environments and packages: They keep each project's libraries separate and tidy.
A virtual environment is a private folder of packages for one project. You create one with python -m venv or a tool like uv, then install only what that project needs. This stops one project from breaking another.
HTTP, APIs and JSON: You talk to AI models through APIs.
An API is a way for one program to ask another program for something over the internet. You send a request (often as JSON, a simple text format for data) and get a response back. Practise with the requests or httpx library before you call any AI model.
Secrets and API keys: A leaked key can cost you real money.
An API key is like a password that lets your code use a paid service. Keep it in a .env file or environment variable, never inside your code or on GitHub. Set a spending limit on every AI account you create.
What an LLM is: You must understand the tool before you build with it.
A large language model is trained on huge amounts of text to predict the next piece of text. It does not look things up or know facts for sure, so it can confidently say wrong things (this is called hallucination). Knowing this helps you design apps that check and limit what the model says.
Tokens and the context window: Tokens decide cost, speed and how much the model can read.
Models read text in small pieces called tokens; one English word is often one or two tokens, and Hindi usually takes more. The context window is the most tokens a model can read and write in one call. You pay per token, so long prompts cost more.
Temperature and other settings: These settings change how creative or steady the answers are.
Temperature controls randomness: low values give steady, repeatable answers, high values give more varied ones. Use low temperature for facts and data extraction, and higher for ideas and stories. Max tokens limits how long the answer can be.
Git and GitHub: Employers look at your code on GitHub.
Git saves every version of your code so you can go back when something breaks. GitHub stores your projects online for others to see. Push every practice project, with a short README explaining what it does.
Tasks
Project
A command-line helper in Python that takes a question, sends it to an LLM API and prints the answer and the number of tokens used, with the key kept safely in a .env file. Push it to GitHub with a clear README.
📘 Learn it here, free: Python Programming course
Free resources
- 2
Beginner · about 6 weeks
Prompt engineering and calling LLM APIs
What to learn
Clear prompts: A clear prompt is the cheapest way to get better answers.
Tell the model its role, the task, the format you want and what to avoid. Give it the facts it needs instead of hoping it knows them. Short, specific prompts usually beat long, vague ones.
System prompts and messages: Chat APIs separate fixed instructions from the user's message.
The system prompt sets rules that apply to the whole chat, like "answer in simple Hindi and English". User and assistant messages hold the conversation so far. Your app must send the earlier messages again on every call, because the model has no memory of its own.
Few-shot examples: Examples show the model exactly what you want.
Few-shot prompting means putting two or three example inputs and correct outputs in the prompt. The model copies the pattern for the new input. This works very well for sorting, tagging and formatting tasks.
Asking the model to think step by step: Some tasks get more accurate when the model works in steps.
For maths, logic or long instructions, ask the model to reason first and then give the final answer. Many newer models have a built-in thinking or reasoning mode you can switch on. It costs more tokens, so use it only where it helps.
Calling the OpenAI, Gemini and Claude APIs: Jobs expect you to work with more than one provider.
Each provider has an official Python library and a free or low-cost way to start. The ideas are the same: pick a model, send messages, read the reply. Learn one well, then try the others so you can compare quality, speed and price.
Streaming responses: Streaming makes a chatbot feel fast.
With streaming, the answer arrives word by word instead of all at once at the end. Users see progress straight away. Most chat apps you use every day work like this.
Errors, retries and rate limits: Real APIs sometimes fail or say "too many requests".
A rate limit is the most calls you may make per minute. When a call fails, wait a little and try again, waiting longer each time (this is called backoff). Always show the user a friendly message instead of a crash.
Tasks
Project
A WhatsApp-style FAQ chatbot for a local coaching centre or clinic that runs in the browser (for example with Streamlit or Gradio), streams answers, keeps chat history and politely refuses questions outside its topic.
Free resources
- 3
Intermediate · about 6 weeks
Structured output, tool calling and building AI APIs
What to learn
Structured output: Your code needs data it can trust, not loose text.
Structured output means asking the model to reply in an exact JSON shape, such as name, phone and amount. Most APIs can force the reply to follow a schema (a description of the shape). Check the result with Pydantic in Python so bad data is caught early.
Tool calling (function calling): Tools let the model use live data and take actions.
You describe functions to the model, like get_order_status(order_id). The model replies asking you to call one with certain inputs; your code runs it and sends the result back. The model never runs code itself, so you stay in control of what happens.
FastAPI: Most AI features are served to apps through a web API.
FastAPI is a Python framework for building web APIs quickly. You write a function, and FastAPI turns it into an address that apps can call. It also checks input data and creates API docs for you.
Async code: AI calls are slow, and async lets your server handle many users at once.
Async code lets Python wait for one slow call while working on others. FastAPI and the AI libraries all support async. Learn async and await early so your app does not freeze with ten users.
Storing chat history: Real apps must remember conversations between visits.
Save each message in a database such as PostgreSQL or SQLite with the user and time. Send only the recent or most useful messages back to the model to save tokens. Never store more personal data than you need.
Reading documents: Many business tasks start with a PDF, image or spreadsheet.
Learn to pull text out of PDFs and Word files with Python libraries. Many models can also read images directly, like a photo of a bill. Clean the text (remove headers, page numbers, broken lines) before you send it to the model.
Tasks
Project
An invoice reader API: upload a PDF or photo of a GST bill, get back clean JSON (seller, GSTIN, items, tax, total), with schema checks, error handling and a small web page to try it.
📘 Learn it here, free: Backend Development course
Free resources
- 4
Intermediate · about 8 weeks
Embeddings, vector databases and RAG
What to learn
Embeddings: Embeddings let a computer find text by meaning, not just by matching words.
An embedding turns a piece of text into a long list of numbers. Texts with similar meaning get similar numbers, so "fee refund" and "money back" end up close together. This is the base of smart search and RAG.
Vector databases: You need a fast way to search millions of embeddings.
A vector database stores embeddings and finds the closest ones to a question. Options include pgvector (inside PostgreSQL), Chroma and Qdrant. If you already use PostgreSQL, pgvector is a simple, cheap place to start.
Chunking documents: Good chunks decide whether RAG finds the right answer.
Chunking means cutting long documents into small parts, often a few paragraphs each, before making embeddings. Chunks that are too big mix topics; chunks that are too small lose meaning. Keep the title and page number with each chunk so you can show sources.
RAG (retrieval-augmented generation): RAG lets the model answer from your own documents instead of guessing.
In RAG you first search your documents for the parts that match the question, then give those parts to the model with the question. The model answers using that text and can quote its sources. This greatly cuts down wrong answers about your own data.
Better search: hybrid search and reranking: Simple vector search misses exact words like product codes.
Hybrid search mixes meaning-based search with normal keyword search. A reranker is a second model that re-orders the found chunks so the best ones come first. Add these only after you can measure that they help.
Showing sources and saying "I don't know": Users trust answers they can check.
Show which document and page each answer came from. Tell the model to say it does not know when the found text does not contain the answer. This one rule prevents many embarrassing mistakes.
Frameworks: LangChain and LlamaIndex: Many job posts mention them, but they are optional.
These libraries give ready parts for loading files, chunking, search and chains of calls. Build one small RAG app by hand first, so you understand what the framework hides. Then use a framework when it truly saves time.
Tasks
Project
A "chat with your documents" app for a school or small company: upload PDFs, ask questions in English or Hindi, get answers with page-level sources, built with FastAPI, a vector database and a simple web page.
Free resources
- 5
Expert · about 12 weeks
Evaluation, agents, open models and production
What to learn
Evaluation (evals): Without tests you cannot tell if a change made the app better or worse.
An eval is a fixed set of test questions with good answers or rules for a good answer. Run it every time you change a prompt, model or chunk size. You can score answers with code, with people, or with another LLM as a judge, but always check the judge too.
Agents: Agents can finish tasks that need several steps and tools.
An agent is a loop: the model picks a tool, your code runs it, the model sees the result and decides the next step. Agents are powerful but can go off track and cost more. Give them few tools, clear limits on steps and money, and a human check before risky actions.
MCP (Model Context Protocol): MCP is a common standard for connecting AI apps to tools and data.
MCP lets you write a tool server once, for example for your database or files, and use it from many AI apps. Many AI assistants and coding tools now support it. Learn to build a small MCP server and connect it to an assistant.
Open models with Ollama and Hugging Face: Open models can run on your own computer or server, keeping data private.
Ollama lets you download and run open models like Llama, Gemma, Qwen or Mistral on your laptop with one command. Hugging Face hosts thousands of models and datasets. Smaller open models are cheaper and private, but test that they are good enough for your task.
Fine-tuning (when, and when not): Fine-tuning is often not needed, and knowing that saves time and money.
Fine-tuning means training an existing model a little more on your own examples. Try better prompts and RAG first; fine-tune only for a fixed style or format that prompts cannot reach. Methods like LoRA make fine-tuning cheap enough for a single GPU.
Cost and speed: An AI feature that costs too much will be switched off.
Track tokens and money per request and per user. Use smaller models for easy tasks, cache repeated answers, and keep prompts short. Many providers also give discounts for prompt caching and batch jobs.
Safety, privacy and prompt injection: AI apps can be tricked and can leak data.
Prompt injection is when text from a user or a document tries to give the model new orders, like "ignore your rules". Never let the model take risky actions without checks, and treat all outside text as data, not instructions. Remove personal data you do not need, and follow India's Digital Personal Data Protection (DPDP) Act when you handle Indian users' data.
Deployment and monitoring: A demo on your laptop is not a product.
Package your app with Docker and deploy it to a cloud service. Log every request with the prompt version, model, tokens, time taken and errors, without saving secrets. Watch these numbers and user feedback to find what to fix next.
Tasks
Project
A production-style AI assistant for a small business (for example a pharmacy or tuition centre): RAG over its documents, tools for checking orders or timings, an eval suite, cost tracking, prompt injection defences, Docker deployment and a clear README explaining the design and limits.
Free resources