L-implimentazzjoni ta 'Agentic AI fl-Awtomazzjoni tat-Test Deterministiku b'LangChain u DSPy | B4N1

L-implimentazzjoni ta 'Agentic AI fl-Awtomazzjoni tat-Test Deterministiku b'LangChain u DSPy

6 months ago · b4n1 Tiempo de lectura: 3 min

L-implimentazzjoni ta' AI Aġentika fl-Awtomazzjoni tat-Test Deterministiku b'LangChain u DSPy

Introduzzjoni

Il-kumplessità dejjem tikber tas-sistemi tas-softwer għamlet l-awtomazzjoni tat-test aspett kruċjali tal-iżvilupp tas-softwer. L-oqfsa tradizzjonali tal-awtomazzjoni tat-test jiddependu fuq approċċi b'kitba, li jistgħu jkunu fraġli u diffiċli biex jinżammu. F'dawn l-aħħar snin, l-emerġenza ta 'Agentic AI u Orchestration Tools fetħet possibbiltajiet ġodda għall-awtomatizzazzjoni ta' xenarji ta 'test kumplessi. F'dan l-artikolu, se nesploraw l-intersezzjoni ta 'Agentic AI, Għodod ta' Orkestrazzjoni, u Inġinerija tas-Software biex awtomat xenarji ta 'test kumplessi bl-użu ta' LangChain u DSPy.

X'inhu Agentic AI?

Agentic AI tirreferi għal tip ta 'intelliġenza artifiċjali li hija mfassla biex tieħu azzjonijiet f'isem utent jew sistema. Is-sistemi AI aġent huma kapaċi jieħdu deċiżjonijiet, jitgħallmu mill-esperjenza, u jadattaw għal sitwazzjonijiet ġodda. Fil-kuntest tal-awtomazzjoni tat-test, Agentic AI tista 'tintuża biex awtomat xenarji tat-test kumplessi billi tissimula l-interazzjonijiet tal-utent, tieħu deċiżjonijiet ibbażati fuq data tat-test, u tadatta għal kundizzjonijiet tat-test li jinbidlu.

X'inhu LangChain?

LangChain hija Għodda ta 'Orkestrazzjoni ta' sors miftuħ li tippermetti lill-iżviluppaturi jibnu sistemi AI kumplessi billi jużaw varjetà ta 'lingwi ta' programmar, inklużi Python, Rust u Go. LangChain jipprovdi arkitettura flessibbli u modulari li tippermetti lill-iżviluppaturi jintegraw komponenti AI differenti, bħall-ipproċessar tal-lingwa naturali (NLP) u viżjoni bil-kompjuter, biex jibnu sistemi AI sofistikati.

X'inhu DSPy?

DSPy hija librerija Python li tipprovdi sett ta' għodod għall-bini u l-iskjerament ta' sistemi AI. DSPy huwa ddisinjat biex jaħdem bla xkiel ma' LangChain u jipprovdi firxa ta' karatteristiċi, inkluż l-ipproċessar tad-dejta, it-tagħlim bil-magni u t-tagħlim fil-fond.

L-implimentazzjoni ta' AI Aġentika fl-Awtomazzjoni tat-Test Deterministiku

Biex nimplimentaw Agentic AI fl-awtomazzjoni tat-test deterministiku, nistgħu nużaw LangChain u DSPy biex nibnu qafas ta 'awtomazzjoni tat-test li jissimula l-interazzjonijiet tal-utent, jieħu deċiżjonijiet ibbażati fuq data tat-test, u jadatta għall-kundizzjonijiet tat-test li jinbidlu.

Hawn eżempju sempliċi ta’ kif nistgħu nużaw LangChain u DSPy biex nawtomatizzaw xenarju tat-test:

importazzjoni langchain
minn langchain.chains importazzjoni LLMChain
minn langchain.llms importazzjoni DSPyLLM


xenarju_test = {
    "user_input": "login",
    "expected_output": "login b'suċċess"
}

# Iddefinixxi l-aġent Agentic AI
aġent = LLMChain (
    llm=DSpyLLM(),
    input_type="test",
    output_type="test"
)

# Iddefinixxi l-funzjoni ta 'awtomazzjoni tat-test
def test_automation(test_xenario):
    # Simula l-interazzjoni tal-utent
    user_input = test_xenario["user_input"]
    # Ħu deċiżjoni bbażata fuq data tat-test
    deċiżjoni = agent.run(user_input)
    # Adatta għall-kundizzjonijiet tat-test li qed jinbidlu
    jekk id-deċiżjoni == "login b'suċċess":
        print("Test għadda")
    inkella:
        print("Test falla")

# Mexxi l-funzjoni ta 'awtomazzjoni tat-test
test_automation(test_xenario)

F'dan l-eżempju, aħna niddefinixxu xenarju tat-test li jinvolvi s-simulazzjoni ta' interazzjoni tal-utent, teħid ta' deċiżjoni bbażata fuq data tat-test, u adattament għall-kundizzjonijiet tat-test li jinbidlu. Imbagħad niddefinixxu aġent Agentic AI billi nużaw LangChain u DSPy, u nużawh biex awtomat ix-xenarju tat-test.

L-aqwa 5-10 Kmandi/Snippets l-aktar Użati

Hawn huma l-aqwa 5-10 kmandi/snippets l-aktar użati għal LangChain u DSPy:

  1. langchain.LLMCain(llm=DSPyLLM()): Joħloq aġent Agentic AI billi juża LangChain u DSPy.
  2. "DSPyLLM()": Inizjalizza istanza ta' DSPy LLM (Mudell ta' Lingwa Kbira).
  3. LLMCain(input_type="text", output_type="text"): Joħloq aġent Agentic AI b'tipi ta' input u output tat-test.
  4. agent.run(user_input): Imexxi l-aġent Agentic AI bl-input tal-utent.
  5. test_scenario = {"user_input": "login", "expected_output": "login b'suċċess"}: Jiddefinixxi xenarju tat-test b'input tal-utent u output mistenni.
  6. langchain.chains.LLMCain(llm=DSPyLLM()): Joħloq aġent Agentic AI billi juża LangChain u DSPy.
  7. DSPyLLM().predict(user_input): Tbassar l-output tad-DSPy LLM bl-input tal-utent.
  8. LLMCain(input_type="text", output_type="text").run(user_input): Tmexxi l-aġent Agentic AI b'tipi ta 'input u output ta' test.
  9. test_automation(test_scenario): Tmexxi l-funzjoni ta' awtomazzjoni tat-test b'xenarju tat-test.
  10. langchain.chains.LLMCain(llm=DSPyLLM()).run(user_input): Imexxi l-aġent Agentic AI bl-input tal-utent.

Viżwalizzazzjoni

Hawnhekk hawn viżwalizzazzjoni tal-aġent Agentic AI li juża Chart.js:

{
  "tip": "bar",
  "data": {
    "tikketti": ["Input tal-Utent", "Deċiżjoni", "Adattament"],
    "settijiet ta' dejta": [
      {
        "label": "Aġent AI aġent",
        "data": [10, 20, 30],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "BorderWidth": 1
      }
    ]
  },
  "għażliet": {
    "titolu": {
      "display": veru,
      "text": "Aġent AI aġent"
    },
    "skali": {
      "yAxes": [
        {
          "qurdien": {
            "beginAtZero": veru
          }
        }
      ]
    }
  }
}

Din il-viżwalizzazzjoni turi l-prestazzjoni tal-aġent Agentic AI fis-simulazzjoni tal-interazzjonijiet tal-utent, tieħu deċiżjonijiet ibbażati fuq data tat-test, u jadatta għall-kundizzjonijiet tat-test li jinbidlu.

Konklużjoni

F'dan l-artikolu, esplorajna l-intersezzjoni ta 'Agentic AI, Għodod ta' Orkestrazzjoni, u Inġinerija tas-Software biex awtomatizzaw xenarji ta 'test kumplessi bl-użu ta' LangChain u DSPy. Aħna implimentajna eżempju sempliċi ta 'Agentic AI fl-awtomazzjoni tat-test deterministiku u pprovdejna firxa ta' kmandi/snippets għal LangChain u DSPy. Aħna wkoll viżwalizzajna l-prestazzjoni tal-aġent Agentic AI billi tuża Chart.js. Billi jisfruttaw Agentic AI u Għodod tal-Orkestrazzjoni, l-iżviluppaturi jistgħu jibnu oqfsa sofistikati tal-awtomazzjoni tat-test li jissimulaw l-interazzjonijiet tal-utent, jieħdu deċiżjonijiet ibbażati fuq data tat-test, u jadattaw għall-kundizzjonijiet tat-test li jinbidlu.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn