Hodisalarni proaktif tekshirish va hal qilish uchun DSPy va LangChain bilan sun'iy intellektga asoslangan DevOps quvurlarini tashkil qilish | B4N1

Hodisalarni proaktif tekshirish va hal qilish uchun DSPy va LangChain bilan sun'iy intellektga asoslangan DevOps quvurlarini tashkil qilish

6 months ago · b4n1 Read time: 4 min

Kirish

Zamonaviy dasturiy ta'minot tizimlarining tobora ortib borayotgan murakkabligi hodisalarning chastotasi va jiddiyligini oshirishga olib keldi, bu esa hodisalarni proaktif tekshirish va hal qilishni DevOpsning muhim jihatiga aylantirdi. Sun'iy intellekt (AI) va mashinani o'rganish (ML) DevOps quvurlarini yaxshilash uchun kuchli vosita sifatida paydo bo'ldi, bu esa AI tomonidan boshqariladigan avtomatlashtirish va orkestratsiyani biznesga ta'sir qilishdan oldin hodisalarni aniqlash va hal qilish imkonini beradi. Ushbu maqolada biz DSPy va LangChain-dan foydalangan holda sun'iy intellektga asoslangan DevOps quvurlarini qanday amalga oshirishni o'rganamiz, bunda AIOps va RAG modellari yordamida hodisalarni proaktif tekshirish va hal qilishga e'tibor qaratamiz va hodisalarni avtomatlashtirilgan tekshirish uchun AWS DevOps Agent bilan integratsiyalashgan.

DSPy va LangChain haqida umumiy ma'lumot

DSPy bu Python kutubxonasi boʻlib, u sunʼiy intellektga asoslangan DevOps quvurlarini qurish va oʻrnatishning oddiy va samarali usulini taʼminlaydi. Bu ishlab chiquvchilarga turli xil AI va ML modellarini, jumladan tabiiy tilni qayta ishlash (NLP), kompyuterni ko'rish va bashoratli tahlillarni o'zlarining DevOps quvurlariga integratsiya qilish imkonini beradi. Boshqa tomondan, LangChain Python kutubxonasi bo'lib, ishlab chiquvchilarga modulli va kengaytiriladigan arxitekturadan foydalangan holda keng ko'lamli AI modellarini yaratish va joylashtirish imkonini beradi.

DSPy va LangChain bilan sun'iy intellektga asoslangan DevOps quvurlarini joriy qilish

DSPy va LangChain bilan sun'iy intellektga asoslangan DevOps quvurlarini amalga oshirish uchun biz quyidagi bosqichlarni bajarishimiz kerak:

  1. Maʼlumotlarni yigʻish: Jurnallar, koʻrsatkichlar va konfiguratsiya fayllari kabi turli manbalardan tegishli maʼlumotlarni toʻplang.
  2. Maʼlumotlarni oldindan qayta ishlash: Yigʻilgan maʼlumotlarni tahlil qilish va modellashtirishga tayyorlash uchun oldindan qayta ishlang.
  3. Model tayyorlash: Hodisalarni aniqlash va bashorat qilish uchun oldindan ishlangan maʼlumotlardan foydalangan holda AI va ML modellarini oʻrgating.
  4. Modelni joylashtirish: DSPy va LangChain yordamida o'qitilgan modellarni DevOps quvur liniyasiga joylashtiring.
  5. Hodisalarni tekshirish: Hodisalarni tekshirish va asosiy sabablarni aniqlash uchun joriy qilingan modellardan foydalaning.
  6. Voqealarni hal qilish: Voqealarni proaktif tarzda hal qilish uchun voqea tekshiruvidan olingan maʼlumotlardan foydalaning.

Kod misoli: DSPy va LangChain bilan oddiy RAG modelini amalga oshirish

Bu erda DSPy va LangChain yordamida RAG (Root Cause Analysis) modelini qanday amalga oshirishni ko'rsatadigan oddiy kod misoli:

dspy import
langchain import LMChain dan

# Oldindan ishlangan ma'lumotlarni yuklang
ma'lumotlar = pd.read_csv("data.csv")

# RAG modelini aniqlang
rag_model = dspy.RAGModel(
    input_features=["log_level", "error_message"],
    output_features=["root_cause"]
)

# RAG modelini o'rgating
rag_model.train (ma'lumotlar)

# RAG modelini o'rnating
llm_chain = LMCchain(
    model="davinci:002",
    maksimal_uzunlik=2048
)
rag_model.deploy(llm_chain)

# Hodisalarni tekshirish uchun o'rnatilgan RAG modelidan foydalaning
hodisa_data = pd.DataFrame({
    "log_level": ["XATO"],
    "error_message": ["Nimadir noto'g'ri ketdi"]
})
root_cause = rag_model.predict (hodisa_ma'lumotlari)
chop etish (root_cause)

Ushbu kod misoli DSPy va LangChain yordamida oddiy RAG modelini qanday amalga oshirishni ko'rsatadi. RAG modeli kirish xususiyatlari sifatida jurnal darajasi va xato xabarini oladi va hodisaning asosiy sababini bashorat qiladi.

Eng ko'p ishlatiladigan 5-10 ta buyruq/parchalar

DSPy va LangChain uchun eng ko'p ishlatiladigan 5-10 ta eng yaxshi buyruqlar/parchalar:

  1. dspy.RAGModel(kirish_xususiyatlari, chiqish_xususiyatlari): Belgilangan kirish va chiqish xususiyatlariga ega RAG modelini aniqlang.
  2. dspy.RAGModel.train(data): taqdim etilgan ma'lumotlardan foydalanib RAG modelini o'rgating.
  3. dspy.RAGModel.deploy(llm_chain): LangChain LLMCain yordamida o'qitilgan RAG modelini o'rnating.
  4. llm_chain = LLMChain(model, max_length): Belgilangan model va maksimal uzunlik bilan LangChain LLMCain yarating.
  5. rag_model.predict(ma'lumotlar): Hodisaning asosiy sababini bashorat qilish uchun o'rnatilgan RAG modelidan foydalaning.
  6. dspy.DataPreprocessor(input_data): DSPy-dan foydalanib ma'lumotlarni oldindan qayta ishlash quvur liniyasini aniqlang.
  7. dspy.ModelTrainer(model, ma'lumotlar): DSPy yordamida AI yoki ML modelini o'rgating.
  8. dspy.ModelDeployer(model, llm_chain): DSPy va LangChain yordamida o'qitilgan modelni o'rnating.
  9. langchain.LLMCain.predict(input_data): Modelning chiqishini bashorat qilish uchun LangChain LLMCain-dan foydalaning.
  10. dspy.RAGModel.evaluate(data): DSPy yordamida RAG modelining ishlashini baholang.

Vizualizatsiya

Mana Chart.js yordamida vizualizatsiyaga misol:

{
  "turi": "bar",
  "ma'lumotlar": {
    "yorliqlar": ["A turidagi hodisa", "B tipidagi hodisa", "V hodisasi turi"],
    "ma'lumotlar to'plami": [
      {
        "label": "Ildiz sababi A",
        "ma'lumotlar": [10, 15, 7],
        "backgroundColor": "rgba(255, 99, 132, 0.2)",
        "borderColor": "rgba(255, 99, 132, 1)",
        "borderWidth": 1
      },
      {
        "label": "Asosiy sabab B",
        "ma'lumotlar": [8, 12, 9],
        "backgroundColor": "rgba(54, 162, 235, 0.2)",
        "borderColor": "rgba(54, 162, 235, 1)",
        "borderWidth": 1
      },
      {
        "label": "Ildiz sababi C",
        "ma'lumotlar": [14, 18, 11],
        "backgroundColor": "rgba(255, 206, 86, 0.2)",
        "borderColor": "rgba(255, 206, 86, 1)",
        "borderWidth": 1
      }
    ]
  },
  "variantlar": {
    "sarlavha": {
      "displey": rost,
      "text": "Ildiz sabablarini tahlil qilish"
    },
    "tarozi": {
      "yAxes": [
        {
          "tiklash": {
            "beginAtZero": rost
          }
        }
      ]
    }
  }
}

Ushbu vizualizatsiya turli xil hodisalar uchun asosiy sabablarning taqsimlanishini ko'rsatadi.

Xulosa

Ushbu maqolada biz DSPy va LangChain-dan foydalangan holda sun'iy intellektga asoslangan DevOps quvurlarini qanday amalga oshirishni o'rganib chiqdik, bunda AIOps va RAG modellari yordamida hodisalarni proaktif tekshirish va hal qilishga e'tibor qaratildi va hodisalarni avtomatlashtirilgan tekshirish uchun AWS DevOps Agent bilan integratsiya qilindi. Biz DSPy va LangChain yordamida RAG modelini amalga oshiradigan oddiy kod misolini ko'rsatdik va DSPy va LangChain uchun eng ko'p ishlatiladigan 5-10 buyruqlar/parchalar ro'yxatini taqdim etdik. Chart.js yordamida vizualizatsiya misolini ham kiritdik. Ushbu maqolada ko'rsatilgan qadamlarni bajarish orqali ishlab chiquvchilar AI bilan ishlaydigan DevOps quvurlarini qurishlari va o'rnatishlari mumkin, bu esa hodisalarni proaktif ravishda aniqlaydi va hal qiladi, bu ularning dasturiy tizimlarining umumiy samaradorligi va ishonchliligini oshiradi.


Have Questions?

Let's Talk

Contact me on LinkedIn