Automatyzacja badania incydentów za pomocą agentów opartych na sztucznej inteligencji i narzędzi DevOps
Wprowadzenie
W dzisiejszych środowiskach natywnych w chmurze badanie i rozwiązywanie incydentów są kluczowymi składnikami praktyk DevOps. Ręczne badanie incydentów może jednak być czasochłonne, podatne na błędy i często wymaga rozległej wiedzy specjalistycznej. Aby stawić czoła tym wyzwaniom, zbadamy integrację agentów Kiro opartych na sztucznej inteligencji z AWS DevOps Agent i DSPy w celu automatycznego badania i rozwiązywania incydentów.
Zrozumienie komponentów
Zanim zagłębimy się w integrację, przyjrzyjmy się zaangażowanym komponentom:
- Agenci Kiro wykorzystujący sztuczną inteligencję: Kiro to platforma oparta na sztucznej inteligencji, która umożliwia tworzenie niestandardowych agentów w celu automatyzacji zadań i przepływów pracy. Tych agentów można szkolić w oparciu o różne źródła danych, w tym dzienniki, metryki i pliki konfiguracyjne.
- AWS DevOps Agent: AWS DevOps Agent to narzędzie umożliwiające automatyzację zadań i przepływów pracy w AWS. Zapewnia elastyczny i skalowalny sposób automatyzacji zadań, takich jak wdrażanie aplikacji, monitorowanie wydajności i rozwiązywanie problemów.
- DSPy: DSPy to biblioteka Pythona, która zapewnia prosty i skuteczny sposób interakcji z DSPy, platformą danych natywną w chmurze. DSPy umożliwia tworzenie niestandardowych potoków danych, przetwarzanie danych i wizualizację danych.
Przegląd integracji
Integracja agentów Kiro AI z AWS DevOps Agent i DSPy obejmuje następujące kroki:
- Zbieranie danych: Agent AWS DevOps zbiera dane z różnych źródeł, takich jak dzienniki, metryki i pliki konfiguracyjne.
- Przetwarzanie danych: Zebrane dane są przetwarzane przy użyciu technologii DSPy, która umożliwia tworzenie niestandardowych potoków danych, przetwarzanie danych i wizualizację danych.
- Szkolenie agentów: Przetworzone dane służą do szkolenia agenta Kiro wykorzystującego sztuczną inteligencję, co umożliwia agentowi poznanie wzorców i anomalii w danych.
- Badanie incydentu: Kiedy dochodzi do incydentu, uruchamiany jest agent Kiro wykorzystujący sztuczną inteligencję, aby zbadać incydent przy użyciu przeszkolonych modeli i danych.
- Rozwiązanie: Agent zapewnia zalecenia dotyczące rozwiązania incydentu, które można wykonać za pomocą agenta AWS DevOps.
Przykład kodu
Oto prosty przykład kodu demonstrujący integrację agentów opartych na sztucznej inteligencji Kiro z agentem AWS DevOps i DSPy:
importuj os
importuj jsona
od agenta importowego kiros
z dspy importuj DSPy
aws_config = json.load(open('aws_config.json'))
# Utwórz agenta opartego na sztucznej inteligencji Kiro
agent = agent(
nazwa='dochodzenie_incydentu',
opis='Automatyczne badanie i rozwiązywanie incydentów',
model='incident_investigation_model'
)
# Utwórz instancję DSPy
dspy = DSPy(
host='localhost',
port=8080,
nazwa użytkownika='administrator',
hasło='hasło'
)
# Zdefiniuj potok danych za pomocą DSPy
potok = dspy.pipeline(
nazwa='incident_investigation_pipeline',
opis='Automatyczny proces badania incydentów',
źródła=['logi', 'metryki', 'konfiguracja']
)
# Przeszkol agenta opartego na sztucznej inteligencji Kiro za pomocą potoku danych
agent.pociąg(
rurociąg=rurociąg,
dane=dspy.data(
nazwa='dane_incident_investigation_data',
opis='Dane zautomatyzowanego badania incydentów'
)
)
# Uruchom agenta opartego na sztucznej inteligencji Kiro, aby zbadać incydent
incydent = {
„id”: „INC-12345”,
'description': 'Przestój aplikacji'
}
agent.trigger(
incydent=incydent,
dane=dspy.data(
nazwa='dane_incident_investigation_data',
opis='Dane zautomatyzowanego badania incydentów'
)
)
# Uzyskaj rekomendacje agenta dotyczące rozwiązania incydentu
rekomendacje = agent.rekomendacje(
incydent=incydent,
dane=dspy.data(
nazwa='dane_incident_investigation_data',
opis='Dane zautomatyzowanego badania incydentów'
)
)
# Wykonaj zalecenia agenta za pomocą agenta AWS DevOps
aws_config['recommendations'] = rekomendacje
aws_config['incident_id'] = incydent['id']
aws_config['opis'] = incydent['opis']
Top 5-10 najczęściej używanych poleceń/fragmentów
Oto 5–10 najczęściej używanych poleceń/fragmentów dla tej technologii:
- Tworzenie agenta Kiro wykorzystującego sztuczną inteligencję:
agent = agent( nazwa='dochodzenie_incydentu', opis='Automatyczne badanie i rozwiązywanie incydentów', model='incident_investigation_model' )
2. **Tworzenie instancji DSPy**:
```pyton
dspy = DSPy(
host='localhost',
port=8080,
nazwa użytkownika='administrator',
hasło='hasło'
)
- Definicja potoku danych:
potok = dspy.pipeline( nazwa='incident_investigation_pipeline', opis='Automatyczny proces badania incydentów', źródła=['logi', 'metryki', 'konfiguracja'] )
4. **Szkolenie agentów wykorzystujących sztuczną inteligencję Kiro**:
```pyton
agent.pociąg(
rurociąg=rurociąg,
dane=dspy.data(
nazwa='dane_incident_investigation_data',
opis='Dane zautomatyzowanego badania incydentów'
)
)
- Wyzwalanie agenta napędzanego sztuczną inteligencją Kiro:
agent.trigger( incydent=incydent, dane=dspy.data( nazwa='dane_incident_investigation_data', opis='Dane zautomatyzowanego badania incydentów' ) )
6. **Pobieranie rekomendacji agentów**:
```pyton
rekomendacje = agent.rekomendacje(
incydent=incydent,
dane=dspy.data(
nazwa='dane_incident_investigation_data',
opis='Dane zautomatyzowanego badania incydentów'
)
)
- Ładowanie konfiguracji agenta AWS DevOps:
aws_config = json.load(open('aws_config.json'))
8. **Wykonanie rekomendacji agenta AWS DevOps**:
```pyton
aws_config['recommendations'] = rekomendacje
aws_config['incident_id'] = incydent['id']
aws_config['opis'] = incydent['opis']
- Odzyskiwanie danych DSPy:
dane = dspy.data( nazwa='dane_incident_investigation_data', opis='Dane zautomatyzowanego badania incydentów' )
10. **Ładowanie modelu agenta opartego na sztucznej inteligencji Kiro**:
```pyton
model = agent.model(
nazwa='model_dochodzenia_incydentu',
opis='Model automatycznego badania incydentów'
)
Wizualizacja
Oto wizualizacja integracji przy użyciu Chart.js:
{
"typ": "pasek",
„dane”: {
„etykiety”: [„Gromadzenie danych”, „Przetwarzanie danych”, „Szkolenie agentów”, „Dochodzenie w sprawie incydentu”, „Rozwiązanie”],
„zestawy danych”: [
{
"label": "Czas (sekundy)",
„dane”: [10, 20, 30, 40, 50],
„Kolor tła”: [
"rgba(255, 99, 132, 0,2)",
"rgba(54, 162, 235, 0,2)",
"rgba(255, 206, 86, 0,2)",
"rgba(75, 192, 192, 0,2)",
„rgba(153, 102, 255, 0,2)”
],
„kolor obramowania”: [
"rgba(255, 99, 132, 1)",
"rgba(54, 162, 235, 1)",
"rgba(255, 206, 86, 1)",
"rgba(75, 192, 192, 1)",
„rgba(153, 102, 255, 1)”
],
„Szerokość obramowania”: 1
}
]
},
„opcje”: {
„skale”: {
„Osie y”: [
{
„tyknięcia”: {
„beginAtZero”: prawda
}
}
]
}
}
}
Ta wizualizacja pokazuje czas potrzebny na każdy etap procesu integracji.
Wniosek
W tym artykule zbadaliśmy integrację agentów opartych na sztucznej inteligencji Kiro z agentem AWS DevOps i DSPy w celu automatycznego badania i rozwiązywania incydentów w środowiskach natywnych w chmurze. Udostępniliśmy szczegółowy przegląd zaangażowanych komponentów, proces integracji i prosty przykład kodu demonstrujący integrację. Zamieściliśmy także wizualizację integracji za pomocą Chart.js oraz listę 5-10 najczęściej używanych poleceń/fragmentów dla tej technologii.