ZeroOps DevOps transformacija naudojant dirbtinio intelekto agentus ir orkestravimą
Įvadas
„DevOps“ revoliucija pakeitė programinės įrangos kūrimo, diegimo ir priežiūros būdus. Tačiau tradicinis „DevOps“ metodas vis tiek reikalauja didelių rankų pastangų, patirties ir laiko. AI pagrįstų agentų ir orkestravimo įrankių atsiradimas leido automatizuoti „DevOps“ procesus, todėl atsirado „ZeroOps“ koncepcija. Šiame straipsnyje mes išnagrinėsime dirbtinio intelekto valdomo „DevOps“ automatizavimo įgyvendinimą naudojant „Kiro“ agentus ir orkestravimo įrankius, tokius kaip „LangChain“, daugiausia dėmesio skirdami „DevOps“ praktikos pavertimui „ZeroOps“.
Kas yra ZeroOps?
„ZeroOps“ yra nauja „DevOps“ koncepcija, kuria siekiama pašalinti rankinio įsikišimo į kūrimo ir diegimo procesą poreikį. Naudodama dirbtinį intelektą ir mašininį mokymąsi, „ZeroOps“ įgalina automatinį programų diegimą, mastelį ir stebėjimą, sumažindama žmogiškųjų klaidų riziką ir padidindama efektyvumą. Galutinis „ZeroOps“ tikslas – sukurti savaime besigyjančią, save optimizuojančią ir besikeičiančią sistemą, kuriai reikia minimalaus žmogaus įsikišimo.
AI veikiantys agentai: raktas į „ZeroOps“
AI veikiantys agentai yra programinės įrangos programos, kurios naudoja mašininio mokymosi algoritmus užduotims automatizuoti ir sprendimams priimti. „DevOps“ kontekste AI veikiantys agentai gali būti naudojami programos našumui stebėti, anomalijoms aptikti ir taisomiesiems veiksmams atlikti. „Kiro“ agentai yra AI veikiantis agentas, kuris gali būti naudojamas „DevOps“ automatizavimui.
Kiro agentai
„Kiro“ agentai yra AI veikiantis agentas, kuris gali būti naudojamas „DevOps“ automatizavimui. Jie skirti dirbti su orkestravimo įrankiais, tokiais kaip „LangChain“, kad būtų galima automatizuoti programų diegimą, mastelio keitimą ir stebėjimą. „Kiro“ agentai gali būti mokomi remiantis istoriniais duomenimis, kad sužinotų modelius ir anomalijas, kad galėtų priimti pagrįstus sprendimus ir imtis taisomųjų veiksmų.
LangChain: orkestravimo įrankis
„LangChain“ yra orkestravimo įrankis, leidžiantis automatizuoti „DevOps“ procesus naudojant dirbtinio intelekto pagrindu veikiančius agentus, tokius kaip „Kiro“. Tai suteikia pagrindą kurti ir diegti AI pagrįstus agentus, kurie gali automatizuoti tokias užduotis kaip diegimas, mastelio keitimas ir stebėjimas. „LangChain“ palaiko daugybę programavimo kalbų, įskaitant Python, Rust ir Go.
** Dirbtinio intelekto valdomos „DevOps“ automatizavimo įdiegimas naudojant „Kiro“ ir „LangChain“**
Norėdami įdiegti AI varomą DevOps automatizavimą naudodami Kiro ir LangChain, turime atlikti šiuos veiksmus:
- Įdiekite „Kiro“ ir „LangChain“: įdiekite „Kiro“ ir „LangChain“ naudodami pip arba pageidaujamą paketų tvarkyklę.
- Sukurkite „Kiro“ agentą: sukurkite „Kiro“ agentą, kuris gali būti naudojamas „DevOps“ automatizavimui. Tai apima agento elgesio apibrėžimą, pvz., programos našumo stebėjimą ir nukrypimų aptikimą.
- Išmokykite Kiro agentą: mokykite Kiro agentą naudotis istoriniais duomenimis, kad sužinotumėte modelius ir anomalijas. Tai leidžia agentui priimti pagrįstus sprendimus ir imtis taisomųjų veiksmų.
- Integruokite su „LangChain“: integruokite „Kiro“ agentą su „LangChain“, kad automatizuotumėte „DevOps“ procesus. Tai apima orkestravimo darbo eigos apibrėžimą ir agento konfigūravimą užduotims vykdyti.
Kodo pavyzdys: Kiro agento kūrimas
Štai „Python“ kodo bloko pavyzdys, kuris sukuria „Kiro“ agentą:
importo kiro
iš langchain importo LLMS
agentas = kiro.Agent(
vardas = "mano_agentas",
elgesys={
"monitor_performance": {
"funkcija": "stebėti_našumą",
"args": ["programos_pavadinimas", "slenkstis"],
},
"detect_anomaly": {
"funkcija": "aptikti anomaliją",
"args": ["programos_pavadinimas", "slenkstis"],
},
},
)
# Apmokykite agentą apie istorinius duomenis
agent.train(
data=[
{"app_name": "my_app", "performance": 90},
{"app_name": "my_app", "performance": 80},
{"app_name": "my_app", "performance": 70},
],
slenkstis = 85,
)
# Integruokite su LangChain
llms = LLMS(
agentas = agentas,
darbo eiga={
"monitor_performance": {
"funkcija": "stebėti_našumą",
"args": ["my_app", 85],
},
"detect_anomaly": {
"funkcija": "aptikti anomaliją",
"args": ["my_app", 85],
},
},
)
# Vykdykite darbo eigą
llms.execute()
Šis kodas sukuria „Kiro“ agentą, kuris stebi programos veikimą ir aptinka anomalijas. Tada jis moko agentą naudotis istoriniais duomenimis ir integruoja juos su „LangChain“, kad automatizuotų „DevOps“ procesus.
5–10 dažniausiai naudojamų komandų / fragmentų
Čia yra 5–10 dažniausiai naudojamų Kiro ir LangChain komandų / fragmentų:
- Kiro agento kūrimas:
kiro.Agent(name="my_agent", behavior={"monitor_performance": {"function": "monitor_performance", "args": ["app_name", "threshold"]}}) - Kiro agento mokymas:
agent.train(data=[{"programos_pavadinimas": "mano_programa", "performance": 90}], slenkstis=85) - Integravimas su LangChain:
llms = LLMS(agent=agent, workflow={"monitor_performance": {"function": "monitor_performance", "args": ["my_app", 85]}}) - Darbo eigos vykdymas:
llms.execute() - Orkestravimo darbo eigos apibrėžimas:
darbo eiga = {"monitor_performance": {"function": "monitor_performance", "args": ["my_app", 85]}} - Agento konfigūravimas užduotims vykdyti:
agent.configure({"function": "execute_task", "args": ["task_name"]}) - Programos našumo stebėjimas:
agent.monitor_performance(app_name="my_app", threshold=85) - Anomalijų aptikimas:
agent.detect_anomaly(app_name="my_app", threshold=85) - Agento būsenos gavimas: „agent.status()“.
- Agento žurnalų gavimas: „agent.logs()“
Vizualizacija
Štai „DevOps“ dujotiekio vizualizacija naudojant Chart.js:
{
"tipas": "juosta",
"duomenys": {
"etiketės": ["Stebėti našumą", "Aptikti anomaliją", "Vykdyti užduotį"],
"duomenų rinkiniai": [
{
"etiketė": "Agentas",
"duomenys": [90, 80, 70],
"backgroundColor": "rgba(255, 99, 132, 0.2)",
"borderColor": "rgba(255, 99, 132, 1)",
"borderWidth": 1
}
]
},
"parinktys": {
"pavadinimas": {
"display": tiesa,
"text": "DevOps Pipeline"
},
"svarstyklės": {
„yAxes“: [
{
"erkės": {
"beginAtZero": tiesa
}
}
]
}
}
}
Šioje vizualizacijoje rodomas „DevOps“ dujotiekis su trimis etapais: stebėti našumą, aptikti anomaliją ir vykdyti užduotį. Agento veikla rodoma kaip juostinė diagrama.
Išvada
Šiame straipsnyje mes ištyrėme dirbtinio intelekto pagrįsto „DevOps“ automatizavimo įgyvendinimą naudojant „Kiro“ agentus ir orkestravimo įrankius, tokius kaip „LangChain“. Sukūrėme „Kiro“ agentą, kuris stebi programos veikimą ir aptinka anomalijas, ir integravome jį su „LangChain“, kad automatizuotume „DevOps“ procesus. Taip pat pateikėme „DevOps“ dujotiekio vizualizaciją naudodami Chart.js. Galutinis „ZeroOps“ tikslas – sukurti savaime besigyjančią, save optimizuojančią ir besikeičiančią sistemą, kuriai reikia minimalaus žmogaus įsikišimo. Naudodami AI ir mašininį mokymąsi galime pasiekti šį tikslą ir „DevOps“ praktikas paversti „ZeroOps“.