Implementacija Agentic AI v avtomatizaciji determinističnih testov z LangChain in DSPy | B4N1

Implementacija Agentic AI v avtomatizaciji determinističnih testov z LangChain in DSPy

6 months ago · b4n1 Tiempo de lectura: 3 min

Implementacija Agentic AI v avtomatizaciji determinističnih testov z LangChain in DSPy

Uvod

Vse večja kompleksnost programskih sistemov je povzročila, da je avtomatizacija testiranja postala ključni vidik razvoja programske opreme. Tradicionalni okviri za avtomatizacijo testiranja temeljijo na skriptnih pristopih, ki so lahko krhki in jih je težko vzdrževati. V zadnjih letih je pojav Agentic AI in orodij za orkestracijo odprl nove možnosti za avtomatizacijo kompleksnih testnih scenarijev. V tem članku bomo raziskali presečišče Agentic AI, orodij za orkestracijo in programskega inženiringa za avtomatizacijo kompleksnih testnih scenarijev z uporabo LangChain in DSPy.

Kaj je Agentic AI?

Agentska umetna inteligenca se nanaša na vrsto umetne inteligence, ki je zasnovana za izvajanje dejanj v imenu uporabnika ali sistema. Agentski sistemi umetne inteligence so sposobni sprejemati odločitve, se učiti iz izkušenj in se prilagajati novim situacijam. V kontekstu avtomatizacije testiranja se lahko Agentic AI uporablja za avtomatizacijo zapletenih testnih scenarijev s simulacijo uporabniških interakcij, sprejemanjem odločitev na podlagi testnih podatkov in prilagajanjem spreminjajočim se testnim pogojem.

Kaj je LangChain?

LangChain je odprtokodno orodje za orkestracijo, ki razvijalcem omogoča izdelavo kompleksnih sistemov umetne inteligence z uporabo različnih programskih jezikov, vključno s Python, Rust in Go. LangChain zagotavlja prilagodljivo in modularno arhitekturo, ki razvijalcem omogoča integracijo različnih komponent umetne inteligence, kot sta obdelava naravnega jezika (NLP) in računalniški vid, za izgradnjo sofisticiranih sistemov umetne inteligence.

Kaj je DSPy?

DSPy je knjižnica Python, ki ponuja nabor orodij za gradnjo in uvajanje sistemov AI. DSPy je zasnovan za brezhibno delo z LangChain in ponuja vrsto funkcij, vključno z obdelavo podatkov, strojnim učenjem in globokim učenjem.

Implementacija Agentic AI v avtomatizaciji determinističnih testov

Za implementacijo Agentic AI v avtomatizacijo determinističnega testiranja lahko uporabimo LangChain in DSPy za izgradnjo ogrodja za avtomatizacijo testiranja, ki simulira uporabniške interakcije, sprejema odločitve na podlagi testnih podatkov in se prilagaja spreminjajočim se testnim pogojem.

Tukaj je preprost primer, kako lahko uporabimo LangChain in DSPy za avtomatizacijo testnega scenarija:

uvozi langchain
iz langchain.chains uvozite LLMChain
iz langchain.llms uvozi DSPyLLM


preskusni_scenarij = {
    "user_input": "prijava",
    "expected_output": "prijava uspešna"
}

# Definirajte agenta AI agenta
agent = LLMChain(
    llm=DSPyLLM(),
    input_type="besedilo",
    output_type="besedilo"
)

# Definirajte funkcijo avtomatizacije testiranja
def test_automation(test_scenario):
    # Simulirajte interakcijo uporabnika
    uporabniški_vnos = testni_scenarij["uporabniški_vnos"]
    # Odločite se na podlagi testnih podatkov
    odločitev = agent.run(uporabniški_vnos)
    # Prilagodite se spreminjajočim se testnim pogojem
    če je odločitev == "prijava uspešna":
        print("Test opravljen")
    drugače:
        print("Test ni uspel")

# Zaženite funkcijo avtomatizacije testiranja
testna_avtomatizacija(testni_scenarij)

V tem primeru definiramo testni scenarij, ki vključuje simulacijo uporabniške interakcije, sprejemanje odločitev na podlagi testnih podatkov in prilagajanje spreminjajočim se testnim pogojem. Nato definiramo agenta AI Agentic z uporabo LangChain in DSPy ter ga uporabimo za avtomatizacijo testnega scenarija.

Top 5-10 najbolj uporabljenih ukazov/izrezkov

Tukaj je 5-10 najbolj uporabljenih ukazov/delčkov za LangChain in DSPy:

  1. langchain.LLMChain(llm=DSPyLLM()): ustvari agenta AI Agentic z uporabo LangChain in DSPy.
  2. DSPyLLM(): Inicializira primerek DSPy LLM (model velikega jezika).
  3. LLMChain(input_type="text", output_type="text"): ustvari agenta AI Agentic z vrstami vnosa in izpisa besedila.
  4. agent.run(user_input): zažene agenta AI Agentic z uporabniškim vnosom.
  5. test_scenario = {"user_input": "login", "expected_output": "login successful"}: Definira testni scenarij z uporabniškim vnosom in pričakovanim rezultatom.
  6. langchain.chains.LLMChain(llm=DSPyLLM()): ustvari agenta AI Agentic z uporabo LangChain in DSPy.
  7. DSPyLLM().predict(user_input): Predvidi izhod DSPy LLM z uporabniškim vnosom.
  8. LLMChain(input_type="text", output_type="text").run(user_input): zažene agenta AI Agentic z vrstami vnosa in izpisa besedila.
  9. test_automation(test_scenario): zažene funkcijo avtomatizacije preizkusa s testnim scenarijem.
  10. langchain.chains.LLMChain(llm=DSPyLLM()).run(user_input): Zažene agenta AI Agentic z uporabniškim vnosom.

Vizualizacija

Tukaj je vizualizacija agenta AI Agentic z uporabo Chart.js:

{
  "vrsta": "bar",
  "podatki": {
    "labels": ["Uporabniški vnos", "Odločitev", "Prilagoditev"],
    "nabori podatkov": [
      {
        "label": "agentski AI agent",
        "podatki": [10, 20, 30],
        "Barva ozadja": "rgba(255, 99, 132, 0,2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      }
    ]
  },
  "možnosti": {
    "naslov": {
      "display": res,
      "text": "Agentski AI agent"
    },
    "tehtnice": {
      "yOsi": [
        {
          "ticks": {
            "beginAtZero": res
          }
        }
      ]
    }
  }
}

Ta vizualizacija prikazuje zmogljivost agenta AI Agentic pri simulaciji uporabniških interakcij, sprejemanju odločitev na podlagi testnih podatkov in prilagajanju spreminjajočim se testnim pogojem.

Sklep

V tem članku smo raziskali presečišče Agentic AI, orodij za orkestracijo in programskega inženiringa za avtomatizacijo kompleksnih testnih scenarijev z uporabo LangChain in DSPy. Izvedli smo preprost primer Agentic AI v avtomatizaciji determinističnih testov in zagotovili vrsto ukazov/delčkov za LangChain in DSPy. Z uporabo Chart.js smo tudi vizualizirali delovanje agenta AI Agentic. Z uporabo Agentic AI in orodij za orkestracijo lahko razvijalci zgradijo sofisticirana ogrodja za avtomatizacijo testiranja, ki simulirajo uporabniške interakcije, sprejemajo odločitve na podlagi testnih podatkov in se prilagajajo spreminjajočim se testnim pogojem.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn