Der KI-Agent zur Verwaltung von Elasticsearch Serverless-Projekten

Ein KI-Agent mit natürlicher Sprachverarbeitung, der Elasticsearch Serverless-Projekte mühelos verwaltet – er ermöglicht das Erstellen, Löschen und Überprüfen des Projektstatus.

Entlasten Sie sich von Betriebsaufgaben mit Elastic Cloud Serverless. Skalieren Sie automatisch, bewältigen Sie Lastspitzen und konzentrieren Sie sich auf die Entwicklung – starten Sie eine 14-tägige kostenlose Testversion, um es selbst zu testen!

Mithilfe dieser Anleitungen können Sie ein KI-gestütztes Sucherlebnis entwickeln oder in Geschäftssystemen und Software suchen.

Wie man einen KI-Agenten zur Verwaltung von Serverless Elasticsearch-Projekten einsetzt

  1. Klonen Sie das Repository: Laden Sie den Code des Tools von GitHub mit git clone https://github.com/elastic/elasticsearch-labs/supporting-blog-content/serverless-ai-agent aherunter und navigieren Sie mit cd serverless-ai-agent in das Verzeichnis.
  2. Umgebung einrichten: Erstellen Sie eine virtuelle Umgebung (optional) mit python -m venv venv und aktivieren Sie diese (source venv/bin/activate oder venv\Scripts\activate unter Windows). Installieren Sie anschließend die benötigten Python-Pakete mit pip install -r requirements.txt.
  3. Zugangsdaten konfigurieren: Erstellen Sie eine .env -Datei im Projektstammverzeichnis und füllen Sie diese mit Ihrer Elasticsearch API-URL (ES_URL), Ihrem API-Schlüssel (API_KEY), Ihrer Region (REGION) und Ihrem OpenAI API-Schlüssel (OPENAI_API_KEY).
  4. Tool ausführen: Führen Sie das Tool aus, indem Sie python main.py in Ihrem Terminal eingeben. Dadurch wird der KI-Agent gestartet und Sie werden zur Eingabe Ihrer Befehle aufgefordert.
  5. Projekte mit natürlicher Sprache verwalten: Interagieren Sie mit dem Tool mithilfe von Befehlen in einfachem Englisch wie „Erstelle ein serverloses Projekt mit dem Namen my\_project“, „Rufe den Status des serverlosen Projekts mit dem Namen my\_project ab“ oder „Lösche das serverlose Projekt mit dem Namen my\_project“. Die KI interpretiert Ihre Befehle und führt die entsprechenden Funktionen aus.

Hintergrund

Mit diesem kleinen Kommandozeilen-Tool können Sie Ihre Serverless Elasticsearch-Projekte in einfacher Sprache verwalten. Es kommuniziert mit einer KI (in diesem Fall OpenAI), um herauszufinden, was Sie meinen, und ruft mithilfe von LlamaIndex die richtigen Funktionen auf!

Was kann der Elasticsearch Serverless AI-Agent leisten?

  • Projekt erstellen: Ein neues Serverless Elasticsearch-Projekt starten.
  • Projekt löschen: Ein bestehendes Projekt entfernen (ja, es wird nach dem Löschen aufgeräumt).
  • Projektstatus abrufen: Prüfen Sie, wie es um Ihr Projekt steht.
  • Projektdetails abrufen: Erhalten Sie alle wichtigen Details zu Ihrem Projekt.

Den Code finden Sie auf GitHub.

Funktionsweise des Elasticsearch Serverless AI-Agenten

Wenn Sie beispielsweise Folgendes eingeben:

"Erstelle ein serverloses Projekt mit dem Namen my_project"

…und so läuft es hinter den Kulissen ab:

  • Benutzereingabe & Kontext: Ihr Befehl in natürlicher Sprache wird an den KI-Agenten gesendet.
  • Funktionsbeschreibungen: Der KI-Agent kennt bereits einige Funktionen – wie create_ess_project, delete_ess_project, get_ess_project_status und get_ess_project_details –, weil wir ihm detaillierte Beschreibungen gegeben haben. Diese Beschreibungen erklären der KI, was jede Funktion bewirkt und welche Parameter sie benötigt.
  • LLM-Verarbeitung: Ihre Anfrage plus die Funktionsinformationen werden an das LLM gesendet. Das bedeutet, die KI sieht Folgendes:
    • Die Benutzeranfrage: Ihre Anweisung in einfacher Sprache.
    • Verfügbare Funktionen & Beschreibungen: Details zu den Funktionen der einzelnen Werkzeuge, damit das richtige ausgewählt werden kann.
    • Kontext-/Verlaufsinformationen zum Chat: Da es sich um eine Konversation handelt, wird gespeichert, was zuvor gesagt wurde.
  • Funktionsaufruf & -antwort: Die KI ermittelt, welche Funktion aufgerufen werden soll, übergibt die richtigen Parameter (wie Ihren Projektnamen) und führt dann die Funktion aus. Die Antwort wird Ihnen in einem freundlichen Format zugesandt.

Kurz gesagt, senden wir sowohl Ihre Anfrage in natürlicher Sprache als auch eine Liste detaillierter Werkzeugbeschreibungen an das LLM, damit es Ihre Anfrage „verstehen“ und die richtige Aktion auswählen kann.

KI-Agenten einrichten

Voraussetzungen:

Bevor Sie den KI-Agenten ausführen, stellen Sie sicher, dass Sie Folgendes eingerichtet haben:

  1. Python (Version 3.7 oder höher) ist installiert.
  2. Elasticsearch-Serverless-Konto auf Elastic Cloud eingerichtet.
  3. OpenAI-Konto zur Interaktion mit dem Sprachmodell.

Schritte:

1. Klonen Sie das Repository:

2. Erstellen einer virtuellen Umgebung (optional, aber empfohlen): Wenn Sie mit umgebungsbezogenen Problemen konfrontiert sind, können Sie zur Isolation eine virtuelle Umgebung einrichten:

3. Abhängigkeiten installieren: Stellen Sie sicher, dass alle erforderlichen Abhängigkeiten installiert sind, indem Sie Folgendes ausführen:

4. Konfigurieren Sie Ihre Umgebung: Erstellen Sie eine .env-Datei. Datei im Projektverzeichnis mit den folgenden Variablen. Hier ist eine Beispieldatei .env.example , die Ihnen weiterhelfen soll:

Stellen Sie sicher, dass Sie die korrekten Werte für ES_URL, API_KEY, und OPENAI_API_KEY haben. Ihre API-Schlüssel finden Sie in den jeweiligen Service-Dashboards.

5. Projektdatei: Das Tool verwendet eine projects.json -Datei, um Ihre Projektzuordnungen (Projektnamen zu ihren Details) zu speichern. Diese Datei wird automatisch erstellt, falls sie noch nicht existiert.

Ausführen des KI-Agenten

Sie sehen dann eine Eingabeaufforderung wie diese:

Geben Sie Ihren Befehl ein, und der KI-Agent wird seine Magie wirken! Wenn Sie fertig sind, geben Sie exit oder quit ein, um das Fenster zu verlassen.

Ein paar weitere Details

  • LLM-Integration: Dem LLM werden sowohl Ihre Anfrage als auch detaillierte Beschreibungen jeder verfügbaren Funktion übermittelt. Dies hilft dem System, den Kontext zu verstehen und beispielsweise zu entscheiden, ob es create_ess_project oder delete_ess_project aufrufen soll.
  • Werkzeugbeschreibungen: Jedes Funktionswerkzeug (erstellt mit FunctionTool.from_defaults) hat eine freundliche Beschreibung. Diese Beschreibung ist in der an das LLM gesendeten Aufforderung enthalten, damit es „weiß“, welche Aktionen zur Verfügung stehen und was von jeder Aktion erwartet wird.
  • Persistenz: Ihre Projekte und deren Details werden in projects.json gespeichert. So müssen Sie die Informationen nicht jedes Mal erneut eingeben.
  • Ausführliche Protokollierung: Der Agent ist auf ausführlichen Modus eingestellt, was sich hervorragend zum Debuggen eignet und um zu sehen, wie Ihre Anweisungen in Funktionsaufrufe übersetzt werden.

Beispiel für die Nutzung des Elasticsearch AI-Agenten

Zugehörige Inhalte

Sind Sie bereit, hochmoderne Sucherlebnisse zu schaffen?

Eine ausreichend fortgeschrittene Suche kann nicht durch die Bemühungen einer einzelnen Person erreicht werden. Elasticsearch wird von Datenwissenschaftlern, ML-Ops-Experten, Ingenieuren und vielen anderen unterstützt, die genauso leidenschaftlich an der Suche interessiert sind wie Sie. Lasst uns in Kontakt treten und zusammenarbeiten, um das magische Sucherlebnis zu schaffen, das Ihnen die gewünschten Ergebnisse liefert.

Probieren Sie es selbst aus