A comprehensive collection of my learning journey, code implementations, experiments, and projects built while studying Generative AI, LangChain, RAG, AI Agents, and Ollama.
This repository contains hands-on implementations of concepts covered throughout the LangChain and Ollama learning path, ranging from prompt engineering to building end-to-end AI agents.
- What is LangChain?
- Why LangChain for LLM Applications?
- LangChain Architecture
- Core Building Blocks
- Models
- Prompts
- Chains
- Tools
- Agents
- Memory
- Retrievers
- OpenAI Models
- Groq Models
- Local LLMs
- Chat Models
- Embedding Models
- Prompt Templates
- Chat Prompt Templates
- Dynamic Prompt Construction
- Prompt Chaining
- JSON Output Generation
- Pydantic Output Parsing
- Schema Validation
- String Parsers
- JSON Parsers
- Custom Output Parsers
- LLM Chains
- Sequential Chains
- Runnable Chains
- Chain Composition
- RunnableSequence
- RunnableParallel
- RunnableLambda
- Advanced Runnable Workflows
- Document Loaders
- PDF Loading
- Web Page Loading
- CSV Processing
- Text Extraction
- Character Text Splitter
- Recursive Text Splitter
- Token-Based Splitting
- Chunking Strategies
- Embeddings
- Similarity Search
- Vector Storage
- Semantic Search
- Basic Retrieval
- Context Retrieval
- Similarity Search Retrieval
- Advanced Retrieval Techniques
- RAG Fundamentals
- Knowledge Retrieval
- Context Injection
- End-to-End RAG Pipelines
- YouTube Chatbot
- PDF Question Answering
- Document Search Systems
- Knowledge Base Assistants
- Custom Tools
- Built-in LangChain Tools
- Search Tools
- API Integration
- Tool Calling Workflows
- ReAct Agents
- Tool-Using Agents
- Agent Executors
- Multi-Step Reasoning
- End-to-End Agent Development
- Running Local LLMs
- Model Management
- Local AI Development
- LangChain + Ollama Integration
- Python
- LangChain
- Ollama
- OpenAI API
- Groq API
- ChromaDB
- FAISS
- HuggingFace Embeddings
- Pydantic
- Streamlit
- Jupyter Notebook
├── 01_Introduction/
├── 02_LangChain_Components/
├── 03_Models/
├── 04_Prompts/
├── 05_Structured_Output/
├── 06_Output_Parsers/
├── 07_Chains/
├── 08_Runnables/
├── 09_Document_Loaders/
├── 10_Text_Splitters/
├── 11_Vector_Stores/
├── 12_Retrievers/
├── 13_RAG/
├── 14_Projects/
├── 15_Tools/
├── 16_Tool_Calling/
├── 17_AI_Agents/
├── 18_Ollama/
└── README.md
git clone https://github.com/your-username/repository-name.git
cd repository-namepython -m venv venvWindows:
venv\Scripts\activateLinux/Mac:
source venv/bin/activatepip install -r requirements.txtCreate a .env file:
OPENAI_API_KEY=your_api_key
GROQ_API_KEY=your_api_keyThe .env file is ignored using .gitignore and should never be pushed to GitHub.
By completing the implementations in this repository, I learned:
- Prompt Engineering
- LLM Application Development
- Retrieval-Augmented Generation (RAG)
- AI Agent Design
- Tool Calling
- Vector Databases
- Semantic Search
- Local LLM Deployment using Ollama
- Production-Oriented LangChain Workflows
Learning resources and inspiration from the excellent Generative AI and LangChain tutorials by CampusX.
If you find this repository useful, consider giving it a star.