This course provides a comprehensive introduction to vector databases, starting with core concepts and their growing role in modern data management. You’ll learn the differences between traditional and vector databases, explore leading solutions like Chroma and Pinecone, and gain hands-on experience setting up environments, creating and querying databases, and applying similarity measures such as cosine similarity and Euclidean distance. The course also covers integration with Large Language Models (LLMs) and LangChain, guiding you through workflows from document loading to response generation. By the end, you’ll have both a strong conceptual foundation and practical skills to choose, implement, and leverage vector databases for advanced data management tasks.
Who should take this course?
This course is ideal for developers, data scientists, AI/ML practitioners, and database professionals who want to understand how vector databases work and how they power modern AI applications. It’s well-suited for those with a basic understanding of data structures or machine learning who are interested in semantic search, recommendation systems, embeddings, and large-scale AI-driven solutions. Whether you’re building intelligent applications, working with unstructured data, or exploring the backbone of generative AI systems, this course will equip you with the knowledge to effectively use vector databases.
What you will learn
Grasp the fundamental concepts and applications of vector databases.
Analyze the differences between traditional and vector databases.
Set up and use vector databases like Chroma and Pinecone.
Apply vector similarity measures for advanced data analysis.
Use Large Language Models and frameworks like LangChain with vector databases.
Understand the fundamentals of vector databases and their importance in data management.
Course Outline
Introduction
Introduction - Course prerequisites and structure
Vector Databases Deep Dive - Fundamentals
Introduction to Vector Databases - Full Overview
Why Vector Databases
Vector Databases - Benefits and Advantages
Traditional vs Vector Databases - Differences
Traditional vs Vector Databases - Limitations and Challenges
Vector Databases & Embeddings - Full Work Flow
Embeddings vs Vectors – Differences
Vector Databases - How They Work and Advantages
Vector Databases Use Cases
Vector and Traditional Databases - Summary
Vector Databases Solutions - Top 5 Vector Databases
The Top 5 Vector Databases - Overview
Understanding LLM (Large Language Models)
Building Vector Databases - Hands-on - Chroma Vector Database
Development Environment Setup
Setup VS-Code, Python and OpenAI API Key
Chroma Database workflow
Creating a Chroma Vector Database & Adding Documents & Querying them
Looping Through the Results & Showing Similarity Search Results
Chroma Default Embedding Function
Chroma Vector Database - Persisting Data and Saving
Creating an OpenAI Embeddings - Raw without Chroma
Using OpenAI's Embedding API to Create Embedding in Chroma
Vector Databases Metrics and Data Structures
Section Summary
Common Measures of Vector Similarity
Vector Similarity Deep Dive - Cosine Similarity
Euclidean Distance - L2 Norm
Dot Product
Section Summary
Vector Databases and LLM - the Full Workflow
Vector Databases and LLM - Deep Dive
Loading all Documents
Generating Embeddings from Documents & Insert them into Chroma Database
Getting the Relevant Chunks when Given a Query
Using OpenAI LLM to Generate Response - Full Flow
Section Summary
Vector Databases & the Langchain Framework
The LangChain Framework - Quick Overview
Getting started with LangChain and the OpenAIChat Wrapper
Loading Documents with LangChain Document Loader
Splitting the Documents with LangChain
Creating a Chroma Vector Database with LangChain
Getting the Response from the Model - the Complete Workflow
Pinecone Vector Database
Pinecone - Deep Dive
Create Pinecone Account & Dashboard Overview
Creating our Pinecone Index in Code
Upserting and Querying our Pinecone Index
Querying Pinecone Manually in the Dashboard
Using LangChain Pinecone Wrapper - Create Index and Upsert & Similarity Search
Creating a Retriever and Chain Objects & a LLM to get a Response
Clean up - Delete Pinecone Index
Challenge - Explore other Vector Database
Section Summary
Choosing the Right Vector Database
Choosing the Right Vector Database - Comparison Tables