הטמעת AI Agentic באוטומציה של בדיקות דטרמיניסטיות עם LangChain ו-DSPy | B4N1

הטמעת AI Agentic באוטומציה של בדיקות דטרמיניסטיות עם LangChain ו-DSPy

3 months ago · b4n1 Tiempo de lectura: 3 min

יישום Agentic AI באוטומציה של בדיקות דטרמיניסטיות עם LangChain ו-DSPy

מבוא

המורכבות הגוברת של מערכות תוכנה הפכה את אוטומציית הבדיקות להיבט מכריע בפיתוח תוכנה. מסגרות אוטומציה מסורתיות של בדיקות מסתמכות על גישות תסריטאיות, שעלולות להיות שבירות וקשות לתחזוקה. בשנים האחרונות, הופעתם של Agentic AI וכלי תזמורת פתחה אפשרויות חדשות לאוטומציה של תרחישי בדיקה מורכבים. במאמר זה, נחקור את ההצטלבות של בינה מלאכותית, כלי תזמור והנדסת תוכנה לאוטומציה של תרחישי בדיקה מורכבים באמצעות LangChain ו-DSPy.

מהו 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 באוטומציה של בדיקות דטרמיניסטיות

כדי ליישם Agentic AI באוטומציה של בדיקות דטרמיניסטיות, אנו יכולים להשתמש ב-LangChain וב-DSPy כדי לבנות מסגרת אוטומציה של בדיקות המדמה אינטראקציות עם משתמשים, מקבלת החלטות על סמך נתוני בדיקה ומתאימה לתנאי הבדיקה המשתנים.

הנה דוגמה פשוטה לאופן שבו אנו יכולים להשתמש ב-LangChain וב-DSPy כדי להפוך תרחיש בדיקה לאוטומטי:

לייבא langchain
מאת langchain.chains ייבוא LLMChain
מאת langchain.llms ייבוא DSPyLLM


test_scenario = {
    "user_input": "כניסה",
    "expected_output": "הכניסה הצליחה"
}

# הגדר את סוכן AI Agentic
agent = LLMChain(
    llm=DSPyLLM(),
    input_type="text",
    output_type="text"
)

# הגדר את פונקציית האוטומציה של הבדיקה
def test_automation(test_scenario):
    # הדמיית אינטראקציה של משתמשים
    user_input = test_scenario["user_input"]
    # קבלת החלטה על סמך נתוני הבדיקה
    החלטה = agent.run(user_input)
    # הסתגלו לתנאי הבדיקה המשתנים
    אם החלטה == "הכניסה הצליחה":
        print ("המבחן עבר")
    אחר:
        print("הבדיקה נכשלה")

# הפעל את פונקציית האוטומציה של הבדיקה
test_automation(test_scenario)

בדוגמה זו, אנו מגדירים תרחיש בדיקה הכולל הדמיית אינטראקציה של משתמש, קבלת החלטה על סמך נתוני בדיקה והתאמה לתנאי הבדיקה המשתנים. לאחר מכן אנו מגדירים סוכן AI Agentic באמצעות LangChain ו-DSPy, ומשתמשים בו כדי להפוך את תרחיש הבדיקה לאוטומטי.

5-10 הפקודות/קטעי הקוד הנפוצים ביותר

להלן 5-10 הפקודות/קטעי הקוד המובילים ביותר עבור LangChain ו-DSPy:

  1. langchain.LLMCain(llm=DSPyLLM()): יוצר סוכן AI Agentic באמצעות LangChain ו-DSPy.
  2. DSPyLLM(): מאתחל מופע של DSPy LLM (מודל שפה גדול).
  3. LLMCain(input_type="text", output_type="text"): יוצר סוכן AI Agentic עם סוגי קלט ופלט של טקסט.
  4. agent.run(user_input): מפעיל את הסוכן Agentic AI עם קלט משתמש.
  5. test_scenario = {"user_input": "login", "expected_output": "כניסה מוצלחת"}: מגדיר תרחיש בדיקה עם קלט משתמש ופלט צפוי.
  6. langchain.chains.LLMCain(llm=DSPyLLM()): יוצר סוכן AI Agentic באמצעות LangChain ו-DSPy.
  7. DSPyLLM().predict(user_input): מנבא את הפלט של DSPy LLM עם קלט משתמש.
  8. LLMCain(input_type="text", output_type="text").run(user_input): מפעיל את סוכן AI Agentic עם סוגי קלט ופלט של טקסט.
  9. test_automation(test_scenario): מפעיל את פונקציית האוטומציה של הבדיקה עם תרחיש בדיקה.
  10. langchain.chains.LLMCain(llm=DSPyLLM()).run(user_input): מפעיל את סוכן AI Agentic עם קלט משתמש.

רְאִיָה

להלן הדמיה של סוכן AI Agentic באמצעות Chart.js:

{
  "type": "סרגל",
  "נתונים": {
    "labels": ["קלט משתמש", "החלטה", "התאמה"],
    "מערכי נתונים": [
      {
        "label": "סוכן בינה מלאכותית",
        "נתונים": [10, 20, 30],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      }
    ]
  },
  "אפשרויות": {
    "כותרת": {
      "תצוגה": נכון,
      "text": "סוכן AI סוכן"
    },
    "קשקשים": {
      "yAxes": [
        {
          "טיקים": {
            "beginAtZero": נכון
          }
        }
      ]
    }
  }
}

הדמיה זו מציגה את הביצועים של סוכן AI Agentic בהדמיית אינטראקציות עם משתמשים, קבלת החלטות על סמך נתוני בדיקה והתאמה לתנאי הבדיקה המשתנים.

מסקנה

במאמר זה, חקרנו את ההצטלבות של AI Agentic, Orchestration Tools והנדסת תוכנה כדי להפוך תרחישי בדיקה מורכבים לאוטומטיים באמצעות LangChain ו-DSPy. הטמענו דוגמה פשוטה של ​​Agentic AI באוטומציה של בדיקות דטרמיניסטיות וסיפקנו מגוון פקודות/קטעי קוד עבור LangChain ו-DSPy. כמו כן, דמיינו את הביצועים של סוכן AI Agentic באמצעות Chart.js. על ידי מינוף Agentic AI וכלי תזמורת, מפתחים יכולים לבנות מסגרות אוטומציה מתוחכמות של בדיקות המדמות אינטראקציות עם משתמשים, לקבל החלטות על סמך נתוני בדיקה ולהסתגל לתנאי הבדיקה המשתנים.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn