Внедрение агентного ИИ в автоматизацию детерминированных тестов с помощью LangChain и DSPy | B4N1

Внедрение агентного ИИ в автоматизацию детерминированных тестов с помощью LangChain и DSPy

3 months ago · b4n1 Read time: 3 min

Внедрение агентного ИИ в автоматизацию детерминированного тестирования с помощью LangChain и DSPy

Введение

Растущая сложность программных систем сделала автоматизацию тестирования важнейшим аспектом разработки программного обеспечения. Традиционные среды автоматизации тестирования полагаются на скриптовые подходы, которые могут быть хрупкими и сложными в обслуживании. В последние годы появление агентного искусственного интеллекта и инструментов оркестрации открыло новые возможности для автоматизации сложных сценариев тестирования. В этой статье мы рассмотрим пересечение агентного искусственного интеллекта, инструментов оркестрации и разработки программного обеспечения для автоматизации сложных сценариев тестирования с использованием LangChain и DSPy.

Что такое агентный ИИ?

Агентический ИИ относится к типу искусственного интеллекта, который предназначен для выполнения действий от имени пользователя или системы. Агентные системы искусственного интеллекта способны принимать решения, учиться на опыте и адаптироваться к новым ситуациям. В контексте автоматизации тестирования Agentic AI можно использовать для автоматизации сложных сценариев тестирования путем моделирования взаимодействия с пользователем, принятия решений на основе тестовых данных и адаптации к изменяющимся условиям тестирования.

Что такое LangChain?

LangChain — это инструмент оркестрации с открытым исходным кодом, который позволяет разработчикам создавать сложные системы искусственного интеллекта с использованием различных языков программирования, включая Python, Rust и Go. LangChain предоставляет гибкую модульную архитектуру, которая позволяет разработчикам интегрировать различные компоненты искусственного интеллекта, такие как обработка естественного языка (NLP) и компьютерное зрение, для создания сложных систем искусственного интеллекта.

Что такое DSPy?

DSPy — это библиотека Python, предоставляющая набор инструментов для создания и развертывания систем искусственного интеллекта. DSPy разработан для бесперебойной работы с LangChain и предоставляет ряд функций, включая обработку данных, машинное обучение и глубокое обучение.

Внедрение агентного ИИ в автоматизацию детерминированных испытаний

Чтобы реализовать агентный ИИ в детерминированной автоматизации тестирования, мы можем использовать LangChain и DSPy для создания среды автоматизации тестирования, которая имитирует взаимодействие пользователей, принимает решения на основе тестовых данных и адаптируется к изменяющимся условиям тестирования.

Вот простой пример того, как мы можем использовать LangChain и DSPy для автоматизации сценария тестирования:

импорт лангчейна
из langchain.chains импортировать LLMChain
из langchain.llms импортировать DSPyLLM


test_scenario = {
    "user_input": "логин",
    "expected_output": "вход успешен"
}

# Определите агента Agentic AI
агент = LLMChain(
    llm=DSPyLLM(),
    input_type="текст",
    выходной_тип="текст"
)

# Определить функцию автоматизации тестирования
защита test_automation (test_scenario):
    # Имитировать взаимодействие с пользователем
    user_input = test_scenario["user_input"]
    # Принимайте решение на основе тестовых данных
    решение = Agent.run(user_input)
    # Адаптация к изменяющимся условиям испытаний
    если решение == «вход успешен»:
        print("Тест пройден")
    еще:
        print("Тест не пройден")

# Запускаем функцию автоматизации тестирования
test_automation (test_scenario)

В этом примере мы определяем сценарий тестирования, который включает в себя моделирование взаимодействия с пользователем, принятие решения на основе тестовых данных и адаптацию к изменяющимся условиям тестирования. Затем мы определяем агента Agentic AI с помощью LangChain и DSPy и используем его для автоматизации сценария тестирования.

Топ-5–10 наиболее часто используемых команд/фрагментов

Вот 5-10 наиболее часто используемых команд/фрагментов для LangChain и DSPy:

  1. langchain.LLMChain(llm=DSPyLLM()): создает агента AI с использованием LangChain и DSPy.
  2. DSPyLLM(): инициализирует экземпляр DSPy LLM (большая языковая модель).
  3. LLMChain(input_type="text", output_type="text"): Создаёт агента AI с типами текстового ввода и вывода.
  4. agent.run(user_input): запускает агент Agentic AI с вводом пользователя.
  5. test_scenario = {"user_input": "login", "expected_output": "вход успешный"}: определяет тестовый сценарий с пользовательским вводом и ожидаемым результатом.
  6. langchain.chains.LLMChain(llm=DSPyLLM()): создает агента AI с использованием LangChain и DSPy.
  7. DSPyLLM().predict(user_input): прогнозирует выходные данные DSPy LLM с учетом пользовательского ввода.
  8. LLMChain(input_type="text", output_type="text").run(user_input): запускает агент Agentic AI с типами текстового ввода и вывода.
  9. test_automation(test_scenario): запускает функцию автоматизации тестирования с использованием тестового сценария.
  10. langchain.chains.LLMChain(llm=DSPyLLM()).run(user_input): запускает агент Agentic AI с пользовательским вводом.

Визуализация

Вот визуализация агента Agentic AI с использованием Chart.js:

{
  "тип": "бар",
  "данные": {
    "labels": ["Ввод пользователя", "Решение", "Адаптация"],
    "наборы данных": [
      {
        "label": "Агентный ИИ-агент",
        «данные»: [10, 20, 30],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      }
    ]
  },
  "варианты": {
    "название": {
      «дисплей»: правда,
      "text": "Агентный ИИ-агент"
    },
    "весы": {
      "yAxes": [
        {
          "тикает": {
            «beginAtZero»: правда
          }
        }
      ]
    }
  }
}

Эта визуализация демонстрирует эффективность агента Agentic AI при моделировании взаимодействия с пользователем, принятии решений на основе тестовых данных и адаптации к изменяющимся условиям тестирования.

Заключение

В этой статье мы исследовали пересечение агентного искусственного интеллекта, инструментов оркестрации и разработки программного обеспечения для автоматизации сложных сценариев тестирования с использованием LangChain и DSPy. Мы реализовали простой пример агентного ИИ для автоматизации детерминированного тестирования и предоставили ряд команд/фрагментов для LangChain и DSPy. Мы также визуализировали производительность агента Agentic AI с помощью Chart.js. Используя агентный искусственный интеллект и инструменты оркестрации, разработчики могут создавать сложные среды автоматизации тестирования, которые имитируют взаимодействие с пользователем, принимают решения на основе тестовых данных и адаптируются к изменяющимся условиям тестирования.


Have Questions?

Let's Talk

Contact me on LinkedIn