Welcome to the "Retrieval-Augmented Generation (RAG) and LLMs" code repository! In this repo, we begin to understand how to augment large language models with real-time data for dynamic, context-aware apps.
Much of the code in these sessions will be featured in the 2nd edition of my latest book on LLMs:
so if you're itching for more, check it out and please leave a rating/review to tell me what you thought :)
For even more, check out my Expert Playlist!
- Basic to Intermediate Python Skills: A solid understanding of Python is essential, as it will be the primary programming language used for demonstrating RAG integration with LLMs and handling real-time data.
- Foundational Knowledge in Machine Learning and LLMs: Familiarity with basic machine learning concepts is crucial. Additionally, having some prior knowledge of Large Language Models will be beneficial, as we will delve into more advanced topics related to augmenting these models with RAG.
- Introductory Experience with NLP and AI Models: A basic grasp of Natural Language Processing (NLP) and general AI model concepts will aid in understanding how RAG enhances the capabilities of these technologies in dynamic and evolving data environments.
- Clone this repository to your local machine.
- Ensure you have set the following api keyes:
- OpenAI key
- Pinecone Key
- Anthropic Key
- Cohere Key
- Pongo Key
- Huggingface Key (if you want to deploy llama)
You're all set to explore the notebooks!
This project contains several Jupyter notebooks each focusing on a specific topic:
-
RAG - Retrieval: An introduction to vector databases, embeddings, and retrieval
- Advanced Semantic Search: A more advanced notebook on semantic search, cross-encoders, and fine-tuning
- Advanced - Fine-tuning Embeddings: Fine-tuning embedding engines using custom preference data
-
RAG - Generation: Building a RAG chatbot using our semantic search retrieval system
- First Steps with Agents: A natural expansion from RAG to automated AI Agents
- Open-source models built for RAG - Command-R by Cohere
- Example model on HuggingFace
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
If you have questions, I'm available on Intro :)