A chatbot script that uses retrieval-augmented generation (RAG).
The RAG component is based on this tutorial: https://python.langchain.com/docs/use_cases/question_answering/
In addition to the RAG component, the script uses contextual question reformulation to behave in a conversational manner.