നിങ്ങളുടെ RAG സിസ്റ്റം എന്തുകൊണ്ട് Hallucinate ചെയ്യുന്നു

നിങ്ങളുടെ RAG സിസ്റ്റത്തിന് 34% retrieval accuracy മാത്രമേയുള്ളൂ. നിങ്ങൾ എല്ലാ ട്യൂട്ടോറിയലുകളും പിന്തുടർന്നു. ശരിയായ ലൈബ്രറികൾ ഉപയോഗിച്ചു. ഒരു ബ്ലോഗ് പോസ്റ്റിൽ നിന്ന് chunk size തിരഞ്ഞെടുത്തു. എന്നിട്ടും, സിസ്റ്റം പരാജയപ്പെടുന്നു.

ഇതൊരു tooling പ്രശ്നമല്ല. ഇതൊരു fundamentals പ്രശ്നമാണ്.

അവയ്ക്ക് താഴെയുള്ള പാളികളെക്കുറിച്ച് (layers) മനസ്സിലാക്കാതെ നിങ്ങൾ ലൈബ്രറികൾ കൂട്ടിവെക്കുമ്പോൾ, നിങ്ങൾ ഒരു abstraction debt സൃഷ്ടിക്കുന്നു. നിങ്ങൾക്ക് വേഗത ലഭിക്കുന്നുണ്ടെങ്കിലും debug ചെയ്യാനുള്ള കഴിവ് നഷ്ടപ്പെടുന്നു. നിങ്ങൾ ഒരു black box ആണ് നിർമ്മിക്കുന്നത്.

നിങ്ങളുടെ RAG pipeline ശരിയാക്കാൻ, നിങ്ങൾ മൂന്ന് പാളികളിൽ (layers) വൈദഗ്ധ്യം നേടണം:

  1. Chunking Strategy Chunk size എന്നത് ഒരു semantic തീരുമാനമാണ്. നിങ്ങളുടെ chunks 512 tokens ആണെങ്കിൽ, നിങ്ങൾ paragraphs ആണ് retrieve ചെയ്യുന്നത്. നിങ്ങളുടെ ചോദ്യങ്ങൾക്ക് പല paragraphs-കളിലായി ആശയങ്ങളെ ബന്ധിപ്പിക്കേണ്ടതുണ്ടെങ്കിൽ, നിങ്ങളുടെ chunks വളരെ ചെറുതാണ്. chunks-കൾക്കിടയിൽ എത്രത്തോളം context ഒഴുകണം എന്ന് നിങ്ങൾ തീരുമാനിക്കണം.

  2. Embedding Models Dense embeddings അർത്ഥം പിടിച്ചെടുക്കുന്നുണ്ടെങ്കിലും കൃത്യമായ syntax നഷ്ടപ്പെട്ടേക്കാം. ഒരു മോഡൽ "error 403", "error 404" എന്നിവയെ ഏകദേശം ഒന്നുതന്നെയായി കണക്കാക്കിയേക്കാം. നിങ്ങളുടെ മോഡൽ എന്താണ് പിടിച്ചെടുക്കുന്നത് എന്ന് നിങ്ങൾ അറിഞ്ഞിരിക്കണം. ഒരു legal contract-ന് ഒരു code repository-യെക്കാൾ വ്യത്യസ്തമായ embeddings ആവശ്യമാണ്.

  3. Retrieval vs. Recall Vector search പ്രസക്തമാകാൻ സാധ്യതയുള്ളതെല്ലാം കണ്ടെത്തുന്നു.