LangChain ਅਤੇ DSPy ਦੇ ਨਾਲ ਨਿਰਣਾਇਕ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਵਿੱਚ ਏਜੰਟਿਕ ਏਆਈ ਨੂੰ ਲਾਗੂ ਕਰਨਾ | B4N1

LangChain ਅਤੇ DSPy ਦੇ ਨਾਲ ਨਿਰਣਾਇਕ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਵਿੱਚ ਏਜੰਟਿਕ ਏਆਈ ਨੂੰ ਲਾਗੂ ਕਰਨਾ

6 months ago · b4n1 Read time: 4 min

LangChain ਅਤੇ DSPy ਨਾਲ ਨਿਰਣਾਇਕ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਵਿੱਚ ਏਜੰਟਿਕ ਏਆਈ ਨੂੰ ਲਾਗੂ ਕਰਨਾ

ਜਾਣ-ਪਛਾਣ

ਸੌਫਟਵੇਅਰ ਪ੍ਰਣਾਲੀਆਂ ਦੀ ਵਧਦੀ ਜਟਿਲਤਾ ਨੇ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਨੂੰ ਸਾਫਟਵੇਅਰ ਵਿਕਾਸ ਦਾ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਪਹਿਲੂ ਬਣਾ ਦਿੱਤਾ ਹੈ। ਪਰੰਪਰਾਗਤ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਫਰੇਮਵਰਕ ਸਕ੍ਰਿਪਟਡ ਪਹੁੰਚ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ, ਜੋ ਕਿ ਭੁਰਭੁਰਾ ਅਤੇ ਬਣਾਈ ਰੱਖਣ ਲਈ ਮੁਸ਼ਕਲ ਹੋ ਸਕਦੇ ਹਨ। ਹਾਲ ਹੀ ਦੇ ਸਾਲਾਂ ਵਿੱਚ, Agentic AI ਅਤੇ Orchestration Tools ਦੇ ਉਭਾਰ ਨੇ ਗੁੰਝਲਦਾਰ ਟੈਸਟ ਦ੍ਰਿਸ਼ਾਂ ਨੂੰ ਸਵੈਚਾਲਤ ਕਰਨ ਲਈ ਨਵੀਆਂ ਸੰਭਾਵਨਾਵਾਂ ਖੋਲ੍ਹ ਦਿੱਤੀਆਂ ਹਨ। ਇਸ ਲੇਖ ਵਿੱਚ, ਅਸੀਂ LangChain ਅਤੇ DSPy ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਗੁੰਝਲਦਾਰ ਟੈਸਟ ਦ੍ਰਿਸ਼ਾਂ ਨੂੰ ਸਵੈਚਲਿਤ ਕਰਨ ਲਈ Agentic AI, Orchestration Tools, ਅਤੇ Software Engineering ਦੇ ਇੰਟਰਸੈਕਸ਼ਨ ਦੀ ਪੜਚੋਲ ਕਰਾਂਗੇ।

Agentic AI ਕੀ ਹੈ?

Agentic AI ਇੱਕ ਕਿਸਮ ਦੀ ਨਕਲੀ ਬੁੱਧੀ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜੋ ਉਪਭੋਗਤਾ ਜਾਂ ਸਿਸਟਮ ਦੀ ਤਰਫੋਂ ਕਾਰਵਾਈਆਂ ਕਰਨ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ। ਏਜੰਟਿਕ AI ਸਿਸਟਮ ਫੈਸਲੇ ਲੈਣ, ਅਨੁਭਵ ਤੋਂ ਸਿੱਖਣ ਅਤੇ ਨਵੀਆਂ ਸਥਿਤੀਆਂ ਦੇ ਅਨੁਕੂਲ ਹੋਣ ਦੇ ਸਮਰੱਥ ਹਨ। ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਦੇ ਸੰਦਰਭ ਵਿੱਚ, Agentic AI ਦੀ ਵਰਤੋਂ ਉਪਭੋਗਤਾ ਇੰਟਰੈਕਸ਼ਨਾਂ ਦੀ ਨਕਲ ਕਰਕੇ, ਟੈਸਟ ਡੇਟਾ ਦੇ ਅਧਾਰ 'ਤੇ ਫੈਸਲੇ ਲੈ ਕੇ, ਅਤੇ ਟੈਸਟ ਦੀਆਂ ਸਥਿਤੀਆਂ ਨੂੰ ਬਦਲਣ ਦੇ ਅਨੁਕੂਲ ਬਣ ਕੇ ਗੁੰਝਲਦਾਰ ਟੈਸਟ ਦ੍ਰਿਸ਼ਾਂ ਨੂੰ ਸਵੈਚਲਿਤ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।

ਲੈਂਗਚੈਨ ਕੀ ਹੈ?

ਲੈਂਗਚੈਨ ਇੱਕ ਓਪਨ-ਸੋਰਸ ਆਰਕੈਸਟ੍ਰੇਸ਼ਨ ਟੂਲ ਹੈ ਜੋ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਪਾਇਥਨ, ਰਸਟ, ਅਤੇ ਗੋ ਸਮੇਤ ਕਈ ਤਰ੍ਹਾਂ ਦੀਆਂ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਗੁੰਝਲਦਾਰ AI ਸਿਸਟਮ ਬਣਾਉਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ। LangChain ਇੱਕ ਲਚਕਦਾਰ ਅਤੇ ਮਾਡਿਊਲਰ ਆਰਕੀਟੈਕਚਰ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਜੋ ਡਿਵੈਲਪਰਾਂ ਨੂੰ ਵੱਖ-ਵੱਖ AI ਭਾਗਾਂ ਨੂੰ ਏਕੀਕ੍ਰਿਤ ਕਰਨ ਦੇ ਯੋਗ ਬਣਾਉਂਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਕੁਦਰਤੀ ਭਾਸ਼ਾ ਪ੍ਰੋਸੈਸਿੰਗ (NLP) ਅਤੇ ਕੰਪਿਊਟਰ ਵਿਜ਼ਨ, ਆਧੁਨਿਕ AI ਸਿਸਟਮ ਬਣਾਉਣ ਲਈ।

DSPy ਕੀ ਹੈ?

DSPy ਇੱਕ ਪਾਈਥਨ ਲਾਇਬ੍ਰੇਰੀ ਹੈ ਜੋ AI ਸਿਸਟਮਾਂ ਨੂੰ ਬਣਾਉਣ ਅਤੇ ਤੈਨਾਤ ਕਰਨ ਲਈ ਸੰਦਾਂ ਦਾ ਇੱਕ ਸੈੱਟ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ। DSPy ਨੂੰ LangChain ਨਾਲ ਨਿਰਵਿਘਨ ਕੰਮ ਕਰਨ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਡਾਟਾ ਪ੍ਰੋਸੈਸਿੰਗ, ਮਸ਼ੀਨ ਸਿਖਲਾਈ, ਅਤੇ ਡੂੰਘੀ ਸਿਖਲਾਈ ਸਮੇਤ ਕਈ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।

ਡਿਟਰਮਿਨਿਸਟਿਕ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਵਿੱਚ ਏਜੰਟਿਕ ਏਆਈ ਨੂੰ ਲਾਗੂ ਕਰਨਾ

ਨਿਰਣਾਇਕ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਵਿੱਚ Agentic AI ਨੂੰ ਲਾਗੂ ਕਰਨ ਲਈ, ਅਸੀਂ ਇੱਕ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਫਰੇਮਵਰਕ ਬਣਾਉਣ ਲਈ LangChain ਅਤੇ DSPy ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹਾਂ ਜੋ ਉਪਭੋਗਤਾ ਇੰਟਰੈਕਸ਼ਨਾਂ ਦੀ ਨਕਲ ਕਰਦਾ ਹੈ, ਟੈਸਟ ਡੇਟਾ ਦੇ ਅਧਾਰ 'ਤੇ ਫੈਸਲੇ ਲੈਂਦਾ ਹੈ, ਅਤੇ ਟੈਸਟ ਦੀਆਂ ਸਥਿਤੀਆਂ ਨੂੰ ਬਦਲਣ ਦੇ ਅਨੁਕੂਲ ਹੁੰਦਾ ਹੈ।

ਇੱਥੇ ਇੱਕ ਸਧਾਰਨ ਉਦਾਹਰਨ ਹੈ ਕਿ ਅਸੀਂ ਇੱਕ ਟੈਸਟ ਦ੍ਰਿਸ਼ ਨੂੰ ਸਵੈਚਲਿਤ ਕਰਨ ਲਈ ਲੈਂਗਚੈਨ ਅਤੇ ਡੀਐਸਪੀਆਈ ਦੀ ਵਰਤੋਂ ਕਿਵੇਂ ਕਰ ਸਕਦੇ ਹਾਂ: ``ਅਜਗਰ langchain ਆਯਾਤ langchain.chains ਤੋਂ LLMCchain ਆਯਾਤ ਕਰੋ langchain.llms ਤੋਂ DSPyLLM ਆਯਾਤ ਕਰੋ

test_scenario = { "user_input": "ਲਾਗਇਨ", "expected_output": "ਲੌਗਇਨ ਸਫਲ" }

ਏਜੰਟਿਕ ਏਆਈ ਏਜੰਟ ਦੀ ਪਰਿਭਾਸ਼ਾ ਦਿਓ

ਏਜੰਟ = LLMCchain ( llm=DSPyLLM(), input_type="text", output_type="text" )

ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਫੰਕਸ਼ਨ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ

def ਟੈਸਟ_ਆਟੋਮੇਸ਼ਨ(ਟੈਸਟ_ਸੀਨਰੀਓ): # ਉਪਭੋਗਤਾ ਇੰਟਰੈਕਸ਼ਨ ਦੀ ਨਕਲ ਕਰੋ user_input = test_scenario["user_input"] # ਟੈਸਟ ਡੇਟਾ ਦੇ ਅਧਾਰ ਤੇ ਫੈਸਲਾ ਕਰੋ ਫੈਸਲਾ = agent.run(user_input) # ਬਦਲਦੇ ਹੋਏ ਟੈਸਟ ਦੀਆਂ ਸਥਿਤੀਆਂ ਦੇ ਅਨੁਕੂਲ ਜੇਕਰ ਫੈਸਲਾ == "ਲੌਗਇਨ ਸਫਲ": ਪ੍ਰਿੰਟ ("ਟੈਸਟ ਪਾਸ") ਹੋਰ: ਪ੍ਰਿੰਟ ("ਟੈਸਟ ਅਸਫਲ")

ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਫੰਕਸ਼ਨ ਚਲਾਓ

ਟੈਸਟ_ਆਟੋਮੇਸ਼ਨ(ਟੈਸਟ_ਸੀਨਰੀਓ) `` ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, ਅਸੀਂ ਇੱਕ ਟੈਸਟ ਦ੍ਰਿਸ਼ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਾਂ ਜਿਸ ਵਿੱਚ ਇੱਕ ਉਪਭੋਗਤਾ ਇੰਟਰੈਕਸ਼ਨ ਦੀ ਨਕਲ ਕਰਨਾ, ਟੈਸਟ ਡੇਟਾ ਦੇ ਆਧਾਰ 'ਤੇ ਫੈਸਲਾ ਲੈਣਾ, ਅਤੇ ਟੈਸਟ ਦੀਆਂ ਸਥਿਤੀਆਂ ਨੂੰ ਬਦਲਣ ਦੇ ਅਨੁਕੂਲ ਹੋਣਾ ਸ਼ਾਮਲ ਹੈ। ਅਸੀਂ ਫਿਰ LangChain ਅਤੇ DSPy ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਇੱਕ Agentic AI ਏਜੰਟ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਾਂ, ਅਤੇ ਇਸਦੀ ਵਰਤੋਂ ਟੈਸਟ ਦੇ ਦ੍ਰਿਸ਼ ਨੂੰ ਸਵੈਚਲਿਤ ਕਰਨ ਲਈ ਕਰਦੇ ਹਾਂ।

ਟੌਪ 5-10 ਸਭ ਤੋਂ ਵੱਧ ਵਰਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ ਕਮਾਂਡਾਂ/ਸਨਿਪੇਟਸ

ਇੱਥੇ LangChain ਅਤੇ DSPy ਲਈ ਸਭ ਤੋਂ ਵੱਧ ਵਰਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ 5-10 ਕਮਾਂਡਾਂ/ਸਨਿਪਟ ਹਨ:

  1. langchain.LLMChain(llm=DSPyLLM()): LangChain ਅਤੇ DSPy ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਏਜੰਟਿਕ AI ਏਜੰਟ ਬਣਾਉਂਦਾ ਹੈ।
  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": "login successful"}: ਵਰਤੋਂਕਾਰ ਇੰਪੁੱਟ ਅਤੇ ਸੰਭਾਵਿਤ ਆਉਟਪੁੱਟ ਦੇ ਨਾਲ ਇੱਕ ਟੈਸਟ ਦ੍ਰਿਸ਼ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ।
  6. langchain.chains.LLMChain(llm=DSPyLLM()): LangChain ਅਤੇ DSPy ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਏਜੰਟ AI ਏਜੰਟ ਬਣਾਉਂਦਾ ਹੈ।
  7. DSPyLLM().predict(user_input): ਉਪਭੋਗਤਾ ਇੰਪੁੱਟ ਦੇ ਨਾਲ DSPy LLM ਦੇ ਆਉਟਪੁੱਟ ਦੀ ਭਵਿੱਖਬਾਣੀ ਕਰਦਾ ਹੈ।
  8. LLMChain(input_type="text", output_type="text").run(user_input): ਟੈਕਸਟ ਇਨਪੁਟ ਅਤੇ ਆਉਟਪੁੱਟ ਕਿਸਮਾਂ ਨਾਲ ਏਜੰਟਿਕ AI ਏਜੰਟ ਚਲਾਉਂਦਾ ਹੈ।
  9. test_automation(test_scenario): ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਫੰਕਸ਼ਨ ਨੂੰ ਇੱਕ ਟੈਸਟ ਦ੍ਰਿਸ਼ ਨਾਲ ਚਲਾਉਂਦਾ ਹੈ।
  10. langchain.chains.LLMChain(llm=DSPyLLM()).run(user_input): ਉਪਭੋਗਤਾ ਇੰਪੁੱਟ ਨਾਲ ਏਜੰਟਿਕ AI ਏਜੰਟ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ।

ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ

ਇੱਥੇ Chart.js ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ Agentic AI ਏਜੰਟ ਦਾ ਦ੍ਰਿਸ਼ਟੀਕੋਣ ਹੈ: ਜੇਸਨ { "type": "ਪੱਟੀ", "ਡਾਟਾ": { "ਲੇਬਲ": ["ਉਪਭੋਗਤਾ ਇੰਪੁੱਟ", "ਫੈਸਲਾ", "ਅਡੈਪਟੇਸ਼ਨ"], "datasets": [ { "label": "ਏਜੰਟਿਕ AI ਏਜੰਟ", "ਡਾਟਾ": [10, 20, 30], "ਬੈਕਗ੍ਰਾਉਂਡ ਰੰਗ": "rgba(255, 99, 132, 0.2)", "borderColor": "rgba(255, 99, 132, 1)", "ਬਾਰਡਰ ਚੌੜਾਈ": 1 } ] }, "ਵਿਕਲਪ": { "ਸਿਰਲੇਖ": { "ਡਿਸਪਲੇ": ਸਹੀ, "text": "ਏਜੰਟਿਕ ਏਆਈ ਏਜੰਟ" }, "ਪੈਮਾਨਾ": { "yAxes": [ { "ਟਿਕਸ": { "beginAtZero": ਸਹੀ } } ] } } } ਇਹ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਏਜੰਟਿਕ AI ਏਜੰਟ ਦੀ ਵਰਤੋਂਕਾਰ ਪਰਸਪਰ ਕ੍ਰਿਆਵਾਂ ਦੀ ਨਕਲ ਕਰਨ, ਟੈਸਟ ਡੇਟਾ ਦੇ ਅਧਾਰ 'ਤੇ ਫੈਸਲੇ ਲੈਣ, ਅਤੇ ਟੈਸਟ ਦੀਆਂ ਸਥਿਤੀਆਂ ਨੂੰ ਬਦਲਣ ਦੇ ਅਨੁਕੂਲ ਹੋਣ ਵਿੱਚ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ।

ਸਿੱਟਾ

ਇਸ ਲੇਖ ਵਿੱਚ, ਅਸੀਂ LangChain ਅਤੇ DSPy ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਗੁੰਝਲਦਾਰ ਟੈਸਟ ਦ੍ਰਿਸ਼ਾਂ ਨੂੰ ਸਵੈਚਲਿਤ ਕਰਨ ਲਈ Agentic AI, Orchestration Tools, ਅਤੇ Software Engineering ਦੇ ਇੰਟਰਸੈਕਸ਼ਨ ਦੀ ਪੜਚੋਲ ਕੀਤੀ। ਅਸੀਂ ਨਿਰਣਾਇਕ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਵਿੱਚ Agentic AI ਦੀ ਇੱਕ ਸਧਾਰਨ ਉਦਾਹਰਣ ਲਾਗੂ ਕੀਤੀ ਹੈ ਅਤੇ LangChain ਅਤੇ DSPy ਲਈ ਕਮਾਂਡਾਂ/ਸਨਿਪਟਾਂ ਦੀ ਇੱਕ ਸੀਮਾ ਪ੍ਰਦਾਨ ਕੀਤੀ ਹੈ। ਅਸੀਂ Chart.js ਦੀ ਵਰਤੋਂ ਕਰਕੇ Agentic AI ਏਜੰਟ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਦੀ ਕਲਪਨਾ ਵੀ ਕੀਤੀ। Agentic AI ਅਤੇ ਆਰਕੈਸਟ੍ਰੇਸ਼ਨ ਟੂਲਸ ਦਾ ਲਾਭ ਲੈ ਕੇ, ਡਿਵੈਲਪਰ ਵਧੀਆ ਟੈਸਟ ਆਟੋਮੇਸ਼ਨ ਫਰੇਮਵਰਕ ਬਣਾ ਸਕਦੇ ਹਨ ਜੋ ਉਪਭੋਗਤਾ ਇੰਟਰੈਕਸ਼ਨਾਂ ਦੀ ਨਕਲ ਕਰਦੇ ਹਨ, ਟੈਸਟ ਡੇਟਾ ਦੇ ਅਧਾਰ 'ਤੇ ਫੈਸਲੇ ਲੈਂਦੇ ਹਨ, ਅਤੇ ਟੈਸਟ ਦੀਆਂ ਬਦਲਦੀਆਂ ਸਥਿਤੀਆਂ ਦੇ ਅਨੁਕੂਲ ਹੁੰਦੇ ਹਨ।


Have Questions?

Let's Talk

Contact me on LinkedIn