Description: The chain in generator.py is synchronous, meaning it handles one network request at a time (to the vector DB, Google Search, and the LLM). This can be slow. The task is to refactor the ...