{"id":1005,"date":"2025-11-22T10:01:44","date_gmt":"2025-11-22T09:01:44","guid":{"rendered":"https:\/\/www.kehrwasser.com\/blog\/?p=1005"},"modified":"2025-11-22T10:01:44","modified_gmt":"2025-11-22T09:01:44","slug":"rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen","status":"publish","type":"post","link":"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/","title":{"rendered":"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen"},"content":{"rendered":"<p>In der heutigen IT-Landschaft ist die F\u00e4higkeit von Large Language Models (LLMs) unbestritten. Das Problem ist jedoch die <strong>Aktualit\u00e4t<\/strong> des Wissens. Da das zugrundeliegende Modell (LLM) mit statischen Daten trainiert wird, m\u00fcssten wir es bei jeder \u00c4nderung unserer internen Dokumentation <strong>neu trainieren<\/strong>. Das ist <strong>\u00f6konomisch nicht tragbar<\/strong>.<\/p>\n<p>Die <strong>strategische Architektur<\/strong> zur L\u00f6sung dieses Problems ist die <strong>Retrieval-Augmented Generation (RAG)<\/strong>, zu Deutsch etwa <strong>Abruf-erweiterte Generierung<\/strong>. Das Prinzip ist einfach, aber effektiv: Die Antwort des Chatbots wird <strong>erweitert<\/strong> durch das Abrufen der relevantesten, aktuellen Kontextinformationen aus unserer Wissensbasis.<\/p>\n<hr \/>\n<h3>Die Architektur-Elemente: Die Notwendigen Bausteine<\/h3>\n<p>Der Aufbau eines ma\u00dfgeschneiderten, wissensbasierten Chatbots erfordert die Integration von drei Kernkomponenten.<\/p>\n<h4>1. Das Chat-Modell (LLM)<\/h4>\n<p>Zuerst ben\u00f6tigen wir ein <strong>generisches LLM<\/strong>. Das kann ein etablierter Dienstleister (wie ChatGPT), ein selbst gehostetes Modell \u00fcber Plattformen wie <strong>Ollama<\/strong> oder ein anderer LLM-Anbieter sein.<\/p>\n<p><strong>Die Anforderung:<\/strong> Wir ben\u00f6tigen eine <strong>API<\/strong>, um <strong>programmgesteuert<\/strong> auf die Chat-Vervollst\u00e4ndigungsfunktion zugreifen zu k\u00f6nnen. Bibliotheken wie <strong>LangChain<\/strong> f\u00fcr Python bieten bereits eine <strong>vereinheitlichte Schnittstelle<\/strong> an. Das erleichtert das Experimentieren mit verschiedenen Modellen <em>(und uns das Leben, weil wir den Code nicht st\u00e4ndig umschreiben m\u00fcssen)<\/em>.<\/p>\n<h4>2. Das Embedding-Modell<\/h4>\n<p>Als N\u00e4chstes ben\u00f6tigen wir ein <strong>Embedding-Modell<\/strong>, um <strong>Vektor-Embeddings<\/strong> zu erstellen. <em>(Hier wird es technisch, aber h\u00f6ren Sie mir kurz zu, das ist der Schl\u00fcssel zur intelligenten Suche.)<\/em><\/p>\n<p>Wenn ein LLM Text verarbeitet, wird dieser in diskrete Teile, sogenannte <strong>Token<\/strong>, zerlegt. Das Embedding-Modell transformiert diese Token weiter in einen <strong>Vektor<\/strong>. Ein Vektor ist im Grunde eine Menge von Koordinaten, die einen Punkt im sogenannten <strong>latenten Raum<\/strong> definieren.<\/p>\n<p><strong>Analogie:<\/strong> Das ist vergleichbar mit der Verwendung von L\u00e4ngen- und Breitengrad, um einen Punkt auf der Erde zu bestimmen. Der Punkt in diesem &#8222;seltsamen Raum&#8220; ist wichtig, weil wir jetzt die <strong>Entfernung<\/strong> und damit die <strong>\u00c4hnlichkeit<\/strong> berechnen k\u00f6nnen. <strong>Je n\u00e4her zwei Vektoren beieinander liegen, desto \u00e4hnlicher sind die Bedeutungen der urspr\u00fcnglichen Texte.<\/strong><\/p>\n<p>Genau diese <strong>Vektor-Embeddings<\/strong> nutzen wir, um unsere Datenbank abzufragen und die am besten passenden \u00dcbereinstimmungen zu erhalten. <em>(Anmerkung: Oft wird ein Chat-Modell zusammen mit einem Embedding-Modell geliefert, aber die Wahl eines dedizierten Modells f\u00fcr das Vektor-Embedding ist problemlos m\u00f6glich und oft sinnvoll.)<\/em><\/p>\n<h4>3. Der Vektor-Speicher (Vector Store)<\/h4>\n<p>Das dritte ben\u00f6tigte Element ist der <strong>Vector Store<\/strong>. Das ist die Datenbank, die die <strong>Informationsst\u00fccke<\/strong> unserer Wissensbasis zusammen mit ihrem <strong>Vektor-Embedding<\/strong> speichert.<\/p>\n<p><strong>Funktionsweise:<\/strong> Wenn der Benutzer eine Frage stellt, berechnen wir zuerst das <strong>Vektor-Embedding<\/strong> dieser Frage. Anschlie\u00dfend f\u00fchren wir eine <strong>\u00c4hnlichkeitssuche<\/strong> durch, um die \u00e4hnlichsten Vektoren und ihre zugeh\u00f6rigen <strong>Textst\u00fccke<\/strong> aus der Datenbank abzurufen. Diese abgerufenen Texte bilden den <strong>Kontext<\/strong> f\u00fcr die Chatbot-Antwort.<\/p>\n<p>Heutzutage unterst\u00fctzen viele <strong>Allzweck-Datenbanken<\/strong> Vektor-Speicherfunktionen, wie z.B. <strong>Redis<\/strong>, <strong>Postgres<\/strong> \u00fcber PGVector oder <strong>MongoDB Atlas Vector Search<\/strong>. Dar\u00fcber hinaus gibt es nat\u00fcrlich spezialisierte Datenbanksysteme. <em>(Eine Liste der verf\u00fcgbaren Vector Stores ist leicht auffindbar.)<\/em><\/p>\n<hr \/>\n<h3>Bef\u00fcllen und Erweitern: Der RAG-Workflow<\/h3>\n<h4>Die Wissensbasis Vorbereiten (Ingestion)<\/h4>\n<p>Man k\u00f6nnte sich naiv fragen: Warum nicht einfach die gesamte Wissensbasis an das LLM \u00fcbergeben?<\/p>\n<p>Die Antwort ist zweigeteilt:<\/p>\n<ol>\n<li><strong>Kontextfenster-Limit:<\/strong> Wir k\u00f6nnen dem LLM nicht beliebig gro\u00dfe Eingabetexte \u00fcbergeben.<\/li>\n<li><strong>Kosten:<\/strong> Die Begrenzung des Inputs spart <strong>erhebliche Rechenkosten<\/strong>. Der Betrieb von LLMs ist <strong>kein billiges Unterfangen<\/strong>.<\/li>\n<\/ol>\n<p><strong>Die L\u00f6sung:<\/strong> Wir m\u00fcssen den Text verarbeiten. Wir <strong>zerkleinern<\/strong> ihn in kleinere, <strong>sich \u00fcberlappende St\u00fccke<\/strong>.<\/p>\n<p>F\u00fcr jedes St\u00fcck berechnen wir das <strong>Vektor-Embedding<\/strong> und f\u00fcgen das folgende <strong>Tripel-Daten-Set<\/strong> in den Vektor-Speicher ein:<\/p>\n<ul>\n<li><strong>Vektor-Embedding:<\/strong> F\u00fcr das Abrufen durch \u00c4hnlichkeitssuche.<\/li>\n<li><strong>Textst\u00fcck:<\/strong> Bildet den Kontext der Chatbot-Antwort.<\/li>\n<li><strong>Speicherort der Quelldatei:<\/strong> Wird verwendet, falls die Datei aktualisiert wird und Teile des Vektor-Speichers neu berechnet werden m\u00fcssen (Maintenance).<\/li>\n<\/ul>\n<h4>Den Chatbot Erweitern (Retrieval-Augmented Generation)<\/h4>\n<p>Eine Konversation ist eine Liste von Nachrichten. Wenn der Benutzer eine Nachricht sendet, wird die gesamte Konversation normalerweise zur Auswertung an den Chatbot \u00fcbergeben.<\/p>\n<p><strong>Der RAG-Schritt:<\/strong> Bevor diese Konversation dem LLM zugef\u00fchrt wird, wird die Benutzeranfrage durch das <strong>Abrufen<\/strong> der relevantesten Textst\u00fccke aus dem Vektor-Speicher <strong>erweitert<\/strong>.<\/p>\n<p>Der resultierende <strong>erweiterte Prompt<\/strong> sieht wie folgt aus \u2013 er enth\u00e4lt die urspr\u00fcngliche Benutzeranfrage und den abgerufenen Kontext:<\/p>\n<blockquote>\n<p><em>Du bist ein hilfreicher Chatbot, der die gegebenen Kontextst\u00fccke verwendet, um eine Antwort auf die folgende Frage zu formulieren. Wenn Du die Antwort nicht wei\u00dft, gib einfach zu es nicht wissen. Halte die Antwort kurz, verwende maximal drei Abs\u00e4tze. Frage: {question} Kontext: {context} Antwort:<\/em><\/p>\n<\/blockquote>\n<p>Schlie\u00dflich f\u00fcttern wir die <strong>erweiterte Konversation<\/strong> in das zugrundeliegende LLM und geben die Antwort an den Benutzer zur\u00fcck.<\/p>\n<hr \/>\n<h3>Letzte Gedanken: Tuning und Strategie<\/h3>\n<p>Wie Sie sehen, ist der Bau eines eigenen RAGs <strong>architektonisch nicht \u00fcberm\u00e4\u00dfig kompliziert<\/strong>. Die eigentliche Arbeit liegt im <strong>Feintuning<\/strong> <em>(und das ist der Teil, der uns Entwicklern wirklich Spa\u00df macht, aber oft untersch\u00e4tzt wird)<\/em>.<\/p>\n<p>Wir m\u00fcssen an vielen Stellen experimentieren, um die <strong>optimale Performance<\/strong> zu erreichen:<\/p>\n<ul>\n<li><strong>Chunk-Gr\u00f6\u00dfe:<\/strong> Wie gro\u00df sollten die abgerufenen Textabschnitte sein?<\/li>\n<li><strong>Abrufmenge:<\/strong> Wie viele Abschnitte (K) sollten in den Kontext aufgenommen werden?<\/li>\n<li><strong>Prompt Engineering:<\/strong> Was ist der beste erweiterte Prompt f\u00fcr unseren spezifischen Zweck?<\/li>\n<li><strong>Modellwahl:<\/strong> Welchen Effekt hat die Verwendung eines anderen Chat- oder Embedding-Modells?<\/li>\n<li><strong>Organisation:<\/strong> Erhalte ich bessere Ergebnisse, wenn ich die Wissensbasis anders organisiere?<\/li>\n<li><strong>Referenzierung:<\/strong> Kann ich die Information \u00fcber den Speicherort der Quelldatei zum Kontext hinzuf\u00fcgen, damit der Chatbot auch auf die Quelle seiner Informationen verweisen kann?<\/li>\n<\/ul>\n<p>RAGs haben das Potenzial, als <strong>intelligente Suchmaschinen<\/strong> f\u00fcr das Wissen unseres Unternehmens zu fungieren, Prozesse zu optimieren und neue Anwendungsf\u00e4lle zu realisieren. Es gibt keinen Grund, diese Technologie nicht sofort zu erproben.<\/p>","protected":false},"excerpt":{"rendered":"<p>In der heutigen IT-Landschaft ist die F\u00e4higkeit von Large Language Models (LLMs) unbestritten. Das Problem ist jedoch die Aktualit\u00e4t des Wissens. Da das zugrundeliegende Modell (LLM) mit statischen Daten trainiert wird, m\u00fcssten wir es bei jeder \u00c4nderung unserer internen Dokumentation neu trainieren. Das ist \u00f6konomisch nicht tragbar. Die strategische Architektur zur L\u00f6sung dieses Problems ist [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[41],"tags":[],"class_list":["post-1005","post","type-post","status-publish","format-standard","hentry","category-erfahrungen"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen - Looped Learning<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen - Looped Learning\" \/>\n<meta property=\"og:description\" content=\"In der heutigen IT-Landschaft ist die F\u00e4higkeit von Large Language Models (LLMs) unbestritten. Das Problem ist jedoch die Aktualit\u00e4t des Wissens. Da das zugrundeliegende Modell (LLM) mit statischen Daten trainiert wird, m\u00fcssten wir es bei jeder \u00c4nderung unserer internen Dokumentation neu trainieren. Das ist \u00f6konomisch nicht tragbar. Die strategische Architektur zur L\u00f6sung dieses Problems ist [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/\" \/>\n<meta property=\"og:site_name\" content=\"Looped Learning\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-22T09:01:44+00:00\" \/>\n<meta name=\"author\" content=\"Kevin Heusinger\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kevin Heusinger\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/\",\"url\":\"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/\",\"name\":\"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen - Looped Learning\",\"isPartOf\":{\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/#website\"},\"datePublished\":\"2025-11-22T09:01:44+00:00\",\"author\":{\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/#\/schema\/person\/d05f6ec3af9fdb4eb51b5aac1f9e91cf\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/www.kehrwasser.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/#website\",\"url\":\"https:\/\/www.kehrwasser.com\/blog\/\",\"name\":\"Looped Learning\",\"description\":\"#innovation, #ki, #newWork, #agile, #validatedLearning\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.kehrwasser.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/#\/schema\/person\/d05f6ec3af9fdb4eb51b5aac1f9e91cf\",\"name\":\"Kevin Heusinger\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/www.kehrwasser.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/99ba53c67cb33396656b9736e215b87b954fd3c27c0e38ddc100f885da526bfb?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/99ba53c67cb33396656b9736e215b87b954fd3c27c0e38ddc100f885da526bfb?s=96&d=mm&r=g\",\"caption\":\"Kevin Heusinger\"},\"sameAs\":[\"https:\/\/www.kehrwasser.com\"],\"url\":\"https:\/\/www.kehrwasser.com\/blog\/author\/kw-kevin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen - Looped Learning","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/","og_locale":"de_DE","og_type":"article","og_title":"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen - Looped Learning","og_description":"In der heutigen IT-Landschaft ist die F\u00e4higkeit von Large Language Models (LLMs) unbestritten. Das Problem ist jedoch die Aktualit\u00e4t des Wissens. Da das zugrundeliegende Modell (LLM) mit statischen Daten trainiert wird, m\u00fcssten wir es bei jeder \u00c4nderung unserer internen Dokumentation neu trainieren. Das ist \u00f6konomisch nicht tragbar. Die strategische Architektur zur L\u00f6sung dieses Problems ist [&hellip;]","og_url":"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/","og_site_name":"Looped Learning","article_published_time":"2025-11-22T09:01:44+00:00","author":"Kevin Heusinger","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Kevin Heusinger"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/","url":"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/","name":"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen - Looped Learning","isPartOf":{"@id":"https:\/\/www.kehrwasser.com\/blog\/#website"},"datePublished":"2025-11-22T09:01:44+00:00","author":{"@id":"https:\/\/www.kehrwasser.com\/blog\/#\/schema\/person\/d05f6ec3af9fdb4eb51b5aac1f9e91cf"},"breadcrumb":{"@id":"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.kehrwasser.com\/blog\/2025\/11\/22\/rag-die-notwendige-erklaerung-fuer-dynamisches-unternehmenswissen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/www.kehrwasser.com\/blog\/"},{"@type":"ListItem","position":2,"name":"RAG: Die Notwendige Erkl\u00e4rung f\u00fcr Dynamisches Unternehmenswissen"}]},{"@type":"WebSite","@id":"https:\/\/www.kehrwasser.com\/blog\/#website","url":"https:\/\/www.kehrwasser.com\/blog\/","name":"Looped Learning","description":"#innovation, #ki, #newWork, #agile, #validatedLearning","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.kehrwasser.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Person","@id":"https:\/\/www.kehrwasser.com\/blog\/#\/schema\/person\/d05f6ec3af9fdb4eb51b5aac1f9e91cf","name":"Kevin Heusinger","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/www.kehrwasser.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/99ba53c67cb33396656b9736e215b87b954fd3c27c0e38ddc100f885da526bfb?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/99ba53c67cb33396656b9736e215b87b954fd3c27c0e38ddc100f885da526bfb?s=96&d=mm&r=g","caption":"Kevin Heusinger"},"sameAs":["https:\/\/www.kehrwasser.com"],"url":"https:\/\/www.kehrwasser.com\/blog\/author\/kw-kevin\/"}]}},"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/posts\/1005","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/comments?post=1005"}],"version-history":[{"count":1,"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/posts\/1005\/revisions"}],"predecessor-version":[{"id":1006,"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/posts\/1005\/revisions\/1006"}],"wp:attachment":[{"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/media?parent=1005"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/categories?post=1005"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kehrwasser.com\/blog\/wp-json\/wp\/v2\/tags?post=1005"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}