|
--- |
|
datasets: |
|
- chromadb/paul_graham_essay |
|
language: |
|
- en |
|
tags: |
|
- RAG |
|
- Retrieval Augmented Generation |
|
- llama-index |
|
--- |
|
# Summary: |
|
Retrieval Augmented Generation (RAG) is a technique to specialize a language model with a specific knowledge domain by feeding in relevant data so that it can give better answers. |
|
# How does RAG works? |
|
1. Ready/ Preprocess your input data i.e. tokenization & vectorization |
|
2. Feed the processed data to the Language Model. |
|
3. Indexing the stored data that matches the context of the query. |
|
# Implementing RAG with llama-index |
|
### 1. Load relevant data and build an index |
|
from llama_index import VectorStoreIndex, SimpleDirectoryReader |
|
documents = SimpleDirectoryReader("data").load_data() |
|
index = VectorStoreIndex.from_documents(documents) |
|
### 2. Query your data |
|
query_engine = index.as_query_engine() |
|
response = query_engine.query("What did the author do growing up?") |
|
print(response) |
|
# My application of RAG on ChatGPT |
|
Check RAG.ipynb |