Təhlükəsiz və Ölçəklənən Süni Təminatlı Proqram Arxitekturasının Orkestrasiya Alətləri ilə həyata keçirilməsi | B4N1

Təhlükəsiz və Ölçəklənən Süni Təminatlı Proqram Arxitekturasının Orkestrasiya Alətləri ilə həyata keçirilməsi

6 months ago · b4n1 Read time: 4 min

Giriş

Süni intellektin (AI) proqram təminatı tətbiqlərinə inteqrasiyası problemlərin həlli, qərarların qəbulu və avtomatlaşdırmaya yanaşma tərzimizdə inqilab etdi. Bununla belə, süni intellektə əsaslanan tətbiqlər getdikcə mürəkkəbləşdikcə, təhlükəsiz və genişlənə bilən arxitektura ehtiyacı aktual problemə çevrildi. Bu yazıda biz AI agentlərini DevOps boru kəmərlərinə inteqrasiya etmək üçün DSPy və LangChain kimi orkestrləşdirmə alətlərindən istifadəyə xüsusi diqqət yetirməklə AI, proqram mühəndisliyi və DevOps-un kəsişməsini araşdıracağıq.

Süni intellektlə idarə olunan proqram arxitekturasının çətinlikləri

Süni intellektlə idarə olunan proqram proqramları proqram mühəndisləri və DevOps komandaları üçün unikal problemlər yaradır. Əsas problemlərdən bəzilərinə aşağıdakılar daxildir:

  • Ölçeklenebilirlik: Süni intellekt modelləri əhəmiyyətli hesablama resursları tələb edir ki, bu da istehsal mühitlərində genişlənmə problemlərinə səbəb ola bilər.
  • Təhlükəsizlik: AI modelləri məlumatların zəhərlənməsi və modelin inversiya hücumları kimi hücumlara qarşı həssas ola bilər.
  • İnteqrasiya: Süni intellekt modelləri mürəkkəb tapşırıq ola bilən mövcud proqram sistemləri ilə inteqrasiya edilməlidir.
  • Monitorinq və Baxım: AI modelləri dəqiq və etibarlı qalmasını təmin etmək üçün davamlı monitorinq və texniki xidmət tələb edir.

Orkestrasiya Alətləri: DSPy və LangChain

DSPy və LangChain kimi orkestrasiya alətləri AI agentlərinin DevOps boru kəmərlərinə inteqrasiyasını təmin etməklə bu problemlərin həllini təmin edir. Bu alətlər süni intellektlə idarə olunan tətbiqlər üçün təhlükəsiz və genişlənə bilən arxitekturanı təmin edərək, AI modellərini qurmaq, yerləşdirmək və idarə etmək üçün çərçivə təmin edir.

DSPy

DSPy, Python üzərində qurulmuş açıq mənbəli orkestrləşdirmə vasitəsidir. O, AI modellərini qurmaq, yerləşdirmək və idarə etmək üçün sadə və intuitiv API təmin edir. DSPy, TensorFlow, PyTorch və scikit-learn daxil olmaqla geniş süni intellekt çərçivələrini dəstəkləyir.

LangChain

LangChain, AI modellərini qurmaq, yerləşdirmək və idarə etmək üçün çərçivə təmin edən başqa bir açıq mənbəli orkestrasiya vasitəsidir. LangChain Rust üzərində qurulub və AI agentlərini DevOps boru kəmərlərinə inteqrasiya etmək üçün yüksək performanslı API təmin edir.

DSPy ilə Təhlükəsiz və Ölçəklənən Süni Təminatlı Proqram Arxitekturasının Tətbiqi

Bu bölmədə biz DSPy ilə təhlükəsiz və genişlənən süni intellektlə idarə olunan proqram arxitekturasının tətbiqinin sadə nümunəsini araşdıracağıq.

Nümunə: DSPy ilə Sadə AI Modelinin qurulması

DSPy istifadə edərək maşın öyrənmə modelinin qurulmasının sadə bir nümunəsini nəzərdən keçirək. Xətti reqressiya modeli qurmaq üçün scikit-learn kitabxanasından istifadə edəcəyik.

dspy-ni dsp kimi idxal edin
sklearn.linear_model-dən LinearRegression idxalı
sklearn.datasets-dən load_diabetes-i idxal edin

# Diabet məlumat dəstini yükləyin
dataset = load_diabetes()

# Məlumat dəstini təlim və sınaq dəstlərinə bölün
X_train, X_test, y_train, y_test = dsp.split_dataset(dataset.data, dataset.target, test_size=0.2)

# Xətti reqressiya modeli qurun
model = LinearRegression()

# Modeli təlim məlumatlarına öyrədin
model.fit(X_qatar, y_qatar)

# Test məlumatlarında modeli qiymətləndirin
dəqiqlik = model.score(X_test, y_test)
çap(f"Model dəqiqliyi: {dəqiqlik:.2f}")

Bu kod bloku DSPy istifadə edərək sadə maşın öyrənmə modelinin necə qurulacağını nümayiş etdirir. Biz diabet məlumat dəstini yükləyirik, onu təlim və sınaq dəstlərinə bölürük, xətti reqressiya modeli qururuq, onu məşq məlumatları əsasında öyrədirik və sınaq məlumatlarında onun düzgünlüyünü qiymətləndiririk.

LangChain ilə Təhlükəsiz və Ölçəklənən Süni Təminatlı Proqram Arxitekturasının Tətbiqi

Bu bölmədə biz LangChain ilə təhlükəsiz və genişlənə bilən süni intellektlə idarə olunan proqram arxitekturasının tətbiqinin sadə nümunəsini araşdıracağıq.

Nümunə: LangChain ilə sadə süni intellekt modelinin qurulması

LangChain istifadə edərək maşın öyrənmə modelinin qurulmasının sadə bir nümunəsini nəzərdən keçirək. Neyroşəbəkə modelini qurmaq üçün TensorFlow kitabxanasından istifadə edəcəyik.

lc kimi langchain istifadə edin;
tensorflow::prelude::* istifadə edin;

// Sadə neyron şəbəkə modelini müəyyənləşdirin
fn modeli(giriş: &Tensor) -> Tensor {
    qoy çıxış = input.matmul(&Tensor::new(1, 1));
    çıxış
}

// LangChain agenti yaradın
let agent = lc::Agent::new(model);

// Verilənlər toplusunu təyin edin
let dataset = lc::Dataset::new(vec![
    lc::Misal::new(vec![1.0, 2.0], vec![3.0]),
    lc::Misal::new(vec![4.0, 5.0], vec![6.0]),
]);

// Verilənlər toplusunda modeli öyrədin
agent.train(&dataset);

// Verilənlər toplusunda modeli qiymətləndirin
qoy dəqiqlik = agent.qiymətləndirmə(&dataset);
println!("Model dəqiqliyi: {}", dəqiqlik);

Bu kod bloku LangChain istifadə edərək sadə maşın öyrənmə modelinin necə qurulacağını nümayiş etdirir. Biz sadə neyron şəbəkə modelini müəyyənləşdiririk, LangChain agenti yaradırıq, verilənlər toplusunu müəyyənləşdiririk, modeli verilənlər bazasında öyrədirik və verilənlər bazasında onun düzgünlüyünü qiymətləndiririk.

Ən çox istifadə olunan 5-10 əmr/parça

DSPy və LangChain üçün ən çox istifadə edilən 5-10 əmr/parçalar bunlardır:

DSPy

  • dsp.split_dataset(data, target, test_size=0.2): Datasetni təlim və sınaq dəstlərinə bölür.
  • dsp.build_model(model_name, model_params): Göstərilən model adı və parametrlərindən istifadə edərək maşın öyrənmə modelini qurur.
  • dsp.train_model(model, data): Göstərilən data üzrə maşın öyrənmə modelini öyrədir.
  • dsp.evaluate_model(model, data): Göstərilən datada maşın öyrənmə modelinin performansını qiymətləndirir.
  • dsp.deploy_model(model, server_url): Maşın öyrənmə modelini göstərilən server URL-inə yerləşdirir.

LangChain

  • lc::Agent::new(model): Göstərilən modeldən istifadə edərək LangChain agenti yaradır.
  • lc::Dataset::new(nümunələr): Göstərilən nümunələrdən istifadə edərək LangChain verilənlər bazası yaradır.
  • lc::train(agent, dataset): LangChain agentini müəyyən edilmiş verilənlər bazasında məşq edir.
  • lc::evaluate(agent, dataset): Göstərilən verilənlər toplusunda LangChain agentinin performansını qiymətləndirir.
  • lc::deploy(agent, server_url): LangChain agentini göstərilən server URL-inə yerləşdirir.

Vizuallaşdırma

Budur, Chart.js istifadə edərək süni intellektlə idarə olunan proqram arxitekturasının sadə vizualizasiyası:

const ctx = document.getElementById('myChart').getContext('2d');
const chart = yeni qrafik(ctx, {
    növü: 'bar',
    data: {
        etiketlər: ['Təlim vaxtı', 'Nəticə çıxarma vaxtı', 'Model Dəqiqliyi'],
        verilənlər dəsti: [{
            etiket: 'DSPy',
            məlumat: [10, 5, 90],
            fon Rəngi: 'rgba(255, 99, 132, 0.2)',
            sərhədRəng: 'rgba(255, 99, 132, 1)',
            sərhəd eni: 1
        }, {
            etiket: 'LangChain',
            məlumatlar: [8, 6, 92],
            fon Rəngi: 'rgba(54, 162, 235, 0.2)',
            sərhədRəng: 'rgba(54, 162, 235, 1)',
            sərhəd eni: 1
        }]
    },
    seçimlər: {
        tərəzi: {
            y: {
                startAtZero: doğrudur
            }
        }
    }
});

Bu kod bloku DSPy və LangChain-in performansını vizuallaşdırmaq üçün Chart.js-dən istifadə edərək sadə bar diaqramı yaradır.

Nəticə

Bu yazıda biz AI agentlərini DevOps boru kəmərlərinə inteqrasiya etmək üçün DSPy və LangChain kimi orkestrləşdirmə alətlərindən istifadəyə xüsusi diqqət yetirməklə AI, proqram mühəndisliyi və DevOps-un kəsişməsini araşdırdıq. Biz DSPy və LangChain-dən istifadə edərək təhlükəsiz və miqyaslana bilən süni intellektlə idarə olunan proqram arxitekturasının necə həyata keçiriləcəyini nümayiş etdirdik və hər bir alətdən istifadə edərək maşın öyrənmə modelinin qurulmasının sadə nümunəsini təqdim etdik. Biz həmçinin hər bir alət üçün ən çox istifadə olunan 5-10 əmr/parçanı və Chart.js istifadə edərək süni intellektlə idarə olunan proqram arxitekturasının sadə vizualizasiyasını təqdim etdik.


Have Questions?

Let's Talk

Contact me on LinkedIn