Можешь объяснить, как работает Retrieval-Augmented Generation (RAG) в Python приложениях и описать роль векторных баз данных в этом процессе? — ДейлиПреп