** ለራስ-ሰር የሶፍትዌር አቅርቦት የ AI ወኪሎችን መጠቀም፡ LangChain እና DSPy በDevOps Pipelines ውስጥ ማቀናጀት**
መግቢያ
የሶፍትዌር ልማት መልክዓ ምድራዊ አቀማመጥ በፍጥነት እያደገ ነው, ከጊዜ ወደ ጊዜ እየጨመረ በመጣው የሰው ሰራሽ ኢንተለጀንስ (AI) እና የማሽን መማሪያ (ኤምኤል) በተለያዩ የእድገት የሕይወት ዑደት ውስጥ. ለ AI በጣም ተስፋ ሰጭ ቦታዎች አንዱ ቴሌሜትሪ እና ቀጣይነት ያለው ውህደት / ተከታታይ ማሰማራትን (ሲአይ / ሲዲ) ጨምሮ የሶፍትዌር አቅርቦት ሂደቶችን በራስ-ሰር ማድረግ ነው። በዚህ ጽሑፍ ውስጥ የሶፍትዌር ማቅረቢያ ሂደቶችን በራስ-ሰር በማዘጋጀት የ AI ወኪሎችን ሚና እንቃኛለን እና እንደ LangChain እና DSPy ያሉ የኦርኬስትራ መሳሪያዎችን ተግባራዊ ትግበራ ውስጥ እንመረምራለን ።
** በሶፍትዌር አቅርቦት ውስጥ የ AI ወኪሎች ሚና ***
AI ወኪሎች በመረጃ እና ደንቦች ላይ ተመስርተው ውሳኔዎችን የሚወስኑ ተግባራትን በራስ ገዝ የሚያከናውኑ የሶፍትዌር ፕሮግራሞች ናቸው። በሶፍትዌር አቅርቦት አውድ ውስጥ፣ AI ወኪሎች የተለያዩ ሂደቶችን በራስ-ሰር ለመስራት ጥቅም ላይ ሊውሉ ይችላሉ፣ ለምሳሌ፡-
- ቴሌሜትሪ፡ AI ወኪሎች የመተግበሪያውን ባህሪ እና አፈጻጸም ላይ ግንዛቤዎችን ለመስጠት ከተለያዩ ምንጮች እንደ የመተግበሪያ ምዝግብ ማስታወሻዎች፣ የአፈጻጸም መለኪያዎች እና የተጠቃሚ ግብረመልስ ያሉ መረጃዎችን መሰብሰብ እና መተንተን ይችላሉ።
- ** ቀጣይነት ያለው ውህደት ***፡ AI ወኪሎች የኮድ ለውጦችን መገንባት፣ መፈተሽ እና ማሰማራትን በራስ ሰር ማድረግ ይችላሉ፣ ይህም አፕሊኬሽኑ ሁል ጊዜ ሊሰራጭ በሚችል ሁኔታ ውስጥ መሆኑን ያረጋግጣል።
- ** ቀጣይነት ያለው ማሰማራት ***: AI ወኪሎች አዳዲስ ባህሪያትን ለማግኘት እና ለተጠቃሚዎች ማስተካከያዎችን ለማግኘት የሚያስፈልገውን ጊዜ እና ጥረት በመቀነስ ወደ ምርት የሚደረጉ ለውጦችን በራስ-ሰር ማድረግ ይችላሉ።
- ክትትል እና ማንቂያ፡ የ AI ወኪሎች የመተግበሪያውን አፈጻጸም በመከታተል ገንቢዎች እና ኦፕሬተሮች ወሳኝ ከመሆናቸው በፊት ሊከሰቱ የሚችሉ ጉዳዮችን ሊያስጠነቅቁ ይችላሉ።
** LangChain፡ AI ወኪሎችን ለመገንባት ማዕቀፍ**
LangChain ከተለያዩ የመረጃ ምንጮች ጋር መስተጋብር መፍጠር እና በራስ ገዝ ስራዎችን ማከናወን የሚችሉ AI ወኪሎችን ለመገንባት የፓይዘን ማዕቀፍ ነው። LangChain የሚከተሉትን ለሚያደርጉ የግንባታ ወኪሎች ቀላል እና ሊታወቅ የሚችል ኤፒአይ ይሰጣል።
- ከመረጃ ምንጮች ጋር መስተጋብር መፍጠር፡ LangChain ተወካዮቹ ሊገናኙባቸው የሚችሉ የውሂብ ጎታዎችን፣ ኤፒአይዎችን እና የፋይል ስርዓቶችን ጨምሮ የተለያዩ የመረጃ ምንጮችን ያቀርባል።
- ** ተግባራትን አከናውን ***: LangChain የጽሑፍ ማቀናበርን፣ የምስል ማወቂያን እና የተፈጥሮ ቋንቋን ማቀናበርን ጨምሮ ወኪሎች ሊያከናውኗቸው የሚችሏቸውን የተለያዩ ተግባራትን ያቀርባል።
- **ከመረጃ ተማር ***፡ LangChain ወኪሎች ከውሂብ ለመማር የሚጠቀሙባቸውን የማሽን መማሪያ ስልተ ቀመሮችን ያቀርባል።
** DSPy፡ የተከፋፈሉ AI ወኪሎችን ለመገንባት ማዕቀፍ**
DSPy የትላልቅ አፕሊኬሽኖችን ፍላጎቶች ለማሟላት መጠነ-ሰፊ የሆኑ የተከፋፈሉ AI ወኪሎችን ለመገንባት የፓይዘን ማዕቀፍ ነው። DSPy የሚከተሉትን ጨምሮ የተለያዩ ባህሪያትን ያቀርባል፡-
- ** የተከፋፈለ ስሌት ***: DSPy ወኪሎች በበርካታ ማሽኖች ላይ እንዲሰሩ ያስችላቸዋል, ይህም ለትላልቅ አፕሊኬሽኖች ተስማሚ ያደርገዋል.
- የመረጃ ትይዩነት፡ DSPy ወኪሎች ውሂብን በትይዩ እንዲያስኬዱ ያስችላቸዋል፣ ይህም ከፍተኛ አፈጻጸም ላለው ኮምፒውቲንግ ለሚፈልጉ መተግበሪያዎች ተስማሚ ያደርገዋል።
- ** መጠነ-ሰፊነት ***፡ DSPy ወኪሎች የትላልቅ አፕሊኬሽኖችን ፍላጎት ለማሟላት መጠን እንዲሰጡ ያስችላቸዋል።
** LangChain እና DSPy በDevOps ቧንቧዎች ውስጥ ማዋሃድ ***
LangChain እና DSPy በDevOps ቧንቧዎች ውስጥ ለማዋሃድ የሚከተሉትን ደረጃዎች መጠቀም እንችላለን።
- ** LangChain እና DSPy ን ይጫኑ ***: ፒፒን በመጠቀም LangChain እና DSPy ይጫኑ። `` ባሽ pip ጫን langchain dspy
2. ** የ LangChain ወኪል ፍጠር ***፡ ከውሂብ ምንጮች ጋር መስተጋብር መፍጠር እና ተግባራትን ማከናወን የሚችል የ LangChain ወኪል ፍጠር።
`` ፓይቶን
አስመጣ langchain
ወኪል = langchain. ወኪል(
ስም = "የእኔ_ወኪል",
data_sources=[langchain.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[langchain.Task("ጽሑፍ_ማስኬጃ፣"የእኔ_ጽሑፍ_ሂደት")]
)
- ** የDSPy ወኪል ይፍጠሩ ***: በበርካታ ማሽኖች ላይ የሚሰራ እና ውሂብን በትይዩ የሚሰራ የ DSPy ወኪል ይፍጠሩ። `` ፓይቶን አስመጣ dspy
የDSPy ወኪል ይፍጠሩ
ወኪል = dspy. ወኪል( ስም = "የእኔ_ወኪል", data_sources=[dspy.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣ ተግባሮች=[dspy.Task("ጽሑፍ_ማስኬጃ"፣"የእኔ_ጽሑፍ_ሂደት")] )
4. ** LangChain እና DSPy ወኪሎችን ያዋህዱ ***: እንደ Jenkins ወይም GitLab CI/CD ያለ መሳሪያ በመጠቀም የ LangChain እና DSPy ወኪሎችን በDevOps ቧንቧ መስመር ውስጥ ያዋህዱ።
`` ፓይቶን
አስመጣ langchain
አስመጣ dspy
# የLangChain ወኪል ይፍጠሩ
langchain_agent = langchain. ወኪል(
ስም = "የእኔ_langchain_ወኪል",
data_sources=[langchain.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[langchain.Task("ጽሑፍ_ማስኬጃ፣"የእኔ_ጽሑፍ_ሂደት")]
)
# የDSPy ወኪል ይፍጠሩ
dspy_agent = dspy. ወኪል(
ስም = "የእኔ_dspya_ወኪል",
data_sources=[dspy.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[dspy.Task("ጽሑፍ_ማስኬጃ"፣"የእኔ_ጽሑፍ_ሂደት")]
)
# ወኪሎቹን በDevOps ቧንቧ መስመር ውስጥ ያዋህዱ
ቧንቧ = [
langchain_ወኪል፣
dspy_ኤጀንት
]
ምርጥ 5-10 በብዛት ጥቅም ላይ የዋሉ ትዕዛዞች/ቅንጣዎች
ለ LangChain እና DSPy በጣም ጥቅም ላይ የዋሉት 5-10 ከፍተኛ ትዕዛዞች/ቅንጣዎች እነሆ፡-
- ** LangChain: የ LangChain ወኪል ይፍጠሩ *** `` ፓይቶን አስመጣ langchain
ወኪል = langchain. ወኪል( ስም = "የእኔ_ወኪል", data_sources=[langchain.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣ ተግባሮች=[langchain.Task("ጽሑፍ_ማስኬጃ፣"የእኔ_ጽሑፍ_ሂደት")] )
2. ** DSPy: የ DSPy ወኪል ይፍጠሩ ***
`` ፓይቶን
አስመጣ dspy
ወኪል = dspy. ወኪል(
ስም = "የእኔ_ወኪል",
data_sources=[dspy.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[dspy.Task("ጽሑፍ_ማስኬጃ"፣"የእኔ_ጽሑፍ_ሂደት")]
)
- ** LangChain፡ ከውሂብ ምንጭ ጋር መስተጋብር መፍጠር** `` ፓይቶን አስመጣ langchain
ወኪል = langchain. ወኪል( ስም = "የእኔ_ወኪል", data_sources=[langchain.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣ ተግባሮች=[langchain.Task("ጽሑፍ_ማስኬጃ፣"የእኔ_ጽሑፍ_ሂደት")] )
ውሂብ = ወኪል.የውሂብ_ምንጮች[0] ያግኙ_ዳታ ()
4. ** DSPy: ከውሂብ ምንጭ ጋር ይገናኙ ***
`` ፓይቶን
አስመጣ dspy
ወኪል = dspy. ወኪል(
ስም = "የእኔ_ወኪል",
data_sources=[dspy.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[dspy.Task("ጽሑፍ_ማስኬጃ"፣"የእኔ_ጽሑፍ_ሂደት")]
)
ውሂብ = ወኪል.የውሂብ_ምንጮች[0] ያግኙ_ዳታ ()
- ** LangChain: ተግባር ያከናውኑ *** `` ፓይቶን አስመጣ langchain
ወኪል = langchain. ወኪል( ስም = "የእኔ_ወኪል", data_sources=[langchain.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣ ተግባሮች=[langchain.Task("ጽሑፍ_ማስኬጃ፣"የእኔ_ጽሑፍ_ሂደት")] )
ውጤት = agent.tasks[0].perform_task(ውሂብ)
6. ** DSPy: ተግባር ያከናውኑ ***
`` ፓይቶን
አስመጣ dspy
ወኪል = dspy. ወኪል(
ስም = "የእኔ_ወኪል",
data_sources=[dspy.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[dspy.Task("ጽሑፍ_ማስኬጃ"፣"የእኔ_ጽሑፍ_ሂደት")]
)
ውጤት = agent.tasks[0].perform_task(ውሂብ)
- LangChain፡ ከውሂብ ተማር `` ፓይቶን አስመጣ langchain
ወኪል = langchain. ወኪል( ስም = "የእኔ_ወኪል", data_sources=[langchain.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣ ተግባሮች=[langchain.Task("ጽሑፍ_ማስኬጃ፣"የእኔ_ጽሑፍ_ሂደት")] )
ወኪል.ከመረጃ(ውሂብ)_ይማር
8. **DSPy፡ ከውሂብ ተማር**
`` ፓይቶን
አስመጣ dspy
ወኪል = dspy. ወኪል(
ስም = "የእኔ_ወኪል",
data_sources=[dspy.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[dspy.Task("ጽሑፍ_ማስኬጃ"፣"የእኔ_ጽሑፍ_ሂደት")]
)
ወኪል.ከመረጃ(ውሂብ)_ይማር
- ** LangChain: ከDevOps ቧንቧ መስመር ጋር ይዋሃዱ *** `` ፓይቶን አስመጣ langchain
ወኪል = langchain. ወኪል( ስም = "የእኔ_ወኪል", data_sources=[langchain.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣ ተግባሮች=[langchain.Task("ጽሑፍ_ማስኬጃ፣"የእኔ_ጽሑፍ_ሂደት")] )
ቧንቧ = [ ወኪል ]
10. ** DSPy: ከDevOps ቧንቧ መስመር ጋር ያዋህዱ **
`` ፓይቶን
አስመጣ dspy
ወኪል = dspy. ወኪል(
ስም = "የእኔ_ወኪል",
data_sources=[dspy.DataSource("የውሂብ ጎታ"፣"የእኔ_ዳታቤዝ")]፣
ተግባሮች=[dspy.Task("ጽሑፍ_ማስኬጃ"፣"የእኔ_ጽሑፍ_ሂደት")]
)
ቧንቧ = [
ወኪል
]
እይታ
በDevOps ቧንቧ መስመር ውስጥ የLangChain እና DSPy ወኪሎች ምስላዊ እይታ እዚህ አለ፡- `` ገበታ { "አይነት": "ባር", "ውሂብ": { "መለያዎች": ["LangChain", "DSPy"], "መረጃዎች": [ { "label": "ወኪል", "ውሂብ": [10, 20], "የጀርባ ቀለም": ["rgba(255, 99, 132, 0.2)", "rgba (54, 162, 235, 0.2)"], "ድንበር ቀለም": ["rgba(255, 99, 132, 1)", "rgba(54, 162, 235, 1)"], "የድንበር ስፋት"፡ 1 } ] } "አማራጮች": { "ርዕስ": { "ማሳያ": እውነት, "text": "LangChain እና DSPy Agents in DevOps Pipeline" } "ሚዛኖች": { "yAxes": [ { "መዥገሮች": { "beginAtZero"፡ እውነት } } ] } } }
ይህ ምስላዊ የ LangChain እና DSPy ወኪሎች በDevOps ቧንቧ መስመር ውስጥ ያሳያል፣ የ LangChain ወኪል 10 ተግባራት እና የ DSPy ወኪል 20 ተግባራት አሉት።
** መደምደሚያ**
በዚህ ጽሑፍ ውስጥ የሶፍትዌር ማቅረቢያ ሂደቶችን በራስ-ሰር በማዘጋጀት የ AI ወኪሎችን ሚና መርምረናል እና እንደ LangChain እና DSPy ባሉ የኦርኬስትራ መሳሪያዎች ተግባራዊ ትግበራ ውስጥ ገብተናል። LangChain እና DSPy ከውሂብ ምንጮች ጋር መስተጋብር የሚፈጥሩ፣ ተግባራትን የሚያከናውኑ እና ከውሂብ የሚማሩ AI ወኪሎችን ለመፍጠር እንዴት እንደሚጠቀሙበት አይተናል። እንዲሁም እንደ ጄንኪንስ ወይም GitLab CI/CD ያሉ መሳሪያዎችን በመጠቀም LangChain እና DSPy በ DevOps ቧንቧዎች ውስጥ እንዴት እንደሚዋሃዱ አይተናል። በሶፍትዌር ልማት ውስጥ AI እና ML መቀበል እየጨመረ በመምጣቱ, LangChain እና DSPy የሶፍትዌር ማቅረቢያ ሂደቶችን በራስ ሰር ለመስራት ለሚፈልጉ ገንቢዎች እና ኦፕሬተሮች በጣም አስፈላጊ መሳሪያዎች እየሆኑ መጥተዋል.