|
from data.load_dataset import load_data |
|
from retriever.chunk_documents import chunk_documents |
|
from retriever.embed_documents import embed_documents |
|
from retriever.retrieve_documents import retrieve_top_k_documents |
|
from generator.initialize_llm import initialize_llm |
|
from generator.generate_response import generate_response |
|
|
|
def main(): |
|
|
|
dataset = load_data() |
|
|
|
|
|
documents = chunk_documents(dataset) |
|
|
|
|
|
vector_store = embed_documents(documents) |
|
|
|
|
|
llm = initialize_llm() |
|
|
|
|
|
sample_question = dataset[0]['question'] |
|
|
|
|
|
relevant_docs = retrieve_top_k_documents(vector_store, sample_question, top_k=5) |
|
|
|
|
|
response, source_docs = generate_response(llm, vector_store, sample_question) |
|
|
|
|
|
print(f"Response: {response}") |
|
print(f"Source Documents: {source_docs}") |
|
|
|
if __name__ == "__main__": |
|
main() |