LangChain နှင့် DSPy ဖြင့် Deterministic Test Automation တွင် Agentic AI ကို အကောင်အထည်ဖော်ခြင်း။ | B4N1

LangChain နှင့် DSPy ဖြင့် Deterministic Test Automation တွင် Agentic AI ကို အကောင်အထည်ဖော်ခြင်း။

6 months ago · b4n1 Read time: 2 min

** LangChain နှင့် DSPy ဖြင့် Deterministic Test Automation တွင် Agentic AI ကို အကောင်အထည်ဖော်ခြင်း**

နိဒါန်း

ဆော့ဖ်ဝဲလ်စနစ်များ၏ ရှုပ်ထွေးမှုများ တိုးလာခြင်းကြောင့် စမ်းသပ်မှု အလိုအလျောက်စနစ်သည် ဆော့ဖ်ဝဲလ်ဖွံ့ဖြိုးတိုးတက်မှု၏ အရေးပါသော ကဏ္ဍတစ်ခု ဖြစ်လာစေသည်။ သမားရိုးကျ စမ်းသပ်မှု အလိုအလျောက်စနစ် မူဘောင်များသည် ဆတ်ဆတ်ထိန်းသိမ်းရန် ခက်ခဲနိုင်သည့် scripted ချဉ်းကပ်မှုများအပေါ် အားကိုးသည်။ မကြာသေးမီနှစ်များအတွင်း၊ Agentic AI နှင့် Orchestration Tools များ ပေါ်ပေါက်လာခြင်းသည် ရှုပ်ထွေးသော စမ်းသပ်မှုအခြေအနေများကို အလိုအလျောက်လုပ်ဆောင်ရန်အတွက် ဖြစ်နိုင်ခြေအသစ်များကို ဖွင့်လှစ်ပေးခဲ့သည်။ ဤဆောင်းပါးတွင်၊ LangChain နှင့် DSPy ကိုအသုံးပြု၍ ရှုပ်ထွေးသောစမ်းသပ်မှုအခြေအနေများကို အလိုအလျောက်ဖြစ်စေရန်အတွက် Agent AI၊ Orchestration Tools နှင့် Software Engineering တို့၏လမ်းဆုံကို လေ့လာပါမည်။

Agentic AI ဆိုတာ ဘာလဲ

Agent AI သည် အသုံးပြုသူ သို့မဟုတ် စနစ်ကိုယ်စား လုပ်ဆောင်ရန် ဒီဇိုင်းထုတ်ထားသည့် ဉာဏ်ရည်တုအမျိုးအစားကို ရည်ညွှန်းသည်။ Agentic AI စနစ်များသည် ဆုံးဖြတ်ချက်များချနိုင်ခြင်း၊ အတွေ့အကြုံများမှ သင်ယူခြင်းနှင့် အခြေအနေအသစ်များနှင့် လိုက်လျောညီထွေဖြစ်အောင် လုပ်ဆောင်နိုင်စွမ်းရှိသည်။ စမ်းသပ်မှု automation ၏အခြေအနေတွင်၊ Agentic AI ကို အသုံးပြုသူ အပြန်အလှန်တုံ့ပြန်မှုများကို ပုံဖော်ခြင်း၊ စမ်းသပ်မှုဒေတာအပေါ် အခြေခံ၍ ဆုံးဖြတ်ချက်များချခြင်းနှင့် ပြောင်းလဲနေသော စမ်းသပ်မှုအခြေအနေများကို လိုက်လျောညီထွေဖြစ်အောင် ပြုလုပ်ခြင်းဖြင့် ရှုပ်ထွေးသောစမ်းသပ်မှုအခြေအနေများကို အလိုအလျောက်ပြုလုပ်ရန် အသုံးပြုနိုင်သည်။

LangChain ဆိုတာ ဘာလဲ

LangChain သည် Python၊ Rust နှင့် Go အပါအဝင် ပရိုဂရမ်းမင်းဘာသာစကားအမျိုးမျိုးကို အသုံးပြု၍ developer များအား ရှုပ်ထွေးသော AI စနစ်များကို တည်ဆောက်ခွင့်ပြုသည့် open-source Orchestration Tool တစ်ခုဖြစ်သည်။ LangChain သည် ဆန်းပြားသော AI စနစ်များတည်ဆောက်ရန်အတွက် သဘာဝဘာသာစကားလုပ်ဆောင်ခြင်း (NLP) နှင့် ကွန်ပျူတာအမြင်ကဲ့သို့သော မတူညီသော AI အစိတ်အပိုင်းများကို developer များအား ပေါင်းစပ်နိုင်စေသည့် လိုက်လျောညီထွေရှိပြီး မော်ဂျူလာဗိသုကာကို ပံ့ပိုးပေးပါသည်။

DSPy ဆိုတာ ဘာလဲ

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

** Deterministic Test Automation တွင် Agentic AI ကို အကောင်အထည်ဖော်ခြင်း**

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

ဤသည်မှာ စမ်းသပ်မှုတစ်ခုအား အလိုအလျောက်လုပ်ဆောင်ရန် LangChain နှင့် DSPy ကိုအသုံးပြုပုံ၏ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။ ``စပါးအုံး langchain တင်သွင်းခြင်း။ langchain.chains မှ LLMChain ကိုတင်သွင်းသည်။ langchain.llms မှ DSPyLLM ကိုတင်သွင်းပါ။

test_scenario = { "user_input": "ဝင်ရောက်ခြင်း", "expected_output": "အကောင့်ဝင်ခြင်း အောင်မြင်သည်" }

Agentic AI အေးဂျင့်ကို သတ်မှတ်ပါ။

အေးဂျင့် = LLMChain( llm=DSPyLLM(), input_type="text", output_type="text" )

စမ်းသပ်မှုအလိုအလျောက်လုပ်ဆောင်မှုလုပ်ဆောင်ချက်ကိုသတ်မှတ်ပါ။

def test_automation(test_scenario): # အသုံးပြုသူ အပြန်အလှန်ဆက်ဆံမှုကို အတုယူပါ။ user_input = test_scenario["user_input"] # စမ်းသပ်မှုအချက်အလက်ပေါ်အခြေခံ၍ ဆုံးဖြတ်ချက်ချပါ။ ဆုံးဖြတ်ချက် = agent.run(user_input) # ပြောင်းလဲနေသောစမ်းသပ်မှုအခြေအနေများနှင့်လိုက်လျောညီထွေဖြစ်အောင် အကယ်၍ ဆုံးဖြတ်ချက် == "ဝင်ရောက်ခြင်း အောင်မြင်သည်": ပုံနှိပ်ခြင်း("စမ်းသပ်မှုအောင်မြင်ပြီး") အခြား: print("စမ်းသပ်မှု မအောင်မြင်ပါ")

စမ်းသပ် automation function ကို run

test_automation(test_scenario)

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

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

ဤသည်မှာ LangChain နှင့် DSPy အတွက် အသုံးအများဆုံး ထိပ်တန်း 5-10 ညွှန်ကြားချက်များ/အတိုအထွာများဖြစ်သည်။

1. `langchain.LLMChain(llm=DSPyLLM())`- LangChain နှင့် DSPy ကို အသုံးပြု၍ Agent AI အေးဂျင့်ကို ဖန်တီးသည်။
2. `DSPyLLM()`- DSPy LLM (Large Language Model) ဥပမာကို စတင်သည်။
3. `LLMChain(input_type="text", output_type="text")`- စာသားထည့်သွင်းခြင်းနှင့် အထွက်အမျိုးအစားများဖြင့် Agentic AI အေးဂျင့်ကို ဖန်တီးသည်။
4. `agent.run(user_input)`- အသုံးပြုသူထည့်သွင်းခြင်းဖြင့် Agentic AI အေးဂျင့်ကို လုပ်ဆောင်သည်။
5. `test_scenario = {"user_input": "login", "expected_output": "login အောင်မြင်ပြီ"}`: အသုံးပြုသူ ထည့်သွင်းမှုနှင့် မျှော်မှန်းထားသော ရလဒ်များဖြင့် စမ်းသပ်မှု အခြေအနေအား သတ်မှတ်သည်။
6. `langchain.chains.LLMChain(llm=DSPyLLM())`- LangChain နှင့် DSPy ကို အသုံးပြု၍ Agentic AI အေးဂျင့်ကို ဖန်တီးသည်။
7. `DSPyLLM().predict(user_input)`- အသုံးပြုသူထည့်သွင်းမှုဖြင့် DSPy LLM ၏အထွက်ကို ခန့်မှန်းသည်။
8. `LLMChain(input_type="text", output_type="text").run(user_input)`- စာသားထည့်သွင်းခြင်းနှင့် အထွက်အမျိုးအစားများဖြင့် Agentic AI အေးဂျင့်ကို လုပ်ဆောင်သည်။
9. `test_automation(test_scenario)`- စမ်းသပ်မှု အခြေအနေဖြင့် စမ်းသပ်မှု အလိုအလျောက် လုပ်ဆောင်မှု လုပ်ဆောင်ချက်ကို လုပ်ဆောင်သည်။
10. `langchain.chains.LLMChain(llm=DSPyLLM()).run(user_input)`- အသုံးပြုသူထည့်သွင်းမှုဖြင့် Agentic AI အေးဂျင့်ကို လုပ်ဆောင်သည်။

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

ဤသည်မှာ Chart.js ကို အသုံးပြုထားသော Agentic AI အေးဂျင့်၏ ပုံရိပ်ယောင်ဖြစ်သည် ။
``ဂျေဆန်
{
  "type": "ဘား",
  "ဒေတာ"- {
    "labels": ["အသုံးပြုသူထည့်သွင်းမှု", "ဆုံးဖြတ်ချက်", "လိုက်လျောညီထွေဖြစ်အောင်"]၊
    "ဒေတာအတွဲများ": [
      {
        "label": "Agentic AI အေးဂျင့်",
        "ဒေတာ"- [၁၀၊ ၂၀၊ ၃၀]၊
        "backgroundColor"- "rgba(255၊ 99၊ 132၊ 0.2)",
        "borderColor": "rgba(255၊ 99၊ 132၊ 1)",
        "borderWidth": ၁
      }
    ]
  }၊
  "ရွေးချယ်စရာများ"- {
    "ခေါင်းစဉ်"- {
      "display": မှန်သည်၊
      "text": "Agentic AI အေးဂျင့်"
    }၊
    "အကြေးခွံများ"- {
      "yAxes": [
        {
          "ticks": {
            "beginAtZero"- အမှန်
          }
        }
      ]
    }
  }
}

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

နိဂုံး

ဤဆောင်းပါးတွင်၊ LangChain နှင့် DSPy ကိုအသုံးပြု၍ ရှုပ်ထွေးသောစမ်းသပ်မှုအခြေအနေများကို အလိုအလျောက်လုပ်ဆောင်ရန် Agent AI၊ Orchestration Tools နှင့် Software Engineering တို့၏လမ်းဆုံကို စူးစမ်းလေ့လာခဲ့ပါသည်။ ကျွန်ုပ်တို့သည် Agentic AI ၏ ရိုးရှင်းသော ဥပမာကို အဆုံးအဖြတ်ပေးသော စမ်းသပ်မှု အလိုအလျောက်စနစ်တွင် အကောင်အထည်ဖော်ခဲ့ပြီး LangChain နှင့် DSPy အတွက် ညွှန်ကြားချက်များ/အတိုအထွာများစွာကို ပေးထားသည်။ Chart.js ကို အသုံးပြု၍ Agentic AI အေးဂျင့်၏ စွမ်းဆောင်ရည်ကိုလည်း ကျွန်ုပ်တို့ မြင်ယောင်မိသည်။ Agentic AI နှင့် Orchestration Tools များကို အသုံးချခြင်းဖြင့်၊ developer များသည် အသုံးပြုသူများ၏ အပြန်အလှန်ဆက်သွယ်မှုများကို အတုယူကာ စမ်းသပ်မှုဒေတာကို အခြေခံ၍ ဆုံးဖြတ်ချက်များချကာ ပြောင်းလဲနေသော စမ်းသပ်မှုအခြေအနေများနှင့် လိုက်လျောညီထွေဖြစ်အောင် ဖန်တီးသူများမှ ဆန်းပြားသောစမ်းသပ်မှု အလိုအလျောက်စနစ်ဘောင်များကို တည်ဆောက်နိုင်ပါသည်။


Have Questions?

Let's Talk

Contact me on LinkedIn