[{"data":1,"prerenderedAt":693},["ShallowReactive",2],{"blog-guardrails-ai-de":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":13,"about":21,"sources":31,"cover":59,"og":60,"expertise":61,"locales":62,"lang":64,"title":66,"description":67,"coverAlt":68,"metaTitle":69,"takeaways":70,"faq":76,"toc":89,"blocks":114,"others":458},"guardrails-ai","2026-09-29",10,"security",[9,10,11,12],"Guardrails","Output validation","LLM reliability","Python",[14,15,16,17,18,19,20],"guardrails ai","guardrails ai validators","llm output validation python","guardrails vs nemo guardrails","guardrails on_fail actions","llm guardrails framework","pii validation llm output",[22,25,28],{"name":23,"url":24},"NVIDIA","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FNVIDIA",{"name":26,"url":27},"Apache License","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FApache_License",{"name":29,"url":30},"Large language model","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model",[32,35,38,41,44,47,50,53,56],{"title":33,"url":34},"Guardrails AI on GitHub: README, news and FAQ","https:\u002F\u002Fgithub.com\u002Fguardrails-ai\u002Fguardrails",{"title":36,"url":37},"guardrails-ai 0.11.0 on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fguardrails-ai\u002F",{"title":39,"url":40},"Guardrails Hub: 65 validators","https:\u002F\u002Fwww.guardrailsai.com\u002Fhub",{"title":42,"url":43},"Guardrails documentation: error remediation and on-fail actions","https:\u002F\u002Fwww.guardrailsai.com\u002Fdocs\u002Fconcepts\u002Ferror_remediation",{"title":45,"url":46},"Guardrails documentation: use on-fail actions","https:\u002F\u002Fwww.guardrailsai.com\u002Fguardrails\u002Fdocs\u002Fhow-to-guides\u002Fuse_on_fail_actions",{"title":48,"url":49},"Migration issue 1560: moving off hosted remote inferencing","https:\u002F\u002Fgithub.com\u002Fguardrails-ai\u002Fguardrails\u002Fissues\u002F1560",{"title":51,"url":52},"NVIDIA NeMo Guardrails on GitHub","https:\u002F\u002Fgithub.com\u002FNVIDIA-NeMo\u002FGuardrails",{"title":54,"url":55},"NVIDIA NeMo Guardrails documentation","https:\u002F\u002Fdocs.nvidia.com\u002Fnemo\u002Fguardrails\u002Flatest\u002Findex.html",{"title":57,"url":58},"OpenAI API pricing, including moderation","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fpricing","\u002Fimages\u002Fblog\u002Fguardrails-ai\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fguardrails-ai\u002Fog.jpg","ai-engineer",[63,64,65],"en","de","hu","Guardrails AI: prüfen, was das Modell zurückgibt","Ein Test von Guardrails AI: 65 Validatoren, acht on-fail-Aktionen, das Ende der gehosteten Inferencing im August 2026 und wann NeMo Guardrails besser passt.","Zwei senkrechte Wände bilden einen Gang mit zwölf kleinen Quadraten an den Innenflächen.","Guardrails AI: Ausgabeprüfung für LLMs · Balázs Csorba",[71,72,73,74,75],"Der Hub liefert 65 Validatoren als eigene guardrails-ai-Pakete, und jeder Validator erklärt eine von acht Fehleraktionen, von noop bis refrain.","Nur noop und exception funktionieren bei Stream-Ausgaben; reask, fix, fix_reask, filter und refrain brauchen die vollständige Ausgabe.","Die gehostete Remote-Inferencing wurde zum 25. August 2026 abgeschaltet; das Framework läuft danach vollständig lokal.","Reask ist ein zweiter vollständiger Modellaufruf pro Versuch, also ist die Lizenz Apache-2.0, aber die Wiederholungsschleife wächst mit der Fehlerrate.","OpenAI führt omni-moderation-latest als kostenlos, deshalb muss der Fall für Guardrails auf Regeln, Struktur und Protokoll stehen, nicht auf Moderation allein.",[77,80,83,86],{"q":78,"a":79},"Ist Guardrails AI kostenlos?","Framework und Validatoren stehen unter Apache-2.0 und lassen sich ohne Lizenzgebühr über PyPI installieren. Kosten entstehen dort, wo Validatoren etwas aufrufen: ein LLM-Validator kostet pro Antwort einen zusätzlichen Modellaufruf, und reask erzeugt den Antworttext für jeden Versuch komplett neu.",{"q":81,"a":82},"Was passiert, wenn ein Validator fehlschlägt?","Der Fehler wird in guard.history geschrieben, danach läuft die on-fail-Aktion des Validators: noop protokolliert und gibt den Wert durch, exception wirft eine Ausnahme, fix repariert, etwa durch Anonymisieren von personenbezogenen Daten, reask fragt das Modell erneut, filter verwirft das fehlerhafte Feld, refrain gibt nichts zurück, und eine eigene Funktion erhält Wert und Fehlerergebnis.",{"q":84,"a":85},"Funktioniert es mit Streaming-Ausgaben?","Nur noop und exception sind als streaming-kompatibel dokumentiert. reask, fix, fix_reask, filter und refrain brauchen die vollständige Ausgabe, ein Token-Strom muss also zuerst gepuffert werden.",{"q":87,"a":88},"Guardrails AI oder NVIDIA NeMo Guardrails?","Guardrails ist eine Python-Bibliothek von Validatoren um einen Aufruf, den es bereits gibt; NeMo ist eine Laufzeit, die den Gesprächsfluss mit YAML-Regeln und Colang-Dialogen übernimmt. Das erste fügt sich in bestehenden Code ein, das zweite ersetzt einen Teil davon.",[90,93,96,99,102,105,108,111],{"id":91,"title":92},"what-it-is","Was es wirklich ist",{"id":94,"title":95},"how-it-works","So funktioniert es",{"id":97,"title":98},"error-handling","Wenn ein Validator fehlschlägt",{"id":100,"title":101},"getting-started","Erste Schritte",{"id":103,"title":104},"cost","Kosten",{"id":106,"title":107},"where-it-shingles","Wo es schwächelt",{"id":109,"title":110},"verdict","Fazit",{"id":112,"title":113},"sources","Quellen",[115,119,128,131,139,174,175,182,188,191,192,195,273,276,277,280,282,285,294,295,298,324,327,333,334,337,384,387,388,391,403,412,418,419],{"type":116,"content":117},"paragraph",[118],"Guardrails AI ist ein Open-Source-Framework für Python, das prüft, was ein Modell zurückgibt, bevor eine Anwendung darauf handelt. Die Validatoren liegen in einem Hub aus 65 Paketen, jedes legt fest, was beim Fehlschlag passiert: Ausnahme, Reparatur, erneute Anfrage, Filtern oder keine Rückgabe. Das Projekt steht unter Apache-2.0, die Version 0.11.0 wurde am 14. August 2026 veröffentlicht, gesteuert wird es aus Python, JavaScript ist im README unterstützt.",{"type":116,"content":120},[121,122,127],"Es besetzt die Schicht zwischen einem LLM-Aufruf und dem Code, der dessen Ausgabe konsumiert, und dort entscheidet sich, ob ein durchgesickertes Systemprompt, eine Zusammenfassung mit personenbezogenen Daten oder ein defektes JSON beim Nutzer ankommt. Es konkurriert mit ",{"tag":123,"to":124,"children":125},"link","\u002Fblog\u002Fprompt-injection-lethal-trifecta-patterns",[126],"Mustern zur Prompt-Injection-Abwehr"," um dieselbe Stelle wie NVIDIA NeMo Guardrails, mit dem Moderations-Endpunkt von OpenAI als gehostete Abkürzung und mit den handgeschriebenen Prüfungen, die die meisten Teams bereits haben. Die hier vertretene Position: die vollständigste Validatoren-Bibliothek des Feldes, deren Fehlermodell besser konstruiert ist als sein Betriebsmodell, bei dem der kostenlose Teil die Software ist und der teure Teil die Wiederholungen.",{"type":129,"level":130,"id":91,"text":92},"heading",2,{"type":116,"content":132},[133,134,138],"Die Arbeitseinheit ist ein Guard: eine geordnete Liste von Validatoren, die entweder auf die ausgehenden Nachrichten angewendet wird, mit ",{"tag":135,"children":136},"code",[137],"on=\"messages\"",", oder auf die Antwort. Die Validatoren kommen aus dem Hub und installieren als eigene PyPI-Pakete, eine Deployment führt also nur die Prüfungen aus, die es auch nutzt. Manche sind Regeln wie Regex, Länge und JSON-lesbarkeit, manche laufen als kleines lokales Modell, und manche rufen ein zweites LLM auf, um das erste zu bewerten.",{"type":140,"ordered":141,"items":142},"list",false,[143,149,154,159,164,169],[144,148],{"tag":145,"children":146},"strong",[147],"Hub. ","65 Validatoren, gruppiert nach Risiko: Markenrisiko, Formatierung, Etikette, Jailbreaking, Datenabfluss, Code-Exploits und Faktizität.",[150,153],{"tag":145,"children":151},[152],"Paketierung. ","Jeder Validator ist ein eigenes Paket, das nach guardrails configure installiert wird, etwa guardrails-ai-regex-match oder guardrails-ai-detect-pii.",[155,158],{"tag":145,"children":156},[157],"Zwei Richtungen. ","Guards laufen auf den Nachrichten vor dem Aufruf und auf der Modellausgabe danach, und dasselbe Guard-Objekt kann beides.",[160,163],{"tag":145,"children":161},[162],"Strukturierte Generierung. ","Guard.for_pydantic steuert das Modell gegen eine Pydantic-Klasse und prüft das geparste Objekt, per Function Calling wo das Modell es kann und über Prompt-Vorlagen wo nicht.",[165,168],{"tag":145,"children":166},[167],"Lizenz und Version. ","Apache-2.0, Python 3.10 bis 3.13, Version 0.11.0 vom 14. August 2026, mit rund 7.500 Sternen auf GitHub.",[170,173],{"tag":145,"children":171},[172],"Servermodus. ","guardrails start startet einen Flask-Dienst, der jeden Guard hinter einer OpenAI-kompatiblen Basis-URL ausliefert, ein bestehender Client ändert damit nur eine Zeichenkette.",{"type":129,"level":130,"id":94,"text":95},{"type":116,"content":176},[177,178,181],"Die Validierung ist standardmäßig synchron: die Rohausgabe hinein, jeder Validator der Reihe nach, jeder Fehler wird an ",{"tag":135,"children":179},[180],"guard.history.last.failed_validations"," angehängt, und die on-fail-Aktion dieses Validators entscheidet, was den Guard verlässt. Die Aktion wird pro Validator statt pro Guard gesetzt, ein Guard kann also bei personenbezogenen Daten eine Ausnahme werfen und bei einem Formatfehler nur protokollieren. reask baut einen Prompt mit dem gescheiterten Kriterium neu auf und fragt das Modell erneut, bis zur Grenze num_reasks.",{"type":183,"src":184,"alt":185,"wide":186,"caption":187},"image","\u002Fimages\u002Fblog\u002Fguardrails-ai\u002Fdiagram-7.webp","Guardrails AI: ein geschützter Modellaufruf Nachrichten laufen durch einen Input-Guard, das Modell antwortet, die Antwort läuft durch einen Output-Guard, und jeder Validierungsfehler wird protokolliert und an eine von acht on-fail-Aktionen weitergereicht, von denen nur noop und exception mit Streaming funktionieren.",true,"on-fail wird pro Validator statt pro Guard gesetzt, ein Guard kann also bei personenbezogenen Daten eine Ausnahme werfen und bei einem Formatfehler nur protokollieren.",{"type":116,"content":189},[190],"Da Fehler unabhängig davon protokolliert werden, ob sie den Ablauf stoppen, liefert auch ein Guard auf noop eine Prüfspur, und noop ist ohnehin die Voreinstellung. Bei Aufrufen an einen Anbieter wiederholt das Framework Verbindungsfehler, Ratenlimits und Zeitüberschreitungen mit exponentiellem Backoff bis zu einer Wartezeit von sechzig Sekunden, ein Anbieterausfall erscheint damit als Latenz im Guard und nicht als sofortige Ausnahme.",{"type":129,"level":130,"id":97,"text":98},{"type":116,"content":193},[194],"Acht Aktionen stehen zur Verfügung, und sie sind die eigentliche Schnittstelle dieses Tools, mehr als die Validatorenliste. Die Dokumentationstabelle markiert, welche davon gegen eine Streaming-Ausgabe funktionieren, und diese Spalte entscheidet mehr Architekturfragen als die Feature-Liste.",{"type":196,"head":197,"rows":206},"table",[198,200,202,204],[199],"Aktion",[201],"Was sie tut",[203],"Streaming",[205],"Einsatzort",[207,216,224,233,241,249,257,265],[208,210,212,214],[209],"noop",[211],"Protokolliert den Fehler und gibt die Ausgabe unverändert zurück; das ist die Voreinstellung",[213],"Ja",[215],"Messen, wie oft Prüfungen scheitern",[217,219,221,222],[218],"exception",[220],"Wirft eine Ausnahme, damit der Aufrufer den Fehler behandelt",[213],[223],"Eingabevalidierung und strenge Pipelines",[225,227,229,231],[226],"reask",[228],"Baut den Prompt mit dem gescheiterten Kriterium neu auf und fragt das Modell erneut",[230],"Nein",[232],"Weiche Fehler, die ein zweiter Durchgang behebt",[234,236,238,239],[235],"fix",[237],"Wendet den Reparaturwert des Validators an, etwa anonymisierte personenbezogene Daten",[230],[240],"Scrubbing und Formatkorrekturen",[242,244,246,247],[243],"fix_reask",[245],"Repariert zuerst und fragt erneut, wenn der reparierte Wert weiterhin fehlschlägt",[230],[248],"Reparaturen, die unvollständig bleiben können",[250,252,254,255],[251],"filter",[253],"Verwirft das fehlerhafte Feld und gibt den Rest des strukturierten Objekts zurück",[230],[256],"Strukturierte Daten mit optionalen Feldern",[258,260,262,263],[259],"refrain",[261],"Gibt nichts zurück, wenn die Ausgabe nicht ausgeliefert werden darf",[230],[264],"Inhalt, der Nutzer nicht erreichen darf",[266,268,270,271],[267],"custom",[269],"Führt eine eigene Funktion über Wert und Fehlerergebnis aus",[230],[272],"Richtlinien, die bereits im Code stehen",{"type":116,"content":274},[275],"Der mutige Teil: reask ist die beworbene Funktion und die, die man sorgfältig budgetieren muss, denn jeder reask ist eine zweite vollständige Generierung zum selben Satz wie die erste, und er multipliziert sich mit der Fehlerrate statt mit dem Traffic. Die Dokumentation selbst weist komplexe Fälle von reask weg und empfiehlt einen ansatzbasierten Ansatz, sobald die Fälle wachsen, weil eine Ausnahme einem Handler erlaubt, je nach gescheitertem Validator zu verzweigen, statt das still zurückgegebene Ergebnis von reask zu interpretieren.",{"type":129,"level":130,"id":100,"text":101},{"type":116,"content":278},[279],"Die Installation besteht aus dem Kernpaket und den Validatoren, die der Guard braucht, danach richtet guardrails configure die Zugangsdaten ein. Ein Guard entsteht im Code, nicht in einer Konfigurationsdatei, dadurch steht die Fehleraktion neben der Prüfung, zu der sie gehört.",{"type":135,"code":281},"# pip install guardrails-ai guardrails-ai-detect-pii\nfrom guardrails import Guard, OnFailAction\nfrom guardrails_ai.detect_pii import DetectPII\n\nguard = Guard().use(\n    DetectPII(pii_entities=\"pii\", on_fail=OnFailAction.FIX)\n)\n\nresult = guard.validate(\n    \"Hello, my name is John Doe and my email is john.doe@example.com\"\n)\n\nprint(result.validation_passed)   # True once the scrub lands\nprint(result.validated_output)    # \u003CPERSON> and \u003CEMAIL_ADDRESS>",{"type":116,"content":283},[284],"Für Aufrufer ohne Python bedient guardrails start jeden Guard an einer Basis-URL der Form localhost:8000\u002Fguards\u002F\u003Cname>\u002Fopenai\u002Fv1\u002F, ein bestehender OpenAI-Client zeigt darauf hin, ohne neues SDK. Das README nennt zusätzlich JavaScript als unterstützt, wobei das Python-Paket die Referenzimplementierung bleibt.",{"type":286,"variant":287,"title":288,"body":289},"callout","warn","Der gehostete Weg endete im August 2026",[290,292],[291],"Das Projekt kündigte am 6. Juli 2026 an, die gehostete Remote-Inferencing abzuschalten, mit einem geplanten Stichtag am 25. August 2026, und Validatoren auf Standard-PyPI-Pakete umzustellen, die direkt mit pip installiert werden. Alles, was sich auf den gehosteten Inferencing-Dienst stützte, musste bis zu diesem Datum über Issue 1560 migrieren.",[293],"Nach dem Stichtag läuft das Framework vollständig lokal, was der vorhersehbarere Betriebsmodus ist, gleichzeitig verbrauchen die ML-Validatoren jetzt Speicher und CPU des eigenen Deployings statt eines Anbieter-Endpunkts.",{"type":129,"level":130,"id":103,"text":104},{"type":116,"content":296},[297],"Die Software ist im strengen Sinne kostenlos: Apache-2.0 deckt das Framework und jeden Hub-Validator, und zwischen Installation und Validierung steht nichts Abrechenbares. Die Rechnung entsteht woanders, bei dem, was die Validatoren unterwegs aufrufen.",{"type":140,"ordered":141,"items":299},[300,305,310,315,320],[301,304],{"tag":145,"children":302},[303],"Lizenz. ","Apache-2.0 für Framework und Validatoren; es gibt keine bezahlte Stufe der Bibliothek selbst.",[306,309],{"tag":145,"children":307},[308],"LLM-Prüfungen. ","Validatoren wie llm_critic, provenance_llm und qa_relevance_llm_eval kosten pro Prüfung und Antwort einen zusätzlichen Modellaufruf.",[311,314],{"tag":145,"children":312},[313],"Reasks. ","Jeder reask ist eine vollständige Neugenerierung, und num_reasks legt fest, wie oft eine Antwort neu erzeugt werden darf, bevor der Guard aufgibt.",[316,319],{"tag":145,"children":317},[318],"Lokales ML. ","Validatoren wie detect_pii laufen mit Presidio im Prozess, ihr Preis ist Speicher und Latenz statt Tokens.",[321,323],{"tag":145,"children":322},[172],"Der optionale Flask-Dienst ist Infrastruktur, die das Deployment selbst betreibt, skaliert und absichert.",{"type":116,"content":325},[326],"Der Vergleich, der zählt, ist der gegen gehostete Moderation. OpenAI führt omni-moderation-latest auf der Preisseite als kostenlos, und NeMo Guardrails steht ebenfalls unter Apache-2.0, keiner der beiden Wettbewerber verlangt also eine Lizenz für dieselbe Aufgabe. Was Guardrails verkauft, ist Abdeckung: ein Moderations-Endpunkt beantwortet eine Frage zur Inhaltspolitik, der Hub kann im selben Durchgang auch Schema, Länge, Wettbewerbernennungen, Prompt-Leakage und Provenienz erzwingen.",{"type":286,"variant":328,"title":329,"body":330},"tip","Den Guard rechnen, nicht das Paket",[331],[332],"Kosten Sie einen Guard pro Antwort als Modellaufrufe der Validatoren plus Reask-Rate mal num_reasks mal Tokenkosten. Ein Moderations-Endpunkt, der nichts kostet, und eine Reask-Schleife, die eine zweite Generierung kostet, sind keine vergleichbaren Positionen, und die zweite wächst mit der Fehlerrate statt mit dem Traffic.",{"type":129,"level":130,"id":106,"text":107},{"type":116,"content":335},[336],"Die Schwächen sind betrieblicher Natur und zeigen sich nach der ersten Woche. Der Hub mischt eine Regex, ein BERT-Modell und einen LLM-Judge hinter einer Abstraktion, die Latenz unterscheidet sich also um Größenordnungen zwischen den Validatoren und die Dokumentation kennt keinen Latenzbudget-Wert pro Validator. Der Sprachfilter des Hubs listet nur Englisch. Die Streaming-Unterstützung endet bei noop und exception, was das Tool für Ausgabe Token für Token ausschließt, wenn die Antwort nicht vollständig gepuffert wird. Und die Abschaltung der gehosteten Inferencing im August 2026 war eine Breaking Change an einem Dienst, den einige Deployings aufgebaut hatten.",{"type":196,"head":338,"rows":347},[339,341,343,345],[340],"Merkmal",[342],"Guardrails AI",[344],"NVIDIA NeMo Guardrails",[346],"OpenAI Moderation API",[348,357,366,375],[349,351,353,355],[350],"Gestalt",[352],"Python-Bibliothek plus 65 Hub-Validatoren",[354],"YAML-Regeln und Colang-Dialoge",[356],"Ein gehosteter Endpunkt",[358,360,362,364],[359],"Lizenz",[361],"Apache-2.0, nach August 2026 vollständig lokal",[363],"Apache-2.0, optionale anonyme Telemetrie",[365],"Geschlossen, von OpenAI betrieben",[367,369,371,373],[368],"Konfiguration",[370],"Python-Code, on_fail pro Validator",[372],"Dateien in einem rails-Verzeichnis",[374],"Eine einzelne Moderationsanfrage",[376,378,380,382],[377],"Kosten pro Anfrage",[379],"Freie Software; LLM-Validatoren und Reasks werden separat berechnet",[381],"Freie Software; Rails können ein LLM aufrufen",[383],"omni-moderation-latest als kostenlos geführt",{"type":116,"content":385},[386],"Die dritte Alternative ist die, die die meisten Teams tatsächlich ausliefern: handgeschriebene Prüfungen um den Aufruf, eine if-Abfrage für das JSON-Parsing und ein Regex für alles, was wie eine Kontonummer aussieht. Das ist billiger als alle drei Zeilen oben und scheitert konstruktiv still, und genau dieser Fehlertyp ist der Grund für diese Kategorie. Der ehrliche Vergleich ist nicht Guardrails gegen NeMo, sondern Guardrails gegen das, was ein Team nachmittags schreibt und danach vergisst zu erweitern.",{"type":129,"level":130,"id":109,"text":110},{"type":116,"content":389},[390],"Einsetzen, wo eine schlechte Antwort Geld, Daten oder Glaubwürdigkeit kostet und wo die Aufzeichnung dessen, was fehlschlug, ebenso zählt wie der Fehler selbst. Das ist das vollständigste Validatorenkatalog unter freier Lizenz, und die Fehleraktion pro Validator ist ein besserer Entwurf als ein globaler Politikschalter. Die Kosten sind die jedes prüfenden Codes im Prozess: man betreibt ihn, man justiert ihn, und man zahlt für die Aufrufe, die die Validatoren auslösen.",{"type":140,"ordered":186,"items":392},[393,395,397,399,401],[394],"Verwenden, wenn eine Antwort den Dienst verlässt: personenbezogene Daten in einer Support-Zusammenfassung, SQL, das ein Nutzer ausführt, strukturierte Ausgabe, die ein anderer Dienst parst.",[396],"Verwenden, wenn eine Prüfspur verlangt wird, denn jeder Fehler landet in guard.history, und eine handgeschriebene Prüfung zeichnet sonst wenig auf.",[398],"NeMo Guardrails vorziehen, wenn es um Gesprächspolitik geht, etwa wann abgelehnt oder das Thema gewechselt wird, dafür sind Colang-Rails gebaut.",[400],"Den kostenlosen Moderations-Endpunkt vorziehen, wenn anstößiger Inhalt das einzige Risiko ist und ein Dependency es nicht wert ist.",[402],"Keine Streaming-Reparaturen erwarten: nur noop und exception reagieren auf eine Teilausgabe, also puffern oder die reparierenden Tools weglassen.",{"type":404,"content":405},"quote",[406,407,411],"Der Rat der Dokumentation, sobald ein Fall den einfachen Pfad verlässt, lautet: ",{"tag":408,"children":409},"em",[410],"as usecases get more complex, we recommend switching to an exception-based approach",". Ein Framework, das empfiehlt, seine Kopffunktion zu verlassen, sobald es schwierig wird, ist ehrlich darüber, wo diese Funktion hingehört.",{"type":286,"variant":413,"title":414,"body":415},"note","Eine Faustregel",[416],[417],"Einen Validator auf exception setzen, immer wenn ein Fehler einem Nutzer oder einem Log-Prüfer erklärt werden müsste, reask nur dort nutzen, wo ein zweiter Durchgang tatsächlich eine bessere Antwort ergibt, und diese Durchgänge vorher in die Rechnung nehmen, bevor sie in den Latenzgraphen kommen.",{"type":129,"level":130,"id":112,"text":113},{"type":140,"ordered":186,"items":420},[421,426,430,434,438,442,446,450,454],[422],{"tag":423,"href":34,"children":424},"a",[425],"Guardrails AI auf GitHub: README, News und FAQ",[427],{"tag":423,"href":37,"children":428},[429],"guardrails-ai 0.11.0 auf PyPI",[431],{"tag":423,"href":40,"children":432},[433],"Guardrails Hub: 65 Validatoren",[435],{"tag":423,"href":43,"children":436},[437],"Guardrails-Dokumentation: Fehlerbehandlung und on-fail-Aktionen",[439],{"tag":423,"href":46,"children":440},[441],"Guardrails-Dokumentation: on-fail-Aktionen nutzen",[443],{"tag":423,"href":49,"children":444},[445],"Migrations-Issue 1560: Weg von der gehosteten Inferencing",[447],{"tag":423,"href":52,"children":448},[449],"NVIDIA NeMo Guardrails auf GitHub",[451],{"tag":423,"href":55,"children":452},[453],"NVIDIA NeMo Guardrails-Dokumentation",[455],{"tag":423,"href":58,"children":456},[457],"OpenAI-API-Preise, einschließlich Moderation",[459,525,595,651],{"slug":460,"published":461,"minutes":462,"category":7,"tags":463,"keywords":467,"about":480,"sources":488,"cover":519,"og":520,"expertise":61,"locales":521,"lang":64,"title":522,"description":523,"coverAlt":524},"llm-output-guardrails-moderation","2026-10-17",13,[464,9,465,466,10],"LLM security","Content moderation","OWASP",[468,469,470,471,472,473,474,475,476,477,478,479],"llm output guardrails","improper output handling llm","owasp llm05","openai moderation api","omni-moderation-latest","llama guard 4","nemo guardrails streaming","markdown image exfiltration","sanitize llm output html","groundedness detection","llm content moderation production","output rails",[481,483,486],{"name":465,"url":482},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FContent_moderation",{"name":484,"url":485},"Cross-site scripting","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCross-site_scripting",{"name":466,"url":487},"https:\u002F\u002Fowasp.org\u002F",[489,492,495,498,501,504,507,510,513,516],{"title":490,"url":491},"OWASP GenAI Security Project: LLM05:2025 Improper Output Handling","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm052025-improper-output-handling\u002F",{"title":493,"url":494},"OpenAI API Docs: Moderation","https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Fmoderation",{"title":496,"url":497},"Meta: Llama Guard 4 model card and prompt formats","https:\u002F\u002Fwww.llama.com\u002Fdocs\u002Fmodel-cards-and-prompt-formats\u002Fllama-guard-4\u002F",{"title":499,"url":500},"NVIDIA NeMo Guardrails: Output rail streaming configuration","https:\u002F\u002Fdocs.nvidia.com\u002Fnemo\u002Fguardrails\u002Fconfigure-guardrails\u002Fyaml-schema\u002Fstreaming\u002Foutput-rail-streaming.md",{"title":502,"url":503},"Microsoft Learn: Prompt Shields in Azure AI Content Safety","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fai-services\u002Fcontent-safety\u002Fconcepts\u002Fjailbreak-detection",{"title":505,"url":506},"Microsoft Learn: Groundedness detection in Azure AI Content Safety","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fai-services\u002Fcontent-safety\u002Fconcepts\u002Fgroundedness",{"title":508,"url":509},"Microsoft Learn: Protected material detection in Azure AI Content Safety","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fai-services\u002Fcontent-safety\u002Fconcepts\u002Fprotected-material",{"title":511,"url":512},"Guardrails AI documentation","https:\u002F\u002Fwww.guardrailsai.com\u002Fdocs",{"title":514,"url":515},"Vue.js docs: Security best practices","https:\u002F\u002Fvuejs.org\u002Fguide\u002Fbest-practices\u002Fsecurity.html",{"title":517,"url":518},"Simon Willison: Remote prompt injection in GitLab Duo leads to source code theft","https:\u002F\u002Fsimonwillison.net\u002F2025\u002FMay\u002F23\u002Fremote-prompt-injection-in-gitlab-duo\u002F","\u002Fimages\u002Fblog\u002Fllm-output-guardrails-moderation\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fllm-output-guardrails-moderation\u002Fog.jpg",[63,64,65],"Output-Guardrails für LLMs: Moderation, sicheres Rendern und Validierung, bevor etwas passiert","Was nach der Modellantwort zu prüfen ist: sicheres Markdown-Rendering, Schema-Prüfung vor Aktionen, Moderations-Klassifikatoren, Streaming und Groundedness.","Drei enger werdende Rahmen als Trichter gestapelt, Punkte fallen zu einer Schale neben einem Schloss.",{"slug":526,"published":461,"minutes":527,"category":7,"tags":528,"keywords":532,"about":544,"sources":552,"cover":589,"og":590,"expertise":61,"locales":591,"lang":64,"title":592,"description":593,"coverAlt":594},"ai-red-teaming-checklist-llm-apps",12,[529,464,466,530,531],"AI red teaming","promptfoo","Penetration testing",[533,534,535,536,537,538,539,540,541,542,543],"ai red teaming checklist","llm red teaming","red teaming llm applications","owasp genai red teaming guide","promptfoo red team","garak llm scanner","pyrit red teaming","llm penetration testing","owasp top 10 llm 2025 testing","jailbreak testing llm app","red team rag chatbot",[545,548,551],{"name":546,"url":547},"Red team","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRed_team",{"name":549,"url":550},"Prompt injection","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrompt_injection",{"name":466,"url":487},[553,556,559,562,565,568,571,574,577,580,583,586],{"title":554,"url":555},"OWASP GenAI Security Project: GenAI Red Teaming Guide (January 2025)","https:\u002F\u002Fgenai.owasp.org\u002Fresource\u002Fgenai-red-teaming-guide\u002F",{"title":557,"url":558},"OWASP GenAI Security Project: Top 10 for LLM Applications 2025","https:\u002F\u002Fgenai.owasp.org\u002Fllm-top-10\u002F",{"title":560,"url":561},"Bullwinkel et al. (Microsoft): Lessons From Red Teaming 100 Generative AI Products (2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2501.07238",{"title":563,"url":564},"NIST AI 600-1: Generative Artificial Intelligence Profile (July 2024)","https:\u002F\u002Fnvlpubs.nist.gov\u002Fnistpubs\u002Fai\u002FNIST.AI.600-1.pdf",{"title":566,"url":567},"Promptfoo Docs: Red team quickstart","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fquickstart\u002F",{"title":569,"url":570},"Promptfoo Docs: Red team configuration","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fconfiguration\u002F",{"title":572,"url":573},"Promptfoo Docs: Red team plugins","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fplugins\u002F",{"title":575,"url":576},"Promptfoo Docs: Red team strategies","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fstrategies\u002F",{"title":578,"url":579},"NVIDIA garak: LLM vulnerability scanner (GitHub)","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fgarak",{"title":581,"url":582},"Microsoft PyRIT documentation","https:\u002F\u002Fmicrosoft.github.io\u002FPyRIT\u002F",{"title":584,"url":585},"EU AI Act, Article 55: Obligations for providers of GPAI models with systemic risk","https:\u002F\u002Fartificialintelligenceact.eu\u002Farticle\u002F55\u002F",{"title":587,"url":588},"OWASP GenAI LLM Top 10 2026: final entries (GitHub)","https:\u002F\u002Fgithub.com\u002FGenAI-Security-Project\u002FGenAI-LLM-Top10\u002Ftree\u002Fmain\u002F2026\u002Ffinal","\u002Fimages\u002Fblog\u002Fai-red-teaming-checklist-llm-apps\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fai-red-teaming-checklist-llm-apps\u002Fog.jpg",[63,64,65],"AI-Red-Teaming-Checkliste für LLM-Apps: was man angreifen sollte, bevor es Nutzer tun","Eine praktische Red-Teaming-Checkliste für LLM-Funktionen: Scope, OWASP-2025-Testfälle, promptfoo, garak und PyRIT, menschliche Tester und Regressionstests.","Eine Liste auf einer Klemmschiene, dann ein durchkreuztes Schild und ein Haken am Ende einer Kurve.",{"slug":596,"published":597,"minutes":598,"category":7,"tags":599,"keywords":605,"about":616,"sources":626,"cover":645,"og":646,"expertise":61,"locales":647,"lang":64,"title":648,"description":649,"coverAlt":650},"slopsquatting-ai-package-hallucinations","2026-10-16",6,[600,601,602,603,604],"Supply chain security","Coding agents","npm","PyPI","Package hallucination",[606,607,608,609,610,611,612,613,614,615],"slopsquatting","package hallucination","ai hallucinated packages","llm package confusion attack","coding agent supply chain security","npm min-release-age","pnpm minimumReleaseAge","uv exclude-newer","npm ignore-scripts","huggingface-cli hallucinated package",[617,620,623],{"name":618,"url":619},"Typosquatting","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTyposquatting",{"name":621,"url":622},"Supply chain attack","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSupply_chain_attack",{"name":624,"url":625},"Hallucination (artificial intelligence)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FHallucination_(artificial_intelligence)",[627,630,633,636,639,642],{"title":628,"url":629},"Spracklen et al.: We Have a Package for You! A Comprehensive Analysis of Package Hallucinations by Code Generating LLMs (2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2406.10279",{"title":631,"url":632},"Lasso Security, Bar Lanyado: Diving Deeper into AI Package Hallucinations (Mar 2024)","https:\u002F\u002Fwww.lasso.security\u002Fblog\u002Fai-package-hallucinations",{"title":634,"url":635},"npm Docs: config (min-release-age, before, ignore-scripts, allow-scripts)","https:\u002F\u002Fdocs.npmjs.com\u002Fcli\u002Fv11\u002Fusing-npm\u002Fconfig",{"title":637,"url":638},"pnpm: Dependency resolution settings (minimumReleaseAge)","https:\u002F\u002Fpnpm.io\u002Fsettings\u002Fdependency-resolution",{"title":640,"url":641},"uv: Settings reference (exclude-newer, require-hashes)","https:\u002F\u002Fdocs.astral.sh\u002Fuv\u002Freference\u002Fsettings\u002F",{"title":643,"url":644},"pip documentation: Secure installs and hash-checking mode","https:\u002F\u002Fpip.pypa.io\u002Fen\u002Fstable\u002Ftopics\u002Fsecure-installs\u002F","\u002Fimages\u002Fblog\u002Fslopsquatting-ai-package-hallucinations\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fslopsquatting-ai-package-hallucinations\u002Fog.jpg",[63,64,65],"Slopsquatting: wenn Coding-Agenten Pakete installieren, die es nicht gibt","Wie LLMs Paketnamen halluzinieren, wie Angreifer sie registrieren und welche Registry-, Lockfile- und Agenten-Kontrollen die Installation stoppen.","Drei Kästen auf einer Schiene, der mittlere hohl und versetzt, darunter passende Quadrate auf einer Ablage.",{"slug":652,"published":597,"minutes":598,"category":7,"tags":653,"keywords":657,"about":668,"sources":674,"cover":687,"og":688,"expertise":61,"locales":689,"lang":64,"title":690,"description":691,"coverAlt":692},"rag-poisoning-knowledge-base-attacks",[654,655,549,466,656],"RAG security","Data poisoning","Vector database",[658,659,660,661,662,663,664,665,666,667],"rag poisoning","knowledge base poisoning","poisonedrag","rag security","indirect prompt injection rag","owasp llm08 vector and embedding weaknesses","vector database security","rag data poisoning defense","hidden text prompt injection","secure rag ingestion",[669,672,673],{"name":670,"url":671},"Retrieval-augmented generation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRetrieval-augmented_generation",{"name":549,"url":550},{"name":466,"url":487},[675,678,681,684],{"title":676,"url":677},"Zou et al.: PoisonedRAG: Knowledge Corruption Attacks to Retrieval-Augmented Generation of Large Language Models (2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2402.07867",{"title":679,"url":680},"Greshake et al.: Not what you've signed up for: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection (2023)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2302.12173",{"title":682,"url":683},"OWASP Gen AI Security Project: LLM08:2025 Vector and Embedding Weaknesses","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm082025-vector-and-embedding-weaknesses\u002F",{"title":685,"url":686},"OWASP Gen AI Security Project: LLM04:2025 Data and Model Poisoning","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm042025-data-and-model-poisoning\u002F","\u002Fimages\u002Fblog\u002Frag-poisoning-knowledge-base-attacks\u002Fcover.webp","\u002Fimages\u002Fblog\u002Frag-poisoning-knowledge-base-attacks\u002Fog.jpg",[63,64,65],"RAG-Poisoning: wie wenige Dokumente einen Assistenten steuern und wie man die Wissensbasis verteidigt","Wie Angreifer Dokumente platzieren, die RAG-Systeme finden, was PoisonedRAG und OWASP zeigen und welche Kontrollen bei Ingestion, Retrieval und Antwort helfen.","Blätter laufen auf einem Band in einen Behälter, eines trägt einen kleinen Block, ein Tor am Ausgang.",1792261157406]