Ke hoʻokō nei i ka hoʻolālā polokalamu palekana a hiki ke hoʻonui ʻia me AI-Driven Software Architecture me nā mea hana orchestration | B4N1

Ke hoʻokō nei i ka hoʻolālā polokalamu palekana a hiki ke hoʻonui ʻia me AI-Driven Software Architecture me nā mea hana orchestration

3 months ago · b4n1 Tiempo de lectura: 6 min

Hoʻolauna

Ua hoʻololi ka hoʻohui ʻana o Artificial Intelligence (AI) i nā polokalamu polokalamu i ke ala a mākou e hoʻokokoke ai i ka hoʻoponopono pilikia, ka hoʻoholo ʻana, a me ka automation. Eia nō naʻe, i ka lilo ʻana o nā noi i alakaʻi ʻia e AI, ua lilo ka pono no ka hoʻolālā paʻa a hiki ke hoʻonui ʻia. Ma kēia ʻatikala, e ʻimi mākou i ka intersection o AI, software engineering, a me DevOps, me ka manaʻo kikoʻī i ka hoʻohana ʻana i nā mea hana orchestration e like me DSPy a me LangChain e hoʻohui i nā mea hana AI i nā pipelines DevOps.

Nā Luʻi o AI-Driven Software Architecture

ʻO nā polokalamu polokalamu i alakaʻi ʻia e AI ke kau nei i nā luʻi kūʻokoʻa i nā ʻenekini polokalamu a me nā hui DevOps. ʻO kekahi o nā pilikia nui:

  • Scalability: Pono nā kumu hoʻohālike AI i nā kumuwaiwai helu nui, hiki ke alakaʻi i nā pilikia scalability i nā kaiapuni hana.
  • Palekana: Hiki ke hoʻopilikia ʻia nā kumu hoʻohālike AI i nā hoʻouka kaua, e like me ka ʻona ʻikepili a me nā hoʻouka hoʻohuli hoʻohālike.
  • Hoʻohui: Pono e hoʻohui ʻia nā hiʻohiʻona AI me nā ʻōnaehana polokalamu i loaʻa, hiki ke lilo i hana paʻakikī.
  • Monitoring and Maintenance: Pono nā kumu hoʻohālike AI i ka nānā mau ʻana a me ka mālama ʻana i mea e kūpaʻa mau ai lākou.

Nā Mea Hana Hana: DSPy a me LangChain

Hāʻawi nā mea hana orchestration e like me DSPy a me LangChain i kahi hopena i kēia mau pilikia ma o ka ʻae ʻana i ka hoʻohui ʻana o nā mea hana AI i nā pipelines DevOps. Hāʻawi kēia mau mea hana i kahi hoʻolālā no ke kūkulu ʻana, hoʻolalelale, a me ka hoʻokele ʻana i nā hiʻohiʻona AI, e hōʻoiaʻiʻo ana i ka hoʻolālā paʻa a hiki ke hoʻonui ʻia no nā noi i alakaʻi ʻia e AI.

DSPy

ʻO DSPy kahi mea hana orchestration open-source i kūkulu ʻia ma luna o Python. Hāʻawi ia i kahi API maʻalahi a intuitive no ke kūkulu ʻana, hoʻoili ʻana, a me ka mālama ʻana i nā hiʻohiʻona AI. Kākoʻo ʻo DSPy i kahi ākea ākea o AI frameworks, me TensorFlow, PyTorch, a me scikit-learn.

LangChain

ʻO LangChain kekahi mea hana hoʻoheheʻe open-source e hāʻawi i kahi hoʻolālā no ke kūkulu ʻana, hoʻoili ʻana, a me ka mālama ʻana i nā hiʻohiʻona AI. Kūkulu ʻia ʻo LangChain ma luna o Rust a hāʻawi i kahi API hana kiʻekiʻe no ka hoʻohui ʻana i nā mea hana AI i nā pipelines DevOps.

Ke hoʻokō nei i ka Pūnaewele Pūnaewele Palekana a hiki ke hoʻonui ʻia me DSPy

Ma kēia ʻāpana, e ʻimi mākou i kahi hiʻohiʻona maʻalahi o ka hoʻokō ʻana i ka hoʻolālā polokalamu paʻa a paʻa i ka AI-driven software me DSPy.

Laʻana: Ke kūkulu ʻana i kahi kumu hoʻohālike AI maʻalahi me DSPy

E noʻonoʻo kākou i kahi laʻana maʻalahi o ke kūkulu ʻana i kahi hoʻohālike aʻo mīkini me DSPy. E hoʻohana mākou i ka waihona scikit-Learn no ke kūkulu ʻana i ke ʻano hoʻohālikelike laina.

lawe mai i ka dspy e like me dsp
mai sklearn.linear_model hoʻokomo i LinearRegression
mai sklearn.datasets hoʻokomo i load_diabetes

# Hoʻouka i ka ʻikepili maʻi diabetes
ʻikepili = load_diabetes()

# E hoʻokaʻawale i ka ʻikepili i ka hoʻomaʻamaʻa a me ka hoʻāʻo ʻana
X_train, X_test, y_train, y_test = dsp.split_dataset(dataset.data, dataset.target, test_size=0.2)

# Kūkulu i kahi hoʻohālike hoʻihoʻi laina
kumu hoʻohālike = LinearRegression()

# E hoʻomaʻamaʻa i ke kumu hoʻohālike ma ka ʻikepili aʻo
model.fit(X_train, y_train)

# E loiloi i ke kumu hoʻohālike ma ka ʻikepili hoʻāʻo
pololei = model.score(X_test, y_test)
paʻi(f"Ka pololei o ke kumu hoʻohālike: {ka pololei:.2f}")

Hōʻike kēia poloka code i ke kūkulu ʻana i kahi kumu hoʻohālike aʻo mīkini maʻalahi me DSPy. Hoʻouka mākou i ka ʻikepili maʻi diabetes, hoʻokaʻawale iā ia i ka hoʻomaʻamaʻa a me ka hoʻāʻo ʻana, kūkulu i kahi kumu hoʻohālikelike laina, hoʻomaʻamaʻa iā ia ma ka ʻikepili aʻo, a loiloi i kona pololei ma ka ʻikepili hoʻāʻo.

Ke hoʻokō nei i ka Pūnaewele Pūnaewele Palekana a hiki ke hoʻonui ʻia me ka LangChain

Ma kēia ʻāpana, e ʻimi mākou i kahi hiʻohiʻona maʻalahi o ka hoʻokō ʻana i ka hoʻolālā polokalamu paʻa a paʻa i ka AI me LangChain.

Laʻana: Ke kūkulu ʻana i kahi kumu hoʻohālike AI maʻalahi me LangChain

E noʻonoʻo kākou i kahi laʻana maʻalahi o ke kūkulu ʻana i kahi hoʻohālike aʻo mīkini me ka hoʻohana ʻana iā LangChain. E hoʻohana mākou i ka waihona TensorFlow e kūkulu i kahi ʻōnaehana neural network.

hoʻohana i ka langchain e like me lc;
hoʻohana i ka tensorflow::prelude::*;

// E wehewehe i ke kumu hoʻohālike neural network maʻalahi
fn kükohu(hookomo: &Tensor) -> Tensor {
    let output = input.matmul(&Tensor::new(1, 1));
    puka
}

// E hana i kahi luna LangChain
let agent = lc::Agent::new(model);

// E wehewehe i kahi waihona
let dataset = lc::Dataset::new(vec![
    lc::Laʻana::hou(vec![1.0, 2.0], vec![3.0]),
    lc::Laʻana::hou(vec![4.0, 5.0], vec![6.0]),
]);

// E hoʻomaʻamaʻa i ke kumu hoʻohālike ma ka waihona
agent.train(&dataset);

// E loiloi i ke kŘkohu ma ka waihona
ʻae pololei = agent.evaluate(&dataset);
println!("Ka pololei o ke kŘkohu: {}", pololei);

Hōʻike kēia poloka code i ke ʻano o ke kūkulu ʻana i kahi hiʻohiʻona aʻo mīkini maʻalahi me ka hoʻohana ʻana iā LangChain. Hoʻomaopopo mākou i kahi hiʻohiʻona neural network maʻalahi, hana i kahi mea hana LangChain, wehewehe i kahi dataset, hoʻomaʻamaʻa i ke kumu hoʻohālike ma ka dataset, a loiloi i kona pololei ma ka dataset.

5-10 kiʻekiʻe loa i hoʻohana ʻia i nā kauoha/nā ʻāpana

Eia nā 5-10 kiʻekiʻe loa i hoʻohana ʻia i nā kauoha / snippets no DSPy a me LangChain:

DSPy

  • dsp.split_dataset(data, target, test_size=0.2): Hoʻokaʻawale i ka ʻikepili i nā pūʻulu hoʻomaʻamaʻa a hoʻāʻo.
  • dsp.build_model(model_name, model_params): Hana i ka mīkini aʻo kumu hoʻohālike me ka hoʻohana ʻana i ka inoa kumu hoʻohālike a me nā ʻāpana.
  • dsp.train_model(model, data): Hoʻomaʻamaʻa i ke kŘkohu aʻo mīkini ma ka ʻikepili i kuhikuhi ʻia.
  • dsp.evaluate_model(model, data): Loiloi i ka hana o ka mīkini aʻo kumu ma ka ʻikepili i kuhikuhi ʻia.
  • dsp.deploy_model(model, server_url): Hoʻolālā i ke kŘkohu aʻo mīkini i ka URL kikowaena kikoʻī.

LangChain

  • lc::Agent::new(model): Hoʻokumu i kahi ʻelele LangChain me ka hoʻohana ʻana i ke kumu hoʻohālike.
  • lc::Dataset::new(examples): Hana i ka LangChain dataset me ka hoʻohana ʻana i nā laʻana i kuhikuhi ʻia.
  • lc::train(agent, dataset): Hoʻomaʻamaʻa i ka ʻelele LangChain ma ka ʻikepili i kuhikuhi ʻia.
  • lc::evaluate(agent, dataset): Loiloi i ka hana a ka luna o LangChain ma ka papa helu i kohoia.
  • lc::deploy(agent, server_url): Hoʻolālā i ka ʻelele LangChain i ka URL kikowaena kikoʻī.

Hoikeike

Eia kahi hiʻohiʻona maʻalahi o ka hoʻolālā polokalamu hoʻokele AI me ka hoʻohana ʻana iā Chart.js:

const ctx = document.getElementById('myChart').getContext('2d');
palapala kuhi = Palapala hou(ctx, {
    ʻano: 'bar',
    ʻikepili: {
        nā lepili: ['Wā hoʻomaʻamaʻa', 'Manawa Inference', 'Kūpono Hoʻohālike'],
        nā pūʻulu helu: [{
            lepili: 'DSPy',
            ʻikepili: [10, 5, 90],
            ka waihoʻoluʻu: 'rgba(255, 99, 132, 0.2)',
            kala kala: 'rgba(255, 99, 132, 1)',
            palena palena: 1
        }, {
            lepili: 'LangChain',
            ʻikepili: [8, 6, 92],
            ka waihoʻoluʻu: 'rgba(54, 162, 235, 0.2)',
            kala kala: 'rgba(54, 162, 235, 1)',
            palena palena: 1
        }]
    },
    nā koho: {
        unahi: {
            y: {
                beginAtZero: ʻoiaʻiʻo
            }
        }
    }
});

Hoʻokumu kēia poloka code i kahi pakuhi pahu maʻalahi me ka hoʻohana ʻana iā Chart.js e nānā i ka hana a DSPy a me LangChain.

Ka hopena

Ma kēia ʻatikala, ua ʻimi mākou i ka intersection o AI, software engineering, a me DevOps, me ka manaʻo nui i ka hoʻohana ʻana i nā mea hana orchestration e like me DSPy a me LangChain e hoʻohui i nā mea hana AI i nā pipelines DevOps. Ua hōʻike mākou i ke ʻano o ka hoʻokō ʻana i ka hoʻolālā polokalamu hoʻokele AI-driven paʻa a hiki ke hoʻohana ʻia me DSPy a me LangChain, a hāʻawi i kahi laʻana maʻalahi o ke kūkulu ʻana i kahi kumu aʻo mīkini me ka hoʻohana ʻana i kēlā me kēia hāmeʻa. Hāʻawi pū mākou i nā kauoha / snippets kiʻekiʻe 5-10 i hoʻohana nui ʻia no kēlā me kēia hāmeʻa a me kahi hiʻohiʻona maʻalahi o ka hoʻolālā polokalamu hoʻokele AI me ka hoʻohana ʻana iā Chart.js.


¿Tienes preguntas?

Hablemos

Contáctame en LinkedIn