ಹಂತ ೧: ಡಾಕ್ಯುಮೆಂಟ್ ಇಂಜೆಸ್ಟಿನ್
ಹೆಚ್ಚಿನ RAG ವ್ಯವಸ್ಥೆಗಳು ಪ್ರಾರಂಭವಾಗುವ ಮೊದಲೇ ವಿಫಲವಾಗುತ್ತವೆ.
RAG ವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ಮಿಸುವುದು ಸರಳ ಎಂದು ನೀವು ಭಾವಿಸಬಹುದು. ಬಳಕೆದಾರರು ಒಂದು PDF ಅನ್ನು ಅಪ್ಲೋಡ್ ಮಾಡುತ್ತಾರೆ, ನೀವು ಎಂಬೆಡ್ಡಿಂಗ್ಗಳನ್ನು (embeddings) ರಚಿಸುತ್ತೀರಿ ಮತ್ತು ನಿಮಗೆ ಉತ್ತರಗಳು ಸಿಗುತ್ತವೆ.
ಅದು ಒಂದು ತಪ್ಪು.
ಅಪ್ಲೋಡ್ ಬಟನ್ ಮತ್ತು ವೆಕ್ಟರ್ ಡೇಟಾಬೇಸ್ ನಡುವೆ 15 ನಿರ್ಣಾಯಕ ಹಂತಗಳಿವೆ. ನೀವು ಒಂದನ್ನು ಬಿಟ್ಟರೂ, ನಿಮ್ಮ ವ್ಯವಸ್ಥೆಯು ತಪ್ಪು ಉತ್ತರಗಳನ್ನು ನೀಡುತ್ತದೆ ಅಥವಾ ನಿಮ್ಮ ಹಣವನ್ನು ವ್ಯರ್ಥ ಮಾಡುತ್ತದೆ.
ಡಾಕ್ಯುಮೆಂಟ್ ಇಂಜೆಸ್ಟಿನ್ಗಾಗಿ ಇಲ್ಲಿದೆ ಪ್ರೊಡಕ್ಷನ್-ಗ್ರೇಡ್ ರೋಡ್ಮ್ಯಾಪ್:
• ಫೈಲ್ ಹ್ಯಾಶಿಂಗ್ (File Hashing): ಎಂದಿಗೂ ಫೈಲ್ ಹೆಸರನ್ನು ಹ್ಯಾಶ್ ಮಾಡಬೇಡಿ. ನಿಜವಾದ ಫೈಲ್ ವಿಷಯವನ್ನು (content) ಹ್ಯಾಶ್ ಮಾಡಿ. ಯಾರಾದರೂ ಫೈಲ್ ಹೆಸರನ್ನು ಬದಲಾಯಿಸಿದರೂ, ನಿಮ್ಮ ವ್ಯವಸ್ಥೆಯು ಒಂದೇ ಫೈಲ್ ಅನ್ನು ಎರಡು ಬಾರಿ ಪ್ರೊಸೆಸ್ ಮಾಡದಂತೆ ಇದು ತಡೆಯುತ್ತದೆ.
• ಸ್ಮಾರ್ಟ್ ಪಾರ್ಸಿಂಗ್ (Smart Parsing): ಕೆಲಸಕ್ಕೆ ಸರಿಯಾದ ಸಾಧನವನ್ನು ಬಳಸಿ.
- ಸರಳ ಪಠ್ಯ: pdf-parse (ಉಚಿತ)
- ಮಿಶ್ರಿತ ವಿಷಯ: Unstructured (ಸಮತೋಲಿತ)
- ಸಂಕೀರ್ಣ ಟೇಬಲ್ಗಳು/ಲೇಔಟ್ಗಳು: LlamaParse (ಉತ್ತಮ ಗುಣಮಟ್ಟ)
- ಎಂಟರ್ಪ್ರೈಸ್ ಫಾರ್ಮ್ಗಳು: Azure Document Intelligence (ಸ್ಕ್ಯಾನ್ಗಳಿಗೆ ಅತ್ಯುತ್ತಮ)
• ಪಠ್ಯ ಕ್ಲೀನಿಂಗ್ (Text Cleaning): ಅನಗತ್ಯ ವಿಷಯಗಳನ್ನು ತೆಗೆದುಹಾಕಿ. ಹೆಡರ್ಗಳು, ಫೂಟರ್ಗಳು, ವಾಟರ್ಮಾರ್ಕ್ಗಳು ಮತ್ತು ಪುಟ ಸಂಖ್ಯೆಗಳು ಗೊಂದಲವನ್ನು (noise) ಉಂಟುಮಾಡುತ್ತವೆ. ನೀವು ಪ್ರತಿ ಪುಟದಲ್ಲೂ "Confidential" ಎಂಬ ಪದವನ್ನು ಎಂಬೆಡ್ ಮಾಡಿದರೆ, ನಿಮ್ಮ AI ಪ್ರತಿಯೊಂದು ಉತ್ತರವೂ ರಹಸ್ಯ ಎಂದು ಭಾವಿಸುತ್ತದೆ.
• ಮೆಟಾಡೇಟಾ ಎಕ್ಸ್ಟ್ರಾಕ್ಷನ್ (Metadata Extraction): ಇಲಾಖೆ, ವಿಭಾಗ ಅಥವಾ ಆವೃತ್ತಿಯಂತಹ ಸಂದರ್ಭವನ್ನು (context) ಸೇರಿಸಿ. ಇದು ಎಲ್ಲವನ್ನೂ ಹುಡುಕದೆ ನಿಮ್ಮ ವ್ಯವಸ್ಥೆಯು ಸರಿಯಾದ ದಾಖಲೆಯನ್ನು ಕಂಡುಹಿಡಿಯಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
• ಸ್ಮಾರ್ಟ್ ಚಂಕಿಂಗ್ (Smart Chunking): ಇದು ಅತ್ಯಂತ ಪ್ರಮುಖವಾದ ಭಾಗವಾಗಿದೆ.
- ಗಾತ್ರ: 1000 ರಿಂದ 1500 ಟೋಕನ್ಗಳನ್ನು ಗುರಿಯಾಗಿಡಿ.
- ಓವರ್ಲ್ಯಾಪ್ (Overlap): ಸಂದರ್ಭವನ್ನು ಉಳಿಸಿಕೊಳ್ಳಲು 200 ಟೋಕನ್ಗಳ ಓವರ್ಲ್ಯಾಪ್ ಬಳಸಿ.
- ಗಡಿಗಳು (Boundaries): ವಾಕ್ಯವನ್ನು ಎಂದಿಗೂ ಮಧ್ಯದಲ್ಲಿ ಕತ್ತರಿಸಬೇಡಿ.
• ಚಂಕ್ ಹ್ಯಾಶಿಂಗ್ ಮತ್ತು ಡಿಡೂಪ್ಲಿಕೇಶನ್ (Chunk Hashing and Deduplication): ಪ್ರತಿ ಚಂಕ್ ಅನ್ನು ಹ್ಯಾಶ್ ಮಾಡಿ. ಫೈಲ್ ಬದಲಾದಾಗ, ಹೊಸ ಹ್ಯಾಶ್ಗಳನ್ನು ಹಳೆಯವುಗಳೊಂದಿಗೆ ಹೋಲಿಸಿ.
• ಇನ್ಕ್ರಿಮೆಂಟಲ್ ಇಂಜೆಸ್ಟಿನ್ (Incremental Ingestion): ಎಲ್ಲವನ್ನೂ ಮತ್ತೆ ಎಂಬೆಡ್ ಮಾಡಬೇಡಿ. 1000 ಪುಟಗಳ ದಾಖಲೆಯಲ್ಲಿ ಕೇವಲ ಒಂದು ಪುಟ ಬದಲಾಗಿದ್ದರೆ, ಆ ಒಂದು ಹೊಸ ಚಂಕ್ ಅನ್ನು ಮಾತ್ರ ಎಂಬೆಡ್ ಮಾಡಿ. ಇದು API ವೆಚ್ಚದಲ್ಲಿ ನಿಮ್ಮ ಹಣವನ್ನು ದೊಡ್ಡ ಪ್ರಮಾಣದಲ್ಲಿ ಉಳಿಸುತ್ತದೆ.
ಒಂದು ಹವ್ಯಾಸದ ಪ್ರಾಜೆಕ್ಟ್ ಮತ್ತು ಪ್ರೊಡಕ್ಷನ್ ವ್ಯವಸ್ಥೆಯ ನಡುವಿನ ವ್ಯತ್ಯಾಸವೆಂದರೆ ಎಂಬೆಡ್ಡಿಂಗ್ ಹಂತಕ್ಕೆ ಮೊದಲು ನೀವು ಮಾಡುವ ಕೆಲಸ.
ಒಂದು ಸಾಮಾನ್ಯ ವ್ಯವಸ್ಥೆಯು ಪ್ರತಿ ಬಾರಿಯೂ ಎಲ್ಲವನ್ನೂ ಮತ್ತೆ ಎಂಬೆಡ್ ಮಾಡುತ್ತದೆ. ಒಂದು ಸ್ಮಾರ್ಟ್ ವ್ಯವಸ್ಥೆಯು ಬದಲಾದದ್ದನ್ನು ಮಾತ್ರ ಪ್ರೊಸೆಸ್ ಮಾಡುತ್ತದೆ.
ಕೇವಲ ಅಸ್ತವ್ಯಸ್ತವಾಗಿ ನಿರ್ಮಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಿ. ಒಂದು ಭದ್ರವಾದ ಅಡಿಪಾಯವನ್ನು ನಿರ್ಮಿಸಿ.
Source: https://dev.to/surajrkhonde/phase-1-document-ingestion-the-hidden-complexity-before-embeddings-4d32
Optional learning community: https://t.me/GyaanSetuAi
