19 / 28
Как построить production corpus ingestion pipeline для RAG: parsing, normalization, embedding batching, incremental updates?
Corpus ingestion = pipeline parsing → normalization → chunking → embedding → upsert, желательно идемпотентный (content-hash + upsert) и incremental (Watermark/CDC: эмбеддим только изменённые документы). Parsing: Unstructured.io, PyMuPDF, Apache Tika, LangChain document loaders, AWS Textract / Reducto для OCR. Normalization: detect encoding (chardet), language (fasttext/langdetect), dedup по sha256(content). Embedding: батчи по 100–512 текстов с retry/backoff на rate limits. Orchestration: Airflow / Dagster / Prefect для DAG-ов, или простой cron + queue (BullMQ / RQ) для маленьких корпусов.