Dieses Projekt zeigt die Verwendung von Elasticsearch für Vektor -Suchaufgaben. Das bereitgestellte Jupyter-Notizbuch, vector_search.ipynb , lädt ein Embettdings-Modell mit sentence-transformers , erstellt Einbetten für das kombinierte Fragen- und Antwortfeld und erstellt eine Vektor-Suchmaschine, um in FAQ-Dokumenten nach Benutzerfragen zu suchen. Wir bewerten die Suchmaschinenergebnisse mithilfe der Trefferquote und dem mittleren gegenseitigen Rang (MRR). Bewerten Sie schließlich Elasticsearch, was effizienter ist, da es ungefähre Techniken verwendet, anstatt die Ähnlichkeit mit allen Vektoren zu berechnen, wodurch identische Ergebnisse erzielt werden.
Um das Projekt einzurichten, befolgen Sie die folgenden Schritte:
pip install pipenv
pipenv installWählen Sie dann die Pipenv -Umgebung im Jupyter -Kernel aus.
Verwenden Sie den folgenden Befehl, um den Docker -Container von Elasticsearch Docker auszuführen:
docker run -it
--rm
--name elasticsearch
-p 9200:9200
-p 9300:9300
-e " discovery.type=single-node "
-e " xpack.security.enabled=false "
docker.elastic.co/elasticsearch/elasticsearch:8.4.3