Agentinio AI panaudojimas programinės įrangos architektūrai ir „DevOps“ automatizavimui | B4N1

Agentinio AI panaudojimas programinės įrangos architektūrai ir „DevOps“ automatizavimui

8 months ago · b4n1 Read time: 4 min

Įvadas

Sparti dirbtinio intelekto (AI) ir mašininio mokymosi (ML) raida paskatino sukurti agentinį AI – AI tipą, kuris gali savarankiškai imtis veiksmų ir priimti sprendimus. Ši technologija gali pakeisti požiūrį į programinės įrangos architektūrą ir „DevOps“ automatizavimą. Šiame straipsnyje mes išnagrinėsime agentinio AI, didelių kalbų modelių (LLM) ir orkestravimo įrankių, tokių kaip „LangChain“ ir „DSPy“, integravimą, kad būtų galima automatizuoti programinės įrangos architektūrą, infrastruktūrą ir „DevOps“ procesus.

Kas yra agentinis AI?

Agentinis AI reiškia AI tipą, kuris gali pats imtis veiksmų ir priimti sprendimus. Tai skiriasi nuo tradicinių dirbtinio intelekto sistemų, kurios paprastai yra skirtos atlikti konkrečias užduotis ir laikytis iš anksto nustatytų taisyklių. Kita vertus, agentinės AI sistemos sukurtos taip, kad būtų savarankiškesnės ir labiau pritaikomos, todėl jos gali mokytis iš aplinkos ir priimti sprendimus, pagrįstus savo tikslais ir uždaviniais.

LLM vaidmuo agentiniame AI

Dideli kalbų modeliai (LLM) yra AI tipas, kuris yra apmokytas naudojant didžiulius tekstinių duomenų kiekius ir gali generuoti į žmogų panašią kalbą. LLM yra pagrindinis agentinių AI sistemų komponentas, nes jie suteikia galimybę suprasti ir generuoti žmonių kalbą. Tai leidžia agentinėms AI sistemoms bendrauti su žmonėmis ir kitomis sistemomis natūraliau ir intuityviau.

Orkestravimo įrankiai: LangChain ir DSPy

Orkestravimo įrankiai, tokie kaip LangChain ir DSPy, skirti valdyti ir koordinuoti skirtingų sistemų ir komponentų sąveiką. Šie įrankiai suteikia galimybę apibrėžti ir vykdyti darbo eigas, kurios gali apimti tokias užduotis kaip duomenų apdorojimas, modelio mokymas ir diegimas.

LangChain

„LangChain“ yra atvirojo kodo orkestravimo įrankis, suteikiantis lanksčią ir išplečiamą darbo eigos kūrimo ir valdymo sistemą. LangChain sukurta dirbti su daugybe sistemų ir komponentų, įskaitant LLM, duomenų bazes ir API.

DSPy

DSPy yra Python pagrindu sukurtas orkestravimo įrankis, suteikiantis paprastą ir intuityvų būdą apibrėžti ir vykdyti darbo eigas. DSPy sukurtas dirbti su daugybe sistemų ir komponentų, įskaitant LLM, duomenų bazes ir API.

Programinės įrangos architektūros ir „DevOps“ procesų automatizavimas

Agentinis AI, LLM ir orkestravimo įrankiai, tokie kaip „LangChain“ ir „DSPy“, gali būti naudojami automatizuoti įvairią programinės įrangos architektūrą ir „DevOps“ procesus. Kai kurie pavyzdžiai:

  • Automatizuota kodo peržiūra: Agentinės AI sistemos gali būti naudojamos kodui peržiūrėti ir galimas problemas, pvz., klaidas ir saugos spragas, nustatyti.
  • Automatinis testavimas: Agentinės AI sistemos gali būti naudojamos automatizuoti testavimą, įskaitant vienetų testavimą, integravimo testavimą ir galutinį testavimą.
  • Automatizuotas diegimas: Agentinės AI sistemos gali būti naudojamos automatizuoti diegimą, įskaitant kodo, konfigūracijos ir kitų išteklių diegimą.
  • Automatizuotas stebėjimas: Agentinės AI sistemos gali būti naudojamos automatizuoti stebėjimą, įskaitant sistemos našumo, saugos ir kitų metrikų stebėjimą.

Praktinis įgyvendinimas

Šiame skyriuje pateiksime paprastą pavyzdį, kaip naudoti LangChain ir DSPy programinės įrangos architektūrai ir DevOps procesui automatizuoti.

Pavyzdys: kodo peržiūros automatizavimas

Šiame pavyzdyje kodo peržiūrai automatizuoti naudosime „LangChain“ ir „DSPy“. Mes nustatysime darbo eigą, kurią sudaro šie veiksmai:

  1. Kodo analizė: darbo eiga naudos LLM kodui analizuoti ir galimoms problemoms nustatyti.
  2. Kodo peržiūra: darbo eiga naudos agentinę AI sistemą, kad peržiūrėtų kodą ir nustatytų galimas problemas.
  3. Kodo diegimas: darbo eiga naudos diegimo įrankį kodui gamybinėje aplinkoje įdiegti.

Štai pavyzdys, kaip įgyvendinti šią darbo eigą naudojant LangChain ir DSPy:

importuoti langchain
iš langchain importo LLM

# Apibrėžkite LLM
llm = LLM("text-davinci-003")

# Apibrėžkite agentinę AI sistemą
ai_system = langchain.AgenticAI()

# Apibrėžkite darbo eigą
darbo eiga = langchain.Workflow(
    žingsniai=[
        langchain.Step(
            name="Kodo analizė",
            func=llm.analyze_code,
            inputs={"kodas": "def hello_world(): print('Sveikas pasauli')"},
        ),
        langchain.Step(
            name="Kodo peržiūra",
            func=ai_system.review_code,
            inputs={"kodas": "def hello_world(): print('Sveikas pasauli')"},
        ),
        langchain.Step(
            name="Kodo diegimas",
            func=langchain.deploy_code,
            inputs={"kodas": "def hello_world(): print('Sveikas pasauli')"},
        ),
    ]
)

# Vykdykite darbo eigą
workflow.execute()

Šis kodas apibrėžia darbo eigą, kurią sudaro trys veiksmai: kodo analizė, kodo peržiūra ir kodo diegimas. Darbo eiga naudoja LLM kodui analizuoti, agentinę AI sistemą kodui peržiūrėti ir diegimo įrankį kodui gamybinėje aplinkoje įdiegti.

5–10 dažniausiai naudojamų komandų / fragmentų

Čia yra 5–10 dažniausiai naudojamų „LangChain“ ir „DSPy“ komandų / fragmentų:

  1. „langchain.Workflow(steps=[...])“: apibrėžkite darbo eigą su keliais veiksmais.
  2. langchain.Step(name="...", func=..., inputs={...}): apibrėžkite vieną darbo eigos veiksmą.
  3. llm.analyze_code(inputs={"kodas": ...}): kodui analizuoti naudokite LLM.
  4. ai_system.review_code(inputs={"kodas": ...}): kodui peržiūrėti naudokite agentinę AI sistemą.
  5. langchain.deploy_code(inputs={"kodas": ...}): įdiekite kodą į gamybos aplinką.
  6. „langchain.AgenticAI()“: sukurkite agentinės AI sistemos egzempliorių.
  7. „langchain.LLM()“: sukurkite LLM egzempliorių.
  8. „langchain.deploy_code()“: įdiekite kodą į gamybos aplinką.
  9. langchain.execute_workflow(): vykdykite darbo eigą.
  10. langchain.get_workflow_status(): gaukite darbo eigos būseną.

Vizualizacija

Štai pavyzdys, kaip vizualizuoti darbo eigą naudojant Chart.js:

{
  "tipas": "juosta",
  "duomenys": {
    "etiketės": ["Kodo analizė", "Kodo peržiūra", "Kodo diegimas"],
    "duomenų rinkiniai": [
      {
        "label": "Darbo eigos žingsniai",
        "duomenys": [10, 20, 30],
        "backgroundColor": [
          "rgba(255, 99, 132, 0,2)",
          "rgba(54, 162, 235, 0,2)",
          "rgba(255, 206, 86, 0,2)"
        ],
        "borderColor": [
          "rgba(255, 99, 132, 1)",
          "rgba(54, 162, 235, 1)",
          "rgba(255, 206, 86, 1)"
        ],
        "borderWidth": 1
      }
    ]
  },
  "parinktys": {}
}

Šis kodas apibrėžia juostinę diagramą su trimis etiketėmis: kodo analizė, kodo peržiūra ir kodo diegimas. Diagramoje parodytas žingsnių skaičius kiekviename darbo eigos etape.

Išvada

Agentinis AI, LLM ir orkestravimo įrankiai, tokie kaip „LangChain“ ir „DSPy“, gali pakeisti požiūrį į programinės įrangos architektūrą ir „DevOps“ automatizavimą. Automatizuodami tokias užduotis kaip kodo peržiūra, testavimas ir diegimas, galime pagerinti savo kūrimo procesų efektyvumą ir efektyvumą. Šiame straipsnyje mes ištyrėme šių technologijų integravimą ir pateikėme paprastą pavyzdį, kaip jas naudoti automatizuojant programinės įrangos architektūrą ir „DevOps“ procesą.


Have Questions?

Let's Talk

Contact me on LinkedIn