## Document loader в RAG:
Document loader – это "адаптер" между сырым источником данных (сайт, PDF, Notion, GitHub, YouTube и т.д.) и стандартным форматом `Document`, с которым дальше работает вся RAG-цепочка.
В LangChain все лоадеры реализуют общий интерфейс `BaseLoader` и, по сути, дают две операции
- `load()` – загрузить документы как есть;
- `loadAndSplit()` – загрузить и **сразу нарезать** на мелкие куски.
На уровне лоадера ты уже можешь контролировать качество сырья.
`TextLoader` - загружает любые обычные текстовые файлы (.txt, .md, .log и т. д.) и просто читает их содержимое как единый сплошной текст.
Он не анализирует структуру документа, не делит его на страницы и не восстанавливает форматирование – результатом всегда будет один Document с текстом, считанным "как есть".
`PyPDFLoader` - предназначен специально для PDF-файлов. Он извлекает текст постранично и возвращает список документов, где каждая страница – отдельный Document с метаданными страницы.
Это удобнее для RAG, но качество извлечения зависит от структуры PDF: если PDF – скан или сложное форматирование, текст может извлекаться не идеально.
`PyPDFDirectoryLoader` - загружает все PDF-файлы из указанной директории, постранично извлекает текст из каждого PDF и возвращает множество Document-объектов (один на страницу), автоматически добавляя метаданные о файле и номере страницы, что делает его удобным для массовой индексации PDF в RAG.
`WebBaseLoader` - загружает веб-страницы по URL и автоматически извлекает из них текстовое содержимое, преобразуя HTML в удобный формат Document для последующей обработки в RAG.
Он отправляет HTTP-запрос, получает HTML, очищает его от тегов, может ограничивать парсинг определёнными элементами (через BeautifulSoup), и отдаёт чистый текст вместе с метаданными, такими как URL.
## Какие ещё бывают лоадеры:
LangChain делит лоадеры на **file loaders** и **web loaders**, плюс отдельные интеграции с облаком, продуктами и поиском.
**Основные категории**: https://docs.langchain.com/oss/javascript/integrations/document_loaders#by-category .