StackGen ဖွဲ့စည်းမှုဖိုင် (example.yaml) | B4N1

StackGen ဖွဲ့စည်းမှုဖိုင် (example.yaml)

8 months ago · b4n1 Read time: 3 min

** StackGen နှင့် LangChain ဖြင့် ကိုယ်ပိုင်အုပ်ချုပ်ခွင့်ရအခြေခံအဆောက်အအုံဖွဲ့စည်းခြင်း- Extreme DevOps အလိုအလျောက်စနစ်နှင့် ကိုယ်ပိုင်အုပ်ချုပ်ခွင့်ရအခြေခံအဆောက်အအုံစီမံခန့်ခွဲမှုအတွက် AI အေးဂျင့်များနှင့် မျိုးဆက်သစ်ပုံစံများကို အသုံးချခြင်း**

နိဒါန်း

ယနေ့ခေတ် လျင်မြန်သော ဒစ်ဂျစ်တယ် အခင်းအကျင်းတွင်၊ ထိရောက်ပြီး အရွယ်အစား ကြီးမားသော အခြေခံအဆောက်အအုံ စီမံခန့်ခွဲမှုအတွက် လိုအပ်ချက်သည် ဘယ်သောအခါမှ မြင့်မားခြင်းမရှိပါ။ သမားရိုးကျ DevOps အလေ့အကျင့်များသည် အမှားအယွင်းများ၊ ရှေ့နောက်မညီမှုများနှင့် ပိတ်ဆို့မှုများဆီသို့ ဦးတည်သွားစေနိုင်သည့် manual configuration နှင့် scripting တို့ကို မှီခိုလေ့ရှိသည်။ ဤစိန်ခေါ်မှုများကိုဖြေရှင်းရန်၊ အခြေခံအဆောက်အဦစီမံခန့်ခွဲမှုကို အလိုအလျောက်လုပ်ဆောင်ရန်နှင့် ပိုမိုကောင်းမွန်အောင်လုပ်ဆောင်ရန် AI အေးဂျင့်များနှင့် မျိုးဆက်သစ်မော်ဒယ်များကို အသုံးချသည့် AI အေးဂျင့်များနှင့် မျိုးဆက်သစ်မော်ဒယ်များကို အသုံးချသည့် ကိုယ်ပိုင်အုပ်ချုပ်ခွင့်ရအခြေခံအဆောက်အအုံဆိုင်ရာ ကြိုးကိုင်မှုပေါ်ပေါက်လာခြင်းကို ကျွန်ုပ်တို့ မြင်တွေ့နေရသည်။ ဤဆောင်းပါးတွင်၊ ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏ အခြေခံအဆောက်အအုံကို စီမံခန့်ခွဲပုံအား တော်လှန်ပြောင်းလဲနေသော နောက်ဆုံးပေါ်နည်းပညာနှစ်ခုဖြစ်သည့် StackGen နှင့် LangChain ၏ စိတ်လှုပ်ရှားဖွယ်ကမ္ဘာကို စူးစမ်းလေ့လာပါမည်။

StackGen ဆိုတာ ဘာလဲ

StackGen သည် မိမိဘာသာ ကုသခြင်း၊ မိမိဘာသာ အတိုင်းအတာနှင့် မိမိကိုယ်မိမိ ကောင်းမွန်အောင်ပြုလုပ်ထားသော အခြေခံအဆောက်အဦ stacks များကို ဖန်တီးနိုင်စေသည့် open-source၊ cloud-agnostic infrastructure orchestration platform တစ်ခုဖြစ်သည်။ မော်ဂျူလာ၊ တိုးချဲ့နိုင်သော ဗိသုကာတစ်ခု၏ထိပ်တွင် တည်ဆောက်ထားသည့် StackGen သည် developer များအား အဆင့်မြင့်၊ declarative syntax ကို အသုံးပြု၍ အခြေခံအဆောက်အအုံဖွဲ့စည်းပုံများကို သတ်မှတ်သတ်မှတ်နိုင်စေပါသည်။ ထို့နောက် ဤအထားအသိုကို ခိုင်ခံ့သော၊ ဖြန့်ဝေသည့်အင်ဂျင်ဖြင့် လုပ်ဆောင်သည့် လုပ်ဆောင်နိုင်သော အခြေခံအဆောက်အဦများ စီမံဆောင်ရွက်ပေးခြင်းနှင့် စီမံခန့်ခွဲမှုတာဝန်များအဖြစ် ဘာသာပြန်ဆိုပါသည်။

LangChain ဆိုတာ ဘာလဲ

LangChain သည် Python စာကြည့်တိုက်တစ်ခုဖြစ်ပြီး AI အေးဂျင့်များ၊ မျိုးဆက်သစ်မော်ဒယ်များနှင့် အခြားစက်သင်ယူမှုအစိတ်အပိုင်းများကို ဆော့ဖ်ဝဲလ်စနစ်များအဖြစ် တည်ဆောက်ခြင်းနှင့် ပေါင်းစပ်ခြင်းအတွက် ပေါင်းစည်းထားသော အင်တာဖေ့စ်ကို ပံ့ပိုးပေးသည့် Python စာကြည့်တိုက်တစ်ခုဖြစ်သည်။ LangChain ကို အသုံးချခြင်းဖြင့်၊ developer များသည် ဒေတာများမှ သင်ယူခြင်း၊ ပြောင်းလဲနေသော ပတ်ဝန်းကျင်နှင့် လိုက်လျောညီထွေဖြစ်အောင်၊ အသိဉာဏ်ဖြင့် ဆုံးဖြတ်ချက်များ ချနိုင်သော ခေတ်မီဆန်းပြားသော AI-မောင်းနှင်သည့် အက်ပ်လီကေးရှင်းများကို ဖန်တီးနိုင်သည်။ StackGen ၏အခြေအနေတွင်၊ LangChain သည် အခြေခံအဆောက်အအုံစွမ်းဆောင်ရည်ကိုခွဲခြမ်းစိတ်ဖြာနိုင်ပြီး ကွဲလွဲချက်များကိုကြိုတင်ခန့်မှန်းနိုင်ပြီး အကောင်းဆုံးစနစ်အမူအကျင့်များကိုထိန်းသိမ်းရန် မှန်ကန်သောလုပ်ဆောင်မှုများပြုလုပ်နိုင်သည့် AI အေးဂျင့်များ၏ပေါင်းစည်းမှုကိုလုပ်ဆောင်စေသည်။

StackGen နှင့် LangChain ဖြင့် ကိုယ်ပိုင်အုပ်ချုပ်ခွင့်ရ အခြေခံအဆောက်အဦဖွဲ့စည်းမှု

StackGen နှင့် LangChain တို့၏ စွမ်းအားကို သရုပ်ဖော်ရန်အတွက် ရိုးရှင်းသော ဥပမာတစ်ခုကို သုံးသပ်ကြည့်ကြပါစို့။ ကျွန်ုပ်တို့သည် အတိုင်းအတာတစ်ခုအထိ စွမ်းဆောင်ရည်မြင့်မားသော အခြေခံအဆောက်အအုံစဥ်လိုအပ်သည့် cloud-based e-commerce ပလပ်ဖောင်းတစ်ခုကို တည်ဆောက်နေသည်ဆိုပါစို့။ StackGen ကိုအသုံးပြုခြင်းဖြင့်၊ node အရေအတွက်၊ instance အမျိုးအစားများနှင့် network configurations များအပါအဝင် လိုချင်သောအခြေခံအဆောက်အအုံ topology ကိုသတ်မှတ်ပေးသည့်အဆင့်မြင့်ဖွဲ့စည်းမှုတစ်ခုကိုသတ်မှတ်နိုင်သည်။

``စပါးအုံး

အမည်- e-commerce-ပလပ်ဖောင်း ဖော်ပြချက်- အတိုင်းအတာ အသုံးပြုနိုင်သော e-commerce ပလပ်ဖောင်း အခြေခံအဆောက်အဦ ဗားရှင်း: 1.0

အစိတ်အပိုင်းများ

  • အမည်- ဝဘ်ဆာဗာ အမျိုးအစား- EC2 ဂုဏ်သတ္တိများ- ဥပမာ-အမျိုးအစား- t2.micro ami: ami-abc123 လုံခြုံရေးအုပ်စုများ- [web-server-sg]
  • အမည်: ဒေတာဘေ့စ် အမျိုးအစား- RDS ဂုဏ်သတ္တိများ- ဥပမာ-အမျိုးအစား- db.t2.micro အင်ဂျင်- postgres ဒေတာဘေ့စ်အမည်- e-commerce-db အသုံးပြုသူအမည်- e-commerce-အသုံးပြုသူ စကားဝှက်- e-commerce-စကားဝှက်

ဆက်ဆံရေး-

  • web-server -> ဒေတာဘေ့စ်

ဤဥပမာတွင်၊ ဝဘ်ဆာဗာနှင့် ဒေတာဘေ့စ်တစ်ခုပါ၀င်သော ရိုးရှင်းသောအခြေခံအဆောက်အအုံအစုတစ်ခုကို ကျွန်ုပ်တို့သတ်မှတ်ထားပါသည်။ `အစိတ်အပိုင်းများ` ကဏ္ဍတွင် ၎င်းတို့၏ အမျိုးအစားများ၊ ဂုဏ်သတ္တိများနှင့် ဆက်ဆံရေးများအပါအဝင် အစိတ်အပိုင်းတစ်ခုချင်းစီကို သတ်မှတ်ပေးပါသည်။ 'ဆက်ဆံရေး' အပိုင်းသည် အစိတ်အပိုင်းများကြား ချိတ်ဆက်မှုများကို သတ်မှတ်သည်။

ထို့နောက်၊ ကျွန်ုပ်တို့သည် အခြေခံအဆောက်အအုံစွမ်းဆောင်ရည်ကိုခွဲခြမ်းစိတ်ဖြာနိုင်သည့် AI အေးဂျင့်ကို ပေါင်းစပ်ရန် LangChain ကိုအသုံးပြုပြီး အကောင်းဆုံးစနစ်အမူအကျင့်များကို ထိန်းသိမ်းထားရန် မှန်ကန်သောလုပ်ဆောင်ချက်များကို လုပ်ဆောင်ပါမည်။ CPU အသုံးပြုမှုကို စောင့်ကြည့်စစ်ဆေးပြီး instance အမျိုးအစားများအလိုက် ချိန်ညှိပေးသည့် ရိုးရှင်းသော AI အေးဂျင့်ကို ဖန်တီးပါမည်။

``စပါးအုံး
# LangChain AI အေးဂျင့်ကုဒ် (ai_agent.py)
langchain တင်သွင်းခြင်း။
langchain.agents မှ BaseAgent တင်သွင်းသည်။

အတန်းအစား ECommerceAgent(BaseAgent)-
    def __init__(ကိုယ်တိုင်၊ stackgen_config):
        self.stackgen_config = stackgen_config
        self.cpu_utilization_threshold = 80

    def monitor_infrastructure(ကိုယ်တိုင်):
        # CPU အသုံးပြုမှုကို စောင့်ကြည့်ပြီး instance အမျိုးအစားများကို ချိန်ညှိပါ။
        cpu_utilization = self.get_cpu_utilization()
        အကယ်၍ cpu_utilization > self.cpu_utilization_threshold-
            self.adjust_instance_types()

    def adjust_instance_types(ကိုယ်တိုင်):
        # CPU အသုံးပြုမှုအပေါ်အခြေခံ၍ ဥပမာအမျိုးအစားများကို ချိန်ညှိပါ။
        instance_types = self.get_instance_types()
        instance_type အတွက် instance_types:
            if instance_type['cpu_utilization'] > self.cpu_utilization_threshold-
                instance_type['instance_type'] = 't2.large'

# AI အေးဂျင့်ကို StackGen နှင့် ပေါင်းစည်းပါ။
stackgen_config = load_yaml('example.yaml')
ai_agent = ECommerceAgent(stackgen_config)
ai_agent.monitor_infrastructure()

ဤဥပမာတွင်၊ ကျွန်ုပ်တို့သည် CPU အသုံးပြုမှုကို စောင့်ကြည့်စစ်ဆေးပြီး instance အမျိုးအစားများအလိုက် ချိန်ညှိပေးသည့် ရိုးရှင်းသော AI အေးဂျင့်ကို ဖန်တီးထားပါသည်။ AI အေးဂျင့်များတည်ဆောက်ခြင်းနှင့် ပေါင်းစည်းခြင်းအတွက် တစ်စုတစ်စည်းတည်းသောအင်တာဖေ့စ်ကိုပံ့ပိုးပေးသည့် langchain စာကြည့်တိုက်ကို အသုံးပြု၍ AI အေးဂျင့်ကို StackGen နှင့် ပေါင်းစပ်ထားပါသည်။

ထိပ်တန်း 5-10 အသုံးအများဆုံး commands / အတိုအထွာများ

ဤသည်မှာ StackGen နှင့် LangChain အတွက် အသုံးအများဆုံး command များနှင့် အတိုအထွာအချို့ ဖြစ်သည်-

  1. StackGen Configuration File- stackgen config example.yaml
  2. LangChain AI အေးဂျင့်ကုဒ်- langchain ai_agent.py
  3. ** AI Agent ကို StackGen ဖြင့် ပေါင်းစည်းပါ**- `langchain သည် ai_agent.py example.yaml ကို ပေါင်းစပ်ပါ
  4. Monitor Infrastructure- ai_agent.monitor_infrastructure()
  5. Adjust Instance Types- ai_agent.adjust_instance_types()
  6. CPU အသုံးချမှုကို ရယူပါ- ai_agent.get_cpu_utilization()
  7. Instance Types ကိုရယူပါ- ai_agent.get_instance_types()
  8. YAML Configuration File ကိုတင်ပါ- load_yaml('example.yaml')
  9. YAML ဖွဲ့စည်းမှုပုံစံဖိုင်ကို သိမ်းဆည်းရန်- save_yaml('example.yaml'၊ stackgen_config)
  10. အခြေခံအဆောက်အဦ Topology ကိုမြင်ယောင်ကြည့်ပါ- stackgen မြင်ယောင်သော example.yaml

ပုံဖော်ခြင်း

အခြေခံအဆောက်အအုံဆိုင်ရာ topology ကိုမြင်ယောင်ရန်၊ StackGen configuration ဖိုင်ကိုအခြေခံ၍ ဂရပ်တစ်ခုပြန်ဆိုရန် graphviz ကဲ့သို့သော စာကြည့်တိုက်ကို အသုံးပြုနိုင်ပါသည်။

``ဇယား { "type": "ဘား", "ဒေတာ"- { "labels": ["ဝဘ်ဆာဗာ", "ဒေတာဘေ့စ်"]၊ "ဒေတာအတွဲများ": [ { "label": "CPU အသုံးပြုမှု", "ဒေတာ"- [80၊ 90]၊ "နောက်ခံအရောင်"- ["rgba(255၊ 99၊ 132၊ 0.2)", "rgba(54, 162, 235, 0.2)"]၊ "borderColor"- ["rgba(255၊ 99၊ 132၊ 1)", "rgba(54, 162, 235, 1)"]၊ "borderWidth"- [1၊ 1] } ] }၊ "ရွေးချယ်စရာများ"- { "ခေါင်းစဉ်"- { "display": မှန်သည်၊ "text": "အစိတ်အပိုင်းအလိုက် CPU အသုံးချခြင်း" }၊ "အကြေးခွံများ": { "yAxes": [ { "display": မှန်သည်၊ "scaleLabel": { "display": မှန်သည်၊ "labelString": "CPU အသုံးပြုမှု (%)" } } ] } } }


ဤဇယားသည် ဝဘ်ဆာဗာနှင့် ဒေတာဘေ့စ် အစိတ်အပိုင်းများ၏ CPU အသုံးချမှုကို မြင်သာစေပြီး အခြေခံအဆောက်အဦစွမ်းဆောင်ရည်ကို ရှင်းလင်းစွာပြသသည်။

**နိဂုံး**

StackGen နှင့် LangChain တို့ဖြင့် ကိုယ်ပိုင်အုပ်ချုပ်ခွင့်ရ အခြေခံအဆောက်အဦများ စုစည်းမှု သည် အစွမ်းထက်သော ပါရာဒိုင်းဖြစ်ပြီး မိမိကိုယ်ကို ကုသခြင်း၊ မိမိဘာသာ အတိုင်းအတာနှင့် မိမိကိုယ်မိမိ အကောင်းဆုံးဖြစ်အောင် လုပ်ထားသော အခြေခံအဆောက်အဦ အစုများကို ဖန်တီးနိုင်စေမည့် အစွမ်းထက်သော ပါရာဒိုင်းဖြစ်သည်။ AI အေးဂျင့်များနှင့် မျိုးဆက်သစ်မော်ဒယ်များကို အသုံးချခြင်းဖြင့်၊ developer များသည် အခြေခံအဆောက်အအုံစီမံခန့်ခွဲမှုကို အလိုအလျောက်လုပ်ဆောင်နိုင်ပြီး အကောင်းဆုံးဖြစ်အောင်၊ အမှားအယွင်းများ၊ ရှေ့နောက်မညီမှုများနှင့် ပိတ်ဆို့မှုများကို လျှော့ချနိုင်သည်။ ဤဆောင်းပါးတွင်၊ StackGen နှင့် LangChain တို့၏ အခြေခံများကို ရှာဖွေခဲ့ပြီး ၎င်းတို့၏ ဗိသုကာလက်ရာများ၊ ဖွဲ့စည်းမှုပုံစံဖိုင်များနှင့် AI အေးဂျင့်ပေါင်းစည်းမှုတို့ ပါဝင်သည်။ ဤနည်းပညာများ၏ စွမ်းအားကို ပြသရန်အတွက် လက်တွေ့နမူနာများနှင့် ကုဒ်အတိုအထွာများကိုလည်း ပေးထားပါသည်။ ထိရောက်ပြီး အရွယ်အစားကြီးမားသော အခြေခံအဆောက်အဦစီမံခန့်ခွဲမှုအတွက် လိုအပ်ချက်သည် ဆက်လက်ကြီးထွားလာသည်နှင့်အမျှ StackGen နှင့် LangChain တို့သည် DevOps နှင့် အခြေခံအဆောက်အဦစီမံခန့်ခွဲမှု၏ အနာဂတ်တွင် ဦးဆောင်အခန်းကဏ္ဍမှ ပါဝင်လာရန် အသင့်ရှိနေပါသည်။

Have Questions?

Let's Talk

Contact me on LinkedIn