Centreon Akustische Alarme mit Ollama und Piper AI

In diesem Beitrag werden wir mehrere Elemente kombinieren, um Sprachbenachrichtigungen in unserem Überwachungssystem zu haben. Wir werden selbstverständlich lokale und sichere Künstliche Intelligenz nutzen (Ollama) einen freundlichen und menschlichen Text mit dem Centreon-Alarm zu generieren, um es später auf unserem 7-Zoll-Bildschirm abzuspielen″ Dank Piper und einer Stimme in perfektem Spanisch.

Also, was ich gesagt habe, Wenn Sie über ein auf Centreon basierendes Monitoring-System verfügen, wissen Sie, dass Sie Benachrichtigungen erhalten können, wenn es ein Problem in einem überwachten Service oder Host gibt, Auf diese Weise erfahren Sie von Problemen in Ihrem Rechenzentrum. In einem Vergangener Beitrag Wir haben gesehen, wie man die Botschaften, die Centreon generiert, "menschlicher" machen kann’ dank Ollamas KI, bei dieser Gelegenheit schickte er die Warnung in Textform per Telegram. Heute besteht der Unterschied darin, dass wir die Botschaft von einer menschlichen Stimme wiedergeben lassen (Danke an Piper) und dröhnen Sie durch die Lautsprecher eines kleinen Raspberry Pi, die ich bei mir benutze 7 Bildschirm″ Überwachung.

Dies wäre ein Beispiel für Audio:

Ah, Natürlich, Denken Sie daran, dass alles, was wir in diesem Beitrag sehen werden, Open Source ist, lokal, sicher, Kein Internet erforderlich

Pfeifer

Wir beginnen daher mit Piper, dass, wie man in Die offizielle Website Es ist ein "schnelles, lokales neuronales Text-to-Speech-System, das großartig klingt". Es ist ein TTS (Text-to-Speech) die wir auf dem Raspberry Pi installieren können, um jeden Text in Audio mit einer immensen Vielfalt an Stimmen in verschiedenen Sprachen umzuwandeln, die sich als nützlich erweisen werden!

Der einfachste Weg, Piper auf dem Raspberry Pi zu installieren, Es wird die Binärdatei heruntergeladen, die für unsere CPU-Architektur kompiliert wurde. Das werden wir wissen, indem wir: 'cat /proc/cpuinfo'.

  • Für 64-Bit-Linux-Desktops: AMD64
  • Für den Raspberry Pi 4 64-Bit: Arm64
  • Für den Raspberry Pi 3/4 32-Bit: Armv7

Laden Sie die neueste Version herunter, die Sie auf GitHub finden, Links werden obsolet. Wir laden es herunter, Wir entpacken und geben Ihr Verzeichnis ein:

wget https://github.com/rhasspy/piper/releases/download/v1.2.0/piper_armv7.tar.gz tar zxfv piper_armv7.tar.gz CD piper

Wir wählen ein trainiertes Voice-Modell aus Ihrem Repository aus: https://github.com/rhasspy/piper/#voices und wenn wir dasjenige auswählen, das uns am besten gefällt, laden wir die ONNX-Datei und das JSON herunter. Übrigens, wenn Sie sie hören möchten, um zu sehen, wie sie klingen, Nutzen Sie diese Website: https://rhasspy.github.io/piper-samples/. Kommen, Wir laden sie herunter:

wget https://huggingface.co/rhasspy/piper-voices/resolve/v1.0.0/es/es_ES/sharvard/medium/es_ES-sharvard-medium.onnx?download=true -O es_ES-sharvard-medium.onnx wget https://huggingface.co/rhasspy/piper-voices/resolve/v1.0.0/es/es_ES/sharvard/medium/es_ES-sharvard-medium.onnx.json?download=true.json -O es_ES-sharvard-medium.onnx.json

Und wir können es jetzt versuchen, Wir haben zwei Möglichkeiten, Erstellen Sie den Audiostream und hören Sie ihn direkt über die Lautsprecher des Raspberry Pi an, oder generieren Sie eine .wav Datei für das, was wir brauchen. Laufen:

echo 'Hola, esto es un ejemplo de una frase.' | ./piper --model es_ES-sharvard-medium.onnx --output-raw | Aplay -r 22050 -F S16_LE -T ROH -

Und es wird sich in etwa so anhören:

Integration mit Centreon

Wenn wir Piper über eine Benachrichtigung anrufen möchten, Dies sind die Schritte, die ich befolgt habe. Zuerst werden wir auf dem Raspberry Pi ein Skript erstellen, das Centreon anruft, wenn es eine Benachrichtigung gibt, führt dieses Skript aus, das die Sprecher über die generierte Warnung benachrichtigt. Das Skript erhält als erste und einzige Variable den zu reproduzierenden Text. Ich bin mit so etwas zurückgeblieben (/Startseite/Dudelsack/Dudelsack/alerta_piper.sh):

#!/Bin/Bash CD /Startseite/Pi/Piper RM alerta.wav Echo $1 | ./piper --model es_ES-sharvard-medium.onnx --length_scale 1.1 --output_file alerta.wav systemctl stop snapclient aplay alerta_inicio.wav aplay alerta.wav aplay alerta_fin.wav systemctl start snapclient

Einige Details, die Sie sehen werden, sind, dass ich seine Stimme ein wenig verlangsame, und das hat einige Snapclient-Dienste gestoppt, Da normalerweise auch Umgebungsmusik von diesem Bildschirm abgespielt wird und um sie vorübergehend zu stoppen, während die Nachricht ertönt.

Nach dem Erstellen des ausführbaren Skripts, Wir müssen es vom Centreon Central-Server aus aufrufen/ausführen., oder ggf. von einem Poller. Um dies zu tun,, Es wird notwendig sein, einen Fingerabdruck zwischen dem Centreon-Server und dem Raspberry Pi zu erstellen, damit Sie über SSH zugreifen können, ohne nach Anmeldeinformationen zu fragen, und auf diese Weise führen wir das Skript aus der Ferne aus.

su centreon-engine ssh-keygen -t rsa cat /var/lib/centreon-engine/.ssh/id_rsa.pub ssh-rsa AAA... ySHsfu0= Mitte-engine@os-Abfrager-osit

Bei Centreon loggen wir uns also wie der Benutzer ein, der die Dinge in Centreon ausführt, Wir generieren einen privaten und einen öffentlichen Schlüssel, wenn wir diese nicht haben; Dann sehen wir mit CAT den neu erstellten öffentlichen Schlüssel und kopieren ihn.

Fügen Sie den öffentlichen Schlüssel von Centreon Central oder Poller auf dem Raspberry Pi in die Datei /home/pi/.ssh/authorized_keys ein

Und wir haben versucht zu sehen, ob wir uns mit einem SSH von Centreon mit Centreon-Engine mit dem Raspberry Pi verbinden::

Sh pi@DIRECCION_IP_RASPBERRY_PI

Jetzt müssen noch die Befehle in Centreon registriert werden, die zur Benachrichtigung verwendet werden, wenn ein Host oder ein Service Probleme hat. Wenn wir In diesem vorherigen Beitrag Als Referenz, wo wir bereits die Skripte generieren, um die von Ollamas KI generierte Nachricht an Telegram zu senden, Nun, wir müssen einfach eine Zeile am Ende hinzufügen, die das im Raspberry Pi erstellte Skript aufruft, und das war's. Auf diese Weise erhalten wir die Benachrichtigung auf Telegram und über die Lautsprecher. Ich hinterlasse Ihnen eine Zusammenfassung des Skripts, das auf Probleme in den Hosts hinweist, Wie ich schon sagte, Wichtig ist die letzte Zeile:

#!/Mülleimer/Bash

# Ollamas KI generiert die Nachricht, um zu schmecken text="Bitte, Generiert einen Text für eine Benachrichtigung, der mit nützlichen Informationen an das Smartphone des Benutzers gesendet wird. Sie sind ein hilfreicher persönlicher Agent, der Text für IT-Techniker generiert. Ihre Antworten können technisch sein, Biete dich nicht als Hilfe an, Geben Sie keine Empfehlungen. Die Botschaft, die Sie zu sagen haben, bezieht sich auf ein Problem vom Typ: "$1", Im Team "$2" da es sich in dem Bundesstaat befindet "$3". Sag nicht Hallo, Sag nicht Hallo und verabschiede dich nicht, Danke dir nicht einmal für irgendetwas. Die Antwort sollte auf Spanisch sein und die Nachricht sollte kurz sein."

texto_generado=$(/usr/bin/curl http://DIRECCION_IP_OLLAMA:11434/api/generieren -H "Inhaltstyp: application/json" -d '{
  "Modell": "Lama3",
  "prompt": "'"$Text"'",
  "Temperatur": 0.1,
  "Bach": FALSCH,
  "max_length": 50
}' | jq -r '.response')

texto_generado_sin_comillas='Echo "$texto_generado" | sed 's/\"//g'`

# Manda a Telegram
/usr/bin/curl -X POST -H "Inhaltstyp: application/json" -d '{
  "chat_id": "ID_CHAT_TELEGRAM",
  "Text": "'"$texto_generado_sin_comillas"'"
}' "https://api.telegram.org/botTOKEN_BOT_TELEGRAM/sendMessage"

# Alerta en la Raspberry Pi con Piper por los altavoces
ssh pi@DIRECCION_IP_RASPBERRYPI "sudo /home/pi/piper/alerta_piper.sh \"$texto_generado_sin_comillas\""

¡Y chimpún! Ya lo tenemos listo, Skript erstellt und diejenigen, die Zweifel haben, haben in den vorherigen Beiträgen alle Daten, die sie benötigen, um den Befehl zu erstellen, Registrieren Sie es in Centreon, Stellen Sie die sichere lokale KI von Ollama zusammen, Reiten Centreon…

Wie immer und weil sie sehr originell sind, Ich hoffe, Sie fanden es interessant, dass Sie es auf andere Arten von Technologien anwenden können, Ideen… Die Wahrheit ist, dass Piper und Ollama bei mir zu Hause mit Home Assistant absolut notwendig sind, Verleihen Sie ihm eine originelle Note, Jetzt können wir anfangen, es nach und nach Smart Home zu nennen… Aber das, in anderen Beiträgen, Mal sehen!

Umarmungen, Tragen Sie sich gut!

Empfohlene Beiträge

Verfasser

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Zögern Sie nicht, mich zu kontaktieren, Ich werde versuchen, dir zu helfen, wann immer ich kann, Teilen ist Leben ;) . Genießen Sie Dokumente!!!