Az Agent AI megvalósítása a determinisztikus tesztautomatizálásban LangChain és DSPy segítségével | B4N1

Az Agent AI megvalósítása a determinisztikus tesztautomatizálásban LangChain és DSPy segítségével

6 months ago · b4n1 Read time: 3 min

Az Agent AI alkalmazása a determinisztikus tesztautomatizálásban LangChain és DSPy segítségével

Bevezetés

A szoftverrendszerek egyre bonyolultabbá válása a tesztautomatizálást a szoftverfejlesztés kulcsfontosságú elemévé tette. A hagyományos tesztautomatizálási keretrendszerek szkriptalapú megközelítésekre támaszkodnak, amelyek törékenyek és nehezen karbantarthatók. Az elmúlt években az Agentic AI és az Orchestration Tools megjelenése új lehetőségeket nyitott meg az összetett tesztforgatókönyvek automatizálásában. Ebben a cikkben az Agentic AI, az Orchestration Tools és a Software Engineering metszéspontját fogjuk feltárni, hogy automatizálhassuk az összetett tesztforgatókönyveket a LangChain és a DSPy használatával.

Mi az az Agent AI?

Az ágens mesterséges intelligencia a mesterséges intelligencia olyan típusára utal, amelyet arra terveztek, hogy egy felhasználó vagy rendszer nevében cselekedjen. Az ágens mesterséges intelligencia rendszerek képesek döntéseket hozni, tanulni a tapasztalatokból és alkalmazkodni az új helyzetekhez. A tesztautomatizálás keretében az Agentic AI használható összetett tesztforgatókönyvek automatizálására a felhasználói interakciók szimulálásával, a tesztadatok alapján hozott döntésekkel és a változó tesztkörülményekhez való alkalmazkodással.

Mi az a LangChain?

A LangChain egy nyílt forráskódú hangszerelési eszköz, amely lehetővé teszi a fejlesztők számára, hogy összetett mesterségesintelligencia-rendszereket építsenek fel különféle programozási nyelvek, köztük a Python, a Rust és a Go segítségével. A LangChain rugalmas és moduláris architektúrát kínál, amely lehetővé teszi a fejlesztők számára, hogy integrálják a különböző mesterséges intelligencia-összetevőket, például a természetes nyelvi feldolgozást (NLP) és a számítógépes látásmódot, hogy kifinomult AI-rendszereket építsenek fel.

Mi az a DSPy?

A DSPy egy Python-könyvtár, amely eszközöket biztosít az AI-rendszerek felépítéséhez és telepítéséhez. A DSPy-t úgy tervezték, hogy zökkenőmentesen működjön együtt a LangChainnel, és számos szolgáltatást kínál, beleértve az adatfeldolgozást, a gépi tanulást és a mély tanulást.

Az Agent AI alkalmazása a determinisztikus tesztautomatizálásban

Az Agentic AI determinisztikus tesztautomatizálásban való megvalósításához a LangChain és a DSPy segítségével olyan tesztautomatizálási keretrendszert építhetünk fel, amely szimulálja a felhasználói interakciókat, tesztadatok alapján hoz döntéseket, és alkalmazkodik a változó tesztkörülményekhez.

Íme egy egyszerű példa arra, hogyan használhatjuk a LangChaint és a DSPy-t a tesztforgatókönyv automatizálására:

import langchain
innen: langchain.chains import LLMChain
a langchain.llms fájlból importálja a DSPyLLM-et


teszt_forgatókönyv = {
    "user_input": "bejelentkezés",
    "expected_output": "sikeres bejelentkezés"
}

# Határozza meg az Agentic AI ügynököt
ügynök = LLMchain(
    llm=DSPyLLM(),
    input_type="text",
    output_type="text"
)

# Határozza meg a tesztautomatizálási funkciót
def test_automation(test_scenario):
    # Szimulálja a felhasználói interakciót
    user_input = teszt_forgatókönyv["felhasználói_bemenet"]
    # Hozz döntést a tesztadatok alapján
    döntés = agent.run(user_input)
    # Alkalmazkodjon a változó vizsgálati körülményekhez
    ha a döntés == "sikeres bejelentkezés":
        print ("Teszt sikeres")
    más:
        print ("A teszt sikertelen")

# Futtassa a tesztautomatizálási funkciót
teszt_automatizálás(teszt_forgatókönyv)

Ebben a példában egy tesztforgatókönyvet határozunk meg, amely magában foglalja a felhasználói interakció szimulálását, a tesztadatok alapján történő döntéshozatalt és a változó tesztkörülményekhez való alkalmazkodást. Ezután a LangChain és a DSPy segítségével definiálunk egy Agentic AI-ügynököt, és ezzel automatizáljuk a tesztforgatókönyvet.

Az 5-10 leggyakrabban használt parancs/részlet

Íme az 5-10 leggyakrabban használt parancs/kódrészlet a LangChain és a DSPy számára:

  1. langchain.LLMChain(llm=DSPyLLM()): Agent AI ügynököt hoz létre a LangChain és a DSPy használatával.
  2. DSPyLLM(): Inicializál egy DSPy LLM (nagy nyelvi modell) példányt.
  3. LLMChain(input_type="text", output_type="text"): Agentic AI-ügynököt hoz létre szövegbeviteli és kimeneti típusokkal.
  4. agent.run(user_input): Az Agentic AI-ügynököt felhasználói bevitellel futtatja.
  5. test_scenario = {"user_input": "bejelentkezés", "expected_output": "bejelentkezés sikeres"}: Tesztforgatókönyvet határoz meg felhasználói bemenettel és várható kimenettel.
  6. langchain.chains.LLMChain(llm=DSPyLLM()): Létrehoz egy Agent AI ügynököt a LangChain és a DSPy használatával.
  7. DSPyLLM().predict(user_input): Megjósolja a DSPy LLM kimenetét felhasználói bevitellel.
  8. LLMChain(input_type="text", output_type="text").run(user_input): Az Agentic AI-ügynököt futtatja szövegbeviteli és kimeneti típusokkal.
  9. test_automation(test_scenario): A tesztautomatizálási függvényt egy tesztforgatókönyvvel futtatja.
  10. langchain.chains.LLMChain(llm=DSPyLLM()).run(user_input): Az Agentic AI ügynök futtatása felhasználói bevitellel.

Megjelenítés

Íme az Agentic AI-ügynök megjelenítése a Chart.js használatával:

{
  "type": "sáv",
  "adat": {
    "címkék": ["Felhasználói bevitel", "Döntés", "Adaptáció"],
    "adatkészletek": [
      {
        "label": "Agent AI Agent",
        "data": [10, 20, 30],
        "backgroundColor": "rgba(255, 99, 132, 0,2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      }
    ]
  },
  "opciók": {
    "cím": {
      "megjelenítés": igaz,
      "text": "Agent AI Agent"
    },
    "mérleg": {
      "yAxes": [
        {
          "kullancsok": {
            "beginAtZero": igaz
          }
        }
      ]
    }
  }
}

Ez a vizualizáció az Agentic AI-ügynök teljesítményét mutatja a felhasználói interakciók szimulálásában, a tesztadatok alapján hozott döntésekben és a változó tesztkörülményekhez való alkalmazkodásban.

Következtetés

Ebben a cikkben feltártuk az Agentic AI, az Orchestration Tools és a Software Engineering metszéspontját, hogy automatizálhassuk az összetett tesztforgatókönyveket a LangChain és a DSPy használatával. Megvalósítottuk az Agentic AI egy egyszerű példáját a determinisztikus tesztautomatizálásban, és számos parancsot/részletet biztosítottunk a LangChain és a DSPy számára. Az Agentic AI ügynök teljesítményét a Chart.js segítségével is megjelenítettük. Az Agentic AI és az Orchestration Tools kihasználásával a fejlesztők kifinomult tesztautomatizálási keretrendszereket építhetnek, amelyek szimulálják a felhasználói interakciókat, döntéseket hoznak a tesztadatok alapján, és alkalmazkodnak a változó tesztkörülményekhez.


Have Questions?

Let's Talk

Contact me on LinkedIn