LangChain ۽ DSPy سان ڊيٽرمنسٽڪ ٽيسٽ آٽوميشن ۾ ايجنٽڪ AI کي لاڳو ڪرڻ
تعارف
سافٽ ويئر سسٽم جي وڌندڙ پيچيدگي ٽيسٽ آٽوميشن کي سافٽ ويئر ڊولپمينٽ جو هڪ اهم پاسو بڻائي ڇڏيو آهي. روايتي ٽيسٽ آٽوميشن فريم ورڪ اسڪرپٽ ٿيل طريقن تي ڀاڙين ٿا، جيڪي خراب ۽ برقرار رکڻ ڏکيو ٿي سگھن ٿا. تازن سالن ۾، Agentic AI ۽ Orchestration Tools جو اڀرڻ، پيچيده ٽيسٽ منظرنامي کي خودڪار ڪرڻ لاءِ نوان امڪان کولي ڇڏيا آهن. هن آرٽيڪل ۾، اسين LangChain ۽ DSPy استعمال ڪندي پيچيده ٽيسٽ منظرنامي کي خودڪار ڪرڻ لاءِ Agentic AI، Orchestration Tools، ۽ Software Engineering جي چونڪ کي ڳولينداسين.
Agentic AI ڇا آهي؟
Agentic AI هڪ قسم جي مصنوعي ذهانت ڏانهن اشارو ڪري ٿو جيڪا صارف يا سسٽم جي طرفان ڪارناما ڪرڻ لاء ٺهيل آهي. Agentic AI سسٽم فيصلا ڪرڻ، تجربي مان سکڻ، ۽ نئين حالتن کي اپنائڻ جي قابل آهن. ٽيسٽ آٽوميشن جي حوالي سان، Agentic AI استعمال ڪري سگھجي ٿو پيچيده ٽيسٽ منظرنامي کي خودڪار ڪرڻ لاءِ استعمال ڪندڙ جي رابطي کي تخليق ڪندي، فيصلا ڪرڻ ٽيسٽ ڊيٽا جي بنياد تي، ۽ ٽيسٽ جي حالتن کي تبديل ڪرڻ سان.
LangChain ڇا آهي؟
LangChain هڪ اوپن سورس آرڪيسٽريشن ٽول آهي جيڪو ڊولپرز کي اجازت ڏئي ٿو پيچيده AI سسٽم ٺاهڻ جي مختلف پروگرامنگ ٻولين کي استعمال ڪندي، بشمول Python، Rust ۽ Go. LangChain هڪ لچڪدار ۽ ماڊل آرڪيٽيڪچر مهيا ڪري ٿو جيڪو ڊولپرز کي مختلف AI حصن کي ضم ڪرڻ جي قابل بڻائي ٿو، جهڙوڪ قدرتي ٻولي پروسيسنگ (NLP) ۽ ڪمپيوٽر ويزن، نفيس AI سسٽم ٺاهڻ لاءِ.
DSPy ڇا آهي؟
DSPy هڪ Python لائبريري آهي جيڪا AI سسٽم جي تعمير ۽ ترتيب ڏيڻ لاءِ اوزارن جو هڪ سيٽ مهيا ڪري ٿي. DSPy LangChain سان بيحد ڪم ڪرڻ لاءِ ٺهيل آهي ۽ خاصيتون مهيا ڪري ٿي، جنهن ۾ ڊيٽا پروسيسنگ، مشين لرننگ، ۽ ڊيپ لرننگ شامل آهن.
ڊٽرمنسٽڪ ٽيسٽ آٽوميشن ۾ ايجنٽ AI کي لاڳو ڪرڻ
Agentic AI کي deterministic ٽيسٽ آٽوميشن ۾ لاڳو ڪرڻ لاءِ، اسان LangChain ۽ DSPy استعمال ڪري سگھون ٿا ٽيسٽ آٽوميشن فريم ورڪ ٺاھڻ لاءِ جيڪو صارف جي رابطي کي سمائي ٿو، ٽيسٽ ڊيٽا جي بنياد تي فيصلا ڪري ٿو، ۽ ٽيسٽ جي حالتن کي تبديل ڪرڻ لاءِ موافقت ڪري ٿو.
هتي هڪ سادي مثال آهي ته اسان ڪيئن استعمال ڪري سگهون ٿا LangChain ۽ DSPy هڪ امتحان واري منظر کي خودڪار ڪرڻ لاءِ: ``پٿون langchain درآمد ڪريو langchain.chains کان LLMCchain درآمد ڪريو langchain.llms کان DSPyLLM درآمد ڪريو
test_scenario = { "user_input": "لاگ ان", "expected_output": "لاگ ان ڪامياب" }
ايجنٽ AI ايجنٽ جي وضاحت ڪريو
ايجنٽ = ايل ايل ايم چين ( llm=DSPyLLM(), input_type="text" output_type="text" )
ٽيسٽ آٽوميشن فنڪشن کي بيان ڪريو
def test_automation(test_scenario): # استعمال ڪندڙ جي رابطي کي نقل ڪريو user_input = test_scenario["user_input"] # فيصلو ڪريو ٽيسٽ ڊيٽا جي بنياد تي فيصلو = agent.run (user_input) # ٽيسٽ جي حالتن کي تبديل ڪرڻ لاء اپنائڻ جيڪڏهن فيصلو == "لاگ ان ڪامياب": پرنٽ ("ٽيسٽ پاس") ٻيو: پرنٽ ("ٽيسٽ ناڪام")
هلايو ٽيسٽ آٽوميشن فنڪشن
test_automation(test_scenario) `` هن مثال ۾، اسان هڪ امتحان واري منظرنامي جي وضاحت ڪريون ٿا جنهن ۾ صارف جي رابطي کي تخليق ڪرڻ، ٽيسٽ ڊيٽا جي بنياد تي فيصلو ڪرڻ، ۽ ٽيسٽ جي حالتن کي تبديل ڪرڻ ۾ شامل آهي. اسان پوءِ LangChain ۽ DSPy استعمال ڪندي هڪ Agentic AI ايجنٽ جي وضاحت ڪريون ٿا، ۽ ان کي استعمال ڪريو آزمائشي منظر کي خودڪار ڪرڻ لاءِ.
مٿين 5-10 سڀ کان وڌيڪ استعمال ٿيل ڪمانڊ/ٽڪرا
هتي آهن مٿيون 5-10 سڀ کان وڌيڪ استعمال ٿيل ڪمانڊ / ٽڪڙا LangChain ۽ DSPy لاءِ:
langchain.LLMCchain(llm=DSPyLLM()): LangChain ۽ DSPy استعمال ڪندي هڪ ايجنٽ AI ايجنٽ ٺاهي ٿو.DSPyLLM(): DSPy LLM (وڏي ٻولي ماڊل) مثال جي شروعات ڪري ٿو.LLMChain(input_type="text", output_type="text"): ٽيڪسٽ ان پٽ ۽ آئوٽ پٽ جي قسمن سان گڏ هڪ ايجنٽ AI ايجنٽ ٺاهي ٿو.agent.run(user_input): Agentic AI ايجنٽ کي يوزر ان پٽ سان هلائي ٿو.test_scenario = {"user_input": "login", "expected_output": "login successful"}: استعمال ڪندڙ جي ان پٽ ۽ متوقع آئوٽ پٽ سان ٽيسٽ واري منظر کي بيان ڪري ٿو.langchain.chains.LLMChain(llm=DSPyLLM()): LangChain ۽ DSPy استعمال ڪندي هڪ ايجنٽ AI ايجنٽ ٺاهي ٿو.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): استعمال ڪندڙ ان پٽ سان ايجنٽڪ AI ايجنٽ کي هلائي ٿو.
تصوير
هتي Chart.js استعمال ڪندي Agentic AI ايجنٽ جو هڪ تصور آهي: جيسن { "قسم": "بار"، "ڊيٽا": { "labels": ["يوزر ان پٽ"، "فيصلو"، "موافقت"], "ڊيٽا سيٽس": [ { "label": "Agentic AI ايجنٽ", "ڊيٽا": [10, 20, 30], "backgroundColor": "rgba(255, 99, 132, 0.2)", "borderColor": "rgba(255, 99, 132, 1)", "سرحد جي ويڪر": 1 } ] }، "اختيارن": { "عنوان": { "display": سچ، "text": "Agentic AI ايجنٽ" }، "ترازو": { "yAxes": [ { "ticks": { "beginAtZero": سچ } } ] } } } `` هي تصور ڏيکاري ٿو Agentic AI ايجنٽ جي ڪارڪردگيءَ کي استعمال ڪندڙ جي ڳالهين کي ترتيب ڏيڻ، ٽيسٽ ڊيٽا جي بنياد تي فيصلا ڪرڻ، ۽ ٽيسٽ جي حالتن کي تبديل ڪرڻ سان.
اختتام
هن آرٽيڪل ۾، اسان LangChain ۽ DSPy استعمال ڪندي پيچيده امتحان واري منظرنامي کي خودڪار ڪرڻ لاءِ ايجنٽ AI، آرڪيسٽريشن ٽولز، ۽ سافٽ ويئر انجنيئرنگ جي چونڪ کي ڳولي لڌو. اسان عمل ڪيو Agentic AI جو هڪ سادو مثال deterministic test automation ۾ ۽ LangChain ۽ DSPy لاءِ حڪمن/اسنيپيٽس جي هڪ حد مهيا ڪئي. اسان Chart.js استعمال ڪندي Agentic AI ايجنٽ جي ڪارڪردگيءَ جو پڻ جائزو ورتو. Agentic AI ۽ Orchestration Tools کي استعمال ڪندي، ڊولپرز نفيس ٽيسٽ آٽوميشن فريم ورڪ ٺاهي سگھن ٿا جيڪي صارف جي رابطي کي نقل ڪن ٿا، ٽيسٽ ڊيٽا جي بنياد تي فيصلا ڪن ٿا، ۽ ٽيسٽ جي حالتن کي تبديل ڪرڻ سان مطابقت رکن ٿا.