Zbatimi i arkitekturës së softuerit të sigurt dhe të shkallëzuar të drejtuar nga AI me mjete orkestrimi | B4N1

Zbatimi i arkitekturës së softuerit të sigurt dhe të shkallëzuar të drejtuar nga AI me mjete orkestrimi

3 months ago · b4n1 Tiempo de lectura: 6 min

Hyrje

Integrimi i Inteligjencës Artificiale (AI) në aplikacionet softuerike ka revolucionarizuar mënyrën se si i qasemi zgjidhjes së problemeve, vendimmarrjes dhe automatizimit. Megjithatë, ndërsa aplikacionet e drejtuara nga AI bëhen gjithnjë e më komplekse, nevoja për arkitekturë të sigurt dhe të shkallëzueshme është bërë një shqetësim i ngutshëm. Në këtë artikull, ne do të eksplorojmë kryqëzimin e AI, inxhinierisë softuerike dhe DevOps, me një theks të veçantë në përdorimin e mjeteve të orkestrimit si DSPy dhe LangChain për të integruar agjentët e AI në tubacionet DevOps.

Sfidat e arkitekturës së softuerit të drejtuar nga AI

Aplikacionet softuerike të drejtuara nga AI paraqesin sfida unike për inxhinierët e softuerit dhe ekipet e DevOps. Disa nga sfidat kryesore përfshijnë:

  • Shkallueshmëria: Modelet e AI kërkojnë burime të konsiderueshme llogaritëse, të cilat mund të çojnë në çështje të shkallëzueshmërisë në mjediset e prodhimit.
  • Siguria: Modelet e AI mund të jenë të prekshme ndaj sulmeve, të tilla si helmimi i të dhënave dhe sulmet e përmbysjes së modeleve.
  • Integrimi: Modelet e AI duhet të integrohen me sistemet ekzistuese softuerike, gjë që mund të jetë një detyrë komplekse.
  • **Monitorimi dhe mirëmbajtja **: Modelet e AI kërkojnë monitorim dhe mirëmbajtje të vazhdueshme për të siguruar që ato të mbeten të sakta dhe të besueshme.

Mjetet e orkestrimit: DSPy dhe LangChain

Mjetet e orkestrimit si DSPy dhe LangChain ofrojnë një zgjidhje për këto sfida duke mundësuar integrimin e agjentëve të AI në tubacionet DevOps. Këto mjete ofrojnë një kornizë për ndërtimin, vendosjen dhe menaxhimin e modeleve të AI, duke siguruar arkitekturë të sigurt dhe të shkallëzueshme për aplikacionet e drejtuara nga AI.

DSPy

DSPy është një mjet orkestrimi me burim të hapur i ndërtuar në krye të Python. Ai siguron një API të thjeshtë dhe intuitive për ndërtimin, vendosjen dhe menaxhimin e modeleve të AI. DSPy mbështet një gamë të gjerë kornizash të AI, duke përfshirë TensorFlow, PyTorch dhe scikit-learn.

Zinxhiri Lang

LangChain është një tjetër mjet orkestrimi me burim të hapur që ofron një kornizë për ndërtimin, vendosjen dhe menaxhimin e modeleve të AI. LangChain është ndërtuar në krye të Rust dhe ofron një API me performancë të lartë për integrimin e agjentëve të AI në tubacionet DevOps.

Zbatimi i arkitekturës së softuerit të sigurt dhe të shkallëzuar të drejtuar nga AI me DSPy

Në këtë seksion, ne do të eksplorojmë një shembull të thjeshtë të zbatimit të arkitekturës së softuerit të sigurt dhe të shkallëzuar të drejtuar nga AI me DSPy.

Shembull: Ndërtimi i një modeli të thjeshtë AI me DSPy

Le të shqyrtojmë një shembull të thjeshtë të ndërtimit të një modeli të mësimit të makinës duke përdorur DSPy. Ne do të përdorim bibliotekën scikit-learn për të ndërtuar një model regresioni linear.

importoj dspy si dsp
nga importi sklearn.linear_model Regresioni Linear
nga sklearn.datasets importojnë load_diabetes

# Ngarko grupin e të dhënave të diabetit
grupi i të dhënave = load_diabetes()

# Ndani grupin e të dhënave në grupe trajnimi dhe testimi
X_train, X_test, y_train, y_test = dsp.split_dataset (dataset.data, dataset. target, test_size=0.2)

# Ndërtoni një model regresioni linear
model = LinearRegresion()

# Trajnoni modelin në të dhënat e trajnimit
model.fit (X_train, y_train)

# Vlerësoni modelin në të dhënat e testimit
saktësia = model.rezultati (X_test, y_test)
print(f"Saktësia e modelit: {saktësia:.2f}")

Ky bllok kodi demonstron se si të ndërtoni një model të thjeshtë të mësimit të makinerive duke përdorur DSPy. Ne ngarkojmë të dhënat e diabetit, e ndajmë atë në grupe trajnimi dhe testimi, ndërtojmë një model regresioni linear, e trajnojmë mbi të dhënat e trajnimit dhe vlerësojmë saktësinë e tij në të dhënat e testimit.

Zbatimi i arkitekturës së softuerit të sigurt dhe të shkallëzuar të drejtuar nga AI me LangChain

Në këtë seksion, ne do të eksplorojmë një shembull të thjeshtë të zbatimit të arkitekturës së softuerit të sigurt dhe të shkallëzuar të drejtuar nga AI me LangChain.

Shembull: Ndërtimi i një modeli të thjeshtë AI me LangChain

Le të shqyrtojmë një shembull të thjeshtë të ndërtimit të një modeli të mësimit të makinës duke përdorur LangChain. Ne do të përdorim bibliotekën TensorFlow për të ndërtuar një model të rrjetit nervor.

`` ndryshk përdorni langchain si lc; përdorni tensorflow::prelude::*;

// Përcaktoni një model të thjeshtë të rrjetit nervor modeli fn(hyrja: &Tensor) -> Tensor { let output = input.matmul(&Tensor::new(1, 1)); prodhimit }

// Krijoni një agjent LangChain let agent = lc::Agent::new(model);

// Përcaktoni një grup të dhënash le të dhënat = lc::Setimi i të dhënave::new(vec![ lc::Shembull::new(vec![1.0, 2.0], vec![3.0]), lc::Shembull::new(vec![4.0, 5.0], vec![6.0]), ]);

// Trajnoni modelin në grupin e të dhënave agjent.train(& grup i të dhënave);

// Vlerësoni modelin në grupin e të dhënave le të saktësinë = agjent.vlerësoj (& grup të dhënash); println!("Saktësia e modelit: {}", saktësi);


Ky bllok kodi demonstron se si të ndërtoni një model të thjeshtë të mësimit të makinerive duke përdorur LangChain. Ne përcaktojmë një model të thjeshtë të rrjetit nervor, krijojmë një agjent LangChain, përcaktojmë një grup të dhënash, trajnojmë modelin në grupin e të dhënave dhe vlerësojmë saktësinë e tij në grupin e të dhënave.

## Top 5-10 Komandat/Pjeset më të përdorura

Këtu janë 5-10 komandat/copëzat më të përdorura për DSPy dhe LangChain:

### DSPy

* `dsp.split_dataset(data, target, test_size=0.2)`: Ndan grupin e të dhënave në grupe trajnimi dhe testimi.
* `dsp.build_model(model_name, model_params)`: Ndërton një model të mësimit të makinës duke përdorur emrin dhe parametrat e specifikuar të modelit.
* `dsp.train_model(model, të dhëna)`: Trajnon modelin e mësimit të makinerisë në të dhënat e specifikuara.
* `dsp.evaluate_model(model, të dhëna)`: Vlerëson performancën e modelit të mësimit të makinës në të dhënat e specifikuara.
* `dsp.deploy_model(model, server_url)`: Vendos modelin e mësimit të makinës në URL-në e serverit të specifikuar.

### Zinxhiri Lang

* `lc::Agent::new(model)`: Krijon një agjent LangChain duke përdorur modelin e specifikuar.
* `lc::Dataset::new(shembuj)`: Krijon një grup të dhënash LangChain duke përdorur shembujt e specifikuar.
* `lc::train(agent, dataset)`: Trajnon agjentin LangChain në grupin e të dhënave të specifikuar.
* `lc::evaluate(agent, dataset)`: Vlerëson performancën e agjentit LangChain në grupin e të dhënave të specifikuar.
* `lc::deploy(agent, server_url)`: Vendos agjentin LangChain në URL-në e serverit të specifikuar.

## Vizualizimi

Këtu është një vizualizim i thjeshtë i arkitekturës së softuerit të drejtuar nga AI duke përdorur Chart.js:

```javascript
const ctx = document.getElementById('myChart').getContext('2d');
grafik konst = grafik i ri(ctx, {
    type: 'bar',
    data: {
        etiketat: ['Koha e trajnimit', 'Koha e konkluzionit', 'Saktësia e modelit'],
        datasets: [{
            label: 'DSPy',
            data: [10, 5, 90],
            Ngjyra e sfondit: 'rgba(255, 99, 132, 0,2)',
            Ngjyra e kufirit: 'rgba(255, 99, 132, 1)',
            borderWidth: 1
        }, {
            label: 'LangChain',
            data: [8, 6, 92],
            Ngjyra e sfondit: 'rgba(54, 162, 235, 0,2)',
            Ngjyra e kufirit: 'rgba(54, 162, 235, 1)',
            borderWidth: 1
        }]
    },
    options: {
        scales: {
            y: {
                beginAtZero: true
            }
        }
    }
});

Ky bllok kodi krijon një grafik të thjeshtë me shirita duke përdorur Chart.js për të vizualizuar performancën e DSPy dhe LangChain.

Përfundim

Në këtë artikull, ne eksploruam kryqëzimin e AI, inxhinierisë softuerike dhe DevOps, me një theks të veçantë në përdorimin e mjeteve të orkestrimit si DSPy dhe LangChain për të integruar agjentët e AI në tubacionet DevOps. Ne demonstruam se si të zbatojmë arkitekturën e softuerit të sigurt dhe të shkallëzuar të drejtuar nga AI duke përdorur DSPy dhe LangChain dhe siguruam një shembull të thjeshtë të ndërtimit të një modeli të mësimit të makinerive duke përdorur çdo mjet. Ne gjithashtu siguruam një top 5-10 komandat/copëzat më të përdorura për çdo mjet dhe një vizualizim të thjeshtë të arkitekturës së softuerit të drejtuar nga AI duke përdorur Chart.js.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn