መግቢያ
በአርቴፊሻል ኢንተለጀንስ (AI) እና የሶፍትዌር ምህንድስና ፈጣን እድገቶች AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን የሚያዋህዱ ውስብስብ የሶፍትዌር ስርዓቶች እንዲፈጠሩ አድርጓል። እነዚህ ስርዓቶች ወደ DevOps አውቶሜሽን እና ኦርኬስትራ የምንቀርብበትን መንገድ የመቀየር አቅም አላቸው። ነገር ግን፣ ሊዛን የሚችል እና ስነምግባር ያለው በ AI የሚነዱ የሶፍትዌር ስርዓቶችን መንደፍ ስለ AI፣ የሶፍትዌር ምህንድስና እና አርክቴክቸር የቅርብ ጊዜ ግስጋሴዎች ጥልቅ ግንዛቤን ይጠይቃል።
በዚህ ጽሑፍ ውስጥ የ AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን የሚያዋህዱ ሞዱል ፣ ሊለኩ የሚችሉ እና ሥነ ምግባራዊ የሶፍትዌር ስርዓቶችን ለመፍጠር የንድፍ መርሆዎችን እና ምርጥ ልምዶችን እንቃኛለን። ጠንካራ እና ሊጠበቁ የሚችሉ ስርዓቶችን ለመፍጠር በ AI (Large Language Models (LLMs)፣ Retrieval-Augmented Generation (RAG))፣ የሶፍትዌር ምህንድስና (Python, Rust, Go) እና አርክቴክቸር የቅርብ ጊዜ እድገቶችን በማጣመር ላይ እናተኩራለን።
ሞዱላር የስራ ፍሰት አርክቴክቸር
ሞዱላር የስራ ፍሰት አርክቴክቸር ውስብስብ ስርዓቶችን ወደ ትናንሽ፣ ገለልተኛ ሞጁሎች በቀላሉ ሊጠበቁ፣ ሊዘምኑ እና ሊመዘኑ የሚችሉ የንድፍ ጥለት ነው። እያንዳንዱ ሞጁል ለአንድ የተወሰነ ተግባር ወይም ተግባር ተጠያቂ ነው, እና በደንብ በተገለጹ መገናኛዎች እርስ በርስ ይገናኛሉ.
በፓይዘን ውስጥ ያለው ሞጁል የስራ ፍሰት አርክቴክቸር ቀላል ምሳሌ ይኸውና፡ `` ፓይቶን
የስራ ፍሰት.py
ክፍል የስራ ፍሰት ዴፍ init(ራስ): self.modules = []
def add_module (ራስ፣ ሞጁል)
self.modules.append(ሞዱል)
def ሩጫ(ራስ):
ለሞዱል በራስ.ሞዱሎች፡-
module.run()
ሞጁል1.py
ክፍል ሞጁል 1: def ሩጫ(ራስ): ማተም ("ሞዱል 1 እየሰራ ነው")
ሞጁል2.py
ሞጁል 2: def ሩጫ(ራስ): ማተም ("ሞዱል 2 እየሰራ ነው")
ዋና.py
ስም == "ዋና" ከሆነ፡- የስራ ፍሰት = የስራ ፍሰት () workflow.add_module(ሞዱል1()) workflow.add_module(Module2()) workflow.run()
በዚህ ምሳሌ፣ የሞጁሎችን ዝርዝር የሚያስተዳድር የ‹Workflow› ክፍል አለን። እያንዳንዱ ሞጁል ለአንድ የተወሰነ ተግባር ኃላፊነት አለበት፣ እና የ‹አክል_ሞዱል› ዘዴን በመጠቀም ወደ የስራ ሂደቱ ይታከላሉ። የ`አሂድ` ዘዴ እያንዳንዱን ሞጁል በስራ ሂደት ውስጥ ለማስፈጸም ጥቅም ላይ ይውላል።
## AI ወኪሎች
AI ወኪሎች የማሽን መማሪያ ስልተ ቀመሮችን በመጠቀም ውሳኔዎችን ለማድረግ እና በስርዓት ውስጥ እርምጃዎችን የሚወስዱ የሶፍትዌር ክፍሎች ናቸው። ተግባሮችን በራስ ሰር ለመስራት፣ የተጠቃሚን ልምድ ለማሻሻል እና የስርዓት አፈጻጸምን ለማመቻቸት ጥቅም ላይ ሊውሉ ይችላሉ።
የሚከተሉትን ጨምሮ በርካታ የ AI ወኪሎች አሉ-
**በህግ ላይ የተመሰረቱ ወኪሎች**፡ እነዚህ ወኪሎች ውሳኔ ለማድረግ አስቀድሞ የተገለጹ ህጎችን ይጠቀማሉ።
** የማሽን መማሪያ ወኪሎች**፡ እነዚህ ወኪሎች ከውሂብ ለመማር እና ውሳኔዎችን ለማድረግ የማሽን መማር ስልተ ቀመሮችን ይጠቀማሉ።
* **ድብልቅ ወኪሎች**፡ እነዚህ ወኪሎች ውሳኔዎችን ለማድረግ ደንብን መሰረት ያደረጉ እና የማሽን መማሪያ አቀራረቦችን ያጣምራሉ።
የማሽን መማሪያ ስልተቀመርን በመጠቀም በፓይዘን ውስጥ የቀላል AI ወኪል ምሳሌ እዚህ አለ፡-
`` ፓይቶን
# ወኪል.py
ከ sklearn.ensemble ማስመጣት RandomForestClassifier
ከ sklearn.model_ምርጫ የማስመጣት ባቡር_ፈተና_ስፕሊት
ከ sklearn.የውሂብ ስብስቦች ሎድ_አይሪስ አስመጣ
የክፍል ወኪል
ዴፍ __init__(ራስ):
self.model = RandomForestClassifier ()
def ባቡር(ራስ፣ X፣ y)፡
X_train፣ X_test፣ y_train፣ y_test = train_test_split(X፣ y፣ test_size=0.2፣ random_state=42)
self.model.fit(X_ባቡር፣ y_ባቡር)
def መተንበይ(ራስን፣ X):
ተመለስ self.model.predict(X)
# ዋና.py
__ስም__ == "__ዋና__" ከሆነ፡-
አይሪስ = ሎድ_አይሪስ ()
X = iris.data
y = አይሪስ.ዒላማ
ወኪል = ወኪል ()
agent.train(X፣ y)
ትንበያዎች = agent.predict(X)
ማተም (ትንበያዎች)
በዚህ ምሳሌ፣ ትንበያ ለማድረግ የዘፈቀደ የደን ክላሲፋየር የሚጠቀም ቀላል AI ወኪል አለን። ወኪሉ በአይሪስ ዳታ ስብስብ ላይ የሰለጠነ እና በተመሳሳይ የውሂብ ስብስብ ላይ ትንበያዎችን ያደርጋል።
AI ወኪሎች እና ሞጁል የስራ ፍሰት አርክቴክቸር በማጣመር
የ AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን በማጣመር በ AI የሚመራ ውሳኔ አሰጣጥን ከሞዱል እና ሊሰፋ ከሚችል አርክቴክቸር ጋር የሚያዋህዱ ውስብስብ ስርዓቶችን እንድንፈጥር ያስችለናል።
የ AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን የሚያጣምር የሥርዓት ምሳሌ እዚህ አለ፡- `` ፓይቶን
የስራ ፍሰት.py
ክፍል የስራ ፍሰት ዴፍ init(ራስ): self.modules = [] self.agent = የለም
def add_module (ራስ፣ ሞጁል)
self.modules.append(ሞዱል)
def add_agent (ራስ፣ ወኪል)
ራስ.ኤጀንት = ወኪል
def ሩጫ(ራስ):
ለሞዱል በራስ.ሞዱሎች፡-
module.run()
ራስን ወኪል ከሆነ፡-
ራስን ወኪል.መተንበይ()
ሞጁል1.py
ክፍል ሞጁል 1: def ሩጫ(ራስ): ማተም ("ሞዱል 1 እየሰራ ነው")
ሞጁል2.py
ሞጁል 2: def ሩጫ(ራስ): ማተም ("ሞዱል 2 እየሰራ ነው")
ወኪል.py
ከ sklearn.ensemble ማስመጣት RandomForestClassifier ከ sklearn.model_ምርጫ የማስመጣት ባቡር_ፈተና_ስፕሊት ከ sklearn.የውሂብ ስብስቦች ሎድ_አይሪስ አስመጣ
የክፍል ወኪል ዴፍ init(ራስ): self.model = RandomForestClassifier ()
def ባቡር(ራስ፣ X፣ y)፡ X_train፣ X_test፣ y_train፣ y_test = train_test_split(X፣ y፣ test_size=0.2፣ random_state=42) self.model.fit(X_ባቡር፣ y_ባቡር)
def መተንበይ(ራስን፣ X):
ተመለስ self.model.predict(X)
ዋና.py
ስም == "ዋና" ከሆነ፡- የስራ ፍሰት = የስራ ፍሰት () workflow.add_module(ሞዱል1()) workflow.add_module(Module2()) ወኪል = ወኪል () agent.train(X፣ y) workflow.add_agent(ወኪል) workflow.run()
በዚህ ምሳሌ፣ AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን የሚያጣምር ስርዓት አለን። ስርዓቱ ትንበያ ለማድረግ በዘፈቀደ የደን ክላሲፋየር የሚጠቀም ሁለት ሞጁሎች እና AI ወኪል አለው። ወኪሉ የ‹አክል_ወኪል› ዘዴን በመጠቀም ወደ የስራ ሂደቱ ይታከላል፣ እና ሞጁሎቹ ከሄዱ በኋላ ትንበያዎችን ያደርጋል።
## ከፍተኛ 5-10 በብዛት ጥቅም ላይ የዋሉ ትዕዛዞች/ቅንጣዎች
ከሞዱላር የስራ ፍሰት አርክቴክቸር እና የ AI ወኪሎች ጋር ሊሰፋ የሚችል እና ስነ ምግባራዊ በ AI የሚነዱ የሶፍትዌር ስርዓቶችን ለመንደፍ በብዛት ጥቅም ላይ የዋሉት አንዳንድ ትዕዛዞች እና ቅንጥቦች እዚህ አሉ፡
1. **Python**: `ፓንዳዎችን እንደ ፒዲ አስገባ' (የፓንዳስ ቤተመፃህፍት ማስመጣት)
2. **Python**: `pd.read_csv('data.csv')` (የCSV ፋይል ወደ ፓንዳስ ዳታ ፍሬም ማንበብ)
3. **Python**: `agent.train(X, y)` (የ AI ወኪል በውሂብ ስብስብ ላይ ማሰልጠን)
4. **Python**: `agent.predict(X)` (የ AI ወኪል በመጠቀም ትንበያ መስጠት)
5. ** ዝገት ***: `let mut agent = ወኪል :: አዲስ()` (በዝገት ውስጥ አዲስ AI ወኪል መፍጠር)
6. ** ዝገት**፡ `agent.train(X፣ y)` (የ AI ወኪልን በዝገት ውስጥ ባለው የውሂብ ስብስብ ላይ ማሰልጠን)
7. **ሂድ**: `ወኪል:= NewAgent()` (በGo ውስጥ አዲስ AI ወኪል መፍጠር)
8. **ሂድ**: `ወኪል. ባቡር(X, y)` (የ AI ወኪል በGo ውስጥ ባለው የውሂብ ስብስብ ላይ ማሰልጠን)
9. **Chart.js**፡ `const chart = አዲስ ገበታ (ctx፣ { አይነት፡ 'ባር'፣ data፡ { labels: ['Label 1', 'Label 2'], datasets: [{ label: 'Dataset 1', data: [10, 20]}}]}}});"(የባር ገበታ መፍጠር)።
10. **Chart.js**፡ `chart.data.datasets[0].data.push(30)` (Chart.js በመጠቀም ወደ ገበታ አዲስ የውሂብ ነጥብ ማከል)
## እይታ
Chart.jsን በመጠቀም የአሞሌ ገበታ ምሳሌ ይኸውና፡
``json
{
"አይነት": "ባር",
"ውሂብ": {
"መለያዎች": ["መለያ 1", "መለያ 2"],
"መረጃዎች": [
{
"label": "Dataset 1",
"ዳታ": [10, 20]
}
]
}
}
ይህ ገበታ ሁለት መለያዎች እና አንድ የውሂብ ስብስብ ሁለት የውሂብ ነጥቦች አሉት። ሰንጠረዡ የተለያዩ አማራጮችን እና ቅንብሮችን በመጠቀም ማበጀት ይቻላል.
መደምደሚያ
ከሞዱል የስራ ፍሰት አርክቴክቸር እና AI ወኪሎች ጋር ሊለኩ የሚችሉ እና ስነምግባር ያላቸው በ AI የሚነዱ የሶፍትዌር ስርዓቶችን መንደፍ ስለ AI፣ የሶፍትዌር ምህንድስና እና አርክቴክቸር የቅርብ ጊዜ እድገቶች ጥልቅ ግንዛቤን ይጠይቃል። የ AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን በማጣመር በ AI የሚመራ የውሳኔ አሰጣጥን ከሞዱል እና ሊሰፋ ከሚችል አርክቴክቸር ጋር የሚያዋህዱ ውስብስብ ስርዓቶችን መፍጠር እንችላለን።
በዚህ ጽሑፍ ውስጥ AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን የሚያዋህዱ ሞጁል ፣ ሊለኩ የሚችሉ እና ስነምግባር ያላቸው የሶፍትዌር ስርዓቶችን ለመፍጠር የንድፍ መርሆዎችን እና ምርጥ ልምዶችን መርምረናል። እንዲሁም በ Python፣ Rust እና Go ውስጥ ያሉ ቀላል AI ወኪሎችን እና ሞጁል የስራ ፍሰት አርክቴክቸርን እንዲሁም Chart.jsን በመጠቀም የማሳያ ምሳሌ አቅርበናል።
በዚህ ጽሑፍ ውስጥ የተዘረዘሩትን መመሪያዎች እና ምርጥ ልምዶችን በመከተል ገንቢዎች የዘመናዊ አፕሊኬሽኖችን እና ኢንዱስትሪዎችን ፍላጎቶች የሚያሟሉ ጠንካራ እና ሊጠበቁ የሚችሉ AI-ተኮር የሶፍትዌር ስርዓቶችን መፍጠር ይችላሉ።