Implementacja agentycznej sztucznej inteligencji w deterministycznej automatyzacji testów za pomocą LangChain i DSPy | B4N1

Implementacja agentycznej sztucznej inteligencji w deterministycznej automatyzacji testów za pomocą LangChain i DSPy

3 months ago · b4n1 Tiempo de lectura: 3 min

Wdrażanie agentycznej sztucznej inteligencji w deterministycznej automatyzacji testów za pomocą LangChain i DSPy

Wprowadzenie

Rosnąca złożoność systemów oprogramowania sprawiła, że automatyzacja testów stała się kluczowym aspektem tworzenia oprogramowania. Tradycyjne struktury automatyzacji testów opierają się na podejściach skryptowych, które mogą być kruche i trudne w utrzymaniu. W ostatnich latach pojawienie się agentycznej sztucznej inteligencji i narzędzi orkiestracyjnych otworzyło nowe możliwości automatyzacji złożonych scenariuszy testowych. W tym artykule zbadamy skrzyżowanie agentycznej sztucznej inteligencji, narzędzi orkiestracyjnych i inżynierii oprogramowania w celu automatyzacji złożonych scenariuszy testowych przy użyciu LangChain i DSPy.

Co to jest agentyczna sztuczna inteligencja?

Agentyczna sztuczna inteligencja odnosi się do rodzaju sztucznej inteligencji zaprojektowanej do podejmowania działań w imieniu użytkownika lub systemu. Agentyczne systemy AI potrafią podejmować decyzje, uczyć się na doświadczeniach i dostosowywać do nowych sytuacji. W kontekście automatyzacji testów Agentic AI można wykorzystać do automatyzacji złożonych scenariuszy testowych poprzez symulację interakcji użytkownika, podejmowanie decyzji na podstawie danych testowych i dostosowywanie się do zmieniających się warunków testowych.

Co to jest LangChain?

LangChain to narzędzie do orkiestracji typu open source, które umożliwia programistom tworzenie złożonych systemów sztucznej inteligencji przy użyciu różnych języków programowania, w tym Python, Rust i Go. LangChain zapewnia elastyczną i modułową architekturę, która umożliwia programistom integrowanie różnych komponentów sztucznej inteligencji, takich jak przetwarzanie języka naturalnego (NLP) i wizja komputerowa, w celu tworzenia wyrafinowanych systemów sztucznej inteligencji.

Co to jest DSPy?

DSPy to biblioteka Pythona, która udostępnia zestaw narzędzi do budowania i wdrażania systemów AI. DSPy został zaprojektowany do bezproblemowej współpracy z LangChain i zapewnia szereg funkcji, w tym przetwarzanie danych, uczenie maszynowe i głębokie uczenie się.

Wdrażanie agentycznej sztucznej inteligencji w deterministycznej automatyzacji testów

Aby wdrożyć Agentic AI w deterministycznej automatyzacji testów, możemy użyć LangChain i DSPy do zbudowania frameworku automatyzacji testów, który symuluje interakcje użytkownika, podejmuje decyzje na podstawie danych testowych i dostosowuje się do zmieniających się warunków testowych.

Oto prosty przykład wykorzystania LangChain i DSPy do automatyzacji scenariusza testowego:

zaimportuj łańcuch językowy
z langchain.chains importuj LLMCain
z langchain.llms importuj DSPyLLM


test_scenariusz = {
    "user_input": "zaloguj się",
    "expected_output": "logowanie powiodło się"
}

# Zdefiniuj agenta Agentic AI
agent = LLMCain(
    llm=DSPyLLM(),
    typ_wejściowy="tekst",
    typ_wyjścia="tekst"
)

# Zdefiniuj funkcję automatyzacji testów
def test_automatyzacja(test_scenariusz):
    # Symuluj interakcję użytkownika
    dane_użytkownika = scenariusz_testowy["dane_użytkownika"]
    # Podejmij decyzję na podstawie danych testowych
    decyzja = agent.run(wejście_użytkownika)
    # Dostosuj się do zmieniających się warunków testowych
    if decyzja == „logowanie powiodło się”:
        print("Test zaliczony")
    inne:
        print("Test nie powiódł się")

# Uruchom funkcję automatyzacji testów
test_automatyzacja(scenariusz_testowy)

W tym przykładzie definiujemy scenariusz testowy, który polega na symulowaniu interakcji użytkownika, podejmowaniu decyzji na podstawie danych testowych i dostosowywaniu się do zmieniających się warunków testowych. Następnie definiujemy agenta Agentic AI za pomocą LangChain i DSPy i używamy go do automatyzacji scenariusza testowego.

Top 5-10 najczęściej używanych poleceń/fragmentów

Oto 5-10 najczęściej używanych poleceń/fragmentów dla LangChain i DSPy:

  1. langchain.LLMCain(llm=DSPyLLM()): Tworzy agenta Agentic AI przy użyciu LangChain i DSPy.
  2. DSPyLLM(): Inicjuje instancję DSPy LLM (model dużego języka).
  3. LLMCain(input_type="text", Output_type="text"): Tworzy agenta Agentic AI z typami wprowadzania i wyprowadzania tekstu.
  4. agent.run(user_input): Uruchamia agenta Agentic AI przy udziale użytkownika.
  5. test_scenario = {"user_input": "login", "expected_output": "logowanie powiodło się"}: Definiuje scenariusz testowy z danymi wejściowymi użytkownika i oczekiwanymi wynikami.
  6. langchain.chains.LLMChain(llm=DSPyLLM()): Tworzy agenta Agentic AI przy użyciu LangChain i DSPy.
  7. DSPyLLM().predict(user_input): Przewiduje wyjście DSPy LLM na podstawie danych wejściowych użytkownika.
  8. LLMChain(input_type="text", Output_type="text").run(user_input): Uruchamia agenta Agentic AI z typami wprowadzania i wyprowadzania tekstu.
  9. test_automation(test_scenario): Uruchamia funkcję automatyzacji testów ze scenariuszem testowym.
  10. langchain.chains.LLMChain(llm=DSPyLLM()).run(user_input): Uruchamia agenta Agentic AI przy udziale użytkownika.

Wyobrażanie sobie

Oto wizualizacja agenta Agentic AI przy użyciu Chart.js:

{
  "typ": "pasek",
  „dane”: {
    „etykiety”: [„Wprowadzenie użytkownika”, „Decyzja”, „Dostosowanie”],
    „zestawy danych”: [
      {
        "label": "Agent AI",
        „dane”: [10, 20, 30],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        „Szerokość obramowania”: 1
      }
    ]
  },
  „opcje”: {
    "tytuł": {
      "wyświetlacz": prawda,
      "text": "Agent AI"
    },
    „skale”: {
      „Osie y”: [
        {
          „tyknięcia”: {
            „beginAtZero”: prawda
          }
        }
      ]
    }
  }
}

Ta wizualizacja przedstawia wydajność agenta Agentic AI w symulowaniu interakcji użytkownika, podejmowaniu decyzji na podstawie danych testowych i dostosowywaniu się do zmieniających się warunków testowych.

Wniosek

W tym artykule zbadaliśmy połączenie agentycznej sztucznej inteligencji, narzędzi orkiestracyjnych i inżynierii oprogramowania w celu automatyzacji złożonych scenariuszy testowych przy użyciu LangChain i DSPy. Zaimplementowaliśmy prosty przykład Agentic AI w deterministycznej automatyzacji testów i udostępniliśmy szereg poleceń/fragmentów dla LangChain i DSPy. Zwizualizowaliśmy także wydajność agenta Agentic AI za pomocą Chart.js. Wykorzystując agentyczną sztuczną inteligencję i narzędzia orkiestracyjne, programiści mogą tworzyć zaawansowane struktury automatyzacji testów, które symulują interakcje użytkownika, podejmują decyzje na podstawie danych testowych i dostosowują się do zmieniających się warunków testowych.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn