LangChain жана DSPy менен детерминисттик тестти автоматташтырууда агенттик AIди ишке ашыруу | B4N1

LangChain жана DSPy менен детерминисттик тестти автоматташтырууда агенттик AIди ишке ашыруу

3 months ago · b4n1 Read time: 3 min

** LangChain жана DSPy менен детерминисттик тестти автоматташтырууда агенттик AI ишке ашыруу**

Танышуу

Программалык камсыздоо тутумдарынын татаалдашуусу тесттерди автоматташтыруу программалык камсыздоону иштеп чыгуунун чечүүчү аспектисине айлантты. Салттуу тестирлөөнүн автоматташтырылган алкактары скрипттелген ыкмаларга таянат, алар морт жана тейлөө кыйын болушу мүмкүн. Акыркы жылдары, Agentic AI жана Orchestration Tools пайда болушу татаал сыноо сценарийлерин автоматташтыруу үчүн жаңы мүмкүнчүлүктөрдү ачты. Бул макалада биз LangChain жана DSPy аркылуу татаал сыноо сценарийлерин автоматташтыруу үчүн Agentic AI, Orchestration Tools жана Software Engineering кесилишин изилдейбиз.

Agentic AI деген эмне?

Агенттик AI колдонуучунун же системанын атынан иш-аракеттерди жасоого арналган жасалма интеллекттин бир түрүн билдирет. Агенттик AI системалары чечимдерди кабыл алууга, тажрыйбадан үйрөнүүгө жана жаңы кырдаалдарга көнүүгө жөндөмдүү. Сыноону автоматташтыруу контекстинде Agentic AI колдонуучунун өз ара аракеттенүүсүн симуляциялоо, тесттик маалыматтардын негизинде чечимдерди кабыл алуу жана өзгөргөн тест шарттарына ыңгайлашуу аркылуу татаал сыноо сценарийлерин автоматташтыруу үчүн колдонулушу мүмкүн.

LangChain деген эмне?

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

DSPy деген эмне?

DSPy бул Python китепканасы, ал AI системаларын куруу жана жайылтуу үчүн куралдардын топтомун камсыз кылат. DSPy LangChain менен үзгүлтүксүз иштөө үчүн иштелип чыккан жана маалыматтарды иштетүү, машина үйрөнүү жана терең үйрөнүү сыяктуу бир катар функцияларды камсыз кылат.

Агенттик AIди детерминисттик тестти автоматташтырууда ишке ашыруу

Детерминисттик тестти автоматташтырууда Agentic AIди ишке ашыруу үчүн биз LangChain жана DSPyди колдонуучу өз ара аракеттешүүсүн симуляциялаган, тесттик маалыматтардын негизинде чечимдерди кабыл алган жана өзгөргөн тест шарттарына ыңгайлашкан тесттик автоматташтыруу негизин куруу үчүн колдоно алабыз.

Бул жерде сыноо сценарийин автоматташтыруу үчүн LangChain жана DSPy кантип колдонсо болорун жөнөкөй мисал келтиребиз:

импорттук langchain
langchain.chains импорттоо LMChain тартып
langchain.llms импорттоо DSPyLLM тартып


test_scenario = {
    "user_input": "логин",
    "expected_output": "кирүү ийгиликтүү"
}

# Agentic AI агентин аныктаңыз
агент = LMCchain(
    llm=DSPyLLM(),
    input_type = "текст",
    output_type="текст"
)

# Сыноо автоматташтыруу функциясын аныктоо
def test_automation(test_scenario):
    # Колдонуучунун өз ара аракетин симуляциялоо
    user_input = test_scenario["user_input"]
    # Сыноо маалыматтарынын негизинде чечим кабыл алыңыз
    чечим = agent.run(user_input)
    # Өзгөрүүчү сыноо шарттарына көнүү
    эгерде чечим == "кирүү ийгиликтүү":
        print("Сыноодон өттү")
    башка:
        print("Тест ишке ашкан жок")

# Сыноо автоматташтыруу функциясын иштетиңиз
сыноо_автоматташтыруу(сыноо_сценарийи)

Бул мисалда биз колдонуучунун өз ара аракеттенүүсүн симуляциялоону, тесттик маалыматтарга негизделген чечимди кабыл алууну жана өзгөргөн тест шарттарына ыңгайлашууну камтыган сыноо сценарийин аныктайбыз. Андан кийин биз LangChain жана DSPy аркылуу Agentic AI агентин аныктап, аны сыноо сценарийин автоматташтыруу үчүн колдонобуз.

Эң көп колдонулган 5-10 буйруктар/үзүндүлөр

Бул жерде LangChain жана DSPy үчүн эң көп колдонулган 5-10 командалар/үзүндүлөр:

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

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

Бул жерде Chart.js аркылуу Agentic AI агентинин визуализациясы келтирилген:

{
  "type": "бар",
  "маалымат": {
    "labels": ["Колдонуучунун киргизүүсү", "Чечим", "Адаптация"],
    "маалымат топтомдору": [
      {
        "label": "Агенттик AI агенти",
        "data": [10, 20, 30],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      }
    ]
  },
  "опциялар": {
    "аталышы": {
      "дисплей": чын,
      "text": "Агенттик AI агенти"
    },
    "тараза": {
      "yAxes": [
        {
          "кенелер": {
            "beginAtZero": чын
          }
        }
      ]
    }
  }
}

Бул визуализация Agentic AI агентинин колдонуучулардын өз ара аракеттенүүсүн имитациялоодо, тест маалыматтарынын негизинде чечимдерди кабыл алууда жана өзгөргөн сыноо шарттарына ыңгайлашууда натыйжалуулугун көрсөтөт.

Корутунду

Бул макалада биз LangChain жана DSPy аркылуу татаал сыноо сценарийлерин автоматташтыруу үчүн Agentic AI, Orchestration Tools жана Software Engineering кесилишин изилдедик. Детерминисттик тестти автоматташтырууда Agentic AIнин жөнөкөй мисалын ишке ашырдык жана LangChain жана DSPy үчүн бир катар буйруктарды/үзүндүлөрдү бердик. Ошондой эле Chart.js аркылуу Agentic AI агентинин иштешин визуализацияладык. Agentic AI жана Orchestration Tools колдонуу менен, иштеп чыгуучулар колдонуучунун өз ара аракеттенүүсүн симуляциялаган татаал тестирлөө автоматташтырылган алкактарды кура алышат, тесттик маалыматтардын негизинде чечимдерди кабыл алышат жана өзгөргөн тест шарттарына ыңгайлаша алышат.


Have Questions?

Let's Talk

Contact me on LinkedIn