In diesem Abschnitt richten Sie den Backend-Teil des Projekts ein und konfigurieren ihn.

Installieren Sie Python-Abhängigkeiten

Um den Best Practices von Python zu folgen, werden Sie nun eine virtuelle Umgebung erstellen. Dabei handelt es sich um eine private Python-Installation, die speziell für dieses Projekt eingerichtet ist und in der alle Abhängigkeiten installiert werden können. Führen Sie dies mit folgendem Befehl aus:

Dieser Befehl erstellt eine virtuelle Python-Umgebung in einer .venv-Datei. (dot-venv) Verzeichnis. Sie können .venv in diesem Befehl durch einen beliebigen anderen Namen ersetzen. Beachten Sie, dass Sie in einigen Python-Installationen möglicherweise python anstelle von python3 verwenden müssen, um den Python-Interpreter aufzurufen.

Der nächste Schritt besteht darin, die virtuelle Umgebung zu aktivieren . Dadurch wird diese virtuelle Umgebung zur aktiven Python-Umgebung für die aktuelle Terminal-Sitzung. Wenn Sie mit einem UNIX-basierten Betriebssystem wie Linux oder macOS arbeiten, aktivieren Sie die virtuelle Umgebung wie folgt:

Der obige Aktivierungsbefehl funktioniert auch, wenn Sie in einer WSL-Umgebung auf einem Microsoft Windows-Computer arbeiten. Wenn Sie jedoch die Windows-Eingabeaufforderung oder PowerShell verwenden, ist der Aktivierungsbefehl anders:

Wenn die virtuelle Umgebung aktiviert wird, ändert sich die Eingabeaufforderung und zeigt den Namen der Umgebung an:

Der letzte Schritt zur Konfiguration der Python-Umgebung besteht in der Installation einiger Pakete, die von der Starter-Anwendung benötigt werden. Stellen Sie sicher, dass die virtuelle Umgebung im vorherigen Schritt aktiviert wurde, und führen Sie dann den folgenden Befehl aus, um diese Abhängigkeiten zu installieren:

Schreiben Sie eine Konfigurationsdatei

Im Hauptverzeichnis des Codes, den Sie im vorherigen Abschnitt heruntergeladen haben, befindet sich eine Datei namens env.example. Diese Datei enthält alle von der Anwendung unterstützten Konfigurationsvariablen.

Erstellen Sie eine Kopie dieser Datei und benennen Sie sie .env:

Wenn Sie der Anleitung unter Windows folgen, verwenden Sie im obigen Befehl copy anstelle von cp .

Öffnen Sie die Datei .env in Ihrem bevorzugten Texteditor, um die Anwendungskonfiguration einzusehen, und lesen Sie die folgenden Unterabschnitte, um Hinweise zur Konfiguration der Anwendung zu erhalten.

Einrichten einer Elasticsearch-Instanz

Authentifizierung

Wenn Sie ein Elastic Cloud-Konto verwenden, müssen Sie die Variablen ELASTICSEARCH_URL und ELASTIC_API_KEY festlegen:

Hilfe zum Abrufen Ihrer ELASTICSEARCH_URL und Ihres API-Schlüssels finden Sie in den Anweisungen zum Erstellen einer Elastic Cloud-Bereitstellung.

Wenn Sie mit einer selbstgehosteten Elasticsearch-Instanz arbeiten, sollten Sie ELASTIC_API_KEY auskommentieren und ELASTICSEARCH_URL auf Ihren Elasticsearch-Endpunkt setzen:

Indizes

Die Anwendung verwendet zwei Elasticsearch-Indizes. Mithilfe der Konfigurationsvariablen ES_INDEX und ES_INDEX_CHAT_HISTORY können Sie diesen Indizes Namen geben. Die in der Konfigurationsdatei enthaltenen Standardeinstellungen sollten in den meisten Fällen ausreichend sein.

LLM-Einrichtung

Die Anwendung benötigt außerdem Zugriff auf Ihren LLM-Abschluss. Wenn Sie OpenAI verwenden, nutzen Sie bitte die folgenden Konfigurationsvariablen:

Diese Anwendung unterstützt alle LLMs, die über eine Langchain-Integration verfügen. Die Kommentare in der Konfigurationsdatei helfen Ihnen bei der Konfiguration einiger gängiger LLMs zusätzlich zu OpenAI. Sie können auch jede andere LLM verwenden, die nicht vorkonfiguriert ist, indem Sie nur minimale Änderungen an der Anwendung vornehmen.

Beispieldatensatz laden

Die Anwendung enthält einen Beispieldatensatz, der in der Datei data/data.json gespeichert ist. Sie können diese Datei gerne in Ihrem Texteditor öffnen, um sich mit den darin enthaltenen Dokumenten vertraut zu machen.

Importieren Sie den Datensatz mit folgendem Befehl in die Anwendung:

Backend starten

Nachdem Sie alle oben genannten Schritte befolgt haben, sollten Sie das Python-Backend mit folgendem Befehl starten können:

Lassen Sie den Backend-Prozess laufen und öffnen Sie eine neue Terminal-Sitzung, um mit dem Rest dieses Tutorials fortzufahren.

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