{"id":1027,"date":"2025-06-03T18:43:00","date_gmt":"2025-06-03T18:43:00","guid":{"rendered":"https:\/\/anwi.gmbh\/?p=1027"},"modified":"2025-06-06T09:39:40","modified_gmt":"2025-06-06T09:39:40","slug":"aufbau-eines-ki-assistenten-mit-fokus-auf-datenschutz","status":"publish","type":"post","link":"https:\/\/anwi.gmbh\/?p=1027&lang=de","title":{"rendered":"Aufbau eines KI-Assistenten mit Fokus auf Datenschutz"},"content":{"rendered":"<p> <b>Ich habe mit einem Problem gerungen, das mich nachts wach h\u00e4lt: Wie kann ich leistungsstarke KI-Tools nutzen, ohne meine sensibelsten Daten an Tech-Giganten auszuliefern?<\/b> Je mehr ich ChatGPT, Claude und andere Cloud-KI-Dienste nutzte, desto unbehaglicher wurde mir. Jedes Dokument, das ich hochlud, wurde auf den Servern von jemand anderem verarbeitet. <\/p>\n<div id=\"org581c4d2\" class=\"figure\">\n<p><img decoding=\"async\" src=\"https:\/\/anwi.gmbh\/wp-content\/uploads\/2025\/06\/2025-06-03_18-52-39_private-ai_illustration-1.png\" alt=\"2025-06-03_18-52-39_private-ai_illustration.png\" width=\"600px\" \/> <\/p>\n<\/p><\/div>\n<div id=\"outline-container-org544d2a7\" class=\"outline-2\">\n<h2 id=\"org544d2a7\">Motivation: Warum ich die Kontrolle zur\u00fcckerobern musste<\/h2>\n<div class=\"outline-text-2\" id=\"text-org544d2a7\">\n<p> Dieses ganze Projekt begann aus Frustration. Ich arbeitete an vertraulichen Gesch\u00e4ftsdokumenten und stellte fest, dass ich keines der KI-Tools verwenden konnte, auf die ich mich verlassen hatte. Die Abh\u00e4ngigkeit von einem bestimmten Anbieter wurde zu einem echten Problem &#8211; jeder Anbieter hatte seine eigene API, seine eigenen Preise und seine eigenen Einschr\u00e4nkungen. Ich f\u00fchlte mich gefangen, und meine monatlichen KI-Rechnungen stiegen immer weiter an. <\/p>\n<p> Ich begann zu \u00fcberlegen: Was w\u00e4re, wenn es eine M\u00f6glichkeit g\u00e4be, das Beste aus beiden Welten zu bekommen? Ich k\u00f6nnte die leistungsstarken KI-Funktionen behalten, aber alles \u00fcber meine eigene Infrastruktur laufen lassen. Da entdeckte ich LibreChat und beschloss, etwas zu entwickeln, das mir die volle Kontrolle geben w\u00fcrde &#8211; und eine Vorlage zu schaffen, der andere Unternehmen mit \u00e4hnlichen Herausforderungen folgen k\u00f6nnten. <\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-org5cea4e2\" class=\"outline-2\">\n<h2 id=\"org5cea4e2\">Was ich gebaut habe: Eine Blaupause f\u00fcr private KI<\/h2>\n<div class=\"outline-text-2\" id=\"text-org5cea4e2\">\n<p> Das Private-AI Projekt wurde meine Antwort auf dieses Dilemma. Ich habe ein selbstgehostetes LibreChat-Setup auf AWS eingerichtet, das mir Zugriff auf mehrere KI-Modelle bietet und gleichzeitig die Daten unter meiner Kontrolle h\u00e4lt. <a href=\"https:\/\/github.com\/danny-avila\/LibreChat\">LibreChat<\/a> ist ein ziemlich cooles Open-Source-Projekt, eine Chat-Plattform im Stil von ChatGPT mit einer ausgereiften, professionellen Basis, die vollen Datenschutz und umfassende Konfigurierbarkeit erm\u00f6glicht. <\/p>\n<p> Was als pers\u00f6nliche L\u00f6sung begann, wurde schnell zu etwas Gr\u00f6\u00dferem &#8211; ein reproduzierbarer Entwurf f\u00fcr jedes Unternehmen, das mit den gleichen Kompromissen zwischen Datenschutz und Leistungsf\u00e4higkeit zu k\u00e4mpfen hat. <\/p>\n<p> Das ist mein Ergebnis: LibreChat, ein innovatives Open-Source-Projekt, das eine Webschnittstelle bietet, die mit ChatGPT konkurriert, aber auf einem eigenen Server l\u00e4uft. Mit dieser konkurrenzf\u00e4higen Alternative kann man nahtlos zwischen lokalen Modellen, Cloud-Modellen von AWS Bedrock und \u00f6ffentlichen KI-Anbietern wie Antrophic oder OpenAi wechseln. Wenn man mit sensiblen Dokumenten arbeiten, bleibt alles lokal. Wenn man die Leistung von Claude oder GPT-4 ben\u00f6tigt, kann man auch diese nutzen. <\/p>\n<p> Die Einrichtung umfasst eine Dokumentenverarbeitung, bei der man PDFs hochladen und mit ihnen chatten k\u00f6nnen, ohne dass die Dateien jemals den eingenen Server verlassen. Alles l\u00e4uft in Docker-Containern mit entsprechender Benutzerverwaltung &#8211; perfekt f\u00fcr Teams, die zusammenarbeiten und gleichzeitig die Datenhoheit behalten m\u00fcssen. <\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-org86f6311\" class=\"outline-2\">\n<h2 id=\"org86f6311\">Die Schnittstelle: Wie es tats\u00e4chlich aussieht<\/h2>\n<div class=\"outline-text-2\" id=\"text-org86f6311\">\n<p> LibreChat bietet mir eine saubere, vertraute Oberfl\u00e4che, die sich genauso anf\u00fchlt wie die von ChatGPT oder Claude. Ich kann verschiedene KI-Modelle aus einer Dropdown-Liste ausw\u00e4hlen, benutzerdefinierte Agenten mit spezifischen Pers\u00f6nlichkeiten erstellen und alle meine Unterhaltungen an einem Ort verwalten. <\/p>\n<div id=\"orgf17b1a6\" class=\"figure\">\n<p><img decoding=\"async\" src=\"https:\/\/anwi.gmbh\/wp-content\/uploads\/2025\/06\/2025-06-03_18-34-27_LibreChatUI-1.png\" alt=\"2025-06-03_18-34-27_LibreChatUI.png\" width=\"600px\" \/> <\/p>\n<\/p><\/div>\n<p> Was ich am meisten liebe, ist die Flexibilit\u00e4t. Morgens verwende ich vielleicht ein lokales Ollama-Modell f\u00fcr das Brainstorming (wobei alles privat bleibt), dann wechsle ich zu Claude f\u00fcr komplexe Analysen und dann wieder zu einem lokalen Modell f\u00fcr die Dokumentenverarbeitung. Die Schnittstelle macht das nahtlos. <\/p>\n<p> Die Funktion zum Hochladen von Dokumenten war f\u00fcr mich ein gro\u00dfer Fortschritt. Ich kann PDFs per Drag &amp; Drop hochladen, und das System erstellt die Einbettungen lokal auf meinem Server. Dann kann ich Fragen zum Inhalt stellen, ohne dass das Dokument jemals mit externen Servern in Ber\u00fchrung kommt. Das war genau das, was ich f\u00fcr die Arbeit mit vertraulichen Materialien brauchte. <\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-org6a6b66e\" class=\"outline-2\">\n<h2 id=\"org6a6b66e\">Die technische Einrichtung: Einfacher, als man denkt<\/h2>\n<div class=\"outline-text-2\" id=\"text-org6a6b66e\">\n<p> Ich habe dieses Projekt auf AWS mit einer ziemlich einfachen Architektur aufgebaut. Alles l\u00e4uft in Docker-Containern auf einer einzigen EC2-Instanz, was die Verwaltung viel einfacher macht, als ich anfangs dachte. <\/p>\n<div id=\"orgb545952\" class=\"figure\">\n<p><img decoding=\"async\" src=\"https:\/\/anwi.gmbh\/wp-content\/uploads\/2025\/06\/2025-06-03_18-35-14_aws-architecture-1.png\" alt=\"2025-06-03_18-35-14_aws-architecture.png\" width=\"600px\" \/> <\/p>\n<\/p><\/div>\n<p> Die AWS-Einrichtung ist sauber &#8211; eine EC2-Instanz mit den richtigen Sicherheitsgruppen, eine elastische IP, damit sich die Adresse nicht \u00e4ndert, und IAM-Rollen, die den Server mit AWS Bedrock-Modellen kommunizieren lassen. Anfangs habe ich viel zu viel Zeit damit verbracht, die Vernetzung zu kompliziert zu gestalten, aber der einfache Ansatz hat am besten funktioniert. <\/p>\n<div id=\"org6169058\" class=\"figure\">\n<p><img decoding=\"async\" src=\"https:\/\/anwi.gmbh\/wp-content\/uploads\/2025\/06\/2025-06-03_18-36-15_docker-architecture-1.png\" alt=\"2025-06-03_18-36-15_docker-architecture.png\" width=\"600px\" \/> <\/p>\n<\/p><\/div>\n<p> Auf dem Docker-Setup l\u00e4uft LibreChat als Hauptanwendung, MongoDB zum Speichern von Konversationen und nginx als Reverse-Proxy mit SSL. Wenn ich lokale KI-Modelle verwenden m\u00f6chte, f\u00fcge ich Ollama-Container hinzu, die die GPU nutzen k\u00f6nnen. Alles kommuniziert miteinander \u00fcber Docker-Netzwerke, was f\u00fcr Sicherheit und Ordnung sorgt. <\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-org1ba24bc\" class=\"outline-2\">\n<h2 id=\"org1ba24bc\">Aufstocken: Aus meinen Fehlern lernen<\/h2>\n<div class=\"outline-text-2\" id=\"text-org1ba24bc\">\n<p> Eine meiner wichtigsten Lektionen war die Dimensionierung der Server. Ich begann mit einer winzigen `t3.medium`-Instanz und dachte, das w\u00fcrde reichen. Falsch gedacht. Sobald ich versuchte, lokale KI-Modelle auszuf\u00fchren, kam alles zum Stillstand. <\/p>\n<table border=\"2\" cellspacing=\"0\" cellpadding=\"6\" rules=\"groups\" frame=\"hsides\">\n<colgroup>\n<col  class=\"org-left\" \/>\n<col  class=\"org-right\" \/>\n<col  class=\"org-left\" \/>\n<col  class=\"org-left\" \/>\n<col  class=\"org-left\" \/>\n<\/colgroup>\n<thead>\n<tr>\n<th scope=\"col\" class=\"org-left\">Instanztyp<\/th>\n<th scope=\"col\" class=\"org-right\">vCPUs<\/th>\n<th scope=\"col\" class=\"org-left\">Speicher<\/th>\n<th scope=\"col\" class=\"org-left\">GPU<\/th>\n<th scope=\"col\" class=\"org-left\">Wof\u00fcr ich es benutzte<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td class=\"org-left\"><b><b>t3.medium<\/b><\/b><\/td>\n<td class=\"org-right\">2<\/td>\n<td class=\"org-left\">4 GB<\/td>\n<td class=\"org-left\">Keine<\/td>\n<td class=\"org-left\">Einfache Tests, nur Cloud-Modelle<\/td>\n<\/tr>\n<tr>\n<td class=\"org-left\"><b><b>g4dn.xlarge<\/b><\/b><\/td>\n<td class=\"org-right\">4<\/td>\n<td class=\"org-left\">16 GB<\/td>\n<td class=\"org-left\">NVIDIA T4 (16 GB)<\/td>\n<td class=\"org-left\">Lokale Modelle, Dokumentenverarbeitung<\/td>\n<\/tr>\n<tr>\n<td class=\"org-left\"><b><b>g6.12xlarge<\/b><\/b><\/td>\n<td class=\"org-right\">48<\/td>\n<td class=\"org-left\">192 GB<\/td>\n<td class=\"org-left\">4x NVIDIA L4 (96 GB insgesamt)<\/td>\n<td class=\"org-left\">Hohe Arbeitslast, mehrere Benutzer<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p> Die \u201et3.medium\u201c war f\u00fcr die Weboberfl\u00e4che und die Verwendung von Cloud-Modellen gut geeignet, aber vergessen Sie alles, was lokal ausgef\u00fchrt wird. Als ich auf `g4dn.xlarge` mit einer GPU aufr\u00fcstete, konnte ich pl\u00f6tzlich kleine Sprachmodelle ausf\u00fchren und Dokumente lokal verarbeiten. Das war ein Unterschied wie Tag und Nacht. <\/p>\n<p> F\u00fcr die letzte Testphase habe ich mir eine Instanz von \u201eg6.12xlarge\u201c zugelegt. Dieses Unget\u00fcm konnte mehrere gro\u00dfe Modelle gleichzeitig verarbeiten und f\u00fchlte sich an wie eine richtige KI-Workstation in der Cloud. Die Kosten haben mich zu Tr\u00e4nen ger\u00fchrt, aber f\u00fcr ernsthafte Arbeit ist es das wert. <\/p>\n<p> Mein Rat: Fangen Sie klein an, um alles zu testen, und erh\u00f6hen Sie dann die Gr\u00f6\u00dfe, je nachdem, was Sie tats\u00e4chlich brauchen. Das Sch\u00f6ne an diesem Ansatz ist, dass das Upgrade nur ein paar Terraform-Befehle erfordert. <\/p>\n<p> Der Umstieg auf die g6.12xlarge war wie der Wechsel von einem Fahrrad zu einem Ferrari. Vier NVIDIA L4-GPUs mit 96 GB Videospeicher bedeuteten, dass ich mehrere gro\u00dfe Modelle gleichzeitig ausf\u00fchren konnte, ohne ins Schwitzen zu kommen. Pl\u00f6tzlich konnte ich Modelle in der Gr\u00f6\u00dfe von Claude lokal laufen lassen und gleichzeitig mehrere Benutzer bedienen. <\/p>\n<p> Was die Leistung angeht, habe ich Folgendes gelernt: Die kleine t3.medium eignet sich hervorragend zum Testen der Weboberfl\u00e4che und zum Ausprobieren von Cloud-Modellen, aber denken Sie nicht einmal an lokale KI. Das g4dn.xlarge ist der ideale Ort f\u00fcr den Einstieg in lokale Modelle &#8211; ich konnte 7B-Parameter-Modelle ziemlich reibungslos ausf\u00fchren. Aber wenn Sie die wirklich gro\u00dfen Modelle (13B+) mit anst\u00e4ndiger Geschwindigkeit ausf\u00fchren wollen, brauchen Sie etwas wie das g6.12xlarge. <\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-orge4e59ad\" class=\"outline-2\">\n<h2 id=\"orge4e59ad\">Live-Skripting: Eine Dokumentation, die wirklich funktioniert<\/h2>\n<div class=\"outline-text-2\" id=\"text-orge4e59ad\">\n<p> Hier ist etwas, das mich wirklich begeistert &#8211; die Art und Weise, wie ich dieses gesamte Projekt dokumentiert habe. Ich habe das so genannte Live-Scripting verwendet, einen dokumentationsorientierten Arbeitsstil, den ich vor Jahren erfunden und in vielen Kundenprojekten eingesetzt habe. Dabei wird ein Dokument erstellt, in dem jeder einzelne Befehl direkt ausgef\u00fchrt werden kann. Keine Tutorials mehr, nur um dann festzustellen, dass Schritt 3 nicht mehr funktioniert. <\/p>\n<p> Ich habe alles in Emacs-Org-Mode geschrieben, wodurch ich ausf\u00fchrbare Codebl\u00f6cke direkt in die Dokumentation einbetten kann. Wenn ich das Projekt durcharbeite, kann ich buchst\u00e4blich jeden Befehl durch Dr\u00fccken von F4 ausf\u00fchren. Aber auch wenn jemand nicht mit Emacs arbeitet, kann er jeden Befehl kopieren und einf\u00fcgen und er wird genau so funktionieren, wie er geschrieben wurde. <\/p>\n<p> Dieser Ansatz hat mir unz\u00e4hlige Stunden der Fehlersuche in veralteten Anweisungen erspart. Herk\u00f6mmliche Dokumentation ist schnell veraltet &#8211; APIs \u00e4ndern sich, Softwareversionen werden aktualisiert, und pl\u00f6tzlich funktioniert nichts mehr. Mit Live-Scripting bleibt meine Dokumentation auf dem neuesten Stand, denn ich teste sie jedes Mal, wenn ich sie verwende. <\/p>\n<p> Die gesamte Implementierung ist in sieben klare Phasen unterteilt, von der Einrichtung der grundlegenden Infrastruktur bis zum Hinzuf\u00fcgen fortgeschrittener KI-Funktionen. Zu jedem Schritt geh\u00f6ren sowohl die auszuf\u00fchrenden Befehle als auch Erkl\u00e4rungen, was passiert und warum. Es ist, als w\u00fcrde mich ein sachkundiger Kollege durch den Prozess f\u00fchren. <\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-orga510bf6\" class=\"outline-2\">\n<h2 id=\"orga510bf6\">Fazit: Endlich KI nach meinen Vorstellungen<\/h2>\n<div class=\"outline-text-2\" id=\"text-orga510bf6\">\n<p> Die Entwicklung dieses privaten KI-Assistenten l\u00f6ste nicht nur mein unmittelbares Problem, sondern wurde zu etwas Gr\u00f6\u00dferem &#8211; zu einer bew\u00e4hrten Blaupause, der jedes Unternehmen folgen kann. Was als pers\u00f6nliche Frustration begann, wurde zu einer reproduzierbaren Implementierungsstrategie f\u00fcr Unternehmen, die mit dem gleichen Dilemma zwischen Privatsph\u00e4re und Leistungsf\u00e4higkeit konfrontiert sind. <\/p>\n<p> Und das Beste daran? Die Unternehmen m\u00fcssen sich nicht mehr entscheiden. Sensible Arbeiten bleiben auf lokalen Modellen, komplexe Analysen k\u00f6nnen bei Bedarf weiterhin auf Cloud-KI zur\u00fcckgreifen &#8211; aber es ist Ihre Infrastruktur, Ihre Entscheidung, Ihre Kontrolle. <\/p>\n<p> Die Live-Skripting-Dokumentation macht es sehr einfache,  diese Blaupause zu teilen. Jeder Befehl funktioniert genau so, wie er geschrieben wurde, was bedeutet, dass andere Teams diese L\u00f6sung ohne die \u00fcblichen Bereitstellungsprobleme einsetzen k\u00f6nnen. <\/p>\n<p> F\u00fcr Unternehmen, die leistungsstarke KI w\u00fcnschen, ohne die Datenhoheit aufzugeben, ist dieser Ansatz genau richtig. Die Technologie ist endlich an einem Punkt angelangt, an dem eine eigene KI nicht nur f\u00fcr Tech-Giganten m\u00f6glich ist, sondern f\u00fcr jedes Unternehmen, das bereit ist, in die Unabh\u00e4ngigkeit seiner Daten zu investieren. <\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-org65abd6d\" class=\"outline-2\">\n<h2 id=\"org65abd6d\">Ressourcen und Links<\/h2>\n<div class=\"outline-text-2\" id=\"text-org65abd6d\">\n<\/div>\n<div id=\"outline-container-orgc67e6d6\" class=\"outline-3\">\n<h3 id=\"orgc67e6d6\">Projektdokumentation<\/h3>\n<div class=\"outline-text-3\" id=\"text-orgc67e6d6\">\n<ul class=\"org-ul\">\n<li><b><a href=\"https:\/\/raw.githubusercontent.com\/andreaswittmann\/private-ai\/main\/librechat-aws-deployment.pdf\">Complete Deployment Guide (PDF)<\/a><\/b> &#8211; Die vollst\u00e4ndige Live-Skript-Dokumentation mit allen Befehlen und Erkl\u00e4rungen, die ben\u00f6tigt werden, um dieses Setup von Grund auf einzurichten. Jeder Befehl ist getestet und ausf\u00fchrbar.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div id=\"outline-container-org22d079e\" class=\"outline-3\">\n<h3 id=\"org22d079e\">GitHub-Repositories<\/h3>\n<div class=\"outline-text-3\" id=\"text-org22d079e\">\n<ul class=\"org-ul\">\n<li><b><a href=\"https:\/\/github.com\/andreaswittmann\/private-ai\/tree\/main\">Privates KI-Projekt<\/a><\/b> &#8211; Meine komplette Implementierung einschlie\u00dflich Terraform-Konfigurationen, Docker-Setup und dem gesamten Infrastruktur-Code, der in diesem Einsatz verwendet wird.<\/li>\n<li><b><a href=\"https:\/\/github.com\/danny-avila\/LibreChat\">LibreChat Official Repository<\/a><\/b> &#8211; Das innovative Open-Source-Projekt, das dies alles m\u00f6glich macht. Eine leistungsstarke, ChatGPT-\u00e4hnliche Anwendung, die Sie auf Ihrer eigenen Infrastruktur mit Unterst\u00fctzung f\u00fcr mehrere KI-Anbieter ausf\u00fchren k\u00f6nnen.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Ich habe mit einem Problem gerungen, das mich nachts wach h\u00e4lt: Wie kann ich leistungsstarke KI-Tools nutzen, ohne meine sensibelsten Daten an Tech-Giganten auszuliefern? Je mehr ich ChatGPT, Claude und andere Cloud-KI-Dienste nutzte, desto unbehaglicher wurde mir. Jedes Dokument, das ich hochlud, wurde auf den Servern von jemand anderem verarbeitet. Motivation: Warum ich die Kontrolle &hellip; <a href=\"https:\/\/anwi.gmbh\/?p=1027&#038;lang=de\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eAufbau eines KI-Assistenten mit Fokus auf Datenschutz\u201c<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[1],"tags":[],"series":[],"class_list":["post-1027","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/anwi.gmbh\/index.php?rest_route=\/wp\/v2\/posts\/1027","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/anwi.gmbh\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/anwi.gmbh\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/anwi.gmbh\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/anwi.gmbh\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1027"}],"version-history":[{"count":4,"href":"https:\/\/anwi.gmbh\/index.php?rest_route=\/wp\/v2\/posts\/1027\/revisions"}],"predecessor-version":[{"id":1038,"href":"https:\/\/anwi.gmbh\/index.php?rest_route=\/wp\/v2\/posts\/1027\/revisions\/1038"}],"wp:attachment":[{"href":"https:\/\/anwi.gmbh\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1027"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/anwi.gmbh\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1027"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/anwi.gmbh\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1027"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/anwi.gmbh\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=1027"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}