ከላngChain እና DSPy ጋር በ Deterministic Test Automation ውስጥ ወኪል AIን መተግበር | B4N1

ከላngChain እና DSPy ጋር በ Deterministic Test Automation ውስጥ ወኪል AIን መተግበር

6 months ago · b4n1 Read time: 3 min

** ከLangChain እና DSPy ጋር በ Deterministic Test Automation ውስጥ ወኪል AIን መተግበር ***

መግቢያ

የሶፍትዌር ስርዓቶች ውስብስብነት እየጨመረ መምጣቱ የሙከራ አውቶማቲክን የሶፍትዌር ልማት ወሳኝ ገጽታ አድርጎታል። የባህላዊ ሙከራ አውቶሜሽን ማዕቀፎች በስክሪፕት በተቀመጡ አቀራረቦች ላይ ይመሰረታሉ፣ ይህም ተሰባሪ እና ለማቆየት አስቸጋሪ ነው። በቅርብ ዓመታት ውስጥ የኤጀንሲው AI እና የኦርኬስትራ መሳሪያዎች ብቅ ማለት ውስብስብ የፈተና ሁኔታዎችን በራስ ሰር ለመስራት አዳዲስ እድሎችን ከፍቷል። በዚህ ጽሑፍ ውስጥ LangChain እና DSPy ን በመጠቀም ውስብስብ የፍተሻ ሁኔታዎችን በራስ ሰር ለመስራት የኤጀንቲክ AI፣ የኦርኬስትራ መሳሪያዎች እና የሶፍትዌር ኢንጂነሪንግ መገናኛን እንቃኛለን።

** ወኪል AI ምንድን ነው?**

ወኪል AI ተጠቃሚን ወይም ስርዓትን ወክሎ እርምጃዎችን ለመውሰድ የተነደፈውን ሰው ሰራሽ የማሰብ ችሎታን ያመለክታል። ኤጀንቲክ AI ሲስተሞች ውሳኔዎችን ማድረግ፣ ከተሞክሮ መማር እና ከአዳዲስ ሁኔታዎች ጋር መላመድ የሚችሉ ናቸው። በሙከራ አውቶሜሽን አውድ ውስጥ፣ ኤጀንቲክ AI የተጠቃሚን መስተጋብር በማስመሰል፣ በሙከራ ውሂብ ላይ በመመስረት ውሳኔዎችን በማድረግ እና የፈተና ሁኔታዎችን ከመቀየር ጋር በማጣጣም ውስብስብ የፍተሻ ሁኔታዎችን በራስ ሰር ለመስራት መጠቀም ይቻላል።

** LangChain ምንድን ነው?**

LangChain ገንቢዎች Python፣ Rust እና Goን ጨምሮ የተለያዩ የፕሮግራሚንግ ቋንቋዎችን በመጠቀም ውስብስብ AI ስርዓቶችን እንዲገነቡ የሚያስችል ክፍት ምንጭ የኦርኬስትራ መሳሪያ ነው። LangChain የተራቀቁ AI ስርዓቶችን ለመገንባት ገንቢዎች እንደ የተፈጥሮ ቋንቋ ሂደት (NLP) እና የኮምፒተር እይታ ያሉ የተለያዩ AI ክፍሎችን እንዲያዋህዱ የሚያስችል ተለዋዋጭ እና ሞዱል አርክቴክቸር ያቀርባል።

DSPy ምንድን ነው?

DSPy የ AI ስርዓቶችን ለመገንባት እና ለማሰማራት የመሳሪያዎች ስብስብ የሚያቀርብ የፓይዘን ቤተ-መጽሐፍት ነው። DSPy ከLangChain ጋር ያለችግር ለመስራት የተነደፈ እና የውሂብ ሂደትን፣ የማሽን መማርን እና ጥልቅ ትምህርትን ጨምሮ የተለያዩ ባህሪያትን ይሰጣል።

** በቆራጥነት ሙከራ አውቶሜትድ ውስጥ ወኪል AIን መተግበር ***

በቆራጥ ፍተሻ አውቶሜሽን ውስጥ ኤጀንሲን ተግባራዊ ለማድረግ LangChain እና DSPy ን በመጠቀም የተጠቃሚ መስተጋብርን የሚያስመስል፣ በሙከራ ውሂብ ላይ በመመስረት ውሳኔዎችን የሚያደርግ እና የሙከራ ሁኔታዎችን ለመለወጥ የሚያስችል የሙከራ አውቶማቲክ ማዕቀፍ ለመገንባት ልንጠቀም እንችላለን።

የሙከራ ሁኔታን በራስ ሰር ለመስራት LangChain እና DSPy እንዴት እንደምንጠቀም የሚያሳይ ቀላል ምሳሌ ይኸውና፡ `` ፓይቶን አስመጣ langchain ከ langchain.ሰንሰለቶች LLMChain ያስመጡ ከ langchain.llms አስመጣ DSPyLLM

test_scenario = { "user_input": "login", "expected_output": "መግባት ተሳክቷል" }

ወኪል AI ወኪልን ይግለጹ

ወኪል = LLMChain ( llm=DSPyLLM() ግቤት_አይነት = "ጽሑፍ", የውጤት_አይነት = "ጽሑፍ" )

የሙከራ አውቶማቲክ ተግባሩን ይግለጹ

def test_automation(የሙከራ_ሁኔታ)፡ # የተጠቃሚ መስተጋብርን አስመስለው user_input = test_scenario["user_input"] # በሙከራ መረጃ ላይ በመመስረት ውሳኔ ያድርጉ ውሳኔ = agent.run(የተጠቃሚ_ግቤት) # የሙከራ ሁኔታዎችን ከመቀየር ጋር መላመድ ውሳኔ == "መግባት ከተሳካ"፡- ማተም ("ሙከራ አልፏል") ሌላ፡ ማተም ("ሙከራ አልተሳካም")

የሙከራ አውቶማቲክ ተግባሩን ያሂዱ

የሙከራ_አውቶሜሽን(የሙከራ_ሁኔታ)

በዚህ ምሳሌ የተጠቃሚን መስተጋብር ማስመሰልን፣ በሙከራ ውሂብ ላይ በመመስረት ውሳኔ መስጠት እና የፈተና ሁኔታዎችን መለወጥን የሚያካትት የሙከራ ሁኔታን እንገልፃለን። ከዚያ LangChain እና DSPy ን በመጠቀም የኤጀንሲው AI ወኪል እንገልፃለን እና የሙከራ ሁኔታውን በራስ ሰር ለመስራት እንጠቀምበታለን።

**ምርጥ 5-10 በብዛት ጥቅም ላይ የዋሉ ትዕዛዞች/ቅንጣዎች**

ለ LangChain እና DSPy በጣም ጥቅም ላይ የዋሉት 5-10 ከፍተኛ ትዕዛዞች/ቅንጣዎች እነሆ፡-

1. `langchain.LLMChain(llm=DSPyLLM())»፡ LangChain እና DSPy በመጠቀም ወኪል AI ይፈጥራል።
2. `DSPyLLM()`፡ የ DSPy LLM (ትልቅ የቋንቋ ሞዴል) ምሳሌን ይጀምራል።
3. `LLMChain(ግቤት_አይነት = "ጽሑፍ"፣ ውፅዓት_አይነት = "ጽሑፍ")`፡ የጽሁፍ ግብአት እና የውጤት አይነቶች ያለው ወኪል AI ይፈጥራል።
4. `agent.run(user_input)`፡ የኤጀንቲክ AI ወኪልን በተጠቃሚ ግብአት ያስኬዳል።
5. `test_scenario = {"user_input": "login", "expected_output": "መግባት ተሳክቷል"}`: በተጠቃሚ ግብአት እና በሚጠበቀው ውጤት የሙከራ ሁኔታን ይገልጻል።
6. `langchain.chains.LLMChain(llm=DSPyLLM())»፡ LangChain እና DSPy በመጠቀም የኤጀንቲክ AI ወኪል ይፈጥራል።
7. `DSPyLLM().predict(user_input)`፡ የDSPy LLM ውፅዓት በተጠቃሚ ግብአት ይተነብያል።
8. `LLMChain(input_type = "text", output_type = "text"). አሂድ(የተጠቃሚ_ግቤት)`፡ የኤጀንቲክ AI ወኪልን ከጽሁፍ ግብዓት እና የውጤት አይነቶች ጋር ይሰራል።
9. `የሙከራ_አውቶሜሽን(የሙከራ_ትዕይንት)`፡ የሙከራ አውቶማቲክ ተግባሩን ከሙከራ ሁኔታ ጋር ያካሂዳል።
10. `langchain.chains.LLMChain(llm=DSPyLLM()) .አሂድ(የተጠቃሚ_ግቤት)`፡ በተጠቃሚ ግብአት የኤጀንቲክ AI ወኪልን ያስኬዳል።

**እይታ**

Chart.jsን በመጠቀም የኤጀንሲው AI ወኪል እይታ እዚህ አለ፡-
``json
{
  "አይነት": "ባር",
  "ውሂብ": {
    "labels": ["የተጠቃሚ ግቤት"፣"ውሳኔ"፣ "ማላመድ"]፣
    "መረጃዎች": [
      {
        "label": "ወኪል AI ወኪል",
        "ውሂብ": [10, 20, 30],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "የድንበር ስፋት"፡ 1
      }
    ]
  }
  "አማራጮች": {
    "ርዕስ": {
      "ማሳያ": እውነት,
      "ጽሑፍ": "ወኪል AI ወኪል"
    }
    "ሚዛኖች": {
      "yAxes": [
        {
          "መዥገሮች": {
            "beginAtZero"፡ እውነት
          }
        }
      ]
    }
  }
}

ይህ የእይታ እይታ የኤጀንሲው AI ወኪል የተጠቃሚን መስተጋብር በማስመሰል፣ በሙከራ መረጃ ላይ በመመስረት ውሳኔዎችን በማድረግ እና ከሙከራ ሁኔታዎች ጋር በመላመድ ያለውን አፈጻጸም ያሳያል።

** መደምደሚያ**

በዚህ ጽሑፍ ውስጥ LangChain እና DSPy ን በመጠቀም ውስብስብ የፍተሻ ሁኔታዎችን በራስ ሰር ለመስራት የኤጀንቲክ AI፣ የኦርኬስትራ መሳሪያዎች እና የሶፍትዌር ምህንድስና መገናኛን መርምረናል። በቆራጥነት ሙከራ አውቶሜሽን ውስጥ ቀላል የኤጀንሲ አይአይ ምሳሌን ተግባራዊ አድርገናል እና ለLangChain እና DSPy የተለያዩ ትዕዛዞች/ቅንጣዎችን አቅርበናል። Chart.jsን በመጠቀም የኤጀንሲው AI ወኪልን አፈጻጸምም አይተናል። ኤጀንቲክ AI እና ኦርኬስትራ መሳሪያዎችን በመጠቀም ገንቢዎች የተጠቃሚን መስተጋብር የሚያስመስሉ፣ በሙከራ ውሂብ ላይ ተመስርተው ውሳኔዎችን የሚወስኑ እና ከተለዋዋጭ የሙከራ ሁኔታዎች ጋር የሚላመዱ የተራቀቁ የሙከራ አውቶሜሽን ማዕቀፎችን መገንባት ይችላሉ።


Have Questions?

Let's Talk

Contact me on LinkedIn