Mein Projekt ist eine PDFChat -Anwendung, die mit ReactJS Vite Framework, MongoDB für die Datenspeicherung, JWT für die Benutzerauthentifizierung und Autorisierung und Node.js mit Express.js für das Backend erstellt wurde. Es wird auch verschiedene Bibliotheken und Tools für eine effiziente Entwicklung verwendet, einschließlich DOTenV für Umgebungsvariablenverwaltung, Langchain und seinen Vektorspeicher für Sprachverarbeitung, Multer für Datei -Uploads und AXIOS, um Anforderungen an das Backend zu stellen. Das Projekt ist mit Rückenwind -CSS und Shadcn -Framework für eine schlanke Benutzeroberfläche gestaltet.
Auf dem Back-End habe ich Node.js mit Express.js für die Bearbeitung von Anforderungen und MongoDB verwendet, um Benutzerinformationen zu speichern und Benutzeranmeldungen zu verwalten. Um die Dinge sicher zu halten, habe ich JSON -Web -Token für die Benutzerauthentifizierung verwendet, um sicherzustellen, dass nur autorisierte Benutzer auf bestimmte Teile des Projekts zugreifen konnten.
Für die Behandlung von PDF -Dateien habe ich ein Tool namens Multer verwendet, um die Dateien und deren Positionen in der Datenbank zu speichern. Dann verarbeitete ich die hochgeladenen PDFs, brach sie in kleinere Teile ein und speicherte sie in einem von Langchain bereitgestellten HNSW -Vektorstore. Diese Reise hat meine Fähigkeiten erweitert und mir ein besseres Verständnis der Möglichkeiten für fortschrittliche Technologie wie Langchain und Rag vermittelt.
Vor dem Ausführen des Projekts müssen Sie Umgebungs- und Konfigurationsvariablen einrichten:
Klonen Sie das Repository : Starten Sie mit diesem Repository auf die lokale Maschine.
Frontend -Setup :
npm install aus, um Frontend -Abhängigkeiten zu installieren.npm run dev , um das Frontend zu starten.Backend -Setup :
npm install aus, um die Backend -Abhängigkeiten zu installieren..env -Datei im Backend -Verzeichnis und legen Sie die folgenden Variablen fest:PORT : Portnummer auf dem Server wird ausgeführt. (Standardmäßig 8080)username : MongoDB Atlas Connection Benutzername.password : MongoDB Atlas -Verbindungskennwort.JWT_SECRET : Geheimnis für die JWT -Token -Generation.OPENAI_API_KEY : OpenAI -API -Schlüssel.Datenbank -Setup :
Starten Sie das Backend :
npm start um den Backend -Server zu starten.Zugriff auf die Anwendung :
http://localhost:5173 im Browser, um auf die Anwendung zuzugreifen.http://localhost:8080 oder http://localhost:PORT in Ihrem Terminal, um auf die Backend -Teil -Anwendung zuzugreifen. Die Projektstruktur ist in zwei Hauptverzeichnisse organisiert:
frontend : Enthält alle ReactJS -Code für das Frontend mit TypeScript.backend : Enthält den Node.js -Server mit Express.js für die Backend -Logik. Ich habe JWT (JSON Web Tokens) zur Benutzerauthentifizierung und Autorisierung verwendet. Wenn sich Benutzer registrieren oder sich anmelden, erhalten sie ein Token, das mit nachfolgenden Anfragen zum Zugriff auf autorisierte Routen gesendet werden muss.
Benutzerinformationen werden in MongoDB gespeichert, einer flexiblen NoSQL -Datenbank. Benutzerdaten werden sicher gespeichert und nach Bedarf für Benutzerinteraktionen abgerufen.
Ich habe Multer verwendet, eine Middleware für die Bearbeitung von Dateien -Uploads, mit der Benutzer Dateien wie Bilder oder Dokumente hochladen können. Diese Funktion verbessert die Benutzererfahrung durch Unterstützung von Multimedia -Inhalten.
Das Frontend wurde mit einer benutzerfreundlichen Schnittstelle mit Tailwind-CSS und dem Shadcn-Framework entwickelt. Es bietet eine reaktionsschnelle und visuell ansprechende Erfahrung für Benutzer.
Das Backend bietet verschiedene API -Endpunkte, um Benutzerdaten, Authentifizierung und Datei -Uploads zu verwalten. Diese Endpunkte sind im Code dokumentiert, und Sie finden weitere Details in der Codebasis des Backend.