Practical AI Course

From Python Basics to AI APIs — A 16-Week Hands-On Journey

Build real AI applications. No prior programming experience required.

Course Overview

📚

16 Weeks

Structured curriculum from fundamentals to advanced AI applications

5–6 hrs/week

1.5–2 hour lecture + 3–4 hours of hands-on assignments

🎓

No Prerequisites

Designed for complete beginners with no programming experience

🚀

Real Projects

Build and deploy actual AI applications by course end

Course Structure

Week 1 History & Fundamentals of AI
Weeks 2–4 Essential Python Programming
Weeks 5–16 Deep Dive into AI APIs, Tools & Applications

Learning Outcomes

  • Understand the evolution and current state of AI
  • Write Python programs to interact with AI systems
  • Work with multiple AI APIs (LLMs, image generation, speech-to-text, embeddings)
  • Build sophisticated AI applications
  • Understand AI capabilities, limitations, and ethical considerations
  • Deploy AI-powered projects

Weekly Schedule

Click on any week to view lecture topics, key concepts, and the assignment.

Download Slides Lecture Video

Lecture Topics

  • What is Artificial Intelligence? Definition and scope
  • The Turing Test and early AI philosophy (1950s)
  • The Breakthrough: The First Neural Network, and following AI Winter (1958-1970)
  • Expert systems and symbolic AI (1970s–1980s)
  • The rise of machine learning (1990s–2000s)
  • Deep learning revolution (2010s)
  • The transformer breakthrough and modern LLMs (2017–present)
  • Current state: ChatGPT, Claude, and the generative AI explosion
  • Where AI is heading: capabilities and limitations

Key Concepts

  • Understanding what AI can and cannot do
  • Different approaches to AI (symbolic vs statistical)
  • Why AI is having a moment now
  • Ethical considerations and societal impact

Assignment: AI Timeline Research Project

Create a document (or simple Python program) covering:

  • Choose 3 AI milestones that interest you and research them
  • For each milestone: What happened? Why was it important? What changed afterward?
  • Write about one current AI application you find fascinating
  • Reflect: What excites you about AI? What concerns you?
  • Optional: Create a simple program that displays your timeline with print() statements

Expected Time: 3–4 hours

Download Slides Lecture Video

Lecture Topics

  • Setting up Python environment (VS Code, Python installation)
  • Variables and data types (strings, numbers, booleans, lists)
  • Basic operations and printing output
  • Boolean logic and comparisons
  • If/elif/else statements
  • Getting user input
  • String formatting

Key Concepts

  • Variables as containers for data
  • Making decisions in code with conditionals
  • Interactive programs
  • Writing and running Python scripts

Assignment: Rock Paper Scissors Game

Create an interactive Rock Paper Scissors game where you play 3 rounds against the computer. Build a complete game with score tracking, input validation, and proper result display.

Expected Time: 3–4 hours

View Full Assignment
Download Slides Lecture Video

Lecture Topics

  • Lists: storing and organizing multiple items
  • 2D Lists (nested lists): representing grids and matrices
  • For loops: iterating over lists and 2D structures
  • While loops: repeating until a condition is met
  • List operations (append, remove, indexing, slicing)
  • Functions: defining reusable code blocks
  • Parameters and return values
  • Breaking down complex problems into functions

Key Concepts

  • Automating repetitive tasks with loops
  • Organizing data in lists
  • Writing clean, reusable code with functions
  • The DRY principle (Don't Repeat Yourself)

Assignment: TicTacToe Game with AI

Create an interactive TicTacToe game where you play against the computer. Build features for board display, game logic, win detection, and a computer AI that tries to win, blocks you, or picks randomly.

Expected Time: 4–6 hours

View Full Assignment
Download Slides Lecture Video

Lecture Topics

  • Reading from and writing to files
  • Dictionaries: key-value pairs for structured data
  • JSON format: the language of APIs
  • Exception handling (try/except)
  • HTTP basics and the requests library
  • Making API calls and working with responses
  • Environment variables and API keys

Key Concepts

  • Persistent data storage
  • Working with structured data (JSON)
  • How programs communicate over the internet
  • Preparing for AI API integration

Assignment: Weather AI Assistant Prep

Build a program that:

  • Uses a free weather API (OpenWeatherMap) to get current weather data
  • Stores favorite cities in a JSON file
  • Has functions to: add city, remove city, get weather for a city
  • Saves weather data history to a file
  • Uses dictionaries to organize weather information
  • Handles errors gracefully (invalid city, network issues, missing API key)
  • Uses environment variables for the API key

Expected Time: 5–6 hours

View Full Assignment
Download Slides Lecture Video

Lecture Topics

  • Classes and objects: blueprints for data and behavior
  • Attributes and methods: properties and actions
  • The __init__ constructor: initializing objects
  • Instance variables vs class variables
  • Encapsulation and private attributes
  • Inheritance: building class hierarchies
  • Polymorphism: same method, different behavior
  • Using OOP to structure AI applications

Key Concepts

  • Object-oriented design patterns
  • Designing classes for reusability and maintainability
  • Inheritance hierarchies and method overriding
  • Organizing code into logical objects
  • Building extensible systems with OOP

Assignment: Bank Account System

Build a bank account management system that:

  • Has an Account base class with attributes like account number, balance, and owner name
  • Implements core methods: deposit(), withdraw(), and get_balance()
  • Creates at least two account subclasses: CheckingAccount and SavingsAccount that inherit from Account
  • CheckingAccount offers unlimited free withdrawals, but has monthly fees
  • SavingsAccount charges a fee for withdrawals over 3 per month, but offers interest on the balance
  • Uses private attributes (with underscore prefix) for balance and implements proper encapsulation
  • Overrides the withdraw() method in subclasses to demonstrate polymorphism with different withdrawal rules
  • Implements a Bank class that manages multiple accounts (create, find, and list accounts)
  • Saves and loads account data from a file to persist information between sessions
  • Includes error handling for invalid transactions (overdrafts, negative amounts, etc.)

Expected Time: 5–6 hours

Download Slides Lecture Video

Lecture Topics

  • What is AI? Machine Learning vs Deep Learning vs LLMs
  • How Large Language Models work (high-level)
  • Introduction to OpenAI API / Anthropic Claude API
  • API setup and getting API keys
  • Making your first AI API call
  • Token usage and costs
  • Understanding model parameters (temperature, max_tokens, etc.)

Key Concepts

  • AI capabilities and limitations
  • Prompting basics
  • API authentication
  • Rate limits and pricing
  • Responsible AI usage

Assignment: AI Writing Assistant

Build a simple writing assistant that:

  • Takes a writing prompt from the user
  • Calls an LLM API to generate content
  • Displays the AI response
  • Tracks token usage
  • Allows multiple generations in one session
  • Saves generated content to a file
  • Lets users choose between different types of content (story, essay, email, etc.)

Expected Time: 5–6 hours

Download Slides Lecture Video

Lecture Topics

  • Prompt engineering fundamentals
  • System messages vs user messages
  • Temperature and other parameters
  • Few-shot learning and examples
  • Chain-of-thought prompting
  • Common prompting patterns and best practices
  • Prompt templates and reusability

Key Concepts

  • Crafting effective prompts
  • Controlling AI behavior and output style
  • Getting consistent, reliable results
  • Understanding when AI needs more context

Assignment: AI Tutor Bot

Create an educational chatbot that:

  • Has a well-crafted system message defining it as a patient, Socratic tutor
  • Teaches a topic of your choice
  • Asks the user questions to check understanding
  • Provides explanations when the user is wrong (without just giving answers)
  • Keeps conversation history for context
  • Adjusts difficulty based on user performance
  • Uses different temperature settings for different types of responses
  • Implements at least 3 different prompting techniques learned

Expected Time: 5–6 hours

Download Slides Lecture Video

Lecture Topics

  • Managing conversation history and context
  • Context windows and token limits
  • Conversation memory strategies
  • Building multi-turn conversations
  • Handling long conversations (sliding window, summarization)
  • Stateful vs stateless interactions
  • Conversation flow design

Key Concepts

  • How to maintain context across messages
  • Managing token budgets effectively
  • Creating natural conversation experiences
  • When to reset or summarize context

Assignment: Personal AI Assistant

Build a terminal-based assistant that:

  • Maintains full conversation history
  • Can perform multiple tasks: set reminders, take notes, answer questions, tell jokes
  • Saves conversation to file for later review
  • Implements a “reset conversation” feature
  • Handles token limits by summarizing old messages when needed
  • Has a distinct personality through well-crafted system prompts
  • Allows user to choose between different AI “modes”

Expected Time: 6 hours

Download Slides Lecture Video

Lecture Topics

  • Overview of different AI APIs (OpenAI, Anthropic, Cohere, Hugging Face)
  • Image generation APIs (DALL-E, Stable Diffusion, Midjourney)
  • Speech-to-text and text-to-speech APIs
  • Vision APIs (image understanding, OCR)
  • Combining multiple APIs in one application
  • API abstraction and switching between providers
  • Cost optimization across different APIs

Key Concepts

  • Choosing the right API for each task
  • Working with different API formats and authentication methods
  • Building multimodal AI applications
  • Managing multiple API keys and rate limits

Assignment: Multimodal Content Creator

Create a program that:

  • Takes a topic from the user
  • Uses LLM API to generate a short story, article, or social media post
  • Uses image generation API to create a relevant cover image
  • Optionally uses text-to-speech to create audio version
  • Saves all outputs to organized folders with timestamps
  • Includes error handling for each API
  • Lets user choose content type and style
  • Tracks costs across all API calls

Expected Time: 6–7 hours

Download Slides Lecture Video

Lecture Topics

  • Using AI to process and analyze text data at scale
  • Sentiment analysis and emotion detection
  • Text classification and labeling
  • Summarization techniques (extractive vs abstractive)
  • Extracting structured data from unstructured text
  • Batch processing with AI
  • Working with CSV files and AI
  • Data validation and quality checking with AI

Key Concepts

  • AI for automation and efficiency
  • Processing large datasets systematically
  • Getting structured output from AI
  • Combining traditional programming with AI

Assignment: Customer Review Analyzer

Build a tool that:

  • Reads customer reviews from a CSV file
  • Uses AI to analyze sentiment for each review
  • Extracts key themes, complaints, and compliments
  • Generates a comprehensive summary report
  • Categorizes reviews by product, topic, or issue
  • Identifies urgent issues that need attention
  • Processes reviews in batches to manage API costs
  • Saves analyzed data back to a new CSV file

Expected Time: 6 hours

Download Slides Lecture Video

Lecture Topics

  • Function calling in LLM APIs (tools/functions)
  • Defining function schemas and descriptions
  • When and why to use function calling
  • Structured outputs and JSON mode
  • Building AI agents that can take actions
  • Handling function call responses
  • Chaining multiple function calls
  • Error handling in function calling

Key Concepts

  • Extending AI with custom capabilities
  • Reliable structured data extraction
  • AI that can interact with external systems
  • Building more deterministic AI applications

Assignment: AI Email & Calendar Manager

Create a program that:

  • Takes email or message text as input
  • Uses function calling to extract structured information
  • Categorizes messages (work, personal, promotional, urgent, etc.)
  • Can add events to a simple calendar (stored in JSON)
  • Can set reminders based on extracted deadlines
  • Generates draft replies using AI with context
  • Saves all structured data to JSON files
  • Can process multiple emails from a text file

Expected Time: 6–7 hours

Download Slides Lecture Video

Lecture Topics

  • What are embeddings? Vector representations of text
  • How embeddings capture semantic meaning
  • Using OpenAI/other embedding APIs
  • Vector similarity and cosine similarity
  • Semantic search vs keyword search
  • Introduction to vector databases (concepts)
  • Building a simple RAG system
  • When to use embeddings vs traditional search

Key Concepts

  • Representing text as numerical vectors
  • Finding semantically similar content
  • Enhancing AI with external knowledge
  • The foundation of modern AI search

Assignment: Personal Knowledge Base with Semantic Search

Build a searchable knowledge base that:

  • Allows adding documents, notes, or articles
  • Creates and stores embeddings for all content
  • Performs semantic search based on meaning
  • Returns top-N most relevant documents with similarity scores
  • Uses RAG to answer questions about stored documents
  • Can handle at least 50+ documents
  • Shows the difference between keyword and semantic search

Expected Time: 6–7 hours

Download Slides Lecture Video

Lecture Topics

  • Advanced RAG techniques and patterns
  • Chunking strategies for long documents
  • Hybrid search (combining keyword + semantic)
  • Re-ranking search results
  • Working with different document types
  • Metadata filtering and structured queries
  • Introduction to vector databases (Pinecone, ChromaDB)
  • RAG evaluation and quality metrics

Key Concepts

  • Building production-quality RAG systems
  • Document preprocessing and chunking
  • Improving search relevance
  • Scaling to larger document collections

Assignment: AI Research Assistant

Build an advanced research assistant that:

  • Can ingest multiple document types
  • Chunks long documents intelligently
  • Creates embeddings for all chunks with metadata
  • Implements hybrid search combining embeddings and keywords
  • Uses RAG to answer complex questions requiring multiple sources
  • Cites sources in responses
  • Provides confidence scores for answers

Expected Time: 7–8 hours

Download Slides Lecture Video

Lecture Topics

  • What are AI agents? From simple to complex
  • Agent architectures and patterns (ReAct, Plan-and-Execute)
  • Tool use and function calling in agents
  • Agent memory and state management
  • Multi-step reasoning and planning
  • Error handling and recovery in agents
  • When to use agents vs simple API calls
  • Limitations and safety considerations

Key Concepts

  • Building AI systems that can take multiple actions
  • Combining reasoning, planning, and execution
  • Managing complex workflows with AI
  • Balancing autonomy with control

Assignment: AI Task Automation Agent

Build an agent that can:

  • Accept high-level goals from the user
  • Break down goals into sub-tasks automatically
  • Execute sub-tasks using appropriate tools/functions
  • Maintain state and memory across multiple steps
  • Self-correct when tasks fail
  • Provide progress updates to the user
  • Generate a final deliverable
  • Include at least 5 different tools/functions

Expected Time: 7–8 hours

Download Slides Lecture Video

Lecture Topics

  • When to fine-tune vs when to use prompting/RAG
  • Introduction to fine-tuning concepts
  • Preparing training data for fine-tuning
  • Fine-tuning with OpenAI API (practical walkthrough)
  • Evaluating fine-tuned models
  • Cost considerations for fine-tuning
  • Alternatives: few-shot learning, RAG, prompt engineering
  • Model distillation basics

Key Concepts

  • Different levels of model customization
  • Creating quality training datasets
  • Evaluating model performance
  • When customization is worth the investment

Assignment: Custom AI Model Project

Choose one approach:

Option A: Fine-tune a Model — Choose a specific task, create a training dataset (min 50 examples), fine-tune using OpenAI's API, and compare performance vs base model.

Option B: Advanced Few-Shot System — Build a system with dynamic few-shot examples, organized by category, using RAG to find similar examples.

Expected Time: 7–8 hours

Download Slides Lecture Video

Lecture Topics

  • Structuring larger Python projects
  • Environment variables and configuration management
  • Basic web interfaces with Gradio or Streamlit
  • API design for AI applications
  • Deploying to cloud platforms
  • Best practices for production AI apps
  • Cost management and monitoring
  • Security considerations

Key Concepts

  • Project organization and architecture
  • Making AI apps user-friendly
  • Production deployment considerations
  • Monitoring and maintenance

Assignment: Deploy an AI Application

Take one of your previous projects and:

  • Add a web interface using Gradio or Streamlit
  • Implement proper configuration management
  • Add usage logging and analytics
  • Include rate limiting to control costs
  • Write a detailed README with setup instructions
  • Deploy to a free platform (Hugging Face Spaces, Streamlit Cloud, etc.)
  • Share the deployed link and documentation

Expected Time: 7–8 hours

Download Slides Lecture Video

Lecture Topics

  • Project planning and scoping for AI applications
  • Combining everything learned
  • Code review and best practices
  • AI ethics and responsible deployment
  • Future learning paths in AI
  • Course wrap-up and Q&A

Key Concepts

  • Building complete, production-ready AI applications
  • Integration of multiple AI techniques
  • Real-world problem solving with AI
  • Responsible AI development

Capstone Project

Build a complete AI application that:

  1. Solves a real problem you care about
  2. Uses at least 3 AI techniques from the course
  3. Has a user interface (web, terminal, or GUI)
  4. Is deployed and accessible online
  5. Includes proper documentation

Suggested Project Ideas

  • AI Study/Research Assistant — Document processing, semantic search, RAG Q&A
  • AI Content Creation Suite — Article generation, image creation, SEO optimization
  • AI Business Automation — Email classification, meeting summaries, action items
  • AI Code Learning Companion — Code explanation, exercises, review & feedback
  • Domain-Specific AI Agent — Specialized RAG + custom tools for any domain
  • Your Own Idea! — Propose a custom project

Expected Time: 10–15 hours

Resources

Required Software

Python Libraries

  • requests
  • openai or anthropic
  • python-dotenv
  • pandas
  • matplotlib / numpy
  • flask or gradio

API Keys Needed

  • OpenAI API or Anthropic Claude
  • OpenWeatherMap API
  • Hugging Face (optional)

Grading Criteria

  • Functionality — 80%
  • Code Quality — 10%
  • Completion — 10%