Kuriame keičiamo dydžio ir etiškas DI pagrįstas programinės įrangos sistemas su moduline darbo eigos architektūra ir AI agentais | B4N1

Kuriame keičiamo dydžio ir etiškas DI pagrįstas programinės įrangos sistemas su moduline darbo eigos architektūra ir AI agentais

3 months ago · b4n1 Tiempo de lectura: 5 min

Įvadas

Sparti dirbtinio intelekto (AI) ir programinės įrangos inžinerijos pažanga paskatino sukurti sudėtingas programinės įrangos sistemas, kurios integruoja dirbtinio intelekto agentus ir modulinę darbo eigos architektūrą. Šios sistemos gali pakeisti mūsų požiūrį į „DevOps“ automatizavimą ir orkestravimą. Tačiau norint sukurti keičiamo dydžio ir etiškas AI pagrįstas programinės įrangos sistemas, reikia giliai suprasti naujausius AI, programinės įrangos inžinerijos ir architektūros pasiekimus.

Šiame straipsnyje išnagrinėsime projektavimo principus ir geriausią praktiką kuriant modulines, keičiamo dydžio ir etiškas programinės įrangos sistemas, kurios integruoja AI agentus ir modulinę darbo eigos architektūrą. Mes sutelksime dėmesį į naujausių AI (didelių kalbų modelių (LLM), paieškos papildytos kartos (RAG), programinės įrangos inžinerijos (Python, Rust, Go) ir architektūros pasiekimų derinimą, kad sukurtume tvirtas ir prižiūrimas sistemas.

Modulinė darbo eigos architektūra

Modulinė darbo eigos architektūra yra projektavimo modelis, suskaidantis sudėtingas sistemas į mažesnius, nepriklausomus modulius, kuriuos galima lengvai prižiūrėti, atnaujinti ir keisti. Kiekvienas modulis yra atsakingas už konkrečią užduotį ar funkciją ir bendrauja tarpusavyje per aiškiai apibrėžtas sąsajas.

Štai paprastas Python modulinės darbo eigos architektūros pavyzdys:

# workflow.py
klasės darbo eiga:
    def __init__(self):
        self.modules = []

    def add_module(self, module):
        self.modules.append(module)

    def run (self):
        moduliui self.modules:
            module.run()

# module1.py
1 klasės modulis:
    def run (self):
        print ("1 modulis veikia")

# module2.py
2 klasės modulis:
    def run (self):
        print ("Modulis 2 veikia")

# pagrindinis.py
if __name__ == "__main__":
    darbo eiga = Darbo eiga()
    workflow.add_module(Module1())
    workflow.add_module(Module2())
    workflow.run()

Šiame pavyzdyje turime „Workflow“ klasę, kuri tvarko modulių sąrašą. Kiekvienas modulis yra atsakingas už konkrečią užduotį ir jie pridedami prie darbo eigos naudojant „add_module“ metodą. „Paleisti“ metodas naudojamas kiekvienam darbo eigos moduliui vykdyti.

AI agentai

AI agentai yra programinės įrangos komponentai, kurie naudoja mašininio mokymosi algoritmus, kad priimtų sprendimus ir imtųsi veiksmų sistemoje. Jie gali būti naudojami automatizuoti užduotis, pagerinti vartotojo patirtį ir optimizuoti sistemos veikimą.

Yra keletas AI agentų tipų, įskaitant:

  • Taisyklėmis pagrįsti agentai: šie agentai sprendimams priimti naudoja iš anksto nustatytas taisykles.
  • Mašininio mokymosi agentai: šie agentai naudoja mašininio mokymosi algoritmus, kad mokytųsi iš duomenų ir priimtų sprendimus.
  • Hibridiniai agentai: šie agentai derina taisyklėmis pagrįstus ir mašininio mokymosi metodus, kad priimtų sprendimus.

Štai paprasto AI agento „Python“, naudojant mašininio mokymosi algoritmą, pavyzdys:

# agent.py
iš sklearn.ensemble importo RandomForestClassifier
iš sklearn.model_selection importuoti train_test_split
iš sklearn.datasets importuoti load_iris

klasės agentas:
    def __init__(self):
        self.model = Atsitiktinis ForestClassifier()

    def traukinys (savarankiškai, X, y):
        X_traukinys, X_testas, y_traukinys, y_testas = traukinio_testo_skirstymas(X, y, testo_dydis = 0,2, atsitiktinė būsena = 42)
        self.model.fit(X_train, y_train)

    def numatyti (savęs, X):
        grįžti self.model.predict(X)

# pagrindinis.py
if __name__ == "__main__":
    rainelė = load_iris ()
    X = rainelė.duomenys
    y = rainelė.taikinys
    agentas = agentas ()
    agentas.train(X, y)
    prognozės = agent.predict(X)
    spausdinti (prognozės)

Šiame pavyzdyje turime paprastą AI agentą, kuris prognozėms atlikti naudoja atsitiktinį miško klasifikatorių. Agentas yra apmokytas naudoti rainelės duomenų rinkinį ir prognozuoja tą patį duomenų rinkinį.

AI agentų ir modulinės darbo eigos architektūros derinimas

AI agentų ir modulinės darbo eigos architektūros derinimas leidžia mums sukurti sudėtingas sistemas, kurios integruoja dirbtinio intelekto pagrįstą sprendimų priėmimą su moduline, keičiamo dydžio architektūra.

Pateikiame sistemos, kuri sujungia AI agentus ir modulinę darbo eigos architektūrą, pavyzdys:

# workflow.py
klasės darbo eiga:
    def __init__(self):
        self.modules = []
        self.agent = Nėra

    def add_module(self, module):
        self.modules.append(module)

    def add_agent(self, agent):
        savarankiškai.agentas = agentas

    def run (self):
        moduliui self.modules:
            module.run()
        jei savarankiškai.agentas:
            self.agent.predict()

# module1.py
1 klasės modulis:
    def run (self):
        print ("1 modulis veikia")

# module2.py
2 klasės modulis:
    def run (self):
        print ("Modulis 2 veikia")

# agent.py
iš sklearn.ensemble importo RandomForestClassifier
iš sklearn.model_selection importuoti train_test_split
iš sklearn.datasets importuoti load_iris

klasės agentas:
    def __init__(self):
        self.model = Atsitiktinis ForestClassifier()

def traukinys (savarankiškai, X, y):
        X_traukinys, X_testas, y_traukinys, y_testas = traukinio_testo_skirstymas(X, y, testo_dydis = 0,2, atsitiktinė būsena = 42)
        self.model.fit(X_train, y_train)

    def numatyti (savęs, X):
        grįžti self.model.predict(X)

# pagrindinis.py
if __name__ == "__main__":
    darbo eiga = Darbo eiga()
    workflow.add_module(Module1())
    workflow.add_module(Module2())
    agentas = agentas ()
    agentas.train(X, y)
    workflow.add_agent(agent)
    workflow.run()

Šiame pavyzdyje turime sistemą, kuri sujungia AI agentus ir modulinę darbo eigos architektūrą. Sistema turi du modulius ir AI agentą, kuris prognozėms atlikti naudoja atsitiktinį miško klasifikatorių. Agentas įtraukiamas į darbo eigą naudojant „add_agent“ metodą ir pateikia prognozes, kai moduliai paleidžiami.

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

Štai keletas dažniausiai naudojamų komandų ir fragmentų, skirtų kuriant keičiamo dydžio ir etiškas AI pagrįstas programinės įrangos sistemas su moduline darbo eigos architektūra ir AI agentais:

  1. Python: „importuoti pandas kaip pd“ (importuoti pandų biblioteką)
  2. Python: `pd.read_csv('data.csv')' (CSV failo skaitymas į pandos duomenų rėmelį)
  3. Python: „agent.train(X, y)“ (AI agento mokymas apie duomenų rinkinį)
  4. Python: „agent.predict(X)“ (numatymas naudojant AI agentą)
  5. Rust: „let mut agent = Agent::new()“ (naujo AI agento kūrimas „Rust“)
  6. Rust: „agent.train(X, y)“ (AI agento mokymas apie Rust duomenų rinkinį)
  7. Go: agent := NewAgent() (naujo AI agento kūrimas programoje Go)
  8. Go: „agent.Train(X, y)“ (AI agento mokymas apie duomenų rinkinį Go)
  9. Chart.js: const chart = new Chart(ctx, { type: 'bar', data: { labels: ['Label 1', 'Label 2'], datasets: [{ label: 'Dataset 1', data: [10, 20] }] } }); (Chart.js diagrama naudojant js
  10. Chart.js: chart.data.datasets[0].data.push(30) (naujo duomenų taško pridėjimas prie diagramos naudojant Chart.js)

Vizualizacija

Pateikiame juostinės diagramos, kurioje naudojamas Chart.js, pavyzdys:

{
  "tipas": "juosta",
  "duomenys": {
    "etiketės": ["Label 1", "Label 2"],
    "duomenų rinkiniai": [
      {
        "label": "1 duomenų rinkinys",
        "duomenys": [10, 20]
      }
    ]
  }
}

Šioje diagramoje yra dvi etiketės ir vienas duomenų rinkinys su dviem duomenų taškais. Diagramą galima tinkinti naudojant įvairias parinktis ir nustatymus.

Išvada

Kuriant keičiamo dydžio ir etiškas AI pagrįstas programinės įrangos sistemas su moduline darbo eigos architektūra ir AI agentais reikia giliai suprasti naujausius AI, programinės įrangos inžinerijos ir architektūros pasiekimus. Sujungę AI agentus ir modulinę darbo eigos architektūrą, galime sukurti sudėtingas sistemas, kurios integruoja dirbtinio intelekto pagrįstą sprendimų priėmimą su moduline, keičiamo dydžio architektūra.

Šiame straipsnyje mes išnagrinėjome projektavimo principus ir geriausią praktiką kuriant modulines, keičiamo dydžio ir etiškas programinės įrangos sistemas, kurios integruoja AI agentus ir modulinę darbo eigos architektūrą. Taip pat pateikėme paprastų AI agentų ir modulinės darbo eigos architektūros „Python“, „Rust“ ir „Go“ pavyzdžius, taip pat vizualizacijos pavyzdį naudojant Chart.js.

Vadovaudamiesi šiame straipsnyje išdėstytomis gairėmis ir geriausios praktikos pavyzdžiais, kūrėjai gali sukurti patikimas ir prižiūrimas dirbtinio intelekto pagrįstas programinės įrangos sistemas, atitinkančias šiuolaikinių programų ir pramonės šakų poreikius.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn