{"id":2764,"date":"2025-08-31T15:10:51","date_gmt":"2025-08-31T15:10:51","guid":{"rendered":"https:\/\/www.markus-schall.de\/?p=2764"},"modified":"2025-11-24T09:17:41","modified_gmt":"2025-11-24T09:17:41","slug":"rag-z-ollama-i-qdrant-jako-uniwersalna-wyszukiwarka-wlasnych-danych","status":"publish","type":"post","link":"https:\/\/www.markus-schall.de\/pl\/2025\/08\/rag-mit-ollama-und-qdrant-als-universelle-suchmaschine-fuer-eigene-daten\/","title":{"rendered":"RAG z Ollama i Qdrant jako uniwersalna wyszukiwarka w\u0142asnych danych"},"content":{"rendered":"<p>In einer zunehmend un\u00fcbersichtlichen Informationswelt wird es immer wichtiger, eigene Datenbest\u00e4nde gezielt durchsuchbar zu machen &#8211; nicht \u00fcber klassische Volltextsuche, sondern durch semantisch relevante Antworten. Genau hier kommt das Prinzip der RAG-Datenbank ins Spiel &#8211; also einer KI-gest\u00fctzten Suchl\u00f6sung, die sich aus zwei zentralen Komponenten zusammensetzt:<!--more--><\/p>\n<hr \/>\n\n\t\t\t<div class=\"display-post-types\">\n\n\t\t\t\t\t\t\t<style type=\"text\/css\">\n\t\t\t#dpt-wrapper-750 { --dpt-text-align: left;--dpt-image-crop: center;--dpt-border-radius: 5px;--dpt-small-grid-column: 33.33%;--dpt-large-grid-column: 33.3333333333%;--dpt-h-gutter: 10px;--dpt-v-gutter: 10px; }\t\t\t<\/style>\n\t\t\t<style type=\"text\/css\">#dpt-wrapper-750 { --dpt-title-font-style:normal;--dpt-title-font-weight:600;--dpt-title-line-height:1.5;--dpt-title-text-decoration:none;--dpt-title-text-transform:none;--dpt-excerpt-font-style:normal;--dpt-excerpt-font-weight:400;--dpt-excerpt-line-height:1.5;--dpt-excerpt-text-decoration:none;--dpt-excerpt-text-transform:none;--dpt-meta1-font-style:normal;--dpt-meta1-font-weight:400;--dpt-meta1-line-height:1.9;--dpt-meta1-text-decoration:none;--dpt-meta1-text-transform:none;--dpt-meta2-font-style:normal;--dpt-meta2-font-weight:400;--dpt-meta2-line-height:1.9;--dpt-meta2-text-decoration:none;--dpt-meta2-text-transform:none; }<\/style><div class=\" dpt-main-header\">\n\t\t\t\t\t\t<div class=\"dpt-main-title\">\n\t\t\t\t\t\t\t<span class=\"dpt-main-title-text\">Aktuelle Themen zu K\u00fcnstlicher Intelligenz<\/span>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t<\/div>\t\t\t\n\t\t\t\t<div id=\"dpt-wrapper-750\" class=\"dpt-wrapper dpt-grid1 multi-col dpt-mason-wrap\" >\n\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"dpt-entry has-thumbnail\" data-title=\"wie man heute schon ki-spezialisten ausbilden kann &#8211; chancen f\u00fcr unternehmen und azubis\" data-id=\"3120\"  data-category=\"allgemein b\u00fccher ki-systeme tipps &amp; anleitungen\" data-post_tag=\"buch datenbanken datenlogik denkmodelle k\u00fcnstliche intelligenz llm sprachmodell\">\n\t\t\t\t\t\t\t<div class=\"dpt-entry-wrapper\"><div class=\" dpt-featured-content\"><div class=\" dpt-permalink\"><a href=\"https:\/\/www.markus-schall.de\/pl\/2025\/10\/wie-man-heute-schon-ki-spezialisten-ausbilden-kann-chancen-fuer-unternehmen-und-azubis\/\" class=\"dpt-permalink\"><span class=\"screen-reader-text\">Wie man heute schon KI-Spezialisten ausbilden kann &#8211; Chancen f\u00fcr Unternehmen und Azubis<\/span><\/a><\/div><div class=\" dpt-thumbnail\"><div class=\"dpt-thumbnail-inner\"><img width=\"1024\" height=\"683\" class=\"attachment-full size-full\" alt=\"KI-Spezialist ausbilden\" context=\"dpt\" data-dpt-src=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/ki-spezialist-ausbildung.jpg\" data-dpt-sizes=\"(max-width: 1024px) 100vw, 1024px\" data-dpt-srcset=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/ki-spezialist-ausbildung.jpg 1024w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/ki-spezialist-ausbildung-300x200.jpg 300w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/ki-spezialist-ausbildung-768x512.jpg 768w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/ki-spezialist-ausbildung-18x12.jpg 18w\" \/><\/div><span class=\"dpt-thumbnail-aspect-ratio\" style=\"padding-top: 67%\"><\/span><\/div><\/div><div class=\" sub-entry\"><h3 class=\" dpt-title\"><a class=\"dpt-title-link\" href=\"https:\/\/www.markus-schall.de\/pl\/2025\/10\/wie-man-heute-schon-ki-spezialisten-ausbilden-kann-chancen-fuer-unternehmen-und-azubis\/\" rel=\"bookmark\">Wie man heute schon KI-Spezialisten ausbilden kann &#8211; Chancen f\u00fcr Unternehmen und Azubis<\/a><\/h3><\/div><\/div>\n\t\t\t\t\t\t<\/div><!-- .dpt-entry -->\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"dpt-entry has-thumbnail\" data-title=\"mit ki dialogisch denken lernen: warum gute fragen wichtiger sind als gute modelle\" data-id=\"4700\"  data-category=\"allgemein ki-systeme tipps &amp; anleitungen\" data-post_tag=\"denkmodelle k\u00fcnstliche intelligenz lernen llm prozesse ratgeber sprachmodell\">\n\t\t\t\t\t\t\t<div class=\"dpt-entry-wrapper\"><div class=\" dpt-featured-content\"><div class=\" dpt-permalink\"><a href=\"https:\/\/www.markus-schall.de\/pl\/2026\/02\/mit-ki-dialogisch-denken-lernen-warum-gute-fragen-wichtiger-sind-als-gute-modelle\/\" class=\"dpt-permalink\"><span class=\"screen-reader-text\">Mit KI dialogisch denken lernen: Warum gute Fragen wichtiger sind als gute Modelle<\/span><\/a><\/div><div class=\" dpt-thumbnail\"><div class=\"dpt-thumbnail-inner\"><img width=\"1024\" height=\"683\" class=\"attachment-full size-full\" alt=\"Dialogisch denken lernen mit KI\" context=\"dpt\" data-dpt-src=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/Denken-lernen-mit-KI.jpg\" data-dpt-sizes=\"(max-width: 1024px) 100vw, 1024px\" data-dpt-srcset=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/Denken-lernen-mit-KI.jpg 1024w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/Denken-lernen-mit-KI-300x200.jpg 300w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/Denken-lernen-mit-KI-768x512.jpg 768w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/Denken-lernen-mit-KI-18x12.jpg 18w\" \/><\/div><span class=\"dpt-thumbnail-aspect-ratio\" style=\"padding-top: 67%\"><\/span><\/div><\/div><div class=\" sub-entry\"><h3 class=\" dpt-title\"><a class=\"dpt-title-link\" href=\"https:\/\/www.markus-schall.de\/pl\/2026\/02\/mit-ki-dialogisch-denken-lernen-warum-gute-fragen-wichtiger-sind-als-gute-modelle\/\" rel=\"bookmark\">Mit KI dialogisch denken lernen: Warum gute Fragen wichtiger sind als gute Modelle<\/a><\/h3><\/div><\/div>\n\t\t\t\t\t\t<\/div><!-- .dpt-entry -->\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"dpt-entry has-thumbnail\" data-title=\"wenn der mac zuh\u00f6rt: was apples integrierte ki mit gemini und siri k\u00fcnftig f\u00fcr nutzer bedeutet\" data-id=\"4813\"  data-category=\"apple iphone &amp; ipad apple macos ki-systeme\" data-post_tag=\"apple datenlogik datenschutz k\u00fcnstliche intelligenz llm mac prozesse sprachmodell\">\n\t\t\t\t\t\t\t<div class=\"dpt-entry-wrapper\"><div class=\" dpt-featured-content\"><div class=\" dpt-permalink\"><a href=\"https:\/\/www.markus-schall.de\/pl\/2026\/02\/wenn-der-mac-zuhoert-was-apples-integrierte-ki-mit-gemini-und-siri-kuenftig-fuer-nutzer-bedeutet\/\" class=\"dpt-permalink\"><span class=\"screen-reader-text\">Wenn der Mac zuh\u00f6rt: Was Apples integrierte KI mit Gemini und Siri k\u00fcnftig f\u00fcr Nutzer bedeutet<\/span><\/a><\/div><div class=\" dpt-thumbnail\"><div class=\"dpt-thumbnail-inner\"><img width=\"1024\" height=\"683\" class=\"attachment-full size-full\" alt=\"Apple, Siri und Gemini\" context=\"dpt\" data-dpt-src=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/Apple-Siri-Gemini.jpg\" data-dpt-sizes=\"(max-width: 1024px) 100vw, 1024px\" data-dpt-srcset=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/Apple-Siri-Gemini.jpg 1024w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/Apple-Siri-Gemini-300x200.jpg 300w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/Apple-Siri-Gemini-768x512.jpg 768w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/Apple-Siri-Gemini-18x12.jpg 18w\" \/><\/div><span class=\"dpt-thumbnail-aspect-ratio\" style=\"padding-top: 67%\"><\/span><\/div><\/div><div class=\" sub-entry\"><h3 class=\" dpt-title\"><a class=\"dpt-title-link\" href=\"https:\/\/www.markus-schall.de\/pl\/2026\/02\/wenn-der-mac-zuhoert-was-apples-integrierte-ki-mit-gemini-und-siri-kuenftig-fuer-nutzer-bedeutet\/\" rel=\"bookmark\">Wenn der Mac zuh\u00f6rt: Was Apples integrierte KI mit Gemini und Siri k\u00fcnftig f\u00fcr Nutzer bedeutet<\/a><\/h3><\/div><\/div>\n\t\t\t\t\t\t<\/div><!-- .dpt-entry -->\n\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\n<hr \/>\n<ol>\n<li>einer Vektordatenbank (wie Qdrant), in der beliebige Inhalte als numerische Vektoren abgelegt sind,<\/li>\n<li>und einem Sprachmodell (z.\u202fB. via Ollama), das die jeweiligen Anfragen intelligent mit dem passenden Inhalt kombiniert.<\/li>\n<\/ol>\n<p>Statt das Modell \u201eraten\u201c zu lassen, nutzt man bei dieser Architektur eigene Wissensquellen &#8211; wie zum Beispiel:<\/p>\n<ul>\n<li>selbst verfasste Dokumentationen,<\/li>\n<li>Inhalte von Webseiten,<\/li>\n<li>technische Handb\u00fccher,<\/li>\n<li>Supportdatenbanken,<\/li>\n<li>FAQ-Listen,<\/li>\n<li>oder beliebige archivierte Textquellen (z.\u202fB. aus alten Datenbanken).<\/li>\n<\/ul>\n<p>Das Entscheidende: Alle diese Quellen k\u00f6nnen im Vorfeld aufbereitet und \u201egechunkt\u201c (also in kleine Texteinheiten zerlegt) werden, um sp\u00e4ter m\u00f6glichst relevante Textausschnitte zu einer Benutzerfrage liefern zu k\u00f6nnen.<\/p>\n<p>Ob man also eine eigene Wissensdatenbank, eine interne Dokumentation oder ein ganzes Produktarchiv analysierbar machen m\u00f6chte &#8211; mit <a href=\"https:\/\/ollama.com\" target=\"_blank\" rel=\"noopener\"><strong>Ollama<\/strong><\/a> + <a href=\"https:\/\/qdrant.tech\" target=\"_blank\" rel=\"noopener\"><strong>Qdrant<\/strong><\/a> gelingt das auf dem eigenen Mac, ohne Cloud-Zwang und mit voller Kontrolle \u00fcber die Daten.<\/p>\n<h2>Was ist eine RAG-Datenbank &#8211; und warum \u00fcberhaupt &#8222;Chunking&#8220;?<\/h2>\n<p>RAG steht f\u00fcr Retrieval-Augmented Generation &#8211; also sinngem\u00e4\u00df: textgenerierende KI mit unterst\u00fctzendem Informationsabruf. Anstatt ein Sprachmodell wie GPT, Mistral oder LLaMA nur auf das zu trainieren, was es bereits \u201ewei\u00df\u201c, kann es durch eine angebundene Wissensdatenbank (meist eine sogenannte Vektordatenbank) auf zus\u00e4tzliche, eigene Informationen zugreifen.<\/p>\n<p><strong>Beispiel:<\/strong><\/p>\n<blockquote><p>Fragt man ein Sprachmodell: \u201eWas steht in meiner Steuererkl\u00e4rung von 2023?\u201c, wird es ohne Zugriff auf die Originaldaten raten m\u00fcssen. Hat es jedoch Zugriff auf eine lokal gespeicherte, vektorbasierte Repr\u00e4sentation dieses Dokuments, kann es die entsprechenden Informationen gezielt abrufen und in seine Antwort einbauen.<\/p><\/blockquote>\n<h3>Warum Inhalte \u201egechunkt\u201c werden<\/h3>\n<p>Dokumente, Webseiten oder B\u00fccher sind meist viel zu lang, als dass sie in einem St\u00fcck verarbeitet oder durchsucht werden k\u00f6nnten. Auch moderne Sprachmodelle haben Token-Grenzen &#8211; also eine begrenzte Textl\u00e4nge, die sie auf einmal verstehen k\u00f6nnen (oft ca. 4.000-8.000 Token, bei neueren Modellen auch 32.000 oder mehr).<\/p>\n<p>Deshalb wird bei RAG folgender Trick angewendet:<\/p>\n<ol>\n<li>Der urspr\u00fcngliche Text wird in kleine Abschnitte (Chunks) aufgeteilt.<\/li>\n<li>Jeder Chunk wird durch ein Sprachmodell in einen Vektor umgerechnet (Embedding).<\/li>\n<li>Diese Vektoren werden in einer Datenbank wie Qdrant gespeichert.<\/li>\n<li>Bei einer Anfrage des Nutzers wird der Prompt ebenfalls in einen Vektor \u00fcbersetzt &#8211; und die \u00e4hnlichsten Chunks werden abgerufen.<\/li>\n<li>Diese Inhalte werden dem Sprachmodell dann zus\u00e4tzlich mitgegeben &#8211; z.\u202fB. durch ein Systemprompt oder Context-Injection.<\/li>\n<\/ol>\n<p>So entsteht ein System, das sich wie ein Ged\u00e4chtnis verh\u00e4lt &#8211; allerdings ohne klassische Schl\u00fcsselw\u00f6rter oder Volltextsuche, sondern rein bedeutungsbasiert (semantisch).<\/p>\n<h2>Voraussetzungen und Ziel<\/h2>\n<p>Wir bauen ein lokales RAG-System bestehend aus:<\/p>\n<ul>\n<li>einem lokalen LLM via Ollama<\/li>\n<li>einer Vektor-Datenbank namens Qdrant<\/li>\n<li>einem Python-Skript, das Texte chunked, vektorisiert und in die Datenbank einf\u00fcgt<\/li>\n<li>optional: einer einfachen Oberfl\u00e4che oder API zur Abfrage<\/li>\n<\/ul>\n<p><strong>Zielplattform: macOS (Intel oder Apple Silicon)<\/strong><\/p>\n<p>Vorausgesetzt wird:<\/p>\n<ul>\n<li>macOS 12 oder neuer (Monterey oder h\u00f6her)<\/li>\n<li>Terminal-Grundkenntnisse<\/li>\n<li>Python 3.10 oder neuer<\/li>\n<li>Optional: Homebrew installiert<\/li>\n<\/ul>\n<h3>1. Schritt: Ollama installieren<\/h3>\n<p>Ollama ist ein schlankes Tool, mit dem lokale Sprachmodelle wie Mistral, LLaMA, Gemma oder Codellama auf dem eigenen Rechner laufen &#8211; auch ohne Internet.<\/p>\n<p>Installation auf dem Mac:<\/p>\n<pre class=\"notranslate\">curl -fsSL https:\/\/ollama.com\/install.sh | sh<\/pre>\n<p>Alternativ kann Ollama auch \u00fcber Homebrew installiert werden:<br \/>\nbrew install ollama<\/p>\n<p>Nach der Installation:<\/p>\n<pre class=\"notranslate\">ollama run mistral<\/pre>\n<p>Das l\u00e4dt das Mistral 7B-Modell herunter und startet es lokal. Ollama bringt eine REST-API mit, die wir sp\u00e4ter zur Vektorisierung nutzen. Du kannst nat\u00fcrlich auch andere Modelle nutzen wie z.B. Gemma3 (12B), Mistral Small (24B) oder andere LLMs.<\/p>\n<h3>2. Schritt: Qdrant installieren (lokale Vektordatenbank)<\/h3>\n<p>Qdrant ist eine blitzschnelle, auf Rust basierende Vektor-Datenbank. Es ist kostenlos, Open Source und leicht auf dem Mac startbar &#8211; am besten via Docker. Solltest Du Docker noch nicht auf Deinem Mac installiert haben, kannst Du es auf der <a href=\"https:\/\/www.docker.com\" target=\"_blank\" rel=\"noopener\"><strong>Docker Website<\/strong><\/a> kostenlos herunterladen und auf Deinem Mac als normale Desktop-App installieren. Alternativ kannst Du Docker auch per Homebrew installieren, wenn Du Homebrew bereits nutzen solltest:<\/p>\n<pre class=\"notranslate\">brew install --cask docker<\/pre>\n<p>Danach Qdrant per Docker starten:<\/p>\n<pre class=\"notranslate\">docker run -p 6333:6333 -v qdrant_storage:\/qdrant\/storage qdrant\/qdrant<\/pre>\n<p>Qdrant ist danach erreichbar unter:<\/p>\n<pre class=\"notranslate\">http:\/\/localhost:6333<\/pre>\n<p>Zum Testen:<\/p>\n<pre class=\"notranslate\">curl http:\/\/localhost:6333\/collections<\/pre>\n<h3>3. Schritt: Python-Umgebung vorbereiten<\/h3>\n<p>F\u00fcr das Chunking, Embedding und die Kommunikation mit Qdrant brauchen wir Python.<\/p>\n<p>Vorbereitung:<\/p>\n<pre class=\"notranslate\">python3 -m venv rag-env\r\nsource rag-env\/bin\/activate\r\npip install qdrant-client sentence-transformers ollama numpy<\/pre>\n<p>Falls ollama nicht als Python-Paket erkannt wird, nutze das REST-API direkt per requests:<\/p>\n<pre class=\"notranslate\">pip install requests<\/pre>\n<h3>4. Schritt: Chunking und Embedding<\/h3>\n<p>Im folgenden findest Du ein Beispielskript, das ein Textdokument in Chunks aufteilt, Embeddings \u00fcber Ollama erzeugt und sie in Qdrant einf\u00fcgt:<\/p>\n<pre class=\"notranslate\">import requests\r\nfrom qdrant_client import QdrantClient\r\nfrom qdrant_client.models import PointStruct\r\nimport uuid\r\n\r\n# Konfiguration\r\nCHUNK_SIZE = 500 # Zeichen\r\nCOLLECTION_NAME = \"mein_rag_wissen\"\r\n\r\n# Text vorbereiten\r\nwith open(\"mein_text.txt\", \"r\") as f:\r\ntext = f.read()\r\n\r\nchunks = [text[i:i+CHUNK_SIZE] for i in range(0, len(text), CHUNK_SIZE)]\r\n\r\n# Qdrant vorbereiten\r\nclient = QdrantClient(\"localhost\", port=6333)\r\n\r\n# Neue Collection anlegen (falls noch nicht vorhanden)\r\nclient.recreate_collection(\r\ncollection_name=COLLECTION_NAME,\r\nvectors_config={\"size\": 4096, \"distance\": \"Cosine\"}\r\n)\r\n\r\ndef get_embedding_ollama(text):\r\nresponse = requests.post(\r\n\"http:\/\/localhost:11434\/api\/embeddings\",\r\njson={\"model\": \"mistral\", \"prompt\": text}\r\n)\r\nreturn response.json()[\"embedding\"]\r\n\r\n# Embeddings erzeugen und in Qdrant speichern\r\npoints = []\r\nfor i, chunk in enumerate(chunks):\r\nvector = get_embedding_ollama(chunk)\r\npoints.append(PointStruct(\r\nid=str(uuid.uuid4()),\r\nvector=vector,\r\npayload={\"text\": chunk}\r\n))\r\n\r\nclient.upsert(collection_name=COLLECTION_NAME, points=points)\r\nprint(f\"{len(points)} Chunks erfolgreich eingef\u00fcgt.\")<\/pre>\n<h3>5. Schritt: Abfragen \u00fcber semantische Suche<\/h3>\n<p>Du kannst nun Anfragen als Vektor an Qdrant schicken und die relevantesten Textabschnitte finden lassen:<\/p>\n<pre class=\"notranslate\">query = \"Wie funktioniert ein RAG-System?\"\r\nquery_vector = get_embedding_ollama(query)\r\n\r\nresults = client.search(\r\ncollection_name=COLLECTION_NAME,\r\nquery_vector=query_vector,\r\nlimit=3\r\n)\r\n\r\nfor r in results:\r\nprint(r.payload[\"text\"])<\/pre>\n<p>Diese Chunks kannst Du dann z.\u202fB. \u00fcber einen Systemprompt an Ollama weitergeben und als kontextbezogene Antwort formulieren lassen.<\/p>\n<h2>Chunking + JSON-Export in FileMaker und anderen Datenbanken<\/h2>\n<p>In vielen F\u00e4llen kann das Chunking bereits in einer vorhandenen Datenbankl\u00f6sung erfolgen &#8211; zum Beispiel in FileMaker. Genau so funktioniert es auch in meiner eigenen Arbeitsumgebung: Die Quelldaten &#8211; etwa Webseiteninhalte, Supporteintr\u00e4ge oder technische Artikel &#8211; liegen bereits in strukturierter Form in FileMaker vor.<\/p>\n<p>So l\u00e4uft der Prozess ab:<\/p>\n<ol>\n<li>Die Texte werden innerhalb von FileMaker mit einer eigenen Chunking-Logik in Abschnitte von z.\u202fB. 300-500 Zeichen unterteilt.<\/li>\n<li>Jeder Chunk erh\u00e4lt eine eigene ID sowie ggf. Metadaten (Titel, Kategorie, Quelle, Sprache etc.).<\/li>\n<li>Alle Chunks werden automatisch als JSON-Dateien exportiert &#8211; z.\u202fB. in ein bestimmtes Verzeichnis auf einem Netzlaufwerk oder direkt auf die Festplatte des KI-Servers.<\/li>\n<li>Ein Python-Skript auf dem Server liest diese JSON-Dateien ein und speichert sie in der Qdrant-Datenbank.<\/li>\n<\/ol>\n<h3>Beispiel f\u00fcr eine exportierte Chunk-Datei (chunk_00017.json)<\/h3>\n<pre class=\"notranslate\">{\r\n\"id\": \"00017\",\r\n\"text\": \"Dies ist ein einzelner Textabschnitt mit ca. 400 Zeichen, der aus einer gr\u00f6\u00dferen Quelle stammt. Er wurde in FileMaker vorbereitet und enth\u00e4lt alle relevanten Inhalte, die f\u00fcr eine semantische Suche ben\u00f6tigt werden.\",\r\n\"metadata\": {\r\n\"source\": \"support_center\",\r\n\"category\": \"Fehlermeldung\",\r\n\"language\": \"de\",\r\n\"title\": \"Drucker wird nicht erkannt\"\r\n}\r\n}<\/pre>\n<p>Das anschlie\u00dfende Importskript kann dann \u00fcber das Terminal automatisch oder regelm\u00e4\u00dfig ausgef\u00fchrt werden &#8211; z.\u202fB. via Cronjob oder manuellen Aufruf:<\/p>\n<pre class=\"notranslate\">python3 import_json_chunks.py \/Users\/markus\/Desktop\/chunks\/<\/pre>\n<p>Dabei liest das Skript jeden JSON-Chunk ein, erzeugt den passenden Vektor (z.\u202fB. via Ollama oder SentenceTransformers) und \u00fcbertr\u00e4gt den Eintrag an die Qdrant-Datenbank.<\/p>\n<p>Diese Methode ist nicht nur transparent, sondern l\u00e4sst sich auch sehr gut mit bestehenden IT-Strukturen kombinieren &#8211; insbesondere in Unternehmen, die bereits FileMaker einsetzen oder aus Gr\u00fcnden der Prozessklarheit gerne alles zentral und visuell gesteuert abbilden.<\/p>\n<h2>Beliebige Datenbanken an Deine lokale KI anbinden<\/h2>\n<p>Mit Ollama und Qdrant l\u00e4sst sich auf dem Mac in kurzer Zeit ein vollst\u00e4ndiges, performantes RAG-System aufbauen:<\/p>\n<ul>\n<li>Lokal, ohne Cloud oder Abo<\/li>\n<li>Erweiterbar, mit eigenen Inhalten<\/li>\n<li>Datensicher, da nichts den Rechner verl\u00e4sst<\/li>\n<li>Effizient, da Qdrant auch auf gr\u00f6\u00dferen Datenmengen schnell bleibt<\/li>\n<\/ul>\n<p>Wer seine KI nicht nur zum Plaudern, sondern als echtes Wissens- und Ged\u00e4chtnissystem nutzen will, kommt an dieser Kombination kaum vorbei. Und: Es funktioniert bereits mit geringem Aufwand &#8211; bei voller Kontrolle \u00fcber die eigenen Daten.<\/p>\n<hr \/>\n<h3>Aktuelle Umfrage zur Nutzung lokaler KI-Systeme<\/h3>\n<div class='bootstrap-yop yop-poll-mc'>\n\t\t\t\t\t\t\t<div class=\"basic-yop-poll-container\" style=\"background-color:#ffffff; border:0px; border-style:solid; border-color:#000000; border-radius:5px; padding:0px 5px;\" data-id=\"9\" data-temp=\"basic-pretty\" data-skin=\"square\" data-cscheme=\"blue\" data-cap=\"0\" data-access=\"guest\" data-tid=\"\" data-uid=\"7afe2a879b4ad9b857a6d2a0882e31d0\" data-pid=\"4813\" data-resdet=\"votes-number,percentages\" data-show-results-to=\"guest\" data-show-results-moment=\"after-vote\" data-show-results-only=\"false\" data-show-message=\"true\" data-show-results-as=\"bar\" data-sort-results-by=\"as-defined\" data-sort-results-rule=\"asc\"data-is-ended=\"0\" data-percentages-decimals=\"2\" data-gdpr=\"no\" data-gdpr-sol=\"consent\" data-css=\".basic-yop-poll-container[data-uid] .basic-vote {\n\t\t\t\t\t\t\t\t\ttext-align: center;\n\t\t\t\t\t\t\t\t}\" data-counter=\"0\" data-load-with=\"1\" data-notification-section=\"top\"><div class=\"row\"><div class=\"col-md-12\"><div class=\"basic-inner\"><div class=\"basic-message hide\" style=\"border-left: 10px solid #008000; padding: 0px 10px;\" data-error=\"#ff0000\" data-success=\"#008000\"><p class=\"basic-message-text\" style=\"color:#000000; font-size:14px; font-weight:normal;\"><\/p><\/div><div class=\"basic-overlay hide\"><div class=\"basic-vote-options\"><\/div><div class=\"basic-preloader\"><div class=\"basic-windows8\"><div class=\"basic-wBall basic-wBall_1\"><div class=\"basic-wInnerBall\"><\/div><\/div><div class=\"basic-wBall basic-wBall_2\"><div class=\"basic-wInnerBall\"><\/div><\/div><div class=\"basic-wBall basic-wBall_3\"><div class=\"basic-wInnerBall\"><\/div><\/div><div class=\"basic-wBall basic-wBall_4\"><div class=\"basic-wInnerBall\"><\/div><\/div><div class=\"basic-wBall basic-wBall_5\"><div class=\"basic-wInnerBall\"><\/div><\/div><\/div><\/div><\/div><form class=\"basic-form\"><input type=\"hidden\" name=\"_token\" value=\"027d8b572f\" autocomplete=\"off\"><div class=\"basic-elements\"><div class=\"basic-element basic-question basic-question-text-vertical\" data-id=\"9\" data-uid=\"12ee3a42ff879db51887230705a954b4\" data-type=\"question\" data-question-type=\"text\" data-required=\"yes\" data-allow-multiple=\"no\" data-min=\"1\" data-max=\"7\" data-display=\"vertical\" data-colnum=\"\" data-display-others=\"no\" data-others-color=\"\" data-others=\"\" data-others-max-chars=\"0\"><div class=\"basic-question-title\"><h5 style=\"color:#000000; font-size:16px; font-weight:normal; text-align:left;\">Wie stehst Du zu lokal laufender KI-Software wie MLX oder Ollama?<\/h5><\/div><ul class=\"basic-answers\"><li class=\"basic-answer\" style=\"padding:0px 0px;\" data-id=\"45\" data-type=\"text\" data-vn=\"191\" data-color=\"#000000\" data-make-link=\"no\" data-link=\"\"><div class=\"basic-answer-content basic-text-vertical\"><label for=\"answer[45]\" class=\"basic-answer-label\"><input type=\"radio\" id=\"answer[45]\" name=\"answer[9]\" value=\"45\"><span class=\"basic-text\" style=\"color: #000000; font-size: 14px; font-weight: normal;\">Genial \u2013 endlich unabh\u00e4ngig von der Cloud<\/span><\/label><\/div><\/li><li class=\"basic-answer\" style=\"padding:0px 0px;\" data-id=\"46\" data-type=\"text\" data-vn=\"36\" data-color=\"#000000\" data-make-link=\"no\" data-link=\"\"><div class=\"basic-answer-content basic-text-vertical\"><label for=\"answer[46]\" class=\"basic-answer-label\"><input type=\"radio\" id=\"answer[46]\" name=\"answer[9]\" value=\"46\"><span class=\"basic-text\" style=\"color: #000000; font-size: 14px; font-weight: normal;\">Interessant, aber (noch) zu kompliziert<\/span><\/label><\/div><\/li><li class=\"basic-answer\" style=\"padding:0px 0px;\" data-id=\"47\" data-type=\"text\" data-vn=\"41\" data-color=\"#000000\" data-make-link=\"no\" data-link=\"\"><div class=\"basic-answer-content basic-text-vertical\"><label for=\"answer[47]\" class=\"basic-answer-label\"><input type=\"radio\" id=\"answer[47]\" name=\"answer[9]\" value=\"47\"><span class=\"basic-text\" style=\"color: #000000; font-size: 14px; font-weight: normal;\">Werde ich bald ausprobieren<\/span><\/label><\/div><\/li><li class=\"basic-answer\" style=\"padding:0px 0px;\" data-id=\"48\" data-type=\"text\" data-vn=\"6\" data-color=\"#000000\" data-make-link=\"no\" data-link=\"\"><div class=\"basic-answer-content basic-text-vertical\"><label for=\"answer[48]\" class=\"basic-answer-label\"><input type=\"radio\" id=\"answer[48]\" name=\"answer[9]\" value=\"48\"><span class=\"basic-text\" style=\"color: #000000; font-size: 14px; font-weight: normal;\">Brauche ich nicht \u2013 Cloud reicht mir<\/span><\/label><\/div><\/li><li class=\"basic-answer\" style=\"padding:0px 0px;\" data-id=\"49\" data-type=\"text\" data-vn=\"8\" data-color=\"#000000\" data-make-link=\"no\" data-link=\"\"><div class=\"basic-answer-content basic-text-vertical\"><label for=\"answer[49]\" class=\"basic-answer-label\"><input type=\"radio\" id=\"answer[49]\" name=\"answer[9]\" value=\"49\"><span class=\"basic-text\" style=\"color: #000000; font-size: 14px; font-weight: normal;\">Wei\u00df ich nicht genau, worum es da geht<\/span><\/label><\/div><\/li><\/ul><\/div><div class=\"clearfix\"><\/div><\/div><div class=\"basic-vote\"><a href=\"#\" class=\"button basic-vote-button\" role=\"button\" style=\"background:#027bb8; border:0px; border-style: solid; border-color:#000000; border-radius:5px; padding:10px 10px; color:#ffffff; font-size:14px; font-weight:normal;\">Abstimmen<\/a><\/div><\/form><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t<\/div>\n<hr \/>\n<h2>Ausblick: Was mit RAG, Ollama und Qdrant m\u00f6glich wird<\/h2>\n<p>Das in diesem Artikel beschriebene Setup bildet die technische Grundlage f\u00fcr eine neue Form des Umgangs mit Wissen &#8211; lokal, kontrolliert und flexibel erweiterbar. Doch damit endet die Reise keineswegs. Wer das Zusammenspiel von Chunking, Embedding, semantischer Suche und Sprachmodellen einmal verstanden hat, erkennt schnell, wie vielseitig diese Architektur in der Praxis einsetzbar ist.<\/p>\n<h3>1. Anbindung an eigene Datenbanken<\/h3>\n<p>Ob FileMaker, MySQL, PostgreSQL oder MongoDB &#8211; durch gezielte Abfragen lassen sich beliebige Inhalte regelm\u00e4\u00dfig extrahieren, chunken und automatisiert in die Vektordatenbank einf\u00fcgen. So wird aus einer klassischen Datenbank eine semantisch durchsuchbare Wissensquelle. Besonders in Support-Systemen, Produktarchiven oder digitalen Bibliotheken er\u00f6ffnet das ganz neue Zugriffsm\u00f6glichkeiten f\u00fcr Mitarbeiter oder Kunden.<\/p>\n<h3>2. Automatischer Import von Webseiten, PDFs oder Dokumenten<\/h3>\n<p>Inhalte m\u00fcssen nicht h\u00e4ndisch \u00fcbertragen werden. Mit Tools wie BeautifulSoup, readability, pdfplumber oder docx2txt lassen sich ganze Webseiten, PDF-Handb\u00fccher oder Word-Dokumente automatisiert einlesen, in Textform bringen und f\u00fcr das Chunking vorbereiten. So k\u00f6nnen z.\u202fB. technische Wikis, Kundenportale oder Online-Dokumentationen regelm\u00e4\u00dfig aktualisiert in die RAG-Datenbank eingespeist werden.<\/p>\n<h3>3. Langfristiger Wissensaufbau durch Strukturierung<\/h3>\n<p>Im Gegensatz zu einer klassischen KI-Anwendung, die bei jeder Frage von Null beginnt, erlaubt ein RAG-Setup die schrittweise Erweiterung und Kuratierung des zugrunde liegenden Wissens. Durch gezielte Auswahl und Vorbereitung der Chunks entsteht ein eigenes semantisches Ged\u00e4chtnis, das mit jedem Eintrag wertvoller wird.<\/p>\n<h3>4. Verbindung mit Wissensgraphen (Neo4j)<\/h3>\n<p>Wer noch einen Schritt weiter gehen will, kann die Informationen nicht nur semantisch ablegen, sondern auch logisch verkn\u00fcpfen. Mit Neo4j, einer Graphdatenbank, lassen sich Beziehungen zwischen Begriffen, Personen, Themen oder Kategorien visualisieren und gezielt abfragen. So wird aus einer Sammlung von Texten ein strukturierter Wissensgraph, der sowohl vom Menschen als auch von der KI genutzt werden kann &#8211; z.\u202fB. um Kausalketten, zeitliche Abl\u00e4ufe oder thematische Cluster sichtbar zu machen.<\/p>\n<h3>5. Verwendung in eigenen Tools, Apps oder Chatbots<\/h3>\n<p>Einmal eingerichtet, kann die RAG-Logik in nahezu jede Anwendung integriert werden: als semantische Suchfunktion in einer internen Web-App, als intelligente Eingabehilfe in einem CRM-System oder als Chatbot mit eigenem Fachwissen auf der Firmenwebsite. Durch die Verwendung lokaler APIs (z.\u202fB. Ollama REST und Qdrant gRPC) bleiben s\u00e4mtliche Komponenten flexibel und erweiterbar &#8211; auch \u00fcber klassische Unternehmensgrenzen hinaus.<\/p>\n<p>Wer den Mut hat, sich mit diesen Tools vertraut zu machen, schafft die Grundlage f\u00fcr unabh\u00e4ngige, lokale KI-Systeme mit echtem Nutzwert &#8211; ganz im Geist von Kontrolle, Souver\u00e4nit\u00e4t und technischer Klarheit.<\/p>\n<hr \/>\n\n\t\t\t<div class=\"display-post-types\">\n\n\t\t\t\t\t\t\t<style type=\"text\/css\">\n\t\t\t#dpt-wrapper-751 { --dpt-text-align: left;--dpt-image-crop: center;--dpt-border-radius: 5px;--dpt-h-gutter: 10px;--dpt-v-gutter: 10px; }\t\t\t<\/style>\n\t\t\t<style type=\"text\/css\">#dpt-wrapper-751 { --dpt-title-font-style:normal;--dpt-title-font-weight:600;--dpt-title-line-height:1.5;--dpt-title-text-decoration:none;--dpt-title-text-transform:none;--dpt-excerpt-font-style:normal;--dpt-excerpt-font-weight:400;--dpt-excerpt-line-height:1.5;--dpt-excerpt-text-decoration:none;--dpt-excerpt-text-transform:none;--dpt-meta1-font-style:normal;--dpt-meta1-font-weight:400;--dpt-meta1-line-height:1.9;--dpt-meta1-text-decoration:none;--dpt-meta1-text-transform:none;--dpt-meta2-font-style:normal;--dpt-meta2-font-weight:400;--dpt-meta2-line-height:1.9;--dpt-meta2-text-decoration:none;--dpt-meta2-text-transform:none; }<\/style><div class=\" dpt-main-header\">\n\t\t\t\t\t\t<div class=\"dpt-main-title\">\n\t\t\t\t\t\t\t<span class=\"dpt-main-title-text\">Aktuelle Themen rund um ERP-Software<\/span>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t<\/div>\t\t\t\n\t\t\t\t<div id=\"dpt-wrapper-751\" class=\"dpt-wrapper dpt-mag1 land1 dpt-cropped dpt-flex-wrap\" >\n\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"dpt-entry has-thumbnail\" data-title=\"gfm-dental: konstanzpr\u00fcfung f\u00fcr befundmonitore digitaler r\u00f6ntgenger\u00e4te\" data-id=\"1839\"  data-category=\"apple macos filemaker &amp; erp\" data-post_tag=\"apple erp-software filemaker\">\n\t\t\t\t\t\t\t<div class=\"dpt-entry-wrapper\"><div class=\" dpt-featured-content\"><div class=\" dpt-permalink\"><a href=\"https:\/\/www.markus-schall.de\/pl\/2014\/06\/gfm-dental-konstanzprufung-fur-befundmonitore-digitaler-rontgengerate\/\" class=\"dpt-permalink\"><span class=\"screen-reader-text\">gFM-Dental: Konstanzpr\u00fcfung f\u00fcr Befundmonitore digitaler R\u00f6ntgenger\u00e4te<\/span><\/a><\/div><div class=\" dpt-thumbnail\"><div class=\"dpt-thumbnail-inner\"><img width=\"630\" height=\"444\" class=\"attachment-full size-full\" alt=\"Hauptmen\u00fc von gFM-Dental\" context=\"dpt\" data-dpt-src=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/hauptmenue_630.jpg\" data-dpt-sizes=\"(max-width: 630px) 100vw, 630px\" data-dpt-srcset=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/hauptmenue_630.jpg 630w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/hauptmenue_630-300x211.jpg 300w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/hauptmenue_630-18x12.jpg 18w\" \/><\/div><span class=\"dpt-thumbnail-aspect-ratio\" style=\"padding-top: 75%\"><\/span><\/div><\/div><div class=\" sub-entry\"><h3 class=\" dpt-title\"><a class=\"dpt-title-link\" href=\"https:\/\/www.markus-schall.de\/pl\/2014\/06\/gfm-dental-konstanzprufung-fur-befundmonitore-digitaler-rontgengerate\/\" rel=\"bookmark\">gFM-Dental: Konstanzpr\u00fcfung f\u00fcr Befundmonitore digitaler R\u00f6ntgenger\u00e4te<\/a><\/h3><div class=\"dpt-meta1 dpt-meta\"><div class=\" dpt-author\"><a href=\"https:\/\/www.markus-schall.de\/pl\/author\/admin\/\"><span>Markus Schall<\/span><\/a><\/div> \u00b7 <div class=\" dpt-date\"><time datetime=\"2014-06-10T11:31:55+00:00\">10. czerwca 2014<\/time><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t<\/div><!-- .dpt-entry -->\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"dpt-entry has-thumbnail\" data-title=\"von filemaker zur cloud: wie schallos business-software mit ki, runtime und updates verbindet\" data-id=\"6278\"  data-category=\"apple iphone &amp; ipad apple macos featured filemaker &amp; erp ki-systeme\" data-post_tag=\"datenbanken datenlogik datenschutz docker erp-software filemaker gfm-business k\u00fcnstliche intelligenz llm ollama prozesse sprachmodell\">\n\t\t\t\t\t\t\t<div class=\"dpt-entry-wrapper\"><div class=\" dpt-featured-content\"><div class=\" dpt-permalink\"><a href=\"https:\/\/www.markus-schall.de\/pl\/2026\/07\/von-filemaker-zur-cloud-wie-schallos-business-software-mit-ki-runtime-und-updates-verbindet\/\" class=\"dpt-permalink\"><span class=\"screen-reader-text\">Von FileMaker zur Cloud: Wie SchallOS Business-Software mit KI, Runtime und Updates verbindet<\/span><\/a><\/div><div class=\" dpt-thumbnail\"><div class=\"dpt-thumbnail-inner\"><img width=\"1260\" height=\"840\" class=\"attachment-full size-full\" alt=\"SchallOS - Intelligent Application Platform\" context=\"dpt\" data-dpt-src=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/SchallOS-Intelligent-Application-Platform.jpg\" data-dpt-sizes=\"(max-width: 1260px) 100vw, 1260px\" data-dpt-srcset=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/SchallOS-Intelligent-Application-Platform.jpg 1260w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/SchallOS-Intelligent-Application-Platform-300x200.jpg 300w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/SchallOS-Intelligent-Application-Platform-1024x683.jpg 1024w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/SchallOS-Intelligent-Application-Platform-768x512.jpg 768w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/SchallOS-Intelligent-Application-Platform-18x12.jpg 18w\" \/><\/div><span class=\"dpt-thumbnail-aspect-ratio\" style=\"padding-top: 75%\"><\/span><\/div><\/div><div class=\" sub-entry\"><h3 class=\" dpt-title\"><a class=\"dpt-title-link\" href=\"https:\/\/www.markus-schall.de\/pl\/2026\/07\/von-filemaker-zur-cloud-wie-schallos-business-software-mit-ki-runtime-und-updates-verbindet\/\" rel=\"bookmark\">Von FileMaker zur Cloud: Wie SchallOS Business-Software mit KI, Runtime und Updates verbindet<\/a><\/h3><div class=\"dpt-meta1 dpt-meta\"><div class=\" dpt-author\"><a href=\"https:\/\/www.markus-schall.de\/pl\/author\/admin\/\"><span>Markus Schall<\/span><\/a><\/div> \u00b7 <div class=\" dpt-date\"><time datetime=\"2026-07-27T10:32:18+00:00\">27. lipca 2026<\/time><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t<\/div><!-- .dpt-entry -->\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"dpt-entry has-thumbnail\" data-title=\"forum zur gfm-business erp-software und claris filemaker\" data-id=\"2393\"  data-category=\"filemaker &amp; erp\" data-post_tag=\"erp-software filemaker gfm-business\">\n\t\t\t\t\t\t\t<div class=\"dpt-entry-wrapper\"><div class=\" dpt-featured-content\"><div class=\" dpt-permalink\"><a href=\"https:\/\/www.markus-schall.de\/pl\/2023\/10\/forum-zur-gfm-business-erp-software-und-claris-filemaker\/\" class=\"dpt-permalink\"><span class=\"screen-reader-text\">Forum zur gFM-Business ERP-Software und Claris FileMaker<\/span><\/a><\/div><div class=\" dpt-thumbnail\"><div class=\"dpt-thumbnail-inner\"><img width=\"1024\" height=\"808\" class=\"attachment-full size-full\" alt=\"ERP-Software und FileMaker Forum\" context=\"dpt\" data-dpt-src=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/erp-software-filemaker-forum.jpg\" data-dpt-sizes=\"(max-width: 1024px) 100vw, 1024px\" data-dpt-srcset=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/erp-software-filemaker-forum.jpg 1024w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/erp-software-filemaker-forum-300x237.jpg 300w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/erp-software-filemaker-forum-768x606.jpg 768w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/erp-software-filemaker-forum-15x12.jpg 15w\" \/><\/div><span class=\"dpt-thumbnail-aspect-ratio\" style=\"padding-top: 75%\"><\/span><\/div><\/div><div class=\" sub-entry\"><h3 class=\" dpt-title\"><a class=\"dpt-title-link\" href=\"https:\/\/www.markus-schall.de\/pl\/2023\/10\/forum-zur-gfm-business-erp-software-und-claris-filemaker\/\" rel=\"bookmark\">Forum zur gFM-Business ERP-Software und Claris FileMaker<\/a><\/h3><div class=\"dpt-meta1 dpt-meta\"><div class=\" dpt-author\"><a href=\"https:\/\/www.markus-schall.de\/pl\/author\/admin\/\"><span>Markus Schall<\/span><\/a><\/div> \u00b7 <div class=\" dpt-date\"><time datetime=\"2023-10-11T15:43:43+00:00\">11. pa\u017adziernika 2023<\/time><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t<\/div><!-- .dpt-entry -->\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"dpt-entry has-thumbnail\" data-title=\"gofilemaker.de hat einen neuen internetauftritt\" data-id=\"2347\"  data-category=\"filemaker &amp; erp\" data-post_tag=\"erp-software filemaker gfm-business\">\n\t\t\t\t\t\t\t<div class=\"dpt-entry-wrapper\"><div class=\" dpt-featured-content\"><div class=\" dpt-permalink\"><a href=\"https:\/\/www.markus-schall.de\/pl\/2022\/04\/gofilemaker-de-hat-einen-neuen-internetauftritt\/\" class=\"dpt-permalink\"><span class=\"screen-reader-text\">gofilemaker.de hat einen neuen Internetauftritt<\/span><\/a><\/div><div class=\" dpt-thumbnail\"><div class=\"dpt-thumbnail-inner\"><img width=\"2560\" height=\"2020\" class=\"attachment-full size-full\" alt=\"gofilemaker.de Internetauftritt\" context=\"dpt\" data-dpt-src=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-scaled.jpg\" data-dpt-sizes=\"(max-width: 2560px) 100vw, 2560px\" data-dpt-srcset=\"https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-scaled.jpg 2560w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-300x237.jpg 300w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-1024x808.jpg 1024w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-768x606.jpg 768w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-1536x1212.jpg 1536w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-2048x1616.jpg 2048w, https:\/\/www.markus-schall.de\/wp-content\/uploads\/gofilemaker_de_2022-15x12.jpg 15w\" \/><\/div><span class=\"dpt-thumbnail-aspect-ratio\" style=\"padding-top: 75%\"><\/span><\/div><\/div><div class=\" sub-entry\"><h3 class=\" dpt-title\"><a class=\"dpt-title-link\" href=\"https:\/\/www.markus-schall.de\/pl\/2022\/04\/gofilemaker-de-hat-einen-neuen-internetauftritt\/\" rel=\"bookmark\">gofilemaker.de hat einen neuen Internetauftritt<\/a><\/h3><div class=\"dpt-meta1 dpt-meta\"><div class=\" dpt-author\"><a href=\"https:\/\/www.markus-schall.de\/pl\/author\/admin\/\"><span>Markus Schall<\/span><\/a><\/div> \u00b7 <div class=\" dpt-date\"><time datetime=\"2022-04-05T08:34:41+00:00\">5. kwietnia 2022<\/time><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t<\/div><!-- .dpt-entry -->\n\t\t\t\t\t\t\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\n<hr \/>\n<h2>H\u00e4ufig gestellte Fragen zu RAG mit Ollama + Qdrant<\/h2>\n<h3>1. Was ist eine RAG-Datenbank &#8211; und wof\u00fcr ist sie gut?<\/h3>\n<p>Eine RAG-Datenbank (Retrieval-Augmented Generation) kombiniert eine Vektordatenbank mit einem Sprachmodell. Sie erm\u00f6glicht es, eigene Inhalte &#8211; z.\u202fB. Dokumentationen oder Webseiten &#8211; semantisch durchsuchbar zu machen, sodass KI-Modelle gezielt auf relevante Ausschnitte aus dem eigenen Datenbestand zugreifen k\u00f6nnen.<\/p>\n<h3>2. Was bedeutet \u201eChunking\u201c in diesem Zusammenhang?<\/h3>\n<p>Chunking bedeutet, lange Texte in kleinere, sinnvoll zusammenh\u00e4ngende Abschnitte (Chunks) zu zerlegen &#8211; meist zwischen 200 und 500 Zeichen. Dadurch k\u00f6nnen einzelne Textteile effizient in der Vektordatenbank gespeichert und sp\u00e4ter bei Fragen wiedergefunden werden.<\/p>\n<h3>3. Warum kann man nicht einfach ganze Texte in Qdrant speichern?<\/h3>\n<p>Weil KI-Modelle und Vektorsuchen mit begrenzten Textl\u00e4ngen arbeiten. Gro\u00dfe Dokumente w\u00fcrden wichtige Inhalte \u201everstecken\u201c oder ungenau machen. Chunking erh\u00f6ht die Treffsicherheit, da gezielte Abschnitte statt kompletter Texte verglichen werden.<\/p>\n<h3>4. Kann ich Inhalte aus beliebigen Quellen verwenden?<\/h3>\n<p>Ja. Solange Du die Texte in bearbeitbarer Form (z.\u202fB. als Klartext, HTML, Markdown, PDF, FileMaker-Eintr\u00e4ge etc.) vorliegen hast, kannst Du sie aufbereiten, chunken und in Qdrant integrieren. Auch Mischquellen sind m\u00f6glich.<\/p>\n<h3>5. Muss ich programmieren k\u00f6nnen, um so ein System zu bauen?<\/h3>\n<p>Grundkenntnisse in Terminal und Python sind hilfreich, aber nicht zwingend erforderlich. Viele Schritte (z.\u202fB. Chunking in FileMaker, JSON-Export) lassen sich visuell und automatisiert umsetzen. Das Qdrant-Importskript l\u00e4sst sich leicht anpassen.<\/p>\n<h3>6. Kann ich auch mehrere Dokumente oder Kategorien verwalten?<\/h3>\n<p>Ja. Jeder Chunk kann Metadaten enthalten &#8211; z.\u202fB. Titel, Quelle, Sprache oder Kategorie. Diese k\u00f6nnen bei der Suche mitber\u00fccksichtigt werden, um Ergebnisse gezielter zu filtern.<\/p>\n<h3>7. Welche Modelle sind f\u00fcr die Embedding-Erzeugung geeignet?<\/h3>\n<p>Du kannst entweder ein lokales Modell \u00fcber Ollama verwenden (z.\u202fB. mistral, llama2, gemma) oder ein separates Embedding-Modell wie all-MiniLM aus sentence-transformers. Wichtig ist, dass das Modell Embedding-Ausgaben als Vektoren erzeugt.<\/p>\n<h3>8. Wie starte ich Qdrant auf dem Mac?<\/h3>\n<p>Am einfachsten per Docker-Befehl:<\/p>\n<pre class=\"notranslate\">docker run -p 6333:6333 -v qdrant_storage:\/qdrant\/storage qdrant\/qdrant<\/pre>\n<p>Qdrant l\u00e4uft danach unter http:\/\/localhost:6333<\/p>\n<h3>9. Wie gro\u00df d\u00fcrfen meine Datenmengen sein?<\/h3>\n<p>Qdrant ist sehr performant und kann problemlos Zehntausende oder Hunderttausende Chunks verwalten. Die Hauptbegrenzung liegt in RAM und Speicherplatz, nicht in der Anzahl.<\/p>\n<h3>10. Funktioniert das auch mit FileMaker?<\/h3>\n<p>Ja. Du kannst das gesamte Chunking und den JSON-Export direkt in FileMaker erledigen. Die Chunks werden als einzelne JSON-Dateien exportiert, die dann \u00fcber ein Python-Skript in Qdrant eingespielt werden &#8211; v\u00f6llig unabh\u00e4ngig vom Ursprungssystem.<\/p>\n<h3>11. Kann ich das auch auf einem anderen Server statt Mac betreiben?<\/h3>\n<p>Absolut. Das Setup funktioniert auch unter Linux-Servern, Raspberry Pi, oder in der Cloud (wenn gew\u00fcnscht). Docker macht es plattformunabh\u00e4ngig. F\u00fcr produktive Nutzung wird meist ein Server mit mehr RAM und GPU-Unterst\u00fctzung empfohlen.<\/p>\n<h3>12. Wie kombiniere ich die Vektorsuche mit Ollama?<\/h3>\n<p>Du erstellst zu einer Nutzerfrage zun\u00e4chst einen Vektor via Ollama (Embedding API), suchst damit in Qdrant die relevantesten Chunks, und gibst diese dem Sprachmodell als Kontext mit. Ollama verarbeitet dann die Frage + kontextrelevante Infos und erzeugt eine fundierte Antwort.<\/p>\n<p>Bild (c) geralt @ pixabay<\/p>\n","protected":false},"excerpt":{"rendered":"<p>W coraz bardziej zagmatwanym \u015bwiecie informacji coraz wa\u017cniejsze staje si\u0119 umo\u017cliwienie przeszukiwania w\u0142asnych baz danych w ukierunkowany spos\u00f3b - nie poprzez klasyczne wyszukiwanie pe\u0142notekstowe, ale poprzez semantycznie istotne odpowiedzi. W\u0142a\u015bnie w tym miejscu do gry wkracza baza danych RAG - rozwi\u0105zanie wyszukiwania wspierane przez sztuczn\u0105 inteligencj\u0119, sk\u0142adaj\u0105ce si\u0119 z dw\u00f3ch centralnych komponent\u00f3w:<\/p>","protected":false},"author":1,"featured_media":2768,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":1084,"footnotes":""},"categories":[431,3],"tags":[440,452,471,435,433,437,432,450,451],"class_list":["post-2764","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ki-systeme","category-filemaker","tag-datenbanken","tag-docker","tag-kuenstliche-intelligenz","tag-llama","tag-llm","tag-mistral","tag-ollama","tag-qdrant","tag-vektordatenbank"],"_links":{"self":[{"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/posts\/2764","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/comments?post=2764"}],"version-history":[{"count":14,"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/posts\/2764\/revisions"}],"predecessor-version":[{"id":3401,"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/posts\/2764\/revisions\/3401"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/media\/2768"}],"wp:attachment":[{"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/media?parent=2764"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/categories?post=2764"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.markus-schall.de\/pl\/wp-json\/wp\/v2\/tags?post=2764"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}