class RAGSystem: def __init__(self, vector_db, llm): self.embedder = EmbeddingModel() self.retriever = VectorRetriever(vector_db) self.generator = ResponseGenerator(llm) def process_query(self, query): # Single-pass pipeline query_embedding = self.embedder.encode(query) relevant_docs = self.retriever.search(query_embedding) response = self.generator.generate(query, relevant_docs) return response __ __