Załaduj model LLM i tokenizer | B4N1

Załaduj model LLM i tokenizer

6 months ago · b4n1 Read time: 4 min

Wdrażanie automatycznego badania incydentów za pomocą agentów DevOps i LLM

Wprowadzenie

W dzisiejszym dynamicznym krajobrazie cyfrowym zespoły DevOps stoją przed coraz bardziej złożonym wyzwaniem: możliwie najszybszą identyfikacją i rozwiązywaniem incydentów. Ręczne metody dochodzenia mogą być czasochłonne i podatne na błędy ludzkie, co prowadzi do dłuższych przestojów i zmniejszenia zadowolenia klientów. Aby rozwiązać ten problem, badamy skrzyżowanie automatyzacji DevOps, badania incydentów opartego na sztucznej inteligencji oraz roli modeli dużych języków (LLM) w ulepszaniu narzędzi DevOps, takich jak AWS DevOps Agent i Copado Agentia.

Aktualny stan dochodzenia w sprawie incydentu

Badanie incydentów jest krytycznym aspektem DevOps, obejmującym identyfikację, analizę i rozwiązywanie problemów wpływających na systemy oprogramowania. Tradycyjne metody opierają się na procesach ręcznych, takich jak analiza logów, śledzenie błędów i komunikacja z interesariuszami. Chociaż metody te są skuteczne, mogą być powolne i podatne na błędy, co prowadzi do:

  1. Wydłużony czas przestoju: Ręczne metody dochodzenia mogą opóźnić rozwiązanie incydentu, powodując przedłużone przestoje i zmniejszenie zadowolenia klienta.
  2. Błąd ludzki: Procesy ręczne są podatne na błędy ludzkie, które mogą prowadzić do nieprawidłowej diagnozy i rozwiązania incydentów.
  3. Problemy ze skalowalnością: Wraz ze wzrostem rozmiaru i złożoności systemów ręczne metody badawcze stają się coraz trudniejsze do skalowania.

Rola agentów DevOps w badaniu incydentów

Agenci DevOps, tacy jak AWS DevOps Agent i Copado Agentia, odgrywają kluczową rolę w automatyzacji badania incydentów. Agenci ci mogą:

  1. Zbieraj i analizuj logi: Agenci DevOps mogą zbierać i analizować logi z różnych źródeł, zapewniając cenny wgląd w przyczyny incydentów.
  2. Automatyzacja śledzenia błędów: Agenci mogą zautomatyzować śledzenie błędów, redukując czas i wysiłek wymagany do ręcznego badania.
  3. Ulepsz komunikację: Agenci mogą ułatwić komunikację między zespołami, interesariuszami i systemami, zapewniając efektywną wymianę informacji o zdarzeniach.

Rola LLM w badaniu incydentów

Modele dużego języka (LLM) zrewolucjonizowały dziedzinę przetwarzania języka naturalnego (NLP), umożliwiając maszynom rozumienie i generowanie tekstu podobnego do ludzkiego. W kontekście badania incydentów LLM mogą:

  1. Analizuj raporty o incydentach: LLM mogą analizować raporty o incydentach, identyfikując kluczowe informacje i wzorce, które mogą wskazywać pierwotną przyczynę incydentu.
  2. Generuj podsumowania incydentów: LLM mogą generować zwięzłe podsumowania raportów incydentów, ułatwiając komunikację i podejmowanie decyzji.
  3. Przekazuj sugestie kontekstowe: LLM mogą dostarczać kontekstowe sugestie dotyczące rozwiązania incydentu, biorąc pod uwagę konkretny system, środowisko i zaangażowanych interesariuszy.

Wdrażanie automatycznego badania incydentów za pomocą agentów DevOps i LLM

Aby wdrożyć automatyczne badanie incydentów z agentami DevOps i LLM, zastosujemy podejście krok po kroku:

  1. Zintegruj agentów DevOps: Zintegruj agentów DevOps, takich jak AWS DevOps Agent i Copado Agentia, ze swoim systemem zarządzania incydentami.
  2. Zbieraj i analizuj dzienniki: Skonfiguruj agentów DevOps tak, aby zbierali i analizowali dzienniki z różnych źródeł, zapewniając cenny wgląd w przyczyny incydentów.
  3. Trenuj model LLM: Trenuj model LLM na zestawie danych obejmującym raporty o incydentach, dzienniki i inne istotne informacje.
  4. Zintegruj LLM z agentami DevOps: Zintegruj model LLM z agentami DevOps, umożliwiając LLM analizowanie raportów o incydentach i dostarczanie sugestii dotyczących rozwiązania incydentów.
  5. Wdróż rozwiązanie: Wdróż rozwiązanie do automatycznego badania incydentów, upewniając się, że jest ono skalowalne, niezawodne i bezpieczne.

Przykładowy kod: Integracja LLM z agentami DevOps

Oto przykładowy fragment kodu w Pythonie pokazujący, jak zintegrować model LLM z agentem DevOps:

rejestrowanie importu
z transformatorów import AutoModelForSequenceClassification, AutoTokenizer
z agenta importu aws_devops_agent


model = AutoModelForSequenceClassification.from_pretrained("distilbert-base-uncased")
tokenizer = AutoTokenizer.from_pretrained("distilbert-base-uncased")

# Zainicjuj agenta DevOps
agent = agent()

# Zdefiniuj funkcję do analizy raportów o incydentach przy użyciu modelu LLM
def analizuj_incident_report(raport):
    # Przetwórz wstępnie raport o incydencie
    wejścia = tokenizer.encode_plus(raport, 
                                    add_special_tokens=Prawda, 
                                    maksymalna długość=512, 
                                    return_attention_mask=Prawda, 
                                    return_tensors='pt')
    
    # Przeanalizuj raport o zdarzeniu, korzystając z modelu LLM
    wyjścia = model(wejścia['id_uwagi'], maska_uwagi=wejścia['maska_uwagi'])
    
    # Wyodrębnij przewidywaną etykietę klasy
    przewidywana_klasa = torch.argmax(outputs.logits)
    
    zwróć przewidywaną klasę

# Zdefiniuj funkcję wyświetlającą sugestie dotyczące rozwiązania incydentu
def Provide_suggestions(predicted_class):
    # Użyj przewidywanej etykiety klasy, aby podać sugestie dotyczące rozwiązania incydentu
    jeśli przewidywana_klasa == 0:
        return "Sprawdź logi systemowe pod kątem błędów"
    elif przewidywana_klasa == 1:
        return „Sprawdź łączność sieciową”
    inne:
        return "Skontaktuj się z zespołem programistów w celu uzyskania pomocy"

# Zintegruj model LLM z agentem DevOps
def incydent_dochodzenie():
    # Zbieraj i analizuj logi z agenta DevOps
    dzienniki = agent.get_logs()
    
    # Analizuj logi przy użyciu modelu LLM
    przewidywana_klasa = raport_analizy_incydentu(logi)
    
    # Podaj sugestie dotyczące rozwiązania incydentu
    sugestie = Provide_suggestions(predicted_class)
    
    zwróć sugestie

# Wdróż rozwiązanie do badania incydentów
incydent_dochodzenie()

Top 5-10 najczęściej używanych poleceń/fragmentów

Oto 5–10 najczęściej używanych poleceń/fragmentów dla tej technologii:

  1. aws devops agent get-logs: Zbierz logi z agenta DevOps.
  2. transformers.AutoModelForSequenceClassification.from_pretrained(): Załaduj model LLM.
  3. tokenizer.encode_plus(): Przetwórz wstępnie raport o incydencie.
  4. model(inputs['input_ids'], uwaga_mask=inputs['attention_mask']): Przeanalizuj raport o zdarzeniu przy użyciu modelu LLM.
  5. torch.argmax(outputs.logits): Wyodrębnij przewidywaną etykietę klasy.
  6. provide_suggestions(predicted_class): Podaj sugestie dotyczące rozwiązania incydentu.
  7. agent.get_logs(): Zbierz logi od agenta DevOps.
  8. analyze_incident_report(report): Przeanalizuj raport o incydencie przy użyciu modelu LLM.
  9. incident_investigation(): Wdróż rozwiązanie do badania incydentów.
  10. torch.save(model.state_dict(), 'model.pth'): Zapisz model LLM.

Wizualizacja

Oto wizualizacja rozwiązania do automatycznego badania incydentów przy użyciu Chart.js:

{
  "typ": "pasek",
  „dane”: {
    „etykiety”: [„Badanie ręczne”, „Badanie automatyczne”],
    „zestawy danych”: [
      {
        "label": "Czas na rozwiązanie",
        „dane”: [10, 2],
        „Kolor tła”: [„rgba(255, 99, 132, 0,2)”, „rgba(54, 162, 235, 0,2)”],
        "borderColor": ["rgba(255, 99, 132, 1)", "rgba(54, 162, 235, 1)"],
        „Szerokość obramowania”: 1
      }
    ]
  },
  „opcje”: {
    "tytuł": {
      "wyświetlacz": prawda,
      "text": "Czas rozwiązać incydenty"
    },
    „skale”: {
      „Osie y”: [
        {
          „tyknięcia”: {
            „beginAtZero”: prawda
          }
        }
      ]
    }
  }
}

Ta wizualizacja porównuje czas rozwiązywania incydentów przy użyciu ręcznych metod dochodzenia z automatycznymi metodami dochodzenia przy użyciu agentów DevOps i LLM.

Wniosek

Wdrożenie zautomatyzowanego badania incydentów z agentami DevOps i LLM może znacznie poprawić wydajność i skuteczność rozwiązywania incydentów. Integrując agentów DevOps z LLM, organizacje mogą zautomatyzować analizę logów, dostarczać kontekstowe sugestie dotyczące rozwiązywania incydentów i skracać czas rozwiązywania incydentów. Zbadaliśmy skrzyżowanie automatyzacji DevOps, badania incydentów opartego na sztucznej inteligencji i roli LLM w ulepszaniu narzędzi DevOps, takich jak AWS DevOps Agent i Copado Agentia. Stosując podejście krok po kroku opisane w tym artykule, organizacje mogą wdrożyć skalowalne, niezawodne i bezpieczne rozwiązanie do automatycznego badania incydentów.


Have Questions?

Let's Talk

Contact me on LinkedIn