Укараненне штучнага інтэлекту Agentic у аўтаматызацыі дэтэрмінаваных тэсціравання з дапамогай LangChain і DSPy
Уводзіны
Рост складанасці праграмных сістэм зрабіў аўтаматызацыю тэсціравання найважнейшым аспектам распрацоўкі праграмнага забеспячэння. Традыцыйныя рамкі аўтаматызацыі тэсціравання абапіраюцца на сцэнарныя падыходы, якія могуць быць далікатнымі і складанымі ў абслугоўванні. У апошнія гады з'яўленне Agentic AI і інструментаў аркестрацыі адкрыла новыя магчымасці для аўтаматызацыі складаных тэставых сцэнарыяў. У гэтым артыкуле мы вывучым скрыжаванне Agentic AI, інструментаў аркестрацыі і праграмнай інжынерыі для аўтаматызацыі складаных тэставых сцэнарыяў з выкарыстаннем LangChain і DSPy.
Што такое Agentic AI?
Agentic AI адносіцца да тыпу штучнага інтэлекту, які прызначаны для выканання дзеянняў ад імя карыстальніка або сістэмы. Сістэмы Agentic AI здольныя прымаць рашэнні, вучыцца на вопыце і адаптавацца да новых сітуацый. У кантэксце аўтаматызацыі тэсціравання Agentic AI можна выкарыстоўваць для аўтаматызацыі складаных тэставых сцэнарыяў шляхам мадэлявання ўзаемадзеяння карыстальнікаў, прыняцця рашэнняў на аснове тэставых даных і адаптацыі да зменлівых умоў тэставання.
Што такое LangChain?
LangChain - гэта інструмент аркестрацыі з адкрытым зыходным кодам, які дазваляе распрацоўшчыкам ствараць складаныя сістэмы штучнага інтэлекту з выкарыстаннем розных моў праграмавання, уключаючы Python, Rust і Go. LangChain забяспечвае гнуткую і модульную архітэктуру, якая дазваляе распрацоўшчыкам інтэграваць розныя кампаненты штучнага інтэлекту, такія як апрацоўка натуральнай мовы (NLP) і камп'ютэрны зрок, для стварэння складаных сістэм штучнага інтэлекту.
Што такое DSPy?
DSPy - гэта бібліятэка Python, якая забяспечвае набор інструментаў для стварэння і разгортвання сістэм штучнага інтэлекту. DSPy распрацаваны для бесперабойнай працы з LangChain і забяспечвае шэраг функцый, уключаючы апрацоўку даных, машыннае навучанне і глыбокае навучанне.
Укараненне штучнага інтэлекту Agentic у аўтаматызацыю дэтэрмінаваных тэсціравання
Каб укараніць Agentic AI у дэтэрмінаванай аўтаматызацыі тэсціравання, мы можам выкарыстоўваць LangChain і DSPy для стварэння сістэмы аўтаматызацыі тэсціравання, якая імітуе ўзаемадзеянне карыстальнікаў, прымае рашэнні на аснове тэставых даных і адаптуецца да зменлівых умоў тэставання.
Вось просты прыклад таго, як мы можам выкарыстоўваць LangChain і DSPy для аўтаматызацыі тэставага сцэнарыя:
імпарт Langchain
з langchain.chains імпартаваць LLMChain
з langchain.llms імпартаваць DSPyLLM
тэст_сцэнарый = {
"user_input": "уваход",
"expected_output": "уваход пасьпяховы"
}
# Вызначэнне агента Agentic AI
агент = LLMChain(
llm=DSPyLLM(),
input_type="тэкст",
output_type="тэкст"
)
# Вызначце функцыю аўтаматызацыі тэставання
def test_automation (тэставы_сцэнарый):
# Імітацыя ўзаемадзеяння з карыстальнікам
user_input = тэставы_сцэнарый ["user_input"]
# Прымайце рашэнне на падставе дадзеных тэсту
рашэнне = agent.run(user_input)
# Адаптавацца да зменлівых умоў выпрабаванняў
калі рашэнне == "уваход паспяховы":
print("Тэст пройдзены")
яшчэ:
print("Праверка не атрымалася")
# Запусціце функцыю аўтаматызацыі тэставання
тэст_аўтаматызацыі (тэставы_сцэнарый)
У гэтым прыкладзе мы вызначаем тэставы сцэнар, які прадугледжвае мадэляванне ўзаемадзеяння карыстальніка, прыняцце рашэння на аснове тэставых дадзеных і адаптацыю да зменлівых умоў тэставання. Затым мы вызначаем агент AI Agentic з дапамогай LangChain і DSPy і выкарыстоўваем яго для аўтаматызацыі тэставага сцэнарыя.
Топ-5-10 найбольш часта выкарыстоўваюцца каманд/фрагментаў
Вось 5-10 найбольш часта выкарыстоўваюцца каманд/фрагментаў для LangChain і DSPy:
langchain.LLMChain(llm=DSPyLLM()): стварае агент Agentic AI з дапамогай LangChain і DSPy.DSPyLLM(): ініцыялізуе асобнік DSPy LLM (вялікая моўная мадэль).LLMChain(input_type="text", output_type="text"): стварае агент Agentic AI з тыпамі ўводу і вываду тэксту.agent.run(user_input): Запускае агент Agentic AI з уводам карыстальніка.test_scenario = {"user_input": "уваход", "expected_output": "уваход паспяховы"}: вызначае тэставы сцэнар з уводам карыстальнікам і чаканым вынікам.langchain.chains.LLMChain(llm=DSPyLLM()): стварае агента AI Agentic з выкарыстаннем LangChain і DSPy.DSPyLLM().predict(user_input): прадказвае вывад DSPy LLM з уводам карыстальніка.LLMChain(input_type="text", output_type="text").run(user_input): запускае агент Agentic AI з тыпамі ўводу і вываду тэксту.test_automation(test_scenario): Запускае функцыю аўтаматызацыі тэставання з тэставым сцэнарыем.langchain.chains.LLMChain(llm=DSPyLLM()).run(user_input): Запускае агент Agentic AI з уводам карыстальніка.
Візуалізацыя
Вось візуалізацыя агента Agentic AI з выкарыстаннем Chart.js:
{
"тып": "бар",
"дадзеныя": {
"labels": ["Увод карыстальніка", "Рашэнне", "Адаптацыя"],
"наборы дадзеных": [
{
"label": "агент Agentic AI",
"дадзеныя": [10, 20, 30],
"backgroundColor": "rgba(255, 99, 132, 0,2)",
"borderColor": "rgba(255, 99, 132, 1)",
"borderWidth": 1
}
]
},
"параметры": {
"назва": {
"дысплей": праўда,
"text": "агент Agentic AI"
},
"шалі": {
"yAxes": [
{
"цікі": {
"beginAtZero": праўда
}
}
]
}
}
}
Гэтая візуалізацыя паказвае прадукцыйнасць агента Agentic AI пры мадэляванні ўзаемадзеяння карыстальнікаў, прыняцці рашэнняў на аснове тэставых даных і адаптацыі да зменлівых умоў тэставання.
Выснова
У гэтым артыкуле мы даследавалі ўзаемасувязь Agentic AI, інструментаў аркестрацыі і распрацоўкі праграмнага забеспячэння для аўтаматызацыі складаных тэставых сцэнарыяў з выкарыстаннем LangChain і DSPy. Мы рэалізавалі просты прыклад штучнага інтэлекту Agentic у аўтаматызацыі дэтэрмінаванага тэсціравання і прапанавалі шэраг каманд/фрагментаў для LangChain і DSPy. Мы таксама візуалізавалі прадукцыйнасць агента Agentic AI з дапамогай Chart.js. Выкарыстоўваючы AI і інструменты аркестрацыі Agentic, распрацоўшчыкі могуць ствараць складаныя структуры аўтаматызацыі тэсціравання, якія мадэлююць узаемадзеянне карыстальнікаў, прымаюць рашэнні на аснове тэставых даных і адаптуюцца да зменлівых умоў тэставання.