Ar AI darbinātu DevOps cauruļvadu koordinēšana ar DSPy un LangChain proaktīvai incidentu izmeklēšanai un risināšanai | B4N1

Ar AI darbinātu DevOps cauruļvadu koordinēšana ar DSPy un LangChain proaktīvai incidentu izmeklēšanai un risināšanai

3 months ago · b4n1 Read time: 3 min

Ievads

Mūsdienu programmatūras sistēmu arvien pieaugošā sarežģītība ir palielinājusi incidentu biežumu un nopietnību, padarot proaktīvu incidentu izmeklēšanu un atrisināšanu par būtisku DevOps aspektu. Mākslīgais intelekts (AI) un mašīnmācīšanās (ML) ir kļuvuši par spēcīgiem rīkiem, lai uzlabotu DevOps cauruļvadus, ļaujot AI vadītai automatizācijai un orķestrēšanai atklāt un atrisināt incidentus, pirms tie ietekmē uzņēmējdarbību. Šajā rakstā mēs izpētīsim, kā ieviest AI darbinātus DevOps cauruļvadus, izmantojot DSPy un LangChain, koncentrējoties uz proaktīvu incidentu izmeklēšanu un atrisināšanu, izmantojot AIOps un RAG modeļus, un integrējot ar AWS DevOps aģentu automatizētai incidentu izmeklēšanai.

Pārskats par DSPy un LangChain

DSPy ir Python bibliotēka, kas nodrošina vienkāršu un efektīvu veidu, kā izveidot un izvietot ar AI darbināmus DevOps cauruļvadus. Tas ļauj izstrādātājiem savos DevOps cauruļvados integrēt dažādus AI un ML modeļus, tostarp dabiskās valodas apstrādi (NLP), datorredzi un paredzamo analīzi. No otras puses, LangChain ir Python bibliotēka, kas ļauj izstrādātājiem izveidot un izvietot liela mēroga AI modeļus, izmantojot modulāru un mērogojamu arhitektūru.

Ar AI darbināmu DevOps cauruļvadu ieviešana ar DSPy un LangChain

Lai ieviestu ar AI darbināmus DevOps cauruļvadus ar DSPy un LangChain, mums ir jāveic šādas darbības:

1. Datu apkopošana: apkopojiet atbilstošus datus no dažādiem avotiem, piemēram, žurnāliem, metrikas un konfigurācijas failiem. 2. Datu priekšapstrāde: iepriekš apstrādājiet savāktos datus, lai tos sagatavotu analīzei un modelēšanai. 3. Modeļu apmācība: apmāciet AI un ML modeļus, izmantojot iepriekš apstrādātus datus, lai noteiktu un prognozētu incidentus. 4. Modeļa izvietošana: izvietojiet apmācītos modeļus DevOps konveijerā, izmantojot DSPy un LangChain. 5. Incidentu izmeklēšana: izmantojiet izvietotos modeļus, lai izmeklētu incidentus un noteiktu galvenos cēloņus. 6. Incidentu risināšana: izmantojiet incidentu izmeklēšanā gūtos ieskatus, lai proaktīvi atrisinātu incidentus.

Koda piemērs: vienkārša RAG modeļa ieviešana ar DSPy un LangChain

Šeit ir vienkāršs koda piemērs, kas parāda, kā ieviest RAG (sākmes cēloņu analīzes) modeli, izmantojot DSPy un LangChain:

importēt dspy
no langchain importa LLMChain

# Ielādējiet iepriekš apstrādātos datus
dati = pd.read_csv("data.csv")

# Definējiet RAG modeli
rag_model = dspy.RAGModel(
    input_features=["log_level", "error_message"],
    output_features=["saknes_cēlonis"]
)

# Apmāciet RAG modeli
rag_model.train(dati)

# Izvietojiet RAG modeli
llm_chain = LLMChain(
    model="davinci:002",
    max_length=2048
)
rag_model.deploy(llm_chain)

# Izmantojiet izvietoto RAG modeli, lai izmeklētu incidentus
incident_data = pd.DataFrame({
    "log_level": ["KĻŪDA"],
    "error_message": ["Kaut kas nogāja greizi"]
})
saknes_cēlonis = rag_model.predict(incident_data)
drukāt (saknes_cēlonis)

Šis koda piemērs parāda, kā ieviest vienkāršu RAG modeli, izmantojot DSPy un LangChain. RAG modelis izmanto žurnāla līmeni un kļūdas ziņojumu kā ievades līdzekļus un paredz negadījuma galveno cēloni.

5–10 populārākās komandas/fragmenti

Šeit ir 5–10 populārākās DSPy un LangChain komandas/fragmenti:

  1. "dspy.RAGModel(input_features, output_features)": definējiet RAG modeli ar norādītām ievades un izvades funkcijām.
  2. "dspy.RAGModel.train(data)": apmāciet RAG modeli, izmantojot sniegtos datus.
  3. "dspy.RAGModel.deploy(llm_chain)": izvietojiet apmācītu RAG modeli, izmantojot LangChain LLMChain.
  4. llm_chain = LLMChain(modelis, max_length): izveidojiet LangChain LLMChain ar norādīto modeli un maksimālo garumu.
  5. "rag_model.predict(data)": izmantojiet izvietoto RAG modeli, lai paredzētu incidenta galveno cēloni.
  6. "dspy.DataPreprocessor(input_data)": definējiet datu priekšapstrādes konveijeru, izmantojot DSPy.
  7. "dspy.ModelTrainer(modelis, dati)": apmāciet AI vai ML modeli, izmantojot DSPy.
  8. dspy.ModelDeployer(modelis, llm_chain): izvietojiet apmācītu modeli, izmantojot DSPy un LangChain.
  9. "langchain.LLMChain.predict(input_data)": izmantojiet LangChain LLMChain, lai prognozētu modeļa izvadi.
  10. "dspy.RAGModel.evaluate(data)": novērtējiet RAG modeļa veiktspēju, izmantojot DSPy.

Vizualizācija

Tālāk ir sniegts vizualizācijas piemērs, izmantojot Chart.js:

{
  "tips": "josla",
  "dati": {
    "etiķetes": ["A tipa incidents", "B tips", "C tips incidents"],
    "datu kopas": [
      {
        "label": "Sākotnējais cēlonis A",
        "dati": [10, 15, 7],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      },
      {
        "label": "Sākotnējais cēlonis B",
        "dati": [8, 12, 9],
        "backgroundColor": "rgba(54, 162, 235, 0.2)",
        "borderColor": "rgba(54, 162, 235, 1)",
        "borderWidth": 1
      },
      {
        "label": "Sākotnējais cēlonis C",
        "dati": [14, 18, 11],
        "backgroundColor": "rgba(255, 206, 86, 0.2)",
        "borderColor": "rgba(255, 206, 86, 1)",
        "borderWidth": 1
      }
    ]
  },
  "opcijas": {
    "title": {
      "displejs": patiess,
      "text": "Pamatcēloņu analīze"
    },
    "svari": {
      "yAxes": [
        {
          "ērces": {
            "beginAtZero": taisnība
          }
        }
      ]
    }
  }
}

Šī vizualizācija parāda dažādu incidentu veidu pamatcēloņu sadalījumu.

Secinājums

Šajā rakstā mēs izpētījām, kā ieviest AI darbinātus DevOps cauruļvadus, izmantojot DSPy un LangChain, koncentrējoties uz proaktīvu incidentu izmeklēšanu un atrisināšanu, izmantojot AIOps un RAG modeļus, un integrējot ar AWS DevOps aģentu automatizētai incidentu izmeklēšanai. Mēs parādījām vienkāršu koda piemēru, kas ievieš RAG modeli, izmantojot DSPy un LangChain, un sniedzām sarakstu ar 5–10 visbiežāk izmantotajām komandām/fragmentiem DSPy un LangChain. Mēs arī iekļāvām vizualizācijas piemēru, izmantojot Chart.js. Veicot šajā rakstā aprakstītās darbības, izstrādātāji var izveidot un izvietot ar AI darbinātus DevOps konveijerus, kas proaktīvi konstatē un atrisina incidentus, uzlabojot savu programmatūras sistēmu vispārējo efektivitāti un uzticamību.


Have Questions?

Let's Talk

Contact me on LinkedIn