🔍

EasySearch - Lokales RAG

Completed 2024 Microservices-Architektur mit lokaler Verarbeitung - Streamlit, Qdrant, Redis, Ollama

EasySearch (LocalRAG Easy Search) ist eine lokale Retrieval Augmented Generation (RAG) Anwendung, die es Benutzern ermöglicht, ihre Dokumente mit natürlicher Sprachverarbeitung abzufragen. Die Anwendung verwendet eine vollständig lokale Architektur, gewährleistet Daten-Privatsphäre und Vertraulichkeit durch Verarbeitung aller Operationen vor Ort ohne Senden von Daten an externe Services. Das System nutzt LangChain für RAG-Orchestrierung, Qdrant für Vektor-Speicher, Redis für Konversations-Verlauf und Ollama für lokale LLM-Inferenz. Die Anwendung unterstützt mehrere Dokument-Formate (PDF, DOCX, TXT, MD) und bietet eine intuitive Streamlit-basierte Chat-Schnittstelle für dokument-basierte Frage-Antwort.

Data Science Maschinelles Lernen Python-Entwicklung RAG Natürliche Sprachverarbeitung KI/LLM-Integration Dokument-Verarbeitung

Übersicht

EasySearch (LocalRAG Easy Search) ist eine lokale Retrieval Augmented Generation (RAG) Anwendung, die es Benutzern ermöglicht, ihre Dokumente mit natürlicher Sprachverarbeitung abzufragen. Die Anwendung verwendet eine vollständig lokale Architektur, gewährleistet Daten-Privatsphäre und Vertraulichkeit durch Verarbeitung aller Operationen vor Ort ohne Senden von Daten an externe Services. Das System nutzt LangChain für RAG-Orchestrierung, Qdrant für Vektor-Speicher, Redis für Konversations-Verlauf und Ollama für lokale LLM-Inferenz. Die Anwendung unterstützt mehrere Dokument-Formate (PDF, DOCX, TXT, MD) und bietet eine intuitive Streamlit-basierte Chat-Schnittstelle für dokument-basierte Frage-Antwort.

Schlüsselfunktionen

Lokale RAG-Anwendung mit vollständiger On-Premises-Verarbeitung

Multi-Format-Dokument-Unterstützung (PDF, DOCX, TXT, MD)

Natürliche Sprach-Frage-Antwort basierend auf Dokument-Inhalten

Qdrant-Vektor-Datenbank für semantische Suche

Redis-basierter Konversations-Verlauf für kontext-bewusste Antworten

Ollama lokale LLM-Inferenz (Llama3/Llama3.2)

Streamlit Chat-Schnittstelle für intuitive Interaktion

Privatsphäre-erhaltende Architektur ohne externe API-Aufrufe

Docker Compose-Bereitstellung mit Microservices-Architektur

Automatische Dokument-Indizierung und Embedding-Generierung

Nur dokument-basierte Antworten (keine Halluzination)

Session-basierte Chat-Verlauf-Verwaltung

pages.portfolio.projects.easysearch_local_rag.features.12

Technische Highlights

Entwicklung vollständig lokale RAG-Anwendung gewährleistet Daten-Privatsphäre

Implementierung LangChain-basierte RAG-Orchestrierung mit Qdrant-Vektor-Speicher

Erstellung Multi-Format-Dokument-Verarbeitungs-Pipeline

Integration Ollama für lokale LLM-Inferenz ohne externe Abhängigkeiten

Aufbau Redis-basierter Konversations-Verlauf für kontext-bewusste Antworten

Entwurf Docker Compose-Microservices-Architektur zur einfachen Bereitstellung

Herausforderungen und Lösungen

Lokales LLM-Setup

Konfiguration Ollama zur einfachen lokalen LLM-Inferenz mit vorkonfigurierten Modellen

Vektor-Speicher-Verwaltung

Implementierung Qdrant-Vektor-Datenbank mit HuggingFace-Embeddings zur effizienten semantischen Suche

Konversations-Kontext

Entwicklung Redis-basierter Chat-Verlauf mit Session-Verwaltung zur Kontext-Erhaltung

Dokument-Verarbeitung

Integration LangChain-Dokument-Loader für Multi-Format-Unterstützung (PDF, DOCX, TXT, MD)

Antwort-Qualität

Gewährleistung dokument-basierte Antworten mit System-Prompts und Kontext-Filterung

Bereitstellungs-Komplexität

Orchestrierung mehrerer Services mit Docker Compose zur einfachen Bereitstellung und Verwaltung

Technologien

RAG Framework

LangChain LangChain Community LangChain HuggingFace LangChain Qdrant LangChain Ollama

Vector Database

Qdrant HuggingFace Embeddings

LLM

Ollama Llama3 Llama3.2

Frontend

Streamlit

Storage

Redis Redis Stack

Document Processing

PyPDF Docx2txt TextLoader UnstructuredMarkdownLoader RecursiveCharacterTextSplitter

Deployment

Docker Docker Compose

Environment

Python 3.11+ Poetry

Projektinformationen

Status
Completed
Jahr
2024
Architektur
Microservices-Architektur mit lokaler Verarbeitung - Streamlit, Qdrant, Redis, Ollama
Category
Data Science