Google ရဲ့ FunctionGemma ဟာ မကြာသေးမီက ထွက်ရှိလာတဲ့ မော်ဒယ်အသေးလေးတွေထဲမှာ အစိတ်ဝင်စားစရာအကောင်းဆုံး တစ်ခုပါ။ Parameter သန်း ၂၇၀ (270M) သာ ပါဝင်ပြီး၊ တာဝန်တစ်ခုတည်းကိုသာ ထမ်းဆောင်ပါတယ် — လူပြောစကားကို ပရိုဂရမ်နားလည်တဲ့ function call အဖြစ် ပြောင်းလဲပေးဖို့ပါ။ Laptop, Raspberry Pi, ဖုန်းလေးပေါ်မှာတောင် အလုပ်လုပ်နိုင်လောက်အောင် သေးငယ်ပါတယ်။ ဒါပေမဲ့ စတင်အသုံးပြုသူ အတော်များများ လွဲမှားတတ်တဲ့ အချက်တစ်ခု ရှိပါတယ် — ဒီမော်ဒယ်ကို fine-tune ပြုလုပ်ပြီးမှ အသုံးပြုဖို့ Google က ရည်ရွယ်ဒီဇိုင်းထုတ်ထားတာပါ။ ဒါဆိုရင် မူရင်းအတိုင်း ဘာတွေ လုပ်နိုင်ပြီး၊ ဘယ်အချိန်ကျမှ fine-tune က မဖြစ်မနေ လိုအပ်လာသလဲ။ တစ်ဆင့်ချင်း လေ့လာကြည့်ကြရအောင်။
FunctionGemma ဆိုတာ ဘာလဲ
FunctionGemma ဟာ Google ရဲ့ Gemma 3 270M မော်ဒယ်ကို function calling အတွက် အထူးလေ့ကျင့်ပေးထားတဲ့ ဗားရှင်းတစ်ခုပါ။ “မီးဓာတ်မီး ဖွင့်ပေး” ၊ “နေ့လယ်စာအတွက် ပြက္ခဒိန်မှာ အချိန်းအချက် မှတ်ပေး” လိုမျိုး တောင်းဆိုချက်တွေကို တကယ်အလုပ်လုပ်တဲ့ API call အဖြစ် ပြောင်းပေးပါတယ်။ အဓိက အင်္ဂါရပ်တွေက —
- Parameter သန်း ၂၇၀ — ယနေ့ခေတ် စံနှုန်းအရ အလွန်သေးငယ်တယ် (မော်ဒယ် “အသေး” အများစုက ၁ ဘီလီယံ (1B) အထက်)
- Context 32K token — tool schema ကြီးကြီးတွေနဲ့ အဆက်အစပ်ရှိတဲ့ စကားဝိုင်းအတွက် လုံလောက်တယ်
- စာသားသီးသန့် — ပုံ ဒါမှမဟုတ် အသံ ထည့်သွင်းလို့ မရ
- မှတ်ဉာဏ်သုံးစွဲမှု အလွန်နည်း — အပြည့်အဝ တိကျမှုနဲ့ဆိုရင်တောင် CPU ပေါ်မှာ RAM ၅၅၀ MB ခန့်နဲ့ အလုပ်လုပ်လို့ — စက်ပစ္စည်း နီးပါးတိုင်းမှာ သုံးနိုင်ပါတယ်
- Chat မော်ဒယ် မဟုတ်ဘူး — Google က ရှင်းရှင်းလင်းလင်း ပြောထားတယ်: FunctionGemma ဟာ သာမန်စကားဝိုင်းအတွက် မဟုတ်ပါဘူး။ စကားပြောဖော် မဟုတ်ဘဲ လမ်းညွှန်ပေးသူ (router) ပါ။
ဒီမော်ဒယ်ရဲ့ ဒီဇိုင်းအတွေးအမြင်ကို နားလည်ထားသင့်ပါတယ်။ မော်ဒယ်ကြီးတစ်ခုတည်းနဲ့ အရာရာ လုပ်ခိုင်းမယ့်အစား — FunctionGemma ဟာ လူပြောစကားနဲ့ သင့်ဆော့ဖ်ဝဲက လုပ်ဆောင်ချက်တွေ ကြားမှာ လျင်မြန်ပြီး ကိုယ်ရေးကိုယ်တာလုံခြုံတဲ့ (private) ဘာသာပြန်တစ်ဦးလို ဆက်သွယ်ပေးပါတယ်။ Google က ဒါကို နမူနာ app နှစ်ခုနဲ့ ပြသခဲ့တယ်။ တစ်ခုက Tiny Garden — အသံနဲ့ ကစားရတဲ့ ဂိမ်းတစ်ခုဖြစ်ပြီး “အပေါ်ဆုံးတန်းမှာ နေကြာပန်း စိုက်ပေး” လိုမျိုး အမိန့်တွေကို ဂိမ်းအတွင်း လုပ်ဆောင်ချက်တွေအဖြစ် ခွဲထုတ်ပေးတယ်။ နောက်တစ်ခုက Mobile Actions — Android စက်တွင်း စနစ်ကိရိယာတွေကို လှုပ်ရှားစေတဲ့ agent တစ်ခုပါ။ နှစ်ခုစလုံး ဖုန်းပေါ်မှာ အင်တာနက်မလိုဘဲ (offline) အပြည့်အဝ အလုပ်လုပ်ပါတယ်။
Fine-tune မလုပ်ဘဲ ရနိုင်တာတွေ
အခြေခံမော်ဒယ် (functiongemma-270m-it) ဟာ လုပ်ငန်းအမျိုးအစား တစ်ခုအတွက်ဆိုရင် မူရင်းအတိုင်း တကယ် အသုံးဝင်ပါတယ်။ ဘာမှ မလေ့ကျင့်ရသေးဘဲ (zero-shot) အောက်ပါတို့ကို လုပ်နိုင်ပါတယ် —
၁။ ရှင်းလင်းတဲ့ schema နဲ့ ရိုးရှင်းတဲ့ တစ်ဆင့်တည်း tool call တွေ ကိုင်တွယ်နိုင်တယ်။ နာမည်ရှင်းရှင်းပေးထားတဲ့၊ parameter ရိုးရိုးရှင်းရှင်းရှိတဲ့ function အနည်းငယ် (get_weather(city), set_timer(minutes)) ကို ပေးလိုက်ရင် — အခြေခံမော်ဒယ်က ရိုးရှင်းတဲ့ တောင်းဆိုချက်တွေကို မှန်ကန်တဲ့ call ဆီ ချိတ်ဆက်ပေးနိုင်ပါတယ်။ Developer အများစုက ဒီနည်းအတိုင်းပဲ ပုံကြမ်း (prototype) ရေးဆွဲဖို့ မူရင်းမော်ဒယ်ကို သုံးကြပါတယ်။
၂။ function ကို ဘယ်အချိန် မခေါ်သင့်ဘူးဆိုတာ ဆုံးဖြတ်နိုင်တယ်။ Model card အရ zero-shot မှာ BFCL Irrelevance ရမှတ် ၇၀.၆ ရှိပါတယ်။ ဆိုလိုတာက — အသုံးပြုသူရဲ့ တောင်းဆိုချက်ဟာ ရရှိနိုင်တဲ့ tool တစ်ခုနဲ့မှ မကိုက်ညီတဲ့အခါ၊ မရှိတဲ့ call တစ်ခုကို ဟန်ဆောင်ဖန်တီး (hallucinate) မလုပ်ဘဲ အဲဒါကို မှတ်မိနိုင်စွမ်း အတော်အသင့် ရှိတယ်လို့ ဆိုလိုတာပါ။
၃။ ပုံကြမ်းရေးဆွဲရာမှာ အခြေခံအဖြစ် သုံးနိုင်တယ်။ ပုံမှန် chat-template နည်းလမ်း (tokenizer ရဲ့ chat template ကနေ tool schema ကို ထည့်ပေးတာ) ကို သုံးထားတဲ့အတွက် — ရှိပြီးသား လုပ်ငန်းစဉ်ထဲ တစ်နေ့တာအတွင်း ချိတ်ဆက်ပြီး၊ လေ့ကျင့်ရေး (training) အတွက် အရင်းအနှီးမမြှုပ်နှံခင် အခြေခံမော်ဒယ်က ဘယ်လောက်အထိ လုပ်နိုင်လဲ ကြည့်လို့ရပါတယ်။
Zero-shot အတွက် လက်တွေ့ကျတဲ့ အကြံပြုချက်များ —
- မော်ဒယ်ကို လေ့ကျင့်စဉ်က သုံးခဲ့တဲ့ system prompt အတိအကျ သုံးပါ — “You are a model that can do function calling with the following functions” ။ ဒါကနေ သွေဖည်လိုက်ရင် ရလဒ်ဟာ သိသိသာသာ ညံ့သွားပါတယ်။
- Temperature ကို အလွန်နိမ့်နိမ့် (၀.၁ ခန့်) ထားပါ။ ဖန်တီးဆန်းသစ်မှု မဟုတ်ဘဲ တိကျသေချာတဲ့ လမ်းညွှန်မှုကို လိုချင်တာပါ။
- Tool အရေအတွက်ကို နည်းအောင်၊ parameter နာမည်တွေကို ဖတ်ရုံနဲ့ နားလည်နိုင်အောင် ထားပါ။ function တွေ နည်းပြီး ရှင်းလေ zero-shot စွမ်းဆောင်ရည် ကောင်းလေပါ။
- ရလဒ်ကို code ထဲမှာ သင့် schema နဲ့ အမြဲ တိုက်စစ်ပါ။ ဒီမော်ဒယ်အရွယ်မှာ ပုံစံမမှန်တဲ့ ဒါမှမဟုတ် မှားတဲ့ call တွေ ဖြစ်တတ်ပါတယ် — အဲဒါကို အသုံးပြုသူဆီ မရောက်ခင် သင့် application က ဖမ်းဆီးထိန်းချုပ်သင့်ပါတယ်။
Fine-tune က ဘယ်အချိန် မဖြစ်မနေ လိုအပ်လာသလဲ
Google ကိုယ်တိုင် ထုတ်ပြန်ထားတဲ့ benchmark က ရိုးသားတဲ့ အခြေအနေကို ပြပါတယ်။ Mobile Actions လုပ်ငန်းမှာ အခြေခံမော်ဒယ်ဟာ တိကျမှု ၅၈% ရရှိခဲ့ပြီး — အဲဒီလုပ်ငန်းအတွက်သီးသန့် dataset နဲ့ fine-tune လုပ်လိုက်တဲ့အခါ ၈၅% အထိ တက်လာပါတယ်။ အဲဒီ ကွာဟချက်ဟာ မော်ဒယ်အသေးလေးတွေရဲ့ သဘောသဘာဝ တစ်ခုလုံးကို ကိုယ်စားပြုပါတယ်။ Parameter သန်း ၂၇၀ မော်ဒယ်မှာ မရေရာမှုတွေကို ဆုံးဖြတ်ဖို့ ယေဘုယျ ဆင်ခြင်နိုင်စွမ်း မရှိတဲ့အတွက် — အထူးပြုလေ့ကျင့်ပေးမှသာ တန်ဖိုးထွက်လာတာပါ။
အောက်ပါ အခြေအနေတွေမှာ fine-tune လုပ်ဖို့ ကြိုတင်စီစဉ်သင့်ပါတယ် —
- သင့် function schema က နယ်ပယ်သီးသန့် (domain-specific) ဖြစ်နေရင်။ ကိုယ်ပိုင် app လုပ်ဆောင်ချက်များ၊ ရှားပါးတဲ့ API များ၊ ဒါမှမဟုတ် ယေဘုယျ နမူနာတွေနဲ့ မတူတဲ့ ထူးခြားတဲ့ parameter ဖွဲ့စည်းပုံများ။
- တစ်ဆင့်ထက်ပိုတဲ့ (multi-turn) အပြုအမူ လိုအပ်ရင်။ အခြေအနေကို တစ်ဆင့်ပြီးတစ်ဆင့် မှတ်သားပြီး call တွေကို ဆက်တိုက်ချိတ်ဆက်ရတဲ့ စကားဝိုင်းမျိုး။
- ထုတ်လုပ်မှုအဆင့် (production) တည်ငြိမ်မှု လိုအပ်ရင်။ Google ရဲ့ ရပ်တည်ချက် ရှင်းပါတယ်: FunctionGemma ဟာ zero-shot ရဲ့ မတည်ငြိမ်မှုထက် အထူးပြုမော်ဒယ်ရဲ့ တိကျသေချာမှုကို လိုချင်တဲ့ အဖွဲ့တွေအတွက်ပါ။
- အင်္ဂလိပ်မဟုတ်တဲ့ ဘာသာစကား ဒါမှမဟုတ် ဘာသာစကားရောနှောတဲ့ input နဲ့ လုပ်ရင်။ Community ပရောဂျက်တွေ (ဥပမာ — ဗီယက်နမ် ဘဏ်လုပ်ငန်းအတွက် fine-tune တစ်ခု) က ဒါ ကောင်းစွာ အလုပ်လုပ်ကြောင်း ပြသထားပါတယ် — ဒါပေမဲ့ သင့်ဘာသာစကားနဲ့ လေ့ကျင့်ရေး data လိုအပ်ပါတယ်။
Fine-tune က တကယ်တော့ ဘယ်လိုလုပ်ရသလဲ (ထင်ထားတာထက် လွယ်ပါတယ်)
သတင်းကောင်းက — Parameter သန်း ၂၇၀ မော်ဒယ်တစ်ခုကို fine-tune လုပ်တာဟာ ၂၀၂၆ ခုနှစ်မှာ အလွယ်ကူဆုံး ဖြစ်နေပါတယ်။
ပုံမှန်နည်းလမ်း ကတော့ အခမဲ့ Google Colab GPU ပေါ်မှာ Unsloth + LoRA သုံးတာပါ။ Unsloth က (Google နဲ့ ပူးပေါင်းရေးဆွဲထားတဲ့) အသင့်သုံး notebook တွေ ပေးထားပြီး — မော်ဒယ်ကို load လုပ်တာ၊ ချိန်ညှိပြီးသား LoRA fine-tuning ပြုလုပ်တာ၊ chat template ကို မှန်ကန်စွာ ကိုင်တွယ်တာအထိ လုပ်ပေးပါတယ်။ မော်ဒယ်က အလွန်သေးငယ်တဲ့အတွက် — မော်ဒယ်ကြီးတွေဆို နာရီနဲ့ချီကြာမယ့် လေ့ကျင့်မှုတွေ မိနစ်ပိုင်းအတွင်း ပြီးဆုံးပြီး၊ လိုအပ်တဲ့ VRAM ကလည်း အနည်းငယ်သာ ဖြစ်ပါတယ်။
လုပ်ငန်းစဉ်က ဒီလိုဖြစ်ပါတယ် —
- Dataset တစ်ခု တည်ဆောက်ပါ — နမူနာတွေက “ရရှိနိုင်တဲ့ tool + အသုံးပြုသူ prompt + မှန်ကန်တဲ့ function call ရလဒ်” ပုံစံဖြစ်ပါတယ်။ Hugging Face ပေါ်က Google ရဲ့ Mobile Actions dataset ဟာ ကူးယူသင့်တဲ့ စံပုံစံပါ။ Row သန်းချီ မလိုပါဘူး — schema ကျဉ်းမြောင်းတယ်ဆိုရင် ဂရုတစိုက် ရေးထားတဲ့ နမူနာ ရာဂဏန်းကနေ ထောင်ဂဏန်းက အများကြီး အထောက်အကူ ဖြစ်ပါတယ်။ ထိပ်တန်းမော်ဒယ်တစ်ခုကို လေ့ကျင့်ရေးအတွဲတွေ ထုတ်ခိုင်းတာဟာ အသုံးများတဲ့ နည်းလမ်းတစ်ခုပါ။
- Unsloth notebook နဲ့ လေ့ကျင့်ပါ (Colab ဒါမှမဟုတ် ကိုယ့်စက်ပေါ်မှာ — ကိုယ့်စက်ပေါ်က Unsloth လေ့ကျင့်ခြင်းဟာ Apple Silicon မှာ အခုထိ မထောက်ပံ့သေးတာ သတိပြုပါ)။
- GGUF အဖြစ် ထုတ်ယူပါ (Q8_0, F16, ဒါမှမဟုတ် BF16) — notebook ကနေ တိုက်ရိုက်ပါ။
- ကိုယ့်စက်ပေါ်မှာ အသုံးပြုပါ — LM Studio, Ollama, ဒါမှမဟုတ် llama.cpp နဲ့။ ထပ်ဆင့်ပြီး ဖုန်းပေါ် တင်လို့လည်း ရပါတယ်။ Google နဲ့ PyTorch က quantization-aware training နည်းလမ်းကို ထုတ်ပြန်ထားပြီး — Pixel 8, iPhone 15 Pro လို စက်တွေမှာ တစ်စက္ကန့်ကို token ၅၀ ခန့် ရရှိပါတယ်။
ဆုံးဖြတ်ဖို့ လမ်းညွှန်
ကိုယ့်ကိုယ်ကို မေးခွန်း သုံးခု မေးကြည့်ပါ —
- ကျွန်တော့် tool တွေက နည်းပြီး၊ ယေဘုယျဆန်ပြီး၊ တစ်ဆင့်တည်းလား။ → အခြေခံမော်ဒယ်ကို အရင် စမ်းကြည့်ပါ။ အထူးသဖြင့် ရလဒ်ကို တင်းတင်းကြပ်ကြပ် တိုက်စစ်မယ်ဆိုရင် — ဒါနဲ့တင် လုံလောက်ချင် လုံလောက်နိုင်ပါတယ်။
- ကိုယ်ပိုင် schema, multi-turn, ဒါမှမဟုတ် သီးခြားဘာသာစကားတစ်ခုမှာ တိကျမှုမြင့်မြင့် လိုအပ်လား။ → Fine-tune လုပ်ပါ။ Mobile Actions ရဲ့ ၅၈% ကနေ ၈၅% တက်လာမှုက အထူးပြုလေ့ကျင့်ခြင်းရဲ့ တန်ဖိုးကို သက်သေပြပါတယ်။
- သာမန်စကားဝိုင်းရော tool သုံးတာရော နှစ်မျိုးလုံး လိုအပ်လား။ → အဲဒီအတွက် FunctionGemma လုံးဝ မသင့်တော်ပါ။ ပိုကြီးတဲ့ ယေဘုယျမော်ဒယ်တစ်ခု သုံးပါ၊ ဒါမှမဟုတ် FunctionGemma ကို (router အဖြစ်) စကားဝိုင်းအတွက် တခြားမော်ဒယ်တစ်ခုနဲ့ တွဲသုံးပါ။
နိဂုံး
FunctionGemma ဟာ AI ကို အသုံးချတဲ့ ပုံစံသစ်တစ်ခုကို ကိုယ်စားပြုပါတယ်။ Cloud API ကနေ ဉာဏ်ရည်ကို ငှားရမ်းသုံးမယ့်အစား — သင့်လက်ထဲမှာ ရှိပြီးသား စက်ပစ္စည်းပေါ်မှာ အလုပ်လုပ်တဲ့ သေးငယ်တဲ့ ကျွမ်းကျင်သူတစ်ဦးကို ကိုယ်တိုင် လေ့ကျင့်ပေးလိုက်တာပါ — ကိုယ်ရေးကိုယ်တာ လုံခြုံပြီး၊ offline ဖြစ်ကာ၊ အသုံးပြုချိန်မှာ ကုန်ကျစရိတ် မရှိသလောက်ပါ။ မူရင်းအတိုင်းဆိုရင် စွမ်းဆောင်နိုင်တဲ့ ပုံကြမ်းရေးဆွဲရေး ကိရိယာတစ်ခု၊ fine-tune လုပ်လိုက်ရင် သင့် application အတွက် ထုတ်လုပ်မှုအဆင့် router တစ်ခု ဖြစ်လာပါတယ်။ ရိုးရိုးစက်ပစ္စည်းလေးတွေနဲ့ တည်ဆောက်တဲ့ developer တွေအတွက် — အဲဒီ ပေါင်းစပ်မှုကို ကျော်ဖြတ်ဖို့ မလွယ်ပါဘူး။
နောက်ထပ် လက်တွေ့ကျတဲ့ tech နဲ့ code လမ်းညွှန်တွေကို ကျွန်တော်တို့ရဲ့ Tech & Code hub မှာ ကြည့်ရှုနိုင်ပါတယ်။
အသုံးဝင်တဲ့ ရင်းမြစ်များ — Hugging Face ရဲ့ FunctionGemma model card (google/functiongemma-270m-it)၊ ai.google.dev က Google ရဲ့ Mobile Actions fine-tuning လမ်းညွှန်၊ နဲ့ Unsloth ရဲ့ FunctionGemma စာရွက်စာတမ်း။ မော်ဒယ်၏ အင်္ဂါရပ်နှင့် benchmark ကိန်းဂဏန်းများသည် ဗားရှင်းအသစ်များ ထွက်လာသည်နှင့်အမျှ ပြောင်းလဲနိုင်ပါသည် — မတည်ဆောက်မီ လက်ရှိ model card နှင့် အတည်ပြုပါ။
