Skip to content

sinanuozdemir/oreilly-retrieval-augmented-gen-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Retrieval-Augmented Generation (RAG) and LLMs

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 is 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!

Prerequisites

  • 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.

Installation

  1. Clone this repository to your local machine.
  2. Ensure you have set the following api keyes:

You're all set to explore the notebooks!

Usage - Jupyter Notebooks

This project contains several Jupyter notebooks each focusing on a specific topic:

  1. RAG - Retrieval: An introduction to vector databases, embeddings, and retrieval

  2. RAG - Generation: Building a RAG chatbot using our semantic search retrieval system

  3. Advanced - GraphRAG - A simple introduction to GraphRAG (RAG using a knowledge graph) using Neo4J, Cohere's Re-Rank, GPT-4o, and a touch of Langchain

  4. Advanced - Multimodal Retrieval - Using a CLIP model to build an image search system

References

  1. Open-source models built for RAG - Command-R by Cohere

  2. Neo4J's GraphRAG Manifesto

  3. A quick-start guide to GraphRAG with LangChain - inspired part of my GraphRAG code

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Book time with me on Intro!

If you have questions, I'm available on Intro :)