AI အမေးအဖြေစီးရီး 11: RAG ကို ဘယ်လိုချိန်ညှိမလဲ။
RAG ၏ ချိန်ညှိခြင်းသည် အဆင့်တစ်ခုတည်းကို ပြုပြင်ခြင်းမဟုတ်ဘဲ လမ်းကြောင်းတစ်ခုလုံးကို အကောင်းဆုံးဖြစ်အောင် ပြုလုပ်ခြင်း ဖြစ်သည်။ အောက်ပါတို့တွင် ဒေတာအညွှန်းဘက်၊ ရှာဖွေရေးဘက်၊ ထုတ်လုပ်ရေးဘက်၊ အကဲဖြတ်ရေးဘက် ဟူသော ရှုထောင့်လေးခုမှ စနစ်ကျသော ချိန်ညှိမှုဗျူဟာများကို ဖော်ပြထားပြီး အင်တာဗျူးတွင် ပြောနိုင်သော လက်တွေ့အတွေ့အကြုံများကိုလည်း ထည့်သွင်းထားပါသည်။
၁။ ဒေတာအညွှန်းဘက်ချိန်ညှိခြင်း ("အသိပညာဒေတာဘေ့စ်" အရည်အသွေးမြှင့်တင်ခြင်း)
၎င်းသည် အလွယ်တကူ လျစ်လျူရှုခံရသော်လည်း ရလဒ်အမြန်ဆုံးရနိုင်သော နေရာဖြစ်သည်။
| ချိန်ညှိချက် | ပြဿနာလက္ခဏာ | လုပ်ဆောင်နည်း | အကျိုးသက်ရောက်မှုညွှန်းကိန်း |
|---|---|---|---|
| စာတမ်းခွဲခြမ်းစိတ်ဖြာခြင်း | PDF ရှိ ဇယားများ၊ စီးဆင်းပုံများကို လျစ်လျူရှုခြင်း၊ စာသားများ ရောထွေးခြင်း သို့မဟုတ် အစီအစဉ်မမှန်ခြင်း။ | ပိုမိုကောင်းမွန်သော ခွဲခြမ်းစိတ်ဖြာသည့် library (ဥပမာ unstructured၊ pypdf ၏ layout ထိန်းသိမ်းမှုမုဒ်) ကိုသုံးပါ။ ဇယားများအတွက် pandas ဖြင့်ထုတ်ယူပြီး Markdown သို့ပြောင်းပါ။ |
ပြန်လည်ရယူနှုန်း +5~15% |
| စာသားပိုင်းခြားအရွယ်အစား | chunk သေးလွန်းပါက ဆက်စပ်အခြေအနေ ပျောက်ဆုံးခြင်း (ဥပမာ "သူ့၏ယခုနှစ်ဝင်ငွေတိုးတက်မှု" ရှိ "သူ့" ကိုရည်ညွှန်းမှု ပျောက်ဆုံးခြင်း)။ chunk ကြီးလွန်းပါက ရှာဖွေမှုတွင် ဆူညံသံများများလာခြင်း။ | chunk size အမျိုးမျိုး (256/512/768 token) ကိုစမ်းသပ်ပါ၊ overlap 10~20% ထားပါ။ ရှည်လျားသောစာတမ်းများအတွက် သတ်မှတ်ထားသော အလျားထက် အဓိပ္ပါယ်အရ (စာပိုဒ်/ခေါင်းစဉ်) ဖြင့် ပိုင်းပါ။ | ထိမှန်နှုန်း / သစ္စာရှိမှု |
| မက်တာဒေတာထည့်ခြင်း | ဆက်စပ်သောစာပိုဒ်ကိုရှာတွေ့သော်လည်း အရင်းအမြစ် သို့မဟုတ် အချိန်ကို ခြေရာခံမရခြင်း၊ သို့မဟုတ် နယ်ပယ်အလိုက် စစ်ထုတ်ရန် လိုအပ်ခြင်း။ | chunk တစ်ခုစီအတွက် မက်တာဒေတာထည့်ပါ: source (ဖိုင်အမည်/URL)၊ timestamp၊ page_num၊ doc_type။ ရှာဖွေသည့်အခါ filter (ဥပမာ doc_type == 'legal') သုံးပါ။ |
စစ်ထုတ်မှုတိကျမှု |
| embedding မော်ဒယ်ရွေးချယ်ခြင်း | ယေဘူယျ embedding သည် ဒေါင်လိုက်နယ်ပယ် (ဆေးပညာ၊ ကုဒ်၊ ဥပဒေ) တွင် စွမ်းဆောင်ရည်ညံ့ဖျင်းခြင်း။ | နယ်ပယ်အလိုက် ပြုပြင်ထားသော မော်ဒယ်များ (BGE‑large‑zh၊ GTE‑Qwen2‑7B‑instruct) ကိုသုံးပါ။ သို့မဟုတ် ကိုယ်ပိုင် embedding မော်ဒယ်ကို (triplet loss ဖြင့်) ပြုပြင်ပါ။ | ရှာဖွေမှု MRR@10 +10~20% |
၂။ ရှာဖွေရေးဘက်ချိန်ညှိခြင်း ("စာအုပ်လှန်ခြင်း" ကိုပိုမိုတိကျအောင်လုပ်ခြင်း)
ရှာဖွေခြင်းသည် LLM သို့ပေးသော "ကိုးကားစရာ" အရည်အသွေးကို ဆုံးဖြတ်သည်။
| ချိန်ညှိချက် | ပြဿနာလက္ခဏာ | လုပ်ဆောင်နည်း | အကျိုးသက်ရောက်မှု |
|---|---|---|---|
| ရောနှောရှာဖွေခြင်း | vector ရှာဖွေမှုသည် တိကျသောဝေါဟာရ (ဥပမာ ထုတ်ကုန်မော်ဒယ် ABC-123) ကို မကိုက်ညီနိုင်။ keyword ရှာဖွေမှုသည် ကြောင်းတူသံကွဲများကို နားမလည်နိုင်။ |
vector ရှာဖွေမှု (အဓိပ္ပါယ်) နှင့် BM25 (keyword) ကို တစ်ပြိုင်တည်းသုံးပါ။ အလေးချိန် (ဥပမာ 0.7vector + 0.3BM25) သို့မဟုတ် rerank ဖြင့်ပေါင်းပါ။ | ပြန်လည်ရယူနှုန်း +10~25% |
| ပြန်လည်အဆင့်သတ်မှတ်ခြင်း (Rerank) | vector ရှာဖွေမှုမှ ပထမဆုံးရလဒ်အနည်းငယ်သည် အမြဲတမ်းအသင့်တော်ဆုံးမဟုတ်ပါ။ ၁၀ ခုမြောက်ရလဒ်သည် အကောင်းဆုံးဖြစ်နိုင်။ | cross‑encoder မော်ဒယ် (ဥပမာ BGE‑reranker-v2၊ Cohere Rerank) ဖြင့် ကိုယ်စားလှယ်အစု (ဥပမာ ပထမ ၂၀) ကို ပြန်လည်အမှတ်ပေးပြီး top‑K ယူပါ။ |
ထိမှန်နှုန်း သိသိသာသာတိုးတက်ခြင်း (အထူးသဖြင့် top‑1) |
| query ပြန်ရေးခြင်း | သုံးစွဲသူ၏မေးခွန်းမှုန်ဝါးခြင်း သို့မဟုတ် စကားဝိုင်းအများအပြားတွင် ရည်ညွှန်းမှုမရှင်းလင်းခြင်း ("၎င်း၏စျေးနှုန်းကော?")။ | LLM ဖြင့် မူလမေးခွန်းကို ရှာဖွေရန်သင့်တော်သောပုံစံသို့ ပြန်ရေးပါ (ဥပမာ "iPhone 15 ၏စျေးနှုန်းကဘယ်လောက်လဲ?")။ သို့မဟုတ် စကားဝိုင်းမှတ်တမ်းကိုသုံး၍ ဖြည့်စွက်ပါ။ | ပြန်လည်ရယူနှုန်း +5~15% |
| HyDE | သုံးစွဲသူမေးခွန်း တိုလွန်း သို့မဟုတ် စိတ္တဇလွန်းခြင်း (ဥပမာ "အလင်းဓာတ်ပြုခြင်းအကြောင်းပြောပါ")။ တိုက်ရိုက်ရှာဖွေမှု ညံ့ဖျင်းခြင်း။ | ဦးစွာ LLM ကို ယူဆချက်အဖြေတစ်ခု ထုတ်လုပ်စေပါ။ ထို့နောက် ထိုအဖြေဖြင့် စာတမ်းကိုရှာဖွေပါ။ | ပွင့်လင်းဒိုမိန်းအတွက် သင့်တော်သော်လည်း အချက်အလက်တိကျသောမေးခွန်းများအတွက် မသင့်တော် |
| ရှာဖွေအရေအတွက် Top‑K ချိန်ညှိခြင်း | K သေးလွန်းပါက အဓိကအချက်အလက်များကို လွဲချော်နိုင်။ K ကြီးလွန်းပါက token သုံးစွဲမှုနှင့် ဆူညံသံတိုးလာခြင်း။ | K=3/5/10 ကိုစမ်းသပ်ပါ။ ပြန်လည်ရယူနှုန်းနှင့် အဖြေသစ္စာရှိမှုအကြား ချိန်ခွင်လျှာကိုကြည့်ပါ။ | ထိရောက်မှုနှင့် အကျိုးသက်ရောက်မှု trade‑off |
၃။ ထုတ်လုပ်ရေးဘက်ချိန်ညှိခြင်း (LLM ကို ကိုးကားစရာများကို ကောင်းစွာအသုံးပြုစေခြင်း)
ရှာဖွေမှုတိကျသော်လည်း prompt ကောင်းကောင်းမရေးထား သို့မဟုတ် မော်ဒယ်မကောင်းပါက အလုပ်မဖြစ်ပါ။
| ချိန်ညှိချက် | ပြဿနာလက္ခဏာ | လုပ်ဆောင်နည်း | အကျိုးသက်ရောက်မှု |
|---|---|---|---|
| prompt engineering | LLM သည် ရှာဖွေတွေ့ရှိထားသော အကြောင်းအရာကို လျစ်လျူရှုခြင်း သို့မဟုတ် လုပ်ကြံဖန်တီးခြင်း။ | ရှင်းလင်းသောညွှန်ကြားချက်: "အောက်ပါကိုးကားစရာများကိုသာ အခြေခံ၍ မေးခွန်းကိုဖြေပါ။ အကြောင်းအရာမလုံလောက်ပါက သို့မဟုတ် မသက်ဆိုင်ပါက 'လုံလောက်သောသတင်းအချက်အလက်မရှိပါ' ဟုဖြေပါ။" few‑shot examples ပါထည့်ကာ အရင်းအမြစ်ကိုးကားပုံကို ပြသပါ။ | သစ္စာရှိမှု +20~40% |
| အကြောင်းအရာချုံ့ခြင်း | ရှာဖွေတွေ့ရှိထားသော အကြောင်းအရာရှည်လွန်းခြင်း (model ၏ context window ထက်ကျော်လွန်ခြင်း) သို့မဟုတ် အများစုမှာ ဆူညံသံဖြစ်ခြင်း။ | LLMLingua သို့မဟုတ် selective context ချုံ့မှုကိုသုံးပါ။ အသင့်တော်ဆုံးဝါကျများကိုသာ ထိန်းသိမ်းပြီးမှ LLM သို့ပို့ပါ။ |
သတင်းအချက်အလက်ဆုံးရှုံးနိုင်ခြေကို လျှော့ချခြင်း |
| LLM မော်ဒယ်အဆင့်မြှင့်ခြင်း | သေးငယ်သောမော်ဒယ် (7B) သည် ရှုပ်ထွေးသောဆင်ခြင်မှုကို မလုပ်ဆောင်နိုင်၊ သို့မဟုတ် ရှည်လျားသော context ကို မမှတ်မိနိုင်။ | ပိုမိုအားကောင်းသောမော်ဒယ် (GPT‑4o၊ Claude 3.5 Sonnet၊ Qwen2.5‑72B) သို့ပြောင်းပါ။ | ဆင်ခြင်မှုတိကျမှု သိသိသာသာတိုးတက်ခြင်း |
| streaming နှင့် ကိုးကားချက်များ | သုံးစွဲသူသည် အဖြေ၏ယုံကြည်စိတ်ချရမှုကို အတည်မပြုနိုင်။ | ထုတ်လုပ်သည့်အခါ LLM ကို [citation:1] ထုတ်လုပ်စေပြီး ရှာဖွေတွေ့ရှိထားသောစာတမ်းအမှတ်နှင့် ဆက်စပ်ပါ။ backend တွင် မူရင်းလင့်ခ်ကိုပါ ထည့်ပါ။ |
သုံးစွဲသူယုံကြည်မှု + စမ်းသပ်ပြုပြင်နိုင်မှု |
| ငြင်းပယ်ဖြေကြားမှု ချိန်ညှိခြင်း | မော်ဒယ်သည် မဖြေသင့်သောအခါ လုပ်ကြံဖန်တီးခြင်း၊ သို့မဟုတ် ဖြေသင့်သောအခါ မသိဘူးဟုပြောခြင်း။ | တူညီမှုအတိုင်းအတာ သတ်မှတ်ပါ။ ရှာဖွေတွေ့ရှိထားသော top‑1 chunk နှင့် မေးခွန်း၏ cosine ဆင်တူမှုသည် 0.7 အောက်ရှိပါက LLM ကို "အကြောင်းအရာမသက်ဆိုင်ပါ" ဟုပြောရန် ညွှန်ကြားပါ။ | အာရုံခံလှည့်ဖြားမှုနှုန်း လျှော့ချခြင်း |
၄။ အကဲဖြတ်ခြင်းနှင့် ထပ်ခါတလဲလဲလုပ်ခြင်းဘက် (ဘယ်ကိုချိန်ညှိရမည်ကို သိရှိခြင်း)
တိုင်းတာမှုမရှိပါက အကောင်းဆုံးဖြစ်အောင် မလုပ်နိုင်ပါ။
| ချိန်ညှိချက် | လုပ်ဆောင်နည်း | ညွှန်းကိန်း |
|---|---|---|
| အကဲဖြတ်အစုတည်ဆောက်ခြင်း | တကယ့်သုံးစွဲသူမေးခွန်း 100~300 ခု + စံအဖြေများ + မှန်ကန်သော ရှာဖွေထားသောစာတမ်း ID များ ပြင်ဆင်ပါ။ | မတူညီသောအခက်အခဲအဆင့်၊ မတူညီသောရည်ရွယ်ချက်များ ပါဝင်ပါစေ။ |
| အလိုအလျောက်အကဲဖြတ်ခြင်း | RAGAS (Faithfulness, Answer Relevance, Context Recall) သို့မဟုတ် TruLens ကိုသုံးပါ။ | အဓိကညွှန်းကိန်းသုံးခု: သစ္စာရှိမှု၊ အဖြေဆက်စပ်မှု၊ အကြောင်းအရာပြန်လည်ရယူနှုန်း။ |
| လူကိုယ်တိုင်အကဲဖြတ်ခြင်း | အပတ်စဉ် bad case 20 ခုကို ကျပန်းစစ်ဆေးပါ။ အမှားအမျိုးအစား (ရှာဖွေမှုပျက်ကွက်ခြင်း / ထုတ်လုပ်မှုအမှား / အသိပညာဒေတာဘေ့စ်မရှိခြင်း) ကိုခွဲခြမ်းစိတ်ဖြာပါ။ | ဦးစားပေးပြုပြင်ရန် အစီအစဉ်ဆွဲပါ။ |
| A/B စမ်းသပ်ခြင်း | ထုတ်လုပ်မှုပတ်ဝန်းကျင်တွင် မတူညီသော ရှာဖွေမှုဗျူဟာများ (ဥပမာ BM25 vs ရောနှောရှာဖွေခြင်း) ကို အုပ်စုခွဲစမ်းသပ်ပါ။ | အွန်လိုင်းညွှန်းကိန်းများ: သုံးစွဲသူကျေနပ်မှု၊ အဖြေမရှိသည့်နှုန်း။ |
၅။ အင်တာဗျူးတွင် ပြောနိုင်သော "လက်တွေ့အတွေ့အကြုံများ" (အပိုမှတ်များ)
"ကျွန်ုပ်တာဝန်ယူထားသော RAG ပရောဂျက်တွင် အစပိုင်း၌ baseline ထိမှန်နှုန်းသည် 67% သာရှိခဲ့သည်။ ကျွန်ုပ်သည် သုံးခုကိုလုပ်ဆောင်ခဲ့သည်-
၁။ ပိုင်းခြားမှုကို ပုံသေ 1024 မှ ပြောင်းလဲနိုင်သော အဓိပ္ပါယ်အရ ပိုင်းခြားခြင်း (ခေါင်းစဉ်+စာပိုဒ်အတိုင်း) ပြုလုပ်သောအခါ ထိမှန်နှုန်း 74% သို့တက်ခဲ့သည်။
၂။ ရောနှောရှာဖွေခြင်း (vector + BM25) နှင့် သေးငယ်သော rerank မော်ဒယ်တစ်ခု ထည့်ခြင်း ဖြင့် ထိမှန်နှုန်း 83% သို့တက်ခဲ့သည်။
၃။ prompt ကိုအကောင်းဆုံးဖြစ်အောင်လုပ်ပြီး[ဆက်စပ်သတင်းအချက်အလက်မတွေ့ရှိပါ]ကိုအတင်းအကျပ်တောင်းဆိုခြင်း ဖြင့် အာရုံခံလှည့်ဖြားမှုနှုန်း 22% မှ 5% အောက်သို့ကျဆင်းခဲ့သည်။ထို့အပြင် ကျွန်ုပ်တို့သည် စဉ်ဆက်မပြတ်အကဲဖြတ်သည့် လုပ်ငန်းစဉ်တစ်ခုကို တည်ဆောက်ခဲ့ပြီး ပြောင်းလဲမှုတစ်ခုစီမတိုင်မီ မေးခွန်း 200 ခုအတွက် RAGAS အမှတ်များကို ယူကာ ဆုတ်ယုတ်မှုမရှိကြောင်း သေချာစေခဲ့သည်။"
နောက်ဆုံးအနှစ်ချုပ်: RAG ချိန်ညှိမှု လမ်းပြမြေပုံ အပြည့်အစုံ
ဒေတာအလွှာ ─→ စာတမ်းသန့်ရှင်းရေး၊ ပိုင်းခြားမှုအကောင်းဆုံးဖြစ်အောင်၊ မက်တာဒေတာမြှင့်တင်ခြင်း၊ နယ်ပယ်အတွက် embedding
ရှာဖွေရေးအလွှာ ─→ ရောနှောရှာဖွေခြင်း၊ rerank၊ query ပြန်ရေးခြင်း၊ HyDE၊ Top-K ချိန်ညှိခြင်း
ထုတ်လုပ်ရေးအလွှာ ─→ prompt အားကောင်းအောင်၊ ညွှန်ကြားချက်လိုအပ်ချက်များ၊ ချုံ့ခြင်း၊ ကိုးကားခြင်း၊ ငြင်းပယ်မှုအတိုင်းအတာ
အကဲဖြတ်ရေးအလွှာ ─→ အကဲဖြတ်အစု၊ RAGAS၊ လူကိုယ်တိုင်ခွဲခြမ်းစိတ်ဖြာခြင်း၊ A/B စမ်းသပ်ခြင်း
评论
暂无已展示的评论。
发表评论(匿名)