Is Assistants file Search a RAG?

From reading the documentation the Assistant’s file search seems to be doing RAG but the word is never used anywhere. Is it a RAG or is there something I’m missing?

Is the Generation of the AI Augmented by Retrieval?

No, the language generation has no clue about uploaded and chunked documents. It has to invoke a search function, not knowing when the search function is useful except for some boilerplate text.

Contemplate example code from the initial RAG paper.

from transformers import RagTokenizer, RagRetriever, RagTokenForGeneration

tokenizer = RagTokenizer.from_pretrained("facebook/rag-token-nq")
retriever = RagRetriever.from_pretrained("facebook/rag-token-nq", index_name="exact", use_dummy_dataset=True)
model = RagTokenForGeneration.from_pretrained("facebook/rag-token-nq", retriever=retriever)

input_dict = tokenizer.prepare_seq2seq_batch("who holds the record in 100m freestyle", return_tensors="pt") 

generated = model.generate(input_ids=input_dict["input_ids"]) 
print(tokenizer.batch_decode(generated, skip_special_tokens=True)[0])

Notice in example code, the creation of “model” is an AI that takes direct input, automatically enhanced.

Nothing on the output of the pretrained model on the right says “output a function”…

So: if the context or weights are amended before the first language output token is generated, then the generation is augmented.

Automatic vector database messages, automatically added from embeddings semantic search, based on the input, meets my qualification. Not training or instruction of a callable search function.

1 Like