RAG ਲਈ ਵੱਖ-ਵੱਖ ਚੰਕਿੰਗ (Chunking) ਵਿਧੀਆਂ
Large Language Models ਵਿੱਚ ਟੋਕਨ ਦੀਆਂ ਸੀਮਾਵਾਂ ਹੁੰਦੀਆਂ ਹਨ। ਇਸ ਨੂੰ ਠੀਕ ਕਰਨ ਲਈ, ਤੁਸੀਂ ਚੰਕਿੰਗ (chunking) ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ। ਚੰਕਿੰਗ ਲੰਬੇ ਟੈਕਸਟ ਨੂੰ ਛੋਟੇ ਟੁਕੜਿਆਂ ਵਿੱਚ ਵੰਡ ਦਿੰਦੀ ਹੈ। ਇਹ ਤੁਹਾਡੇ ਮਾਡਲ ਨੂੰ ਮੈਮੋਰੀ ਖਤਮ ਹੋਏ ਬਿਨਾਂ ਡੇਟਾ ਪ੍ਰੋਸੈਸ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦੀ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ Retrieval-Augmented Generation (RAG) ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤਾਂ ਚੰਕਿੰਗ ਬਹੁਤ ਮਹੱਤਵਪੂਰਨ ਹੈ। RAG ਮਾਡਲਾਂ ਨੂੰ hallucinations (ਭੁਲੇਖੇ) ਤੋਂ ਬਚਣ ਲਈ ਸੱਚਾਈ ਦਾ ਇੱਕ ਸਰੋਤ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਤੁਸੀਂ ਟੈਕਸਟ ਨੂੰ ਨੰਬਰਾਂ ਵਿੱਚ ਬਦਲਦੇ ਹੋ ਜਿਨ੍ਹਾਂ ਨੂੰ embeddings ਕਿਹਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਇੱਕ vector database ਵਿੱਚ ਸਟੋਰ ਕਰਦੇ ਹੋ।
ਤੁਹਾਡੀ ਖੋਜ (search) ਦੀ ਗੁਣਵੱਤਾ ਤੁਹਾਡੇ ਚੰਕਸ (chunks) 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ। ਜੇਕਰ ਚੰਕਸ ਬਹੁਤ ਵੱਡੇ ਜਾਂ ਬਹੁਤ ਛੋਟੇ ਹਨ, ਤਾਂ AI ਸਹੀ ਉੱਤਰ ਲੱਭਣ ਵਿੱਚ ਅਸਫਲ ਰਹਿੰਦਾ ਹੈ।
ਤੁਹਾਡੇ ਡੇਟਾ ਨੂੰ ਚੰਕ ਕਰਨ ਦੇ ਪੰਜ ਤਰੀਕੇ ਇੱਥੇ ਹਨ:
Fixed-Size Chunking ਇਹ ਵਿਧੀ ਟੈਕਸਟ ਨੂੰ ਅੱਖਰਾਂ ਦੀ ਇੱਕ ਨਿਸ਼ਚਿਤ ਸੰਖਿਆ 'ਤੇ ਵੰਡਦੀ ਹੈ। ਇਹ ਤੇਜ਼ ਅਤੇ ਸਸਤੀ ਹੈ। ਹਾਲਾਂਕਿ, ਇਹ ਸੰਦਰਭ (context) ਪ੍ਰਤੀ ਅਣਜਾਣ ਹੁੰਦੀ ਹੈ। ਇਹ ਅਕਸਰ ਵਾਕਾਂ ਨੂੰ ਅੱਧ ਵਿਚਕਾਰੋਂ ਕੱਟ ਦਿੰਦੀ ਹੈ।
Recursive Character Splitting ਇਹ ਉਦਯੋਗ ਦਾ ਮਿਆਰੀ ਤਰੀਕਾ (industry standard) ਹੈ। ਇਹ ਨਵੀਂ ਲਾਈਨ (newlines) ਅਤੇ ਸਪੇਸ ਵਰਗੇ ਸੈਪਰੇਟਰਾਂ ਦੀ ਇੱਕ ਲੜੀ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ। ਇਹ ਸਬੰਧਤ ਵਾਕਾਂ ਨੂੰ ਇੱਕ ਹੀ ਬਲਾਕ ਵਿੱਚ ਰੱਖਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ। ਆਮ ਲੇਖਾਂ ਲਈ ਇਸਦੀ ਵਰਤੋਂ ਕਰੋ।
Document-Specific Chunking ਇਹ ਵਿਧੀ ਤੁਹਾਡੀ ਫਾਈਲ ਦੀ ਬਣਤਰ ਨੂੰ ਦੇਖਦੀ ਹੈ। ਇਹ ਸੀਮਾਵਾਂ ਲੱਭਣ ਲਈ HTML ਵਿੱਚ ਟੈਗਸ ਜਾਂ Markdown ਵਿੱਚ ਹੈਡਰਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। ਇਹ ਕੋਡ ਜਾਂ ਖਾਸ ਹਿੱਸਿਆਂ ਨੂੰ ਅਟੁੱਟ ਰੱਖਦੀ ਹੈ।
Semantic Chunking ਇਹ ਵਿਧੀ ਅੱਖਰਾਂ ਦੀ ਬਜਾਏ ਅਰਥਾਂ 'ਤੇ ਧਿਆਨ ਦਿੰਦੀ ਹੈ। ਇਹ ਉਹਨਾਂ ਵਾਕਾਂ ਨੂੰ ਇਕੱਠਾ ਕਰਦੀ ਹੈ ਜੋ ਇੱਕੋ ਵਿਸ਼ੇ ਬਾਰੇ ਚਰਚਾ ਕਰਦੇ ਹਨ। ਇਹ ਅਜਿਹੇ ਚੰਕਸ ਬਣਾਉਂਦੀ ਹੈ ਜੋ ਇੱਕੋ ਵਿਸ਼ੇ 'ਤੇ ਟਿਕੇ ਰਹਿੰਦੇ ਹਨ। ਇਸ ਨੂੰ ਕੰਮ ਕਰਨ ਲਈ ਇੱਕ embedding ਮਾਡਲ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
Agentic Chunking ਇੱਕ AI agent ਇਹ ਫੈਸਲਾ ਕਰਨ ਲਈ ਟੈਕਸਟ ਨੂੰ ਪੜ੍ਹਦਾ ਹੈ ਕਿ ਇਸਨੂੰ ਕਿੱਥੇ ਵੰਡਣਾ ਹੈ। Agent ਅੱਗੇ ਵਧਣ ਤੋਂ ਪਹਿਲਾਂ ਪੁੱਛਦਾ ਹੈ ਕਿ ਕੀ ਕੋਈ ਵਿਚਾਰ ਪੂਰਾ ਹੋ ਗਿਆ ਹੈ। ਇਹ ਸਭ ਤੋਂ ਸਹੀ ਵਿਧੀ ਹੈ ਪਰ ਸਭ ਤੋਂ ਹੌਲੀ ਅਤੇ ਮਹਿੰਗੀ ਵੀ ਹੈ।
ਤੇਜ਼ ਤੁਲਨਾ:
• Fixed-Size: ਪ੍ਰੋਟੋਟਾਈਪਸ ਲਈ ਵਧੀਆ। ਬਹੁਤ ਆਸਾਨ। $0 ਲਾਗਤ। • Recursive: ਆਮ ਟੈਕਸਟ ਲਈ ਵਧੀਆ। ਆਸਾਨ। $0 ਲਾਗਤ। • Document: ਕੋਡ ਜਾਂ HTML ਲਈ ਵਧੀਆ। ਦਰਮਿਆਨੀ ਮੁਸ਼ਕਲ। $0 ਲਾਗਤ। • Semantic: ਡੂੰਘੀ ਖੋਜ ਲਈ ਵਧੀਆ। ਮੁਸ਼ਕਲ। ਘੱਟ ਲਾਗਤ। • Agentic: ਉੱਚ ਸ਼ੁੱਧਤਾ ਲਈ ਵਧੀਆ। ਬਹੁਤ ਮੁਸ਼ਕਲ। ਉੱਚ ਲਾਗਤ।
ਸਹੀ ਰਣਨੀਤੀ ਦੀ ਚੋਣ ਕਰਨ ਨਾਲ ਤੁਹਾਡੇ AI ਦੇ ਨਤੀਜੇ ਬਦਲ ਜਾਂਦੇ ਹਨ। ਮੈਂ ਜਲਦੀ ਹੀ ਇਹਨਾਂ ਵਿਧੀਆਂ ਬਾਰੇ ਹੋਰ ਵੇਰਵੇ ਸਾਂਝੇ ਕਰਾਂਗਾ।
ਸਰੋਤ: https://dev.to/yashbhoskar/different-chunking-methods-for-rag-j4g
ਵਿਕਲਪਿਕ ਸਿੱਖਣ ਕਮਿਊਨਿਟੀ: https://t.me/GyaanSetuAi
