Ding-Suche
Eine in Node.js geschriebene Suchmaschine, die von einem Webcrawler gesammelte Daten verwendet.
Dokumentation
Die Dokumentation zu diesem Projekt finden Sie im GitHub-Wiki, es ist jedoch noch nicht ganz fertig.
Präsentation
Die Präsentation der Ding-Suche und des Webcrawlers finden Sie unter vojhab.page.link/pva-prezentace.
Projektziel
Das Ziel des Ding Search-Projekts besteht darin, eine Suchmaschine zu schaffen, die in der Lage ist, Websites zu durchsuchen und Benutzern relevante Suchergebnisse basierend auf den von ihnen eingegebenen Suchanfragen anzubieten. Die Suchmaschine ist in Node.js geschrieben und verwendet von einem Webcrawler gesammelte Daten.
Verwendete Technologien
- Node.js: Eine Open-Source-Laufzeitumgebung zum Ausführen von serverseitigem JavaScript-Code.
- PostgreSQL: Eine Datenbank, die ein breites Spektrum an Datenverwaltungs- und Speicherfunktionen bietet und es Benutzern ermöglicht, Daten effizient zu speichern und abzurufen.
- OpenAI API: API für den Zugriff auf erweiterte KI-Modelle.
- TensorFlow.js: Ist eine Open-Source-Bibliothek für maschinelles Lernen und neuronale Netzwerke, die in JavaScript sowohl im Browser als auch serverseitig mithilfe von Node.js verwendet werden kann.
npm-Pakete
Die folgenden npm-Pakete werden in diesem Projekt verwendet:
- node-postgres: Ermöglicht den Zugriff auf die PostgreSQL-Datenbank.
- dotenv: Lädt Variablen aus einer .env-Datei.
- ejs: Vorlagensystem zur Generierung von HTML-Seiten.
- express: Node.js-Framework zum Erstellen von Webanwendungen und APIs.
- openai: Ermöglicht den einfachen Zugriff auf die OpenAI-API.
- Serve-Favicon: Stellt Middleware für Website-Favicons bereit.
- xss: Schutz vor XSS-Angriffen, also vor dem Einschleusen von Schadcode in Benutzereingaben, die anschließend auf der Seite gerendert werden.
- @tensorflow/tfjs: Dies ist ein npm-Paket zur Verwendung der TensorFlow.js-Bibliothek in einem Projekt.
- @tensorflow-models/universal-sentence-encoder: Ein Paket zur Verwendung des Universal Sentence Encoder-Modells.
Geplante Änderungen und Funktionen
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert.
Schöpfer
Vojtěch Habes
[email protected]