Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Яку роль відіграє ETL у конвеєрі прийому даних RAG


Яку роль відіграє ETL у конвеєрі прийому даних RAG


Виходячи з результатів пошуку, ETL (Extract, Transform, Load) відіграє вирішальну роль у конвеєрі прийому даних для систем доповненої генерації пошуку (RAG):

1. Вилучення. Першим кроком у конвеєрі прийому даних RAG є вилучення даних із різноманітних джерел, таких як бази даних, сервери, центри обробки даних та онлайн-джерела. Це включає структуровані та неструктуровані дані, як-от текстові файли, файли CSV і документи PDF. LangChain надає різні завантажувачі документів для завантаження даних із різних джерел.

2. Перетворення: потім витягнуті дані проходять етап попередньої обробки, який включає:
- Поділ тексту: довгий текст розбивається на менші сегменти відповідно до максимальної довжини маркера моделі вбудовування.
- Токенізація: текст розбивається на окремі токени, наприклад слова чи фрази, для створення більш ефективного та точного представлення.

3. Завантажити: Попередньо оброблені дані потім перетворюються на вектори великої розмірності, які представляють текст у числовому форматі. Ці вбудовування зберігаються в спеціалізованих векторних базах даних, таких як Milvus, які оптимізовані для операцій швидкого пошуку та вилучення.

Процес ETL має вирішальне значення для конвеєра прийому даних RAG, оскільки він забезпечує збір, перетворення та завантаження даних у систему таким чином, щоб забезпечити ефективний пошук та інтеграцію з мовними моделями. Дотримуючись цього структурованого підходу, система RAG може ефективно використовувати зовнішні джерела даних для розширення знань про мовні моделі та надання більш точних і контекстних відповідей на запити користувачів.

Підводячи підсумок, процес ETL є фундаментальним компонентом конвеєра прийому даних RAG, оскільки він дозволяє системі приймати та готувати великі обсяги різноманітних даних для використання в процесі генерації розширеного пошуку.

цитати:
[1] https://www.crossml.com/build-a-rag-data-ingestion-pipeline/
[2] https://aws.amazon.com/blogs/big-data/build-a-rag-data-ingestion-pipeline-for-large-scale-ml-workloads/
[3] https://docs.zenml.io/user-guide/llmops-guide/rag-with-zenml/data-ingestion
[4] https://developer.nvidia.com/blog/rag-101-demystifying-retrieval-augmented-generation-pipelines/
[5] https://mallahyari.github.io/rag-ebook/03_prepare_data.html