iToverDose/Software· 27 JUNI 2026 · 00:02

Persönliche Wissensdatenbank mit Aurora pgvector und Next.js erstellen

Wie ein Entwickler KI-Antworten dauerhaft speichert und durch semantische Suche wiederfindet – ohne auf herkömmliche Textsuche angewiesen zu sein. Eine technische Reise durch AWS-Architektur und PostgreSQL-Erweiterungen.

DEV Community3 min0 Kommentare

Ein Problem, das viele kennen: Man fragt eine KI nach einer komplexen Frage, erhält eine fundierte Antwort – und verliert sie später im Chatverlauf für immer. Lineare Verläufe sind unstrukturiert, schwer durchsuchbar und verschwinden nach der Session. Genau dieses Problem löste der Entwickler mit ChatScroll, einer Anwendung für die AWS H0 Hackathon 2024, die KI-Antworten als durchsuchbare "Scrolls" speichert.

Dank Amazon Aurora PostgreSQL mit der pgvector-Erweiterung nutzt die Lösung semantische Suche, die nicht nur Schlüsselwörter, sondern den inhaltlichen Kontext von Suchanfragen versteht. Das Ergebnis ist eine persönliche Wissensdatenbank, die Antworten intelligent verknüpft und bei Bedarf blitzschnell wiederfindet.

Warum herkömmliche Suche scheitert — und semantische Suche hilft

Die größte Herausforderung bestand darin, eine Suchfunktion zu entwickeln, die Bedeutung statt exakte Wortübereinstimmungen erkennt. Während klassische Volltextsuche nur nach exakten Begriffen wie "Blutverdünner" sucht, versteht die semantische Variante auch verwandte Begriffe wie "Warfarin" oder "Thromboseprophylaxe".

Die Lösung setzt auf vektorisierte Repräsentationen von Texten. Jede gespeicherte Antwort wird als hochdimensionaler Vektor (3072 Dimensionen) kodiert und in der Datenbank abgelegt. Bei einer Suchanfrage wird auch diese in einen Vektor umgewandelt. Aurora vergleicht dann die Ähnlichkeit zwischen Abfrage- und Dokumentvektoren – gemessen an der Kosinus-Ähnlichkeit – und liefert die relevantesten Treffer zurück.

Ein Beispiel: Sucht ein Nutzer nach "Blutverdünner", findet die Anwendung automatisch den Scroll zum Wirkstoff Warfarin, selbst wenn dieser Begriff im ursprünglichen Text nicht vorkommt. Die Suche funktioniert sogar bei komplexen medizinischen oder technischen Fragestellungen präzise.

Die technische Architektur: Warum zwei Datenbanken besser sind als eine

Um Leistung und Skalierbarkeit zu optimieren, setzte der Entwickler auf eine duale Datenbankarchitektur mit klar getrennten Verantwortlichkeiten:

1. Amazon Aurora PostgreSQL für strukturierte Daten und semantische Suche

  • Speichert die eigentlichen Scrolls inklusive ihrer Vektorrepräsentationen
  • Verwaltet die Ordnerhierarchie über die ltree-Erweiterung, die Pfade als dot-separierte Labels wie medizin.herz-kreislauf abbildet
  • Enthält Benutzerkonten (integriert mit Amazon Cognito) und Metadaten zu Gesprächen
  • Ermöglicht hybride Suche: Kombination aus semantischer Ähnlichkeit und klassischer Volltextsuche via tsvector

2. Amazon DynamoDB für hochvolumige Chat-Nachrichten

  • Verwaltet den Nachrichtenstrom mit einem zusammengesetzten Schlüssel aus conversationId (Partition Key) und timestamp#messageId (Sort Key)
  • Löscht alte Nachrichten automatisch nach 90 Tagen (TTL-Einstellung)
  • Bietet kostengünstiges PAY_PER_REQUEST-Preismodell für unvorhersehbare Lastspitzen

Diese Trennung stellt sicher, dass Aurora für anspruchsvolle Abfragen wie Vektorvergleiche optimiert bleibt, während DynamoDB die hohe Schreiblast der Echtzeit-Chats effizient bewältigt.

Die drei PostgreSQL-Erweiterungen, die alles möglich machen

Die Stärke von Aurora liegt nicht nur in der Unterstützung von pgvector, sondern auch in der Kombination mehrerer spezialisierter Erweiterungen:

  • pgvector: Speichert die 3072-dimensionalen Vektoren und ermöglicht effiziente Kosinus-Ähnlichkeitsvergleiche. Die Abfrage nutzt die Operatoren <=> (Kosinus-Distanz) und eine Schwellenwertabfrage für relevante Ergebnisse:
SELECT * FROM scrolls
WHERE 1 - (embedding <=> $queryVec) > 0.5
ORDER BY embedding <=> $queryVec
LIMIT 5;
  • ltree: Ermöglicht die Abbildung von Ordnerstrukturen als hierarchische Pfade. Statt rekursiver CTEs für Unterordnerabfragen zu nutzen, lassen sich mit ltree-Operationen wie SELECT * FROM scrolls WHERE path <@ 'medizin.*'::ltree alle Scrolls in einem Zweig mit einem einzigen Befehl abrufen.
  • tsvector/ts_rank: Fügt klassische Volltextsuche hinzu, die bei kurzen oder unpräzisen Suchanfragen zusätzliche Präzision liefert. Die Kombination beider Techniken – semantisch und lexikalisch – sorgt für robuste Suchergebnisse in allen Szenarien.

Praktische Umsetzung: Vom Prototyp zur fertigen Anwendung

Die Anwendung basiert auf einer modernen Webarchitektur mit folgenden Komponenten:

  • Frontend: Eine Next.js-Anwendung, die über die Vercel-Plattform gehostet wird
  • Backend-API: Verarbeitet Nutzeranfragen, speichert Scrolls in Aurora und leitet Chat-Nachrichten an DynamoDB weiter
  • KI-Integration: Nutzt Googles gemini-embedding-001-Modell, um Antworttexte in Vektoren umzuwandeln
  • Authentifizierung: Setzt auf Amazon Cognito für sichere Nutzerverwaltung

Der Workflow für Nutzer ist denkbar einfach:

  • Frage eine KI (z. B. über ChatGPT oder einen anderen Assistenten) und erhalte eine Antwort.
  • Speichere die Antwort als Scroll in ChatScroll – entweder manuell oder automatisch über eine Browser-Erweiterung.
  • Suche später nach verwandten Themen und finde die gespeicherten Antworten dank semantischer Suche wieder.

Die Anwendung zeigt, wie moderne Datenbanktechnologien wie pgvector und ltree in Kombination mit serverlosen Architekturen persönliches Wissensmanagement revolutionieren können. Statt sich auf unübersichtliche Chatverläufe oder externe Notizen zu verlassen, entsteht eine strukturierte, durchsuchbare Wissensbasis, die mitwächst und sich anpasst.

Ausblick: Semantische Suche wird zum Standard

Projekte wie ChatScroll beweisen, dass semantische Suche kein Nischenthema mehr ist, sondern mittelfristig den Standard für persönliche Wissensdatenbanken setzen wird. Mit der wachsenden Verbreitung von Vektordatenbanken und KI-gestützten Abfragemethoden wird die Fähigkeit, Bedeutung statt exakter Formulierungen zu erkennen, immer wichtiger.

Für Entwickler bietet diese Architektur nicht nur eine überzeugende Lösung für ein echtes Nutzerproblem, sondern auch ein Blaupause für zukünftige Projekte, die auf intelligente Suche und personalisierte Wissensverwaltung setzen. Die Kombination aus Aurora, pgvector und dynamischen Datenbankstrukturen zeigt, wie Cloud-Native-Technologien Innovation im Datenmanagement vorantreiben können.

KI-Zusammenfassung

Yapay zeka yanıtlarınızı kalıcı hale getirmenin yolu: Amazon Aurora PostgreSQL ve pgvector ile kişisel bilgi tabanı oluşturma. Teknik detaylar ve uygulamalı rehber burada.

Kommentare

00
KOMMENTAR SCHREIBEN
ID #QN9PLG

0 / 1200 ZEICHEN

Menschen-Check

9 + 2 = ?

Erscheint nach redaktioneller Prüfung

Moderation · Spam-Schutz aktiv

Noch keine Kommentare. Sei der erste.