{"id":4159,"date":"2025-02-26T17:44:38","date_gmt":"2025-02-26T16:44:38","guid":{"rendered":"https:\/\/vielhuber.de\/?p=4159"},"modified":"2025-03-02T19:56:23","modified_gmt":"2025-03-02T18:56:23","slug":"large-language-model-selbst-bauen","status":"publish","type":"post","link":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/","title":{"rendered":"Large Language Model selbst bauen"},"content":{"rendered":"\n<p><em>\"Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.\"<\/em> \u2013 Alan Turing. Moderne KI-Modelle wie <a href=\"https:\/\/openai.com\/index\/gpt-4\" target=\"_blank\" rel=\"noreferrer noopener\">GPT-4<\/a> oder <a href=\"https:\/\/www.llama.com\" target=\"_blank\" rel=\"noreferrer noopener\">Llama<\/a> basieren auf riesigen Datens\u00e4tzen und komplexen mathematischen Strukturen. Doch was steckt wirklich dahinter? In diesem Artikel schauen wir uns die Schl\u00fcsselkomponenten an, die n\u00f6tig sind, um ein Sprachmodell von Grund auf zu bauen.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p>Large Language Models (LLMs) sind neuronale Netzwerke, die mit riesigen Mengen an Text trainiert wurden. Ihre St\u00e4rke liegt in der F\u00e4higkeit, menschen\u00e4hnlichen Text zu generieren, Inhalte zusammenzufassen und Code zu schreiben. Der Kern dieser Modelle ist die <a href=\"https:\/\/de.wikipedia.org\/wiki\/Transformer_%28Maschinelles_Lernen%29\" target=\"_blank\" rel=\"noreferrer noopener\">Transformer-Architektur<\/a>, die es ihnen erm\u00f6glicht, Abh\u00e4ngigkeiten innerhalb von Texten zu erfassen und kontextbezogene Vorhersagen zu treffen.<\/p>\n\n\n\n<p>Durch <a href=\"https:\/\/arxiv.org\/abs\/2004.07320\" target=\"_blank\" rel=\"noreferrer noopener\">quantisierte Gewichte<\/a> wird das Modell besonders schlank komprimiert, wodurch Hardware-H\u00fcrden effektiv \u00fcberwunden werden. <a href=\"https:\/\/arxiv.org\/abs\/1503.02531\" target=\"_blank\" rel=\"noreferrer noopener\">Knowledge Distillation<\/a> reduziert zus\u00e4tzlich die Modellgr\u00f6\u00dfe: Ein gro\u00dfes Modell \u00fcbertr\u00e4gt dabei sein Wissen an eine kompaktere Variante. <a href=\"https:\/\/arxiv.org\/abs\/1803.03635\" target=\"_blank\" rel=\"noreferrer noopener\">Pruning<\/a> entfernt redundante Parameter, was zu einer schlanken, effizienten Architektur f\u00fchrt, ohne dabei auf Genauigkeit verzichten zu m\u00fcssen.<\/p>\n\n\n\n<p>Man kann <a href=\"https:\/\/arxiv.org\/abs\/1810.04805\" target=\"_blank\" rel=\"noreferrer noopener\">Masked Language Modeling<\/a> verwenden, um die semantische Tiefe zu erh\u00f6hen. Das Modell rekonstruiert l\u00fcckenhafte Texte und versteht so branchenspezifische Begriffe. Ebenso kann<strong> <\/strong><a href=\"https:\/\/www.packtpub.com\/en-us\/learning\/how-to-tutorials\/language-modeling-with-deep-learning\/\" target=\"_blank\" rel=\"noreferrer noopener\">Next Word Prediction<\/a> f\u00fcr branchenspezifische Fachsprache genutzt werden. Bevor ein Modell trainiert werden kann, muss der Text durch <a href=\"https:\/\/de.wikipedia.org\/wiki\/Tokenisierung\" target=\"_blank\" rel=\"noreferrer noopener\">Tokenisierung<\/a>, <a href=\"https:\/\/de.wikipedia.org\/wiki\/Worteinbettung\" target=\"_blank\" rel=\"noreferrer noopener\">Embeddings<\/a> und <a href=\"https:\/\/en.wikipedia.org\/wiki\/Byte_pair_encoding\" target=\"_blank\" rel=\"noreferrer noopener\">Byte-Pair-Encoding<\/a> in eine f\u00fcr neuronale Netzwerke verst\u00e4ndliche Form gebracht werden.<\/p>\n\n\n\n<p>Um den Mangel an branchenspezifischen Trainingsdaten auszugleichen, wird auf <a href=\"https:\/\/de.wikipedia.org\/wiki\/Transfer_Learning\" target=\"_blank\" rel=\"noreferrer noopener\">Transfer Learning<\/a> und <a href=\"https:\/\/en.wikipedia.org\/wiki\/Data_augmentation\" target=\"_blank\" rel=\"noreferrer noopener\">k\u00fcnstliche Datenerweiterung<\/a> gesetzt. Schlanke <a href=\"https:\/\/arxiv.org\/abs\/2009.06732\" target=\"_blank\" rel=\"noreferrer noopener\">Feedforward-Module und optimierte Embeddings<\/a> passen sie an die branchenspezifischen Daten an. Ein wesentliches Element von Transformer-Modellen ist der <a href=\"https:\/\/de.wikipedia.org\/wiki\/Transformer_%28Maschinelles_Lernen%29\" target=\"_blank\" rel=\"noreferrer noopener\">Self-Attention-Mechanismus<\/a>. Dabei wird jedes Token in Bezug auf alle anderen Tokens im Satz gewichtet, sodass der Kontext eines Wortes klarer wird.<\/p>\n\n\n\n<p>Zum Beispiel kann ein Satz wie \u201eDie Katze sprang auf den Tisch, weil sie hungrig war\u201c bedeuten, dass \u201esie\u201c die Katze ist. Das Modell erkennt solche Verbindungen, indem es jedem Wort eine <em>Wichtigkeit<\/em> zuweist. So kann es den Zusammenhang besser verstehen. Der Mechanismus erm\u00f6glicht also dem Modell, komplexe Abh\u00e4ngigkeiten und semantische Bedeutungen innerhalb eines Textes zu lernen.<\/p>\n\n\n\n<p>Dabei integrieren vortrainierte Modelle internes Wissen. Diese Kombination erh\u00f6ht die Datendiversit\u00e4t und erm\u00f6glicht trotz begrenzter lokaler Datenmengen eine hohe Modellqualit\u00e4t. Die Leistung der KI-Modelle wird anhand spezifischer Metriken bewertet: <a href=\"https:\/\/en.wikipedia.org\/wiki\/F-score\" target=\"_blank\" rel=\"noreferrer noopener\">Weighted-F1<\/a> und <a href=\"https:\/\/en.wikipedia.org\/wiki\/Perplexity\" target=\"_blank\" rel=\"noreferrer noopener\">Perplexity<\/a> messen die Qualit\u00e4t bei Textverarbeitungsaufgaben, w\u00e4hrend Antwortzeit und Fehlerrate die Praxistauglichkeit transparent darstellen.<\/p>\n\n\n\n<p>Die kontinuierliche Anpassung an dynamische regulatorische Rahmenbedingungen wird durch <a href=\"https:\/\/arxiv.org\/abs\/1901.11227\" target=\"_blank\" rel=\"noreferrer noopener\">Constraint Learning<\/a> erreicht, welches beispielsweise Datenschutzrichtlinien mittels <a href=\"https:\/\/de.wikipedia.org\/wiki\/Differential_Privacy\">Differential Privacy<\/a> direkt in das KI-Modell integriert. Ein anpassungsf\u00e4higes Regelwerk sowie dom\u00e4nenspezifische Fine-Tuning-Prozesse erlauben es, auf neue Regularien flexibel und z\u00fcgig zu reagieren.<\/p>\n\n\n\n<p>Der erste Schritt im Trainingsprozess eines Sprachmodells ist das <a href=\"https:\/\/arxiv.org\/abs\/1810.04805\" target=\"_blank\" rel=\"noreferrer noopener\">Pre-Training<\/a>. Dabei wird das Modell mit riesigen Mengen an unstrukturiertem Text gef\u00fcttert, um allgemeine Sprachmuster, Satzstrukturen und Wortbedeutungen zu erlernen. W\u00e4hrend dieses Prozesses versucht das Modell, die n\u00e4chsten W\u00f6rter in einem Satz vorherzusagen, ohne eine spezielle Aufgabe im Fokus zu haben. Dadurch entsteht eine Art universelles Sprachverst\u00e4ndnis.<\/p>\n\n\n\n<p><a href=\"https:\/\/de.wikipedia.org\/wiki\/Fine-Tuning_(K%C3%BCnstliche_Intelligenz)\" target=\"_blank\" rel=\"noreferrer noopener\">Fine-Tuning<\/a> ist der zweite Schritt, in dem das vortrainierte Modell auf eine bestimmte Aufgabe spezialisiert wird. Dabei wird es mit kleineren, spezifischeren Datens\u00e4tzen trainiert, um zum Beispiel Kundenanfragen zu beantworten, Texte zu klassifizieren oder Zusammenfassungen zu erstellen. Fine-Tuning sorgt daf\u00fcr, dass das Modell pr\u00e4zisere und kontextbezogene Antworten f\u00fcr ein definiertes Anwendungsgebiet liefert.<\/p>\n\n\n\n<p>Das Training eines LLMs erfordert hohe Rechenleistung. Um den Prozess effizienter zu gestalten, k\u00f6nnen verschiedene Optimierungsmethoden eingesetzt werden. So kann man Modellgewichte abspeichern und nachtr\u00e4glich laden oder auch vortrainierte, ver\u00f6ffentlichte Parameter downloaden. Auch nutzt man <a href=\"https:\/\/arxiv.org\/abs\/2106.09685\" target=\"_blank\" rel=\"noreferrer noopener\">LoRA (Low-Rank Adaptation)<\/a> zur Feinabstimmung mit weniger Rechenaufwand.<\/p>\n\n\n\n<p>Zur kontinuierlichen Weiterentwicklung und Anpassung an neue Erkenntnisse und Anforderungen dient eine Online-Learning-Schleife. Diese \u00fcberwacht fortlaufend die Modellleistung, analysiert neue Daten und Nutzerfeedback und passt das Modell bei Bedarf automatisch an. Datenschutz sowie Effizienz werden durch <a href=\"https:\/\/de.wikipedia.org\/wiki\/Differential_Privacy\" target=\"_blank\" rel=\"noreferrer noopener\">Differential Privacy-Techniken<\/a> und das <a href=\"https:\/\/arxiv.org\/abs\/1803.03635\" target=\"_blank\" rel=\"noreferrer noopener\">Entfernen unn\u00f6tiger Verbindungen<\/a> sichergestellt.<\/p>\n\n\n\n<p>Ein eigens programmiertes Python-Script kann ein Sprachmodell effizient trainieren. Es kann auch externe Gewichte eines vortrainierten Modells laden. Dabei wird das Modell f\u00fcr eine bestimmte Aufgabe optimiert, indem es an spezifische Daten angepasst wird. Nach Abschluss des Trainings speichert das Skript die aktualisierten Gewichte, sodass sie f\u00fcr zuk\u00fcnftige Anwendungen bereitstehen.<\/p>\n\n\n\n<p class=\"githubgist\" data-gist-file=\"final.py\">a0aa20559d62cebe2e1991af1d9d15e0<\/p>\n\n\n\n<p>Sprachmodelle haben bereits viele Branchen revolutioniert, von der Kundenbetreuung bis zur Content-Erstellung. Durch gezieltes Pre-Training und Fine-Tuning lassen sich Modelle f\u00fcr unterschiedlichste Aufgaben anpassen. Wer ein tieferes Verst\u00e4ndnis f\u00fcr diese Prozesse entwickelt, kann eigene ma\u00dfgeschneiderte KI-L\u00f6sungen erstellen und den technologischen Fortschritt aktiv mitgestalten.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\"Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.\" \u2013 Alan Turing. Moderne KI-Modelle wie GPT-4 oder Llama basieren auf riesigen Datens\u00e4tzen und komplexen mathematischen Strukturen. Doch was steckt wirklich dahinter? In diesem Artikel schauen wir uns die Schl\u00fcsselkomponenten an, die n\u00f6tig sind, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"gtbabel_prevent_lngs":"","gtbabel_alt_lng":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-4159","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-blog"},"acf":[],"yoast_head":"<title>Large Language Model selbst bauen &#060; Vielhuber David<\/title>\n<meta name=\"description\" content=\"&quot;Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.&quot; \u2013 Alan Turing. Moderne KI-Mo...\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Large Language Model selbst bauen &#060; Vielhuber David\" \/>\n<meta property=\"og:description\" content=\"&quot;Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.&quot; \u2013 Alan Turing. Moderne KI-Modelle wie\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/\" \/>\n<meta property=\"og:site_name\" content=\"Vielhuber David\" \/>\n<meta property=\"article:published_time\" content=\"2025-02-26T16:44:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-02T18:56:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"700\" \/>\n\t<meta property=\"og:image:height\" content=\"552\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"David\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@vielhuber\" \/>\n<meta name=\"twitter:site\" content=\"@vielhuber\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"David\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/\"},\"author\":{\"name\":\"David\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\"},\"headline\":\"Large Language Model selbst bauen\",\"datePublished\":\"2025-02-26T16:44:38+00:00\",\"dateModified\":\"2025-03-02T18:56:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/\"},\"wordCount\":771,\"publisher\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\"},\"articleSection\":[\"Blog\"],\"inLanguage\":\"de\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/\",\"url\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/\",\"name\":\"Large Language Model selbst bauen &#060; Vielhuber David\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#website\"},\"datePublished\":\"2025-02-26T16:44:38+00:00\",\"dateModified\":\"2025-03-02T18:56:23+00:00\",\"description\":\"\\\"Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.\\\" \u2013 Alan Turing. Moderne KI-Modelle wie\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/large-language-model-selbst-bauen\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vielhuber.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Large Language Model selbst bauen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#website\",\"url\":\"https:\\\/\\\/vielhuber.de\\\/\",\"name\":\"Vielhuber David\",\"description\":\"Full-Stack Developer\",\"publisher\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vielhuber.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\",\"name\":\"David\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\",\"url\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\",\"contentUrl\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\",\"width\":700,\"height\":552,\"caption\":\"David\"},\"logo\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/vielhuber\"]}]}<\/script>","yoast_head_json":{"title":"Large Language Model selbst bauen &#060; Vielhuber David","description":"\"Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.\" \u2013 Alan Turing. Moderne KI-Mo...","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:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/","og_locale":"de_DE","og_type":"article","og_title":"Large Language Model selbst bauen &#060; Vielhuber David","og_description":"\"Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.\" \u2013 Alan Turing. Moderne KI-Modelle wie","og_url":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/","og_site_name":"Vielhuber David","article_published_time":"2025-02-26T16:44:38+00:00","article_modified_time":"2025-03-02T18:56:23+00:00","og_image":[{"width":700,"height":552,"url":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","type":"image\/jpeg"}],"author":"David","twitter_card":"summary_large_image","twitter_creator":"@vielhuber","twitter_site":"@vielhuber","twitter_misc":{"Verfasst von":"David","Gesch\u00e4tzte Lesezeit":"4\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/#article","isPartOf":{"@id":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/"},"author":{"name":"David","@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef"},"headline":"Large Language Model selbst bauen","datePublished":"2025-02-26T16:44:38+00:00","dateModified":"2025-03-02T18:56:23+00:00","mainEntityOfPage":{"@id":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/"},"wordCount":771,"publisher":{"@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef"},"articleSection":["Blog"],"inLanguage":"de"},{"@type":"WebPage","@id":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/","url":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/","name":"Large Language Model selbst bauen &#060; Vielhuber David","isPartOf":{"@id":"https:\/\/vielhuber.de\/#website"},"datePublished":"2025-02-26T16:44:38+00:00","dateModified":"2025-03-02T18:56:23+00:00","description":"\"Eine Maschine kann ein gro\u00dfes Ged\u00e4chtnis haben, aber sie kann nicht denken \u2013 es sei denn, wir bringen es ihr bei.\" \u2013 Alan Turing. Moderne KI-Modelle wie","breadcrumb":{"@id":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vielhuber.de\/blog\/large-language-model-selbst-bauen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vielhuber.de\/"},{"@type":"ListItem","position":2,"name":"Large Language Model selbst bauen"}]},{"@type":"WebSite","@id":"https:\/\/vielhuber.de\/#website","url":"https:\/\/vielhuber.de\/","name":"Vielhuber David","description":"Full-Stack Developer","publisher":{"@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vielhuber.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":["Person","Organization"],"@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef","name":"David","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","url":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","contentUrl":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","width":700,"height":552,"caption":"David"},"logo":{"@id":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg"},"sameAs":["https:\/\/x.com\/vielhuber"]}]}},"_links":{"self":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts\/4159","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/comments?post=4159"}],"version-history":[{"count":17,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts\/4159\/revisions"}],"predecessor-version":[{"id":4187,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts\/4159\/revisions\/4187"}],"wp:attachment":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/media?parent=4159"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/categories?post=4159"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/tags?post=4159"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}