[{"data":1,"prerenderedAt":615},["ShallowReactive",2],{"blog-promptfoo-de":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":13,"about":21,"sources":25,"cover":50,"og":51,"expertise":52,"locales":53,"lang":55,"title":57,"description":58,"coverAlt":59,"metaTitle":60,"takeaways":61,"faq":67,"toc":80,"blocks":105,"others":373},"promptfoo","2026-07-07",10,"llmops",[9,10,11,12],"LLM evaluation","Red teaming","Prompt testing","CI\u002FCD",[4,14,15,16,17,18,19,20],"promptfoo vs langsmith","LLM evaluation framework","promptfoo red teaming","promptfooconfig.yaml example","LLM evals in CI","promptfoo pricing","open source LLM testing",[22],{"name":23,"url":24},"Promptfoo","https:\u002F\u002Fwww.promptfoo.dev",[26,29,32,35,38,41,44,47],{"title":27,"url":28},"Promptfoo documentation: intro","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fintro\u002F",{"title":30,"url":31},"Promptfoo pricing: plan comparison","https:\u002F\u002Fwww.promptfoo.dev\u002Fpricing",{"title":33,"url":34},"Promptfoo documentation: getting started","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fgetting-started\u002F",{"title":36,"url":37},"Promptfoo documentation: command line usage (exit codes)","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fusage\u002Fcommand-line\u002F",{"title":39,"url":40},"Promptfoo documentation: red team plugins","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fred-team\u002Fplugins\u002F",{"title":42,"url":43},"Promptfoo documentation: assertions and metrics","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fconfiguration\u002Fexpected-outputs\u002F",{"title":45,"url":46},"Promptfoo repository on GitHub (MIT licence)","https:\u002F\u002Fgithub.com\u002Fpromptfoo\u002Fpromptfoo",{"title":48,"url":49},"Promptfoo blog: Promptfoo is joining OpenAI (9 March 2026)","https:\u002F\u002Fwww.promptfoo.dev\u002Fblog\u002Fpromptfoo-joining-openai\u002F","\u002Fimages\u002Fblog\u002Fpromptfoo\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fpromptfoo\u002Fog.jpg","ai-engineer",[54,55,56],"en","de","hu","Promptfoo: LLM-Evals und Red Teaming aus einer YAML-Datei","Promptfoo 2026: Evals und Red Team unter MIT-Lizenz, seit März 2026 im Besitz von OpenAI. Was es gut kann, wo der YAML-Ansatz bricht und was die Stufen kosten.","Ein hohes Blatt in einem breiteren Rahmen, fünf Pfeile zu fünf Quadraten, zwei unter einem Schild.","Promptfoo Test: Evals und Red Teaming · Balázs Csorba",[62,63,64,65,66],"Promptfoo ist eine MIT-lizenzierte CLI, die Qualitäts-Evals und Red Teaming aus einer YAML-Datei ausführt, und das Repository wurde mit der Ankündigung vom März 2026 Teil von OpenAI.","Die Community-Stufe ist kostenlos und enthält 10.000 Red-Team-Probes pro Monat; Dashboards, eigene Plugins, SSO und API sind Enterprise-Zeilen auf Anfrage.","Deklarative Testfälle sind der eigentliche Stärke, weil man eine Eval-Änderung als Diff lesen kann, ohne eine Python-Testsuite auszuführen.","Modellbewertete Assertions wie llm-rubric sind nicht deterministisch und kosten pro Zelle einen Judge-Aufruf, deshalb misst die Pass-Rate den Bewerter so sehr wie den Prompt.","Konfiguration und Testdaten portabel halten: MIT hält den Code forkbahr, aber ein Modellvergleichswerkzeug im Besitz eines Kandidaten ist ein Neutralitätsproblem, das die Lizenz nicht löst.",[68,71,74,77],{"q":69,"a":70},"Ist promptfoo kostenlos nutzbar?","Ja. Die Community-Version ist MIT-lizenziert, läuft lokal und enthält alle Evaluierungsfunktionen sowie bis zu 10.000 Red-Team-Probes pro Monat. Enterprise ergänzt individuelle Probe-Limits, Team-Freigaben, kontinuierliches Monitoring, SSO und API-Zugang; Enterprise und On-Premise sind auf Anfrage bepreist.",{"q":72,"a":73},"Was ist der Unterschied zwischen promptfoo evals und Red Teaming?","Evals führen Ihre Prompts gegen Testfälle aus und bewerten die Ausgaben mit Assertions wie Teilstring-Prüfungen, KostenSchwellen oder llm-rubric. Das Red Teaming generiert adversarielle Payloads gegen ein konfiguriertes Ziel: promptfoo redteam run führt die Probes aus und promptfoo redteam report macht aus den Funden einen Schwachstellenbericht.",{"q":75,"a":76},"Welche Modell-Provider unterstützt promptfoo?","Die Dokumentation nennt mehr als 60 Provider, darunter OpenAI, Anthropic, Google, Azure, Bedrock und lokale Modelle über Ollama. Alles andere lässt sich über einen eigenen HTTP-, Python- oder JavaScript-Provider ansprechen, sodass sich die Konfigurationsdatei nicht ändern muss, wenn das Modell hinter einem Endpunkt wechselt.",{"q":78,"a":79},"Was ist nach der Übernahme durch OpenAI mit promptfoo passiert?","Promptfoo kündigte am 9. März 2026 an, dass eine Übernahme durch OpenAI vereinbart worden sei, und stellte klar, dass das Produkt Open Source und MIT-lizenziert bleibt und das Team die Kunden weiter betreut. Das Repository beschreibt promptfoo jetzt als Teil von OpenAI, und die Dokumentation wird weiter gepflegt.",[81,84,87,90,93,96,99,102],{"id":82,"title":83},"what-it-is","Was es ist",{"id":85,"title":86},"how-it-works","Wie es funktioniert",{"id":88,"title":89},"getting-started","Erste Schritte",{"id":91,"title":92},"red-teaming","Red Teaming",{"id":94,"title":95},"ownership","Wem gehört es jetzt",{"id":97,"title":98},"where-it-shingles","Wo es klemmt",{"id":100,"title":101},"verdict","Fazit",{"id":103,"title":104},"sources","Quellen",[106,110,113,116,124,150,153,154,161,167,173,174,177,179,188,195,196,214,224,228,248,251,252,255,258,259,262,308,311,317,318,321,333,337,338],{"type":107,"content":108},"paragraph",[109],"Promptfoo ist eine Open-Source-CLI und Bibliothek, die LLM-Evaluierungen und adversariales Red Teaming aus einer einzigen YAML-Datei ausführt. Position vorweg: Es ist der praktischste Weg, eine Prompt-Änderung oder einen Modellwechsel in einen Textdiff zu verwandeln, den CI rot machen kann, und seit März 2026 ist es auch ein Eval-Tool, das OpenAI gehört.",{"type":107,"content":111},[112],"Es liegt zwischen einem Ordner mit Pytest-Skripten und einer gehosteten Evaluierungsplattform. Gegenüber LangSmith und Braintrust verzichtet man in der kostenlosen Stufe auf Dashboards, geteilte Historie und eine Team-Oberfläche, im Gegenzug läuft es auf dem eigenen Rechner, spricht direkt mit mehr als 60 Providern und braucht kein Konto. Gegenüber DeepEval tauscht man Python-Ausdrucksstärke gegen eine Konfigurationsdatei, die auch ohne Programmierkenntnisse im Review lesbar ist.",{"type":114,"level":115,"id":82,"text":83},"heading",2,{"type":107,"content":117},[118,119,123],"Zwei Produkte teilen sich ein Repository und ein Konfigurationsformat. Die Evaluierungsseite führt Prompts gegen Testfälle aus und bewertet die Ausgaben; die Red-Team-Seite greift ein konfiguriertes Ziel mit generierten Payloads an und dokumentiert die Funde als Schwachstellenbericht. Beides steuert ",{"tag":120,"children":121},"code",[122],"promptfooconfig.yaml",", beides läuft über dieselbe Kommandozeile und beides lässt sich in CI einbinden.",{"type":125,"ordered":126,"items":127},"list",false,[128,130,132,134,144,146,148],[129],"CLI und Bibliothek unter MIT-Lizenz: Version 0.124.0 auf npm, etwa 25,8k Sterne und 2,4k Forks auf GitHub",[131],"Deklarative Konfiguration: Prompts, Provider, Tests und Assertions in einer YAML-Datei",[133],"Mehr als 60 Provider, darunter OpenAI, Anthropic, Google, Azure, Bedrock, Ollama und eigene HTTP-, Python- oder JavaScript-Endpunkte",[135,136,139,140,143],"Zwei Befehle decken den Rest ab: ",{"tag":120,"children":137},[138],"promptfoo eval"," für Qualität, ",{"tag":120,"children":141},[142],"promptfoo redteam run"," für Sicherheit",[145],"Die Community-Stufe ist kostenlos und enthält 10.000 Red-Team-Probes pro Monat; Enterprise und On-Premise sind auf Anfrage bepreist",[147],"Der Anbieter nennt 350.000 Entwickler, 130.000 monatlich Aktive und mehr als 25 % der Fortune 500",[149],"Der Seitenfuß trägt SOC-2- und ISO-27001-Siegel, und die Dokumentation liefert eine GitHub Action für CI",{"type":107,"content":151},[152],"Was die kostenlose Stufe bewusst vorenthält, ist der gehostete Teil. Community hat kein Team-Dashboard, keine durchsuchbare Scan-Historie, kein kontinuierliches Monitoring und keine API; das sind Enterprise-Zeilen im Feature-Vergleich. Das Tool selbst bleibt ein lokaler Prozess, der Ihre Provider aufruft und Ergebnisse auf die Festplatte schreibt.",{"type":114,"level":115,"id":85,"text":86},{"type":107,"content":155},[156,157,160],"Eine Evaluierung ist eine Matrix. Die Konfiguration deklariert Prompts, Provider und Testfälle, der Runner bildet das Kreuzprodukt, schickt jede Zelle an jedes Modell und bewertet die Antwort gegen die an diese Zelle gebundenen Assertions. Assertions sind typisiert: Teilstring- und JSON-Schema-Prüfungen, Similarity-, Kosten- und Latenzschwellen sowie modellbewertete Prüfungen wie ",{"tag":120,"children":158},[159],"llm-rubric",", die einen zusätzlichen Modellaufruf kosten.",{"type":162,"src":163,"alt":164,"wide":165,"caption":166},"image","\u002Fimages\u002Fblog\u002Fpromptfoo\u002Fdiagram-8.webp","Wie eine promptfoo-Evaluierung abläuft Eine Pipeline aus vier Stufen: Die Konfigurationsdatei speist einen Runner, der jeden Provider parallel mit Caching aufruft, Assertions bewerten jede Ausgabe, und die Ergebnisse gehen an einen Web-Viewer und einen CI-Exit-Code. Darunter eine Matrix aus Prompts und Providern mit bestanden und nicht bestanden.",true,"Die promptfoo-Evaluierungsmatrix: Jeder Prompt läuft gegen jeden Provider, Assertions bewerten jede Zelle, und der Exit-Code ist das, worauf CI reagiert.",{"type":107,"content":168},[169,170,172],"Der Runner arbeitet parallel und cached abgeschlossene Aufrufe, deshalb liest ein erneuter Lauf nach kleiner Änderung überwiegend den Cache. Die Ergebnisse öffnen sich in einem lokalen Web-Viewer als seitliche Matrix, und die CLI kann JSON, YAML, CSV oder HTML schreiben. Die Exit-Codes sind die Integrationsstelle: ",{"tag":120,"children":171},[138]," liefert 100, sobald mindestens ein Test fehlschlägt oder die Pass-Rate unter PROMPTFOO_PASS_RATE_THRESHOLD fällt, und 1 für jeden anderen Fehler.",{"type":114,"level":115,"id":88,"text":89},{"type":107,"content":175},[176],"Installation mit npm, brew oder pip, oder ohne Installation mit npx promptfoo@latest. Eine minimale Konfiguration, die zwei Modelle mit einem übersetzten Satz vergleicht:",{"type":120,"code":178},"# promptfooconfig.yaml: two models, one prompt, three checks\nprompts:\n  - 'Translate this sentence into {{language}}: {{input}}'\n\nproviders:\n  - openai:gpt-6-sol\n  - openai:gpt-6-luna\n\ntests:\n  - vars:\n      language: French\n      input: Hello world\n    assert:\n      - type: contains\n        value: 'Bonjour'\n      - type: llm-rubric\n        value: 'the translation is idiomatic and complete'\n      - type: cost\n        threshold: 0.01",{"type":107,"content":180},[181,183,184,187],{"tag":120,"children":182},[138]," führt jede Zelle dieser Matrix aus und gibt eine Pass-Rate aus; ",{"tag":120,"children":185},[186],"promptfoo view"," öffnet den seitlichen Vergleich im Browser. Das Flag -r tauscht Provider auf der Kommandozeile ohne Dateiänderung, so wie die Dokumentation einen Kandidaten gegen eine Basislinie prüft.",{"type":189,"variant":190,"title":191,"body":192},"callout","tip","Erst cachen, dann iterieren",[193],[194],"Der Runner hasht Konfiguration, Variablen und Provider-Parameter, deshalb wird eine unveränderte Zelle beim erneuten Lauf nicht erneut an die API geschickt. Modellbewertete Assertions sind die Ausnahme: Sie werden zur Laufzeit beurteilt und kosten pro Zelle einen Judge-Aufruf.",{"type":114,"level":115,"id":91,"text":92},{"type":107,"content":197},[198,201,202,205,206,209,210,213],{"tag":120,"children":199},[200],"promptfoo redteam init"," schreibt eine Red-Team-Konfiguration, ",{"tag":120,"children":203},[204],"redteam setup"," führt durch das Ziel, ",{"tag":120,"children":207},[208],"redteam run"," generiert und führt die Angriffe aus, und ",{"tag":120,"children":211},[212],"redteam report"," stellt die Funde dar. Die Dokumentation beschreibt jedes Plugin als ein trainiertes Modell, das Payloads für eine bestimmte Schwäche erzeugt, nicht als feste Wortliste.",{"type":125,"ordered":126,"items":215},[216,218,220,222],[217],"157 Plugins in sechs Kategorien: Marke, Compliance und Recht, Datensatz, Sicherheit und Zugriffskontrolle, Trust und Safety sowie eigene Tests",[219],"Sicherheits-Plugins ordnen den OWASP Top 10 for LLMs, der OWASP API Security Top 10 und MITRE ATLAS zu",[221],"Compliance-Plugins ordnen NIST AI RMF, ISO\u002FIEC 42001, DSGVO Artikel 5 und EU AI Act Artikel 5 zu",[223],"Plugins werden pro Ziel in der Konfiguration gewählt, sodass sich ein Scan auf die Kategorien eingrenzen lässt, die eine Anwendung tatsächlich offenlegt",{"type":114,"level":225,"id":226,"text":227},3,"framework-mappings","Framework-Zuordnungen",{"type":107,"content":229},[230,231,234,235,234,238,234,241,234,244,247],"Für Teams, die Abdeckung statt eines Fundhaufens vorzeigen müssen, sind die Framework-IDs der nützliche Teil: ",{"tag":120,"children":232},[233],"nist:ai:measure:1.1",", ",{"tag":120,"children":236},[237],"owasp:llm:01",{"tag":120,"children":239},[240],"iso:42001:privacy",{"tag":120,"children":242},[243],"gdpr:art5",{"tag":120,"children":245},[246],"eu:ai-act:art5",". Ein nach diesen IDs gruppierter Bericht ist ein Abdeckungsargument, dem ein Prüfer folgen kann. Das ist Compliance-Mechanik, kein Compliance-Versprechen: Das Tool zeigt, welche Probes gelaufen sind, nicht, dass das Produkt die Regelung erfüllt.",{"type":107,"content":249},[250],"Die Gratis-Obergrenze liegt bei 10.000 Probes pro Monat, und die Plugins, die zum Erzeugen und Bewerten von Payloads Inference brauchen, verbrauchen sie. Danach verweist die Preisübersicht für individuelle Limits auf Enterprise.",{"type":114,"level":115,"id":94,"text":95},{"type":107,"content":253},[254],"Am 9. März 2026 gab Promptfoo bekannt, dass eine Übernahme durch OpenAI vereinbart worden war. Der Beitrag versprach, dass das Produkt Open Source und MIT-lizenziert bleibt und das Team die Kunden weiter betreut, und nannte den Abschluss als von üblichen Bedingungen abhängig. Das Repository trägt jetzt die Zeile, dass Promptfoo Teil von OpenAI ist, und die Dokumentation wurde zuletzt am 7. Oktober 2026 aktualisiert.",{"type":107,"content":256},[257],"Die Lizenz hält den Code forkbahr; sie hält die Roadmap nicht neutral. Das technische Bedenken ist eng und konkret: Ein Tool, dessen Aufgabe es ist zu beantworten, welches Modell ausgeliefert wird, gehört jetzt einem der Kandidaten, und seine Red-Team-, Guardrail- und Model-Security-Produkte stehen neben der Agentenplattform von OpenAI. Die MIT-Lizenz verhindert keinen Fork, aber sie verpflichtet das Unternehmen auch nicht, den Modellvergleich voranzubringen.",{"type":114,"level":115,"id":97,"text":98},{"type":107,"content":260},[261],"Die erste Schwäche ist die Konfiguration selbst. Eine Datei mit einem Dutzend Prompts und vierzig Testfällen ist lesbar; eine mit vierhundert Fällen nicht, und alles, was eine Schleife, einen Join mit Produktionsdaten oder einen eigenen Parser braucht, führt in JavaScript-Assertion-Callbacks zurück, und damit ist die vermiedene Sprache zurück. Die zweite ist Bewertungsdrift: modellbewertete Assertions wandern zwischen Judge-Versionen, sodass eine grüne Suite amber wird, weil sich der Bewerter bewegt hat. Die dritte ist der Umfang, denn ein Security-Team, das einen Audit-Trail braucht, kauft Enterprise, egal wie gut die Evals sind.",{"type":263,"head":264,"rows":273},"table",[265,267,269,271],[266],"Tool",[268],"Oberfläche",[270],"Kostenlose Stufe",[272],"Kostenmodell",[274,282,291,299],[275,276,278,280],[4],[277],"YAML und CLI, läuft lokal",[279],"Volle Evals, 10k Red-Team-Probes pro Monat",[281],"MIT; Enterprise auf Anfrage",[283,285,287,289],[284],"LangSmith",[286],"Gehostete Plattform plus SDK",[288],"1 Seat und 5k Base-Traces pro Monat",[290],"Plus ab 39 USD pro Seat und Monat",[292,294,295,297],[293],"Braintrust",[286],[296],"Unbegrenzte Nutzer, 1 GB verarbeitete Daten",[298],"Pro mit 249 USD pro Monat",[300,302,304,306],[301],"DeepEval",[303],"Python, Pytest-Stil",[305],"Das gesamte Framework",[307],"Apache 2.0; dahinter eine gehostete Plattform",{"type":107,"content":309},[310],"Das Geschäftsmodell ist ein kostenloser Harness mit einer bezahlten Kontrollebene. Kontinuierliches Monitoring, ein zentrales Dashboard, eigene Plugins, organisationsweite Angriffsprofile, SSO, gespeicherte Ziele, durchsuchbare Historie und die API sind Enterprise-Zeilen, und On-Premise-Deployment fügt ein zweites Angebot hinzu. Ein Solo-Entwickler braucht das nie; ein Team, das belegen muss, was es im letzten Quartal getestet hat, schon.",{"type":189,"variant":312,"title":313,"body":314},"warn","Vertrauen in den Bewerter",[315],[316],"Modellbewertete Assertions liefern einen Score, keine Messung. Fixieren Sie das Judge-Modell, halten Sie eine kleine von Menschen gelabelte Stichprobe in der Suite und führen Sie sie bei jeder Änderung des Bewerters erneut aus; sonst misst die Pass-Rate den Bewerter so sehr wie den Prompt.",{"type":114,"level":115,"id":100,"text":101},{"type":107,"content":319},[320],"Promptfoo ist ein guter lokaler Harness mit einem ernsthaften Sicherheitsteil. Es ist schnell, prüfbar und ehrlich in dem, was es misst, und die Red-Team-Abdeckung ist inzwischen konkret genug, um darüber zu streiten. Die offene Frage ist nicht die Lizenz, die MIT bleibt, sondern wer entscheidet, welche Modelle das Tool überhaupt bemerkt.",{"type":125,"ordered":165,"items":322},[323,325,327,329,331],[324],"Nehmen Sie es, wenn Sie Prompt- und Modelländerungen in CI als Textdiffs gateen wollen, mit einem Exit-Code, der den Job fehlschlagen lässt.",[326],"Nehmen Sie es, wenn Sie vor dem Release adversariales Testen brauchen und es im selben Pull Request wie Ihre Qualitäts-Evals reviewed haben wollen.",[328],"Verzichten Sie darauf, wenn Sie einen gehosteten Dienst brauchen, denn Dashboards, geteilte Historie, Scan-Suche und API gibt es nur in Enterprise.",[330],"Verzichten Sie darauf, wenn Ihre Evaluierungslogik echten Code braucht, denn ein Python-Framework kostet weniger Aufwand als eine YAML-Datei, die sich in eine Schleife hineinzwängen muss.",[332],"Halten Sie Ihre Testdaten portabel: Die Konfiguration ist MIT und forkbahr, aber ein Modellvergleichswerkzeug, das einem der Kandidaten gehört, ist ein Neutralitätsproblem, das die Lizenz nicht löst.",{"type":334,"content":335},"quote",[336],"Eine Suite, die man im Pull Request lesen kann, schlägt ein Dashboard, durch das man klicken muss, und promptfoo ist auf dieser Prämisse gebaut. Der neue Eigentümer ist der Grund, Exit-Code und Testdaten portabel zu halten.",{"type":114,"level":115,"id":103,"text":104},{"type":125,"ordered":165,"items":339},[340,345,349,353,357,361,365,369],[341],{"tag":342,"href":28,"children":343},"a",[344],"Promptfoo-Dokumentation: Intro",[346],{"tag":342,"href":31,"children":347},[348],"Promptfoo-Preise: Stufenvergleich",[350],{"tag":342,"href":34,"children":351},[352],"Promptfoo-Dokumentation: Erste Schritte",[354],{"tag":342,"href":37,"children":355},[356],"Promptfoo-Dokumentation: Kommandozeile (Exit-Codes)",[358],{"tag":342,"href":40,"children":359},[360],"Promptfoo-Dokumentation: Red-Team-Plugins",[362],{"tag":342,"href":43,"children":363},[364],"Promptfoo-Dokumentation: Assertions und Metriken",[366],{"tag":342,"href":46,"children":367},[368],"Promptfoo-Repository auf GitHub (MIT-Lizenz)",[370],{"tag":342,"href":49,"children":371},[372],"Promptfoo-Blog: Promptfoo is joining OpenAI (9. März 2026)",[374,431,498,559],{"slug":375,"published":376,"minutes":377,"category":7,"tags":378,"keywords":384,"about":398,"sources":406,"cover":425,"og":426,"expertise":52,"locales":427,"lang":55,"title":428,"description":429,"coverAlt":430},"deepseek-v4-1-flash-1017","2026-10-17",15,[379,380,381,382,383],"DeepSeek","Open-weight models","KV cache","Mixture of experts","LLM cost",[385,386,387,388,389,390,391,392,393,394,395,396,397],"DeepSeek V4.1 Flash 1017","DeepSeek V4.1 Flash","Causal Encoder-Decoder","Compressed Sparse Attention 2","CSA2","FP4 KV cache","KV cache compression","SWA Bounded Replay","Engram conditional memory","DSpark speculative decoding","DeepSeek pricing","DeepSWE benchmark","open-weight coding model",[399,401,403],{"name":379,"url":400},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FDeepSeek",{"name":382,"url":402},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FMixture_of_experts",{"name":404,"url":405},"Transformer (deep learning architecture)","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FTransformer_(deep_learning_architecture)",[407,410,413,416,419,422],{"title":408,"url":409},"DeepSeek-AI: DeepSeek-V4.1-Flash: Pushing the Limits of KV Cache Compression (arXiv:2609.19969)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2609.19969",{"title":411,"url":412},"Hugging Face: deepseek-ai\u002FDeepSeek-V4.1-Flash-1017 model card","https:\u002F\u002Fhuggingface.co\u002Fdeepseek-ai\u002FDeepSeek-V4.1-Flash-1017",{"title":414,"url":415},"OpenRouter: DeepSeek V4.1 Flash 1017, pricing and providers","https:\u002F\u002Fopenrouter.ai\u002Fdeepseek\u002Fdeepseek-v4.1-flash-1017",{"title":417,"url":418},"The Decoder: Deepseek V4.1 Flash 1017 beats larger rivals in agentic tasks while once again massively cutting per-task costs","https:\u002F\u002Fthe-decoder.com\u002Fdeepseek-v4-1-flash-1017-beats-larger-rivals-in-agentic-tasks-while-once-again-massively-cutting-per-task-costs\u002F",{"title":420,"url":421},"AI Weekly: DeepSeek opens V4.1-Flash-1017 weights and $0.75 Search API","https:\u002F\u002Faiweekly.co\u002Falerts\u002Fdeepseek-opens-v41-flash-1017-weights-and-075-search-api",{"title":423,"url":424},"DeepSeek on X: DeepSeek-V4.1-Flash-1017 announcement","https:\u002F\u002Fx.com\u002Fdeepseek_ai\u002Fstatus\u002F2111375640717033777","\u002Fimages\u002Fblog\u002Fdeepseek-v4-1-flash-1017\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fdeepseek-v4-1-flash-1017\u002Fog.jpg",[54,55,56],"DeepSeek V4.1 Flash 1017: 890 Byte KV-Cache pro Token, und was ein Agent davon hat","Technischer Deep Dive zu DeepSeek V4.1 Flash 1017: Encoder-Decoder-Aufteilung, CSA2-Cache-Sharing, FP4-KV-Cache, Benchmarks und die echten Kosten pro Agenten-Task.","Links ein hoher Stapel dünner Karten, ein Pfeil, rechts dieselben Karten auf ein Viertel der Höhe zusammengepresst.",{"slug":432,"published":376,"minutes":6,"category":7,"tags":433,"keywords":439,"about":451,"sources":461,"cover":492,"og":493,"expertise":52,"locales":494,"lang":55,"title":495,"description":496,"coverAlt":497},"llm-rate-limits-retries-provider-fallback",[434,435,436,437,438],"Rate limits","Retries","Fallback","Reliability","LLM gateway",[440,441,442,443,444,445,446,447,448,449,450],"llm rate limit handling","429 too many requests llm api","exponential backoff with jitter","anthropic 529 overloaded error","openai rate limit retry","llm provider fallback","litellm fallbacks","retry-after header","llm circuit breaker","multi provider llm failover","claude api rate limits",[452,455,458],{"name":453,"url":454},"Token bucket","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FToken_bucket",{"name":456,"url":457},"Exponential backoff","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FExponential_backoff",{"name":459,"url":460},"Circuit breaker design pattern","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCircuit_breaker_design_pattern",[462,465,468,471,474,477,480,483,486,489],{"title":463,"url":464},"Claude Platform Docs: Rate limits","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fapi\u002Frate-limits",{"title":466,"url":467},"Claude Platform Docs: API errors","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fapi\u002Ferrors",{"title":469,"url":470},"OpenAI API Docs: Rate limits","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Frate-limits",{"title":472,"url":473},"AWS Builders Library: Timeouts, retries and backoff with jitter","https:\u002F\u002Fbuilder.aws.com\u002Fcontent\u002F3EumjoZascWd1oZiEgL8ORlv3qE\u002Ftimeouts-retries-and-backoff-with-jitter",{"title":475,"url":476},"MDN: Retry-After header","https:\u002F\u002Fdeveloper.mozilla.org\u002Fen-US\u002Fdocs\u002FWeb\u002FHTTP\u002FReference\u002FHeaders\u002FRetry-After",{"title":478,"url":479},"Martin Fowler: Circuit Breaker (2014)","https:\u002F\u002Fmartinfowler.com\u002Fbliki\u002FCircuitBreaker.html",{"title":481,"url":482},"LiteLLM Docs: Router, retries and cooldowns","https:\u002F\u002Fdocs.litellm.ai\u002Fdocs\u002Frouting",{"title":484,"url":485},"LiteLLM Docs: Proxy fallbacks and reliability","https:\u002F\u002Fdocs.litellm.ai\u002Fdocs\u002Fproxy\u002Freliability",{"title":487,"url":488},"OpenRouter Docs: Model fallbacks","https:\u002F\u002Fopenrouter.ai\u002Fdocs\u002Fguides\u002Frouting\u002Fmodel-fallbacks",{"title":490,"url":491},"AI SDK Docs: Settings (maxRetries, timeout)","https:\u002F\u002Fai-sdk.dev\u002Fdocs\u002Fai-sdk-core\u002Fsettings","\u002Fimages\u002Fblog\u002Fllm-rate-limits-retries-provider-fallback\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fllm-rate-limits-retries-provider-fallback\u002Fog.jpg",[54,55,56],"LLM-Rate-Limits in Produktion: Retries, Backoff und Provider-Fallback","Wie LLM-Rate-Limits funktionieren, welche Fehler man wiederholt, Backoff mit Jitter, Retries in nur einer Schicht und Fallback-Ketten ohne kaputte Ausgaben.","Kleine Quadrate steigen drei Stufen zu einem breiten Rechteck, dahinter zwei weitere in einer Reihe.",{"slug":499,"published":376,"minutes":500,"category":7,"tags":501,"keywords":507,"about":518,"sources":528,"cover":553,"og":554,"expertise":52,"locales":555,"lang":55,"title":556,"description":557,"coverAlt":558},"prompt-versioning-management",8,[502,503,504,505,506],"Prompt management","Versioning","LLMOps","Evals","Langfuse",[508,509,510,511,512,513,514,515,516,517],"prompt versioning","prompt management","prompt registry","version control for prompts","langfuse prompt management","mlflow prompt registry","prompts in git","openai prompt object deprecation","prompt rollback production","prompt ci evaluation",[519,522,525],{"name":520,"url":521},"Prompt engineering","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPrompt_engineering",{"name":523,"url":524},"Version control","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FVersion_control",{"name":526,"url":527},"Continuous integration","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FContinuous_integration",[529,532,535,538,541,544,547,550],{"title":530,"url":531},"OpenAI API Docs: Migrate from prompt objects","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fprompting\u002Fmigrate-from-prompt-object",{"title":533,"url":534},"OpenAI API Docs: Prompt engineering (reusable prompts deprecation note)","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fprompt-engineering",{"title":536,"url":537},"Langfuse Docs: Prompt version control","https:\u002F\u002Flangfuse.com\u002Fdocs\u002Fprompt-management\u002Ffeatures\u002Fprompt-version-control",{"title":539,"url":540},"Langfuse Docs: Prompt caching in the SDKs","https:\u002F\u002Flangfuse.com\u002Fdocs\u002Fprompt-management\u002Ffeatures\u002Fcaching",{"title":542,"url":543},"Langfuse Docs: Link prompts to traces","https:\u002F\u002Flangfuse.com\u002Fdocs\u002Fprompt-management\u002Ffeatures\u002Flink-to-traces",{"title":545,"url":546},"MLflow Docs: Prompt Registry","https:\u002F\u002Fmlflow.org\u002Fdocs\u002Flatest\u002Fgenai\u002Fprompt-registry\u002F",{"title":548,"url":549},"Promptfoo Docs: GitHub Action","https:\u002F\u002Fwww.promptfoo.dev\u002Fdocs\u002Fintegrations\u002Fgithub-action\u002F",{"title":551,"url":552},"Claude Platform Docs: Prompt caching","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fprompt-caching","\u002Fimages\u002Fblog\u002Fprompt-versioning-management\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fprompt-versioning-management\u002Fog.jpg",[54,55,56],"Prompt-Versionierung in Produktion: Git, Registries, Labels und Rollbacks","Prompts in Produktion versionieren: was zu einer Version gehört, Git oder Prompt-Registry, Labels und Rollbacks, Eval-Gates in CI und Folgen für Caches.","Fünf aufrechte Karten in einer Reihe, die dritte schwenkt an einem Bogenpfeil zurück, ein Tor vor der letzten.",{"slug":560,"published":376,"minutes":561,"category":7,"tags":562,"keywords":567,"about":578,"sources":588,"cover":609,"og":610,"expertise":52,"locales":611,"lang":55,"title":612,"description":613,"coverAlt":614},"llm-batch-api-offline-workloads",9,[563,564,504,565,566],"Batch API","Cost","Prompt caching","Data pipelines",[568,569,570,571,572,573,574,575,576,577],"llm batch api","anthropic message batches api","openai batch api","gemini batch mode","batch inference llm cost","batch api 50 percent discount","openai flex processing","bedrock batch inference","llm offline processing","batch api prompt caching",[579,582,585],{"name":580,"url":581},"Batch processing","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBatch_processing",{"name":583,"url":584},"JSON Lines","https:\u002F\u002Fjsonlines.org\u002F",{"name":586,"url":587},"Large language model","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FLarge_language_model",[589,592,594,595,598,601,603,606],{"title":590,"url":591},"Claude Platform Docs: Batch processing","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fbuild-with-claude\u002Fbatch-processing",{"title":593,"url":464},"Claude Platform Docs: Rate limits (Message Batches API)",{"title":551,"url":552},{"title":596,"url":597},"OpenAI API Docs: Batch API","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fbatch",{"title":599,"url":600},"OpenAI API Docs: Flex processing","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fflex-processing",{"title":602,"url":470},"OpenAI API Docs: Rate limits (batch queue limits)",{"title":604,"url":605},"Google AI for Developers: Gemini Batch API","https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fdocs\u002Fbatch-api",{"title":607,"url":608},"Amazon Bedrock User Guide: Batch inference","https:\u002F\u002Fdocs.aws.amazon.com\u002Fbedrock\u002Flatest\u002Fuserguide\u002Fbatch-inference.html","\u002Fimages\u002Fblog\u002Fllm-batch-api-offline-workloads\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fllm-batch-api-offline-workloads\u002Fog.jpg",[54,55,56],"LLM-Batch-APIs: Inferenz zum halben Preis für Arbeit, die warten kann","Wann sich die Batch-APIs von Anthropic, OpenAI und Gemini lohnen, wie Limits, Zuordnung und Fehler funktionieren und wie sich Rabatte mit Caching addieren.","Eine breite Kiste mit acht kleinen Quadraten, Zulauf von links, ein langer Pfeil kehrt zurück.",1792261157962]