AGENTIC AI WITH PYTHON & LANGCHAIN
Introduction to Python
- What’s Python?
- Installation and Working with Python
- Understanding Python variables
- Data Types in Python
- Python basic – Operators
- Understanding Python blocks
Python Program Flow Control
- Conditional blocks using if, else and elif
- Simple for loops in Python
- For loop using ranges, string, list and dictionaries
- Use of while loops in Python
- Use of match for multiple conditions
Python Functions, Modules and Packages
- Function Basics
- Scope Rules in Functions
- More on Global (And "Nonlocal"), Return and Argument Passing
- Special Argument Matching Modes
- Organizing Python projects into modules
- Importing own module and packages as well as external modules
- Powerful Lambda function in Python
Python String, List and Dictionary Manipulations
- Building blocks of Python programs
- Understanding string in-built methods
- List manipulation using in-built methods
- Dictionary manipulation
- Programming using string, list, and dictionary in-built functions
Python File Operation
- Creating and Manipulating Files
- Understanding read functions: read(), readline(), and readlines()
- Understanding write functions: write() and writelines()
- Programming using text files, csv files and json data
Python Object Oriented Programming – OOPs
- Concept of class, object, and instances
- Constructor, class attributes, and destructors
- Real-time use of class in live projects
- Inheritance, overlapping, and overloading operators
- Abstraction and Overriding
Python Exception Handling
- Exception Basics
- Exception Catching Modes
- Avoiding code break using exception handling
- Safe guarding file operation using exception handling
- Handling and helping developer with error code
Python Database Interaction
- MySQL Database connection using Python
- Creating and searching tables
- CRUD operations in Python
- CSV to Database
- Database to CSV
- Programming using database connections
Python FastAPI Development
- Introduction to FastAPI
- Running FastAPI with Uvicorn
- Creating FastAPI Application
- Routing & HTTP Methods
- Introduction to Pydantic
- Request Body Validation
- Response Models
- Validation Rule
- OpenAPI & Swagger Documentation
- Introduction to ORM & SQLAlchemy
- Database Connection
- Models & Tables
- CRUD Operations
Python Data Structures
- Introduction to Data Structures in Python
- Stacks and Queues implementation using List
- Implementation of LinkedList
- Sorting Algorithms
- Searching Algorithms
Introduction to Generative AI & Agentic AI
- Generative AI vs Traditional AI - AI, ML, Deep Learning and LLM overview
- LLMs vs AI Agents vs Agentic AI - Agent architecture
- Agent workflow
- Basic Python setup for Agentic AI
LLM Integration with Python
- LLM API architecture
- Gemini API integration
- Local LLMs using Ollama
- Hugging Face models
Prompt Engineering for Agents
- Prompt structure - System prompts
- Role/persona prompting
- Few-shot prompting
- Context injection
- Structured outputs - JSON outputs
- Prompt templates - Preventing hallucinations
LangChain Fundamentals
- Introduction to LangChain - LangChain architecture
- LCEL — LangChain Expression Language
- RunnableSequence – RunnablePassthrough - RunnableLambda
- Building a basic LangChain application
LangChain Components & Structured Output
- ChatPromptTemplate
- MessagesPlaceholder
- Pydantic structured output
- Debugging LangChain applications
Tools & Function Calling
- What are tools?
- Tool descriptions - Tool arguments - Tool execution
- Tools Types
- Tool selection by LLM
Agentic Loop & ReAct
- What is an Agent?
- Agent vs Chain
- ReAct architecture
- Tool selection - Tool execution - Agent response
- Creating agents using LangChain
- Agent loop implementation using native Python
- Building a simple tool-using agent
- Agent execution flow and debugging
Agent Memory
- Why agents need memory
- Conversation history - Short-term memory
- Session-based memory
- Persistent memory concepts
- SQLite/PostgreSQL for persistent state
RAG Fundamentals
- What is RAG?
- RAG architecture
- Vector databases
- Context injection
- RAG vs Fine-tuning
RAG with LangChain
- LangChain document loaders
- PDF/Text/CSV loaders
- Vector stores
- Building a basic LangChain RAG pipeline
RAG-Based Agent
- Retriever as a tool
- Agent + RAG architecture
- Query transformation
- Context management
- Handling irrelevant documents
- Reducing hallucination
Fundamentals
- LangChain vs LangGraph
- Graph-based agent architecture
- State management
- Building a simple LangGraph workflow
Stateful Agents with LangGraph
- Agent state - Messages state
- Agent loops
- Persistence
- Human approval flow
- Building a tool-calling LangGraph agent
Multi-Agent Architecture
- Single-agent vs multi-agent systems
- Multi-agent architecture
- LangGraph multi-agent workflow
- Introduction to CrewAI - AutoGen - Pydantic AI
Model Context Protocol (MCP)
- What is MCP?
- MCP architecture
- Creating an MCP server using Python
- Connecting agents with MCP
- MCP and external data/tools
Production Agent Engineering
- Agent failure scenarios
- Guardrails
- Validations
- Preventing unsafe tool execution
- Human-in-the-loop
Agent Deployment, Monitoring & Project
- Agent observability
- LangSmith
- FastAPI integration
- Exposing an agent through REST API
- Introduction to durable execution
- Production checklist