[{"data":1,"prerenderedAt":726},["ShallowReactive",2],{"tool-replicate-de":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":23,"sources":30,"cover":61,"og":62,"expertise":63,"locales":64,"lang":66,"title":68,"description":69,"coverAlt":70,"url":71,"pricing":72,"kind":73,"metaTitle":74,"takeaways":75,"faq":81,"toc":94,"blocks":119,"others":510},"replicate","2026-05-22",10,"web",[9,10,11,12,13],"Model hosting","Serverless GPU","Diffusion","Async jobs","Webhooks",[15,16,17,18,19,20,21,22],"replicate api","replicate vs fal.ai","serverless gpu inference pricing","replicate webhooks","replicate cold start","replicate vs baseten","how to run an open source model in production","replicate prediction api",[24,27],{"name":25,"url":26},"Replicate","https:\u002F\u002Freplicate.com\u002Fdocs",{"name":28,"url":29},"Serverless computing","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FServerless_computing",[31,34,37,40,43,46,49,52,55,58],{"title":32,"url":33},"Replicate pricing","https:\u002F\u002Freplicate.com\u002Fpricing",{"title":35,"url":36},"Replicate docs: About predictions","https:\u002F\u002Freplicate.com\u002Fdocs\u002Ftopics\u002Fpredictions",{"title":38,"url":39},"Replicate docs: Create a prediction","https:\u002F\u002Freplicate.com\u002Fdocs\u002Ftopics\u002Fpredictions\u002Fcreate-a-prediction",{"title":41,"url":42},"Replicate docs: Prediction lifecycle","https:\u002F\u002Freplicate.com\u002Fdocs\u002Ftopics\u002Fpredictions\u002Flifecycle",{"title":44,"url":45},"Replicate docs: Rate limits","https:\u002F\u002Freplicate.com\u002Fdocs\u002Ftopics\u002Fpredictions\u002Frate-limits",{"title":47,"url":48},"Replicate docs: Data retention","https:\u002F\u002Freplicate.com\u002Fdocs\u002Ftopics\u002Fpredictions\u002Fdata-retention",{"title":50,"url":51},"Replicate docs: Verify webhooks","https:\u002F\u002Freplicate.com\u002Fdocs\u002Ftopics\u002Fwebhooks\u002Fverify-webhook",{"title":53,"url":54},"Replicate docs: Official models","https:\u002F\u002Freplicate.com\u002Fdocs\u002Ftopics\u002Fmodels\u002Fofficial-models",{"title":56,"url":57},"fal.ai pricing","https:\u002F\u002Ffal.ai\u002Fpricing",{"title":59,"url":60},"Baseten pricing","https:\u002F\u002Fwww.baseten.co\u002Fpricing\u002F","\u002Fimages\u002Fblog\u002Freplicate\u002Fcover.webp","\u002Fimages\u002Fblog\u002Freplicate\u002Fog.jpg","ai-engineer",[65,66,67],"en","de","hu","Replicate im Test: eine Modell-API pro Sekunde abgerechnet, mit allen scharfen Kanten benannt","Replicate stellt tausende offene Modelle hinter eine Prediction-API und rechnet pro Sekunde Rechenzeit ab. Ein Test zu Cold Boots, Versionsdrift und der Löschung nach einer Stunde.","Ein Request läuft von starting über processing in einen von vier Endzuständen: succeeded, failed, canceled oder aborted.","https:\u002F\u002Freplicate.com","Pay per second of compute","Model hosting API","Replicate im Test: Modellhosting pro Sekunde · Balázs Csorba",[76,77,78,79,80],"Replicate rechnet Modelle aus dem öffentlichen Katalog pro Sekunde Hardwarezeit ab und kostet nichts, solange ein geteiltes Modell untätig ist. Das ist billig für unstetige Last und teuer für alles mit Latenzanspruch.","Jeder Lauf ist ein Prediction-Objekt mit festen Status; der Unterschied zwischen canceled und aborted entscheidet, ob die gelaufene Rechenzeit berechnet wird.","Über die API erzeugte Predictions werden eine Stunde später gelöscht, inklusive Ein- und Ausgaben. Alles, was gebraucht wird, muss vorher kopiert sein.","Nur offizielle Modelle haben ein stabiles Input-Schema. Community-Modelle pflegen ihre Autoren und brauchen eine gepinnte Version plus einen Test.","Ein Deployment pinnt eine Version auf Hardware und eine Instanzspanne. Das entfernt Cold Boots und ersetzt sie durch eine feste Stundenrechnung.",[82,85,88,91],{"q":83,"a":84},"Wofür berechnet Replicate wirklich ab?","Für Modelle im öffentlichen Katalog nach Sekunde der genutzten Hardware, beginnend bei 0,000025 $ für eine kleine CPU und bis 0,001525 $ für eine H100. Offizielle Modelle sind die Ausnahme: abgerechnet wird pro Ausgabebild, pro Videosekunde oder pro Token. Private Modelle laufen auf dedizierter Hardware, man zahlt also auch für Hochlauf und Leerlauf.",{"q":86,"a":87},"Ist Replicate günstiger als eine GPU mieten?","Für spitzenlastige Workloads mit geringer Auslastung ja, weil nur während eines Laufs bezahlt wird und die Kapazität zwischen Kunden geteilt wird. Ab einer gleichmäßigen Last von wenigen Prozent kippt die Rechnung: eine warme T4-Instanz kostet 0,81 $ pro Stunde, also 583 $ für einen dreißigtägigen Monat ohne Leerlauf. Dann ist eine reservierte Instanz bei RunPod oder Lambda der günstigere Vertrag.",{"q":89,"a":90},"Warum braucht meine Replicate-Prediction Minuten bis zum Start?","Das ist ein Cold Boot. Replicate schaltet Modelle ab, die nicht genutzt werden, und der Neustart lädt mehrere Gigabyte Gewichte, was laut Dokumentation mehrere Minuten dauern kann. Offizielle Modelle bleiben warm, und ein Deployment mit min_instances auf 1 beseitigt die Wartezeit für alles andere.",{"q":92,"a":93},"Speichert Replicate meine Eingaben und Ausgaben?","Nicht bei API-Predictions. Eingabeparameter, Ausgabewerte, Ausgabedateien und Logs werden eine Stunde nach dem Anlegen entfernt; eigene Kopien sind laut Doku nötig. Über die Weboberfläche erzeugte Predictions werden dagegen dauerhaft gespeichert, was relevant ist, wenn dasselbe Modell auf beiden Wegen genutzt wird.",[95,98,101,104,107,110,113,116],{"id":96,"title":97},"what-it-is","Was Replicate tatsächlich ist",{"id":99,"title":100},"how-it-works","Wie eine Prediction läuft",{"id":102,"title":103},"getting-started","Erste Schritte",{"id":105,"title":106},"pricing","Was es kostet",{"id":108,"title":109},"security-and-data","Datenaufbewahrung, Tokens und Webhooks",{"id":111,"title":112},"where-it-shingles","Wo es weh tut",{"id":114,"title":115},"verdict","Fazit",{"id":117,"title":118},"sources","Quellen",[120,124,136,139,142,166,167,174,183,212,215,216,223,225,228,230,248,249,252,321,324,327,331,334,347,348,351,381,391,392,395,439,446,449,450,453,466,470,471],{"type":121,"content":122},"paragraph",[123],"Replicate ist eine gehostete Inferenzplattform, die tausende offene und proprietäre Modelle hinter einer einzigen Prediction-API bündelt und nur für die Sekunden abrechnet, in denen eine Maschine den Auftrag tatsächlich ausführt. Die Position ist einfach: Für ein Team, das heute Nachmittag ein neues Bild- oder Videomodell ausprobieren will, ohne eine GPU bereitzustellen, ist das der kürzeste Weg auf dem Markt. Für einen Produktionsendpunkt mit Latenzbudget und planbarer Rechnung ist die Abrechnung pro Sekunde der falsche Vertrag, und die Plattform wird erst dann verteidigbar, wenn eine Version gepinnt und das Modell auf ein Deployment gesetzt ist.",{"type":121,"content":125},[126,127,131,132,135],"Sie liegt zwischen einer eigenen GPU und dem Kauf bei einem Modellanbieter. Auf der einen Seite konkurriert sie mit ",{"tag":128,"href":57,"children":129},"a",[130],"fal.ai"," und ",{"tag":128,"href":60,"children":133},[134],"Baseten",", die Inferenz verkaufen statt einen Katalog; auf der anderen mit dem Mieten einer Maschine bei einem GPU-Broker plus eigenem Container. Was sie nicht ersetzt, ist eine token-abgerechnete LLM-API. Replicate serviert gern ein Llama-Modell auf einer H100, aber niemand rechnet einen Chat-Endpunkt pro Sekunde GPU-Zeit ab.",{"type":137,"level":138,"id":96,"text":97},"heading",2,{"type":121,"content":140},[141],"Drei Dinge teilen sich einen Account und eine API. Erstens einen öffentlichen Katalog von Modellen, die ihre Autoren veröffentlicht haben: Feintunes, Community-Implementierungen, Forschungscode. Zweitens eine Menge offizieller Modelle, die Replicate selbst pflegt, laut Dokumentation über einhundert, die immer warm sind, pro Ausgabeeinheit abgerechnet werden und ein stabiles Input-Schema haben. Drittens private Modelle, die man selbst mit Cog paketiert und auf dedizierter Hardware betreibt, wo man für die gesamte Lebensdauer der Instanz zahlt statt für die Arbeit, die sie leistet.",{"type":143,"ordered":144,"items":145},"list",false,[146,148,150,152,162,164],[147],"Jeder Lauf ist ein Prediction-Objekt mit Eingaben, Ausgaben, Status, Timing-Metriken und einer Cancel-URL, egal was das Modell tut.",[149],"Abrechnung pro Sekunde zu den veröffentlichten Raten: 0,000025 $ für eine kleine CPU, 0,000225 $ für eine T4, 0,001400 $ für eine A100 mit 80 GB, 0,001525 $ für eine H100.",[151],"Offizielle Modelle rechnen pro Ausgabe ab: flux-1.1-pro mit 0,04 $ pro Bild, ideogram-v3-quality mit 0,09 $, deepseek-r1 mit 3,75 $ pro Million Input-Tokens.",[153,157,158,161],{"tag":154,"children":155},"code",[156],"Asynchron"," ist der Standard; synchron wird es mit dem Header ",{"tag":154,"children":159},[160],"Prefer: wait",", der die Anfrage 60 Sekunden offen hält.",[163],"Vorkauf statt Abo. Guthaben gilt ein Jahr ab Kauf und ist nicht erstattungsfähig.",[165],"Apache-2.0-Clients für Node.js, Python, Swift und Go sowie ein gehosteter MCP-Server auf mcp.replicate.com, der der HTTP-API folgt.",{"type":137,"level":138,"id":99,"text":100},{"type":121,"content":168},[169,170,173],"Das Anlegen einer Prediction liefert sofort ein Objekt mit dem Status ",{"tag":154,"children":171},[172],"starting",", und dieses Objekt bleibt die Arbeitseinheit für den Rest des Laufs. Drei Dinge bestimmen dann, wie lange man wartet: ob das Modell warm ist, wie lange das Modell selbst braucht, und ob man pollt, die HTTP-Verbindung offen hält oder auf einen Webhook wartet.",{"type":175,"attrs":176,"inner":180,"caption":181},"diagram",{"viewBox":177,"role":178,"aria-labelledby":179},"0 0 720 320","img","d-rep-t d-rep-d","\u003Ctitle id=\"d-rep-t\">Der Prediction-Lebenszyklus bei Replicate\u003C\u002Ftitle>\u003Cdesc id=\"d-rep-d\">Eine Prediction wird angelegt und läuft von starting nach processing. Processing endet in einem von drei Endzuständen: succeeded, canceled nach einer Frist während der Laufzeit, oder failed. Eine Frist, die vor dem Start abläuft, endet als aborted, was nicht berechnet wird.\u003C\u002Fdesc>\u003Cdefs>\u003Cmarker id=\"rep-arrow\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\">\u003Cpath d=\"M0 0L10 5L0 10z\" class=\"d-head\" \u002F>\u003C\u002Fmarker>\u003C\u002Fdefs>\u003Crect x=\"15\" y=\"40\" width=\"150\" height=\"64\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"90\" y=\"68\" text-anchor=\"middle\" class=\"d-text\">prediction\u003C\u002Ftext>\u003Ctext x=\"90\" y=\"90\" text-anchor=\"middle\" class=\"d-small\">input JSON\u003C\u002Ftext>\u003Crect x=\"195\" y=\"40\" width=\"150\" height=\"64\" rx=\"10\" class=\"d-accent\" \u002F>\u003Ctext x=\"270\" y=\"68\" text-anchor=\"middle\" class=\"d-text\">starting\u003C\u002Ftext>\u003Ctext x=\"270\" y=\"90\" text-anchor=\"middle\" class=\"d-small\">cold boot?\u003C\u002Ftext>\u003Crect x=\"375\" y=\"40\" width=\"150\" height=\"64\" rx=\"10\" class=\"d-accent\" \u002F>\u003Ctext x=\"450\" y=\"68\" text-anchor=\"middle\" class=\"d-text\">processing\u003C\u002Ftext>\u003Ctext x=\"450\" y=\"90\" text-anchor=\"middle\" class=\"d-small\">predict() läuft\u003C\u002Ftext>\u003Crect x=\"555\" y=\"40\" width=\"150\" height=\"64\" rx=\"10\" class=\"d-mint\" \u002F>\u003Ctext x=\"630\" y=\"68\" text-anchor=\"middle\" class=\"d-text\">succeeded\u003C\u002Ftext>\u003Ctext x=\"630\" y=\"90\" text-anchor=\"middle\" class=\"d-small\">output plus metrics\u003C\u002Ftext>\u003Crect x=\"195\" y=\"220\" width=\"150\" height=\"64\" rx=\"10\" class=\"d-sky\" \u002F>\u003Ctext x=\"270\" y=\"248\" text-anchor=\"middle\" class=\"d-text\">aborted\u003C\u002Ftext>\u003Ctext x=\"270\" y=\"270\" text-anchor=\"middle\" class=\"d-small\">nicht berechnet\u003C\u002Ftext>\u003Crect x=\"375\" y=\"220\" width=\"150\" height=\"64\" rx=\"10\" class=\"d-gold\" \u002F>\u003Ctext x=\"450\" y=\"248\" text-anchor=\"middle\" class=\"d-text\">canceled\u003C\u002Ftext>\u003Ctext x=\"450\" y=\"270\" text-anchor=\"middle\" class=\"d-small\">bis hier berechnet\u003C\u002Ftext>\u003Crect x=\"555\" y=\"220\" width=\"150\" height=\"64\" rx=\"10\" class=\"d-gold\" \u002F>\u003Ctext x=\"630\" y=\"248\" text-anchor=\"middle\" class=\"d-text\">failed\u003C\u002Ftext>\u003Ctext x=\"630\" y=\"270\" text-anchor=\"middle\" class=\"d-small\">error payload\u003C\u002Ftext>\u003Cpath d=\"M165 72H193\" class=\"d-line\" marker-end=\"url(#rep-arrow)\" \u002F>\u003Cpath d=\"M345 72H373\" class=\"d-line\" marker-end=\"url(#rep-arrow)\" \u002F>\u003Cpath d=\"M525 72H553\" class=\"d-line\" marker-end=\"url(#rep-arrow)\" \u002F>\u003Cpath d=\"M270 104V216\" class=\"d-line d-dash\" marker-end=\"url(#rep-arrow)\" \u002F>\u003Ctext x=\"282\" y=\"166\" class=\"d-label\">Frist zuerst\u003C\u002Ftext>\u003Cpath d=\"M450 104V216\" class=\"d-line\" marker-end=\"url(#rep-arrow)\" \u002F>\u003Ctext x=\"462\" y=\"166\" class=\"d-label\">cancel\u003C\u002Ftext>\u003Cpath d=\"M510 104V172H630V216\" class=\"d-line\" marker-end=\"url(#rep-arrow)\" \u002F>\u003Ctext x=\"574\" y=\"162\" text-anchor=\"middle\" class=\"d-label\">error\u003C\u002Ftext>\u003Cpath d=\"M195 252H90V108\" class=\"d-line d-dash\" marker-end=\"url(#rep-arrow)\" \u002F>\u003Ctext x=\"100\" y=\"186\" class=\"d-label\">keine Kosten\u003C\u002Ftext>",[182],"Eine Prediction wird angelegt, startet, läuft und endet in einem von vier Endzuständen. Für die Kosten entscheidend ist der Unterschied zwischen canceled, das bis zum Abbruch abgerechnet wird, und aborted, das gar nichts kostet.",{"type":121,"content":184},[185,186,188,189,192,193,196,197,200,201,200,204,207,208,211],"Die Status sind wenige und tragen die betriebliche Information. ",{"tag":154,"children":187},[172]," dauert normalerweise weit unter einer Sekunde; bleibt es länger, ist es ein Cold Boot, und das Laden mehrerer Gigabyte Gewichte kann Minuten dauern. ",{"tag":154,"children":190},[191],"processing"," ist die eigene ",{"tag":154,"children":194},[195],"predict()","-Methode des Modells. Danach beendet einer der Status ",{"tag":154,"children":198},[199],"succeeded",", ",{"tag":154,"children":202},[203],"failed",{"tag":154,"children":205},[206],"canceled"," oder ",{"tag":154,"children":209},[210],"aborted"," den Lauf, und der Unterschied zwischen den letzten beiden ist, ob die Maschine je gestartet ist.",{"type":121,"content":213},[214],"Predictions laufen nach 30 Minuten in einen Timeout, und eine Frist pro Prediction erlaubt der Anwendung, früher aufzugeben. Die Abrechnungsregel folgt dieser Trennung exakt: Eine vor dem Start abgebrochene Prediction wird nicht berechnet, eine abgebrochene nach dem Start für die Sekunden, die sie lief. Das ist ein wirklich gutes Design und zugleich der einzige Grund, warum man eine Frist aggressiv setzen darf.",{"type":137,"level":138,"id":102,"text":103},{"type":121,"content":217},[218,219,222],"Der Node.js-Client fasst den Lebenszyklus in ",{"tag":154,"children":220},[221],"run()"," zusammen. Für ein Modell, das in Sekunden fertig ist, ist das die komplette Integration, sonst gibt es nichts zu schreiben.",{"type":154,"code":224},"import Replicate from \"replicate\";\nimport { writeFile } from \"node:fs\u002Fpromises\";\n\n\u002F\u002F Reads REPLICATE_API_TOKEN from the environment.\nconst replicate = new Replicate();\n\nconst [image] = await replicate.run(\"black-forest-labs\u002Fflux-schnell\", {\n  input: {\n    prompt: \"An astronaut riding a rainbow unicorn, cinematic lighting\",\n  },\n});\n\nawait writeFile(\"output.png\", image);\nconsole.log(\"saved output.png\");",{"type":121,"content":226},[227],"Längere Modelle brauchen den asynchronen Weg, und ein Webhook ist der einzige sinnvolle Weg, das Ergebnis zu erfahren. Zwei Details führen zu Fehlern. Die Signatur deckt den rohen Request-Body ab, die Prüfung muss also vor jedem JSON-Parsing laufen. Und der Client wandelt den Byte-Body vor der HMAC-Berechnung wieder in einen String um, was jede Signaturprüfung stillschweigend brechen würde.",{"type":154,"code":229},"import express from \"express\";\nimport Replicate from \"replicate\";\nimport { createHmac, timingSafeEqual } from \"node:crypto\";\n\nconst replicate = new Replicate();\nconst app = express();\n\n\u002F\u002F Verify first, parse second: the signature covers the raw body bytes.\napp.post(\"\u002Fwebhook\", express.raw({ type: \"application\u002Fjson\" }), (req, res) => {\n  const key = process.env.REPLICATE_WEBHOOK_KEY.replace(\"whsec_\", \"\");\n  const signed = `${req.headers[\"webhook-id\"]}.${req.headers[\"webhook-timestamp\"]}.${req.body}`;\n  const expected = createHmac(\"sha256\", key).update(signed).digest(\"base64\");\n  const seen = String(req.headers[\"webhook-signature\"]).split(\" \").map((p) => p.split(\",\")[1]);\n  const valid = seen.some((sig) => {\n    const a = Buffer.from(sig), b = Buffer.from(expected);\n    return a.length === b.length && timingSafeEqual(a, b);\n  });\n  if (!valid) return res.status(401).end();\n\n  const prediction = JSON.parse(String(req.body));\n  res.sendStatus(204); \u002F\u002F Replicate retries terminal webhooks on 4xx and 5xx.\n  console.log(prediction.id, prediction.status);\n});\n\napp.post(\"\u002Fimage\", async (req, res) => {\n  const prediction = await replicate.predictions.create({\n    model: \"black-forest-labs\u002Fflux-schnell\",\n    input: { prompt: req.body.prompt },\n    webhook: \"https:\u002F\u002Fexample.com\u002Fwebhook\",\n    webhook_events_filter: [\"completed\"],\n  });\n  res.json({ id: prediction.id });\n});",{"type":231,"variant":232,"title":233,"body":234},"callout","note","Die offene Verbindung ist die billigste und die schlechteste Integration",[235],[236,238,239,242,243,207,245,247],{"tag":154,"children":237},[160]," hält die Anfrage standardmäßig 60 Sekunden offen und der Header nimmt einen Wert, ",{"tag":154,"children":240},[241],"Prefer: wait=5"," setzt also ein kürzeres Budget. Danach kommt die Antwort mit dem Status ",{"tag":154,"children":244},[172],{"tag":154,"children":246},[191]," zurück, und man pollt ohnehin.",{"type":137,"level":138,"id":105,"text":106},{"type":121,"content":250},[251],"Der öffentliche Katalog misst Rechenzeit pro Sekunde, und der Satz gehört zur Hardware, nicht zum Modell. Die veröffentlichte Tabelle rechnet zusätzlich einen Stundensatz aus, der zum Vergleich taugt, aber nicht abgerechnet wird. Hochlaufzeit und Leerlauf auf geteilter Kapazität sind kostenlos; nur die Verarbeitungszeit wird berechnet.",{"type":253,"head":254,"rows":263},"table",[255,257,259,261],[256],"Hardware",[258],"Pro Sekunde",[260],"Pro Stunde",[262],"Speicher",[264,275,286,295,304,313],[265,269,271,273],[266],{"tag":154,"children":267},[268],"cpu-small",[270],"0,000025 $",[272],"0,09 $",[274],"2 GB RAM, 1 vCPU",[276,280,282,284],[277],{"tag":154,"children":278},[279],"cpu",[281],"0,000100 $",[283],"0,36 $",[285],"8 GB RAM, 4 vCPU",[287,289,291,293],[288],"Nvidia T4",[290],"0,000225 $",[292],"0,81 $",[294],"16 GB VRAM",[296,298,300,302],[297],"Nvidia L40S",[299],"0,000975 $",[301],"3,51 $",[303],"48 GB VRAM",[305,307,309,311],[306],"Nvidia A100 80 GB",[308],"0,001400 $",[310],"5,04 $",[312],"80 GB VRAM",[314,316,318,320],[315],"Nvidia H100",[317],"0,001525 $",[319],"5,49 $",[312],{"type":121,"content":322},[323],"Offizielle Modelle brechen dieses Muster, und dort wird die Rechnung planbar. flux-1.1-pro kostet 0,04 $ pro Ausgabebild, flux-schnell 3,00 $ pro tausend Bilder, ideogram-v3-quality 0,09 $ und deepseek-r1 wird pro Token abgerechnet. Jedes private Modell dreht das um: Es läuft auf dedizierter Hardware, und man zahlt für Hochlauf, Leerlauf und aktive Zeit gleichermaßen, eine Instanz kostet also auch dann, wenn sie den ganzen Nachmittag niemand aufruft.",{"type":121,"content":325},[326],"Bezahlt wird im Voraus. Guthaben wird vorab gekauft, mit der Nutzung verbraucht, gilt ein Jahr und ist nicht erstattungsfähig. Ist die Balance bei null, wird laufende Infrastruktur abgeschaltet und keine neue Arbeit gestartet. Eine Prediction, die das Guthaben überzieht, wird zum Monatsende über die hinterlegte Zahlungsmethode abgerechnet. Auto-Reload gibt es, mit einer dokumentierten Untergrenze von 5 $ Schwelle und 15 $ Nachschub, und ist der billigste Schutz vor einer Schlange gedrosselter Anfragen.",{"type":137,"level":328,"id":329,"text":330},3,"deployments","Deployments und Cold Boots",{"type":121,"content":332},[333],"Ein Deployment pinnt eine Modellversion auf einen Hardwaretyp und eine Instanzspanne und beantwortet damit das Cold-Boot- und das Leerlaufproblem gleichzeitig. Der Preis ist explizit: Eine dauerhaft warme T4 kostet 0,81 $ pro Stunde, also 583 $ für einen dreißigtägigen Monat ohne Leerlauf, gegenüber nichts für dasselbe Modell mit hundert Aufrufen am Tag auf geteilter Kapazität. Beim Deployment hört die Replicate-Abrechnung auf elastisch zu sein und wird zur Position im Budget.",{"type":143,"ordered":144,"items":335},[336,338,343,345],[337],"Die getestete Version pinnen. Eine neue Modellversion kann dann das Verhalten unter Last nicht mehr ändern.",[339,342],{"tag":154,"children":340},[341],"min_instances"," auf 1 setzen, und der Cold Boot samt mehrerminütigem Gewichts Laden verschwindet.",[344],"Dedizierte Hardware heißt keine Warteschlange mit anderen Nutzern, kostet aber jeden Leerlaufstunde.",[346],"Dieselbe Trennung gilt für offizielle Modelle, die Replicate pflegt und warm hält, und Community-Modelle, die ihre Autoren pflegen und die kalt starten können.",{"type":137,"level":138,"id":108,"text":109},{"type":121,"content":349},[350],"Alles, was über die API geht, ist standardmäßig flüchtig. Für über die API erstellte Predictions nennt die Dokumentation, dass Eingabeparameter, Ausgabewerte, Ausgabedateien und Logs nach einer Stunde entfernt werden und eigene Kopien nötig sind. Über die Weboberfläche erstellte Predictions bleiben dagegen dauerhaft. Diese Asymmetrie ist die überraschendste betriebliche Tatsache der Doku, weil dasselbe Modell je nach Oberfläche in zwei sehr unterschiedlichen Aufbewahrungsregeln steht.",{"type":143,"ordered":144,"items":352},[353,359,361,373,379],[354,355,358],"API-Tokens sind 40 Zeichen lang, beginnen mit ",{"tag":154,"children":356},[357],"r8_",", gehen als Bearer-Token mit, sind pro Umgebung benannt und einzeln widerrufbar.",[360],"Replicate sucht in öffentlichen Repositories nach exponierten Tokens und deaktiviert kompromittierte automatisch, mit einer erklärenden E-Mail. Praktisch, aber auch ein Weg, wie ein Fehlalarm die Produktion stoppt.",[362,363,200,366,131,369,372],"Webhooks tragen ",{"tag":154,"children":364},[365],"webhook-id",{"tag":154,"children":367},[368],"webhook-timestamp",{"tag":154,"children":370},[371],"webhook-signature","; signiert wird die mit Punkten verbundene Kombination, mit HMAC-SHA256.",[374,375,378],"Der Signing-Secret kommt von ",{"tag":154,"children":376},[377],"GET \u002Fv1\u002Fwebhooks\u002Fdefault\u002Fsecret",", und die Doku empfiehlt, ihn zu cachen statt ihn pro Zustellung zu holen.",[380],"Die Grenzen liegen bei 600 Prediction-Erzeugnissen pro Minute und 3.000 Anfragen pro Minute für alle anderen Endpunkte, mit einem 429-Body, der das Reset-Fenster nennt.",{"type":231,"variant":382,"title":383,"body":384},"warn","Zuerst den Webhook-Handler idempotent machen",[385],[386,387,390],"Terminale Webhooks werden mit exponentiellem Backoff wiederholt, der letzte Versuch etwa eine Minute nach Abschluss, und die Doku sagt, dass identische Webhooks mehrfach ankommen können und die Reihenfolge nicht garantiert ist. Ein Handler mit der Annahme exactly-once verliert oder verdoppelt Aufträge. Schlüssel auf ",{"tag":154,"children":388},[389],"prediction.id"," und alles ignorieren, was nach einem Endstatus kommt.",{"type":137,"level":138,"id":111,"text":112},{"type":121,"content":393},[394],"Der Katalog ist das Produkt, und der Katalog ist das Risiko. Ein Community-Modell ist ein Container, den jemand Fremdes veröffentlicht hat: Das Input-Schema kann sich zwischen Versionen ändern, die Autorin oder der Autor kann verschwinden, und Replicates eigene Dokumentation sagt, dass Community-Modelle unterschiedliche Grade an Stabilität, Dokumentation und Support haben können. Nur offizielle Modelle haben eine stabile API, und eine gepinnte Version plus ein Test sind das Mindestmaß für alles, was Kunden sehen.",{"type":253,"head":396,"rows":402},[397,399,400,401],[398],"Dimension",[25],[130],[134],[403,412,421,430],[404,406,408,410],[405],"Abrechnungseinheit",[407],"Pro Sekunde Rechenzeit; offizielle Modelle pro Ausgabe",[409],"Pro Sekunde, pro Bild oder pro 1.000 Tokens",[411],"Pro 1 Mio. Tokens oder pro GPU-Stunde",[413,415,417,419],[414],"Katalog",[416],"Tausende Community- und offizielle Modelle",[418],"Ein kleines, kuratiertes Set optimierter Modelle",[420],"Vor allem Modelle, die man selbst deployed",[422,424,426,428],[423],"Eigenes Modell",[425],"Cog-Container, öffentlich oder privat",[427],"Deployments auf der fal-GPU-Flotte",[429],"Dedizierte Deployments; VPC und Self-Host in der höchsten Stufe",[431,433,435,437],[432],"Serverless-GPU-Satz",[434],"Kein Mietpool, nur Sekundensätze",[436],"H100 ab 2,49 $ pro Stunde auf eigenen Deployments",[438],"Wird pro Deployment angeboten",{"type":121,"content":440},[441,442,445],"Das zweite Problem ist, dass die Rechnung nie die Rechnung ist, die die Finanzabteilung erwartet. Ein Modell mit 0,04 $ pro Bild und eines mit 5,49 $ pro Stunde können beide hinter einer achtlosen Schleife liegen, und die einzige Angabe pro Lauf liefert die API im ",{"tag":154,"children":443},[444],"metrics","-Objekt einer einzelnen Prediction, das standardmäßig niemand aggregiert.",{"type":121,"content":447},[448],"Drittens sind die Client-Bibliotheken unausgewogen. Der Node.js-Client steht bei 1.4.0, der Python-Client bei 1.0.7, eine 2.0-Linie ist noch Beta statt freigegeben. Ein Python-Dienst sollte direkt die HTTP-API ansprechen, statt zu warten, und das OpenAPI-Schema sowie der llms.txt-Endpunkt machen das unangenehm leicht.",{"type":137,"level":138,"id":114,"text":115},{"type":121,"content":451},[452],"Replicate ist das beste Preis-Leistungs-Verhältnis für genau ein Problem: ein offenes Modell zu betreiben, ohne eine GPU zu besitzen. Für alles andere passt es schlecht, und der Grund ist strukturell und nicht ein Frage der Reife. Die Abrechnung pro Sekunde optimiert die Auslastung der Hardware des Anbieters, und die eigene Rechnung ist der Störterm in dieser Optimierung.",{"type":143,"ordered":454,"items":455},true,[456,458,460,462,464],[457],"Teams, die ein neues Bild-, Video- oder Sprachmodell prototypen und diese Woche eine Antwort brauchen.",[459],"Teams, die bereit sind, eine Version zu pinnen, das Input-Schema stabil zu halten und alles in ein hartes Kostenlimit zu wickeln.",[461],"Alle, die Breite an Modellen wollen statt eine Plattform, und akzeptieren, dass der größte Teil dieses Katalogs ohne Wartung ist.",[463],"Nicht wählen für einen interaktiven Endpunkt, in dem Tail-Latenz ein Produktmerkmal ist, und nicht für eine gleichmäßige Last über wenige Prozent Auslastung hinaus, wo eine reservierte GPU schlicht billiger ist.",[465],"Nicht wählen, wenn Eingabedateien geschützte personenbezogene Daten enthalten und ein Ein-Stunden-Fenster nicht der eigenen Richtlinie genügt.",{"type":231,"variant":232,"body":467},[468],[469],"Der Katalog ist ein Supermarkt und ein Deployment ist eine Miete auf einer Maschine. Zu entscheiden, wofür man baut, ist der größere Teil der Arbeit, und die API trifft diese Entscheidung nicht.",{"type":137,"level":138,"id":117,"text":118},{"type":143,"ordered":454,"items":472},[473,476,480,484,488,492,496,500,504,507],[474],{"tag":128,"href":33,"children":475},[32],[477],{"tag":128,"href":36,"children":478},[479],"Replicate Doku: About predictions",[481],{"tag":128,"href":39,"children":482},[483],"Replicate Doku: Create a prediction",[485],{"tag":128,"href":42,"children":486},[487],"Replicate Doku: Prediction lifecycle",[489],{"tag":128,"href":45,"children":490},[491],"Replicate Doku: Rate limits",[493],{"tag":128,"href":48,"children":494},[495],"Replicate Doku: Data retention",[497],{"tag":128,"href":51,"children":498},[499],"Replicate Doku: Verify webhooks",[501],{"tag":128,"href":54,"children":502},[503],"Replicate Doku: Official models",[505],{"tag":128,"href":57,"children":506},[56],[508],{"tag":128,"href":60,"children":509},[59],[511,569,625,672],{"slug":512,"published":513,"minutes":6,"category":7,"tags":514,"keywords":520,"about":528,"sources":532,"cover":562,"og":563,"expertise":63,"locales":564,"lang":66,"title":565,"description":566,"coverAlt":567,"url":531,"pricing":568,"kind":515},"browserbase-stagehand","2026-09-30",[515,516,517,518,519],"Browser automation","Web agents","Headless browsers","Playwright","MCP",[521,522,523,524,525,526,527],"browserbase","stagehand","stagehand vs playwright","browserbase pricing","ai web agent framework","headless browser api","browserbase alternatives",[529],{"name":530,"url":531},"Browserbase","https:\u002F\u002Fwww.browserbase.com",[533,536,539,542,545,548,551,554,557,560],{"title":534,"url":535},"Browserbase pricing","https:\u002F\u002Fwww.browserbase.com\u002Fpricing",{"title":537,"url":538},"Browserbase plans and pricing docs","https:\u002F\u002Fdocs.browserbase.com\u002Fguides\u002Fplans-and-pricing",{"title":540,"url":541},"Stagehand documentation","https:\u002F\u002Fdocs.stagehand.dev\u002F",{"title":543,"url":544},"Stagehand quickstart","https:\u002F\u002Fdocs.stagehand.dev\u002Fv4\u002Ffirst-steps\u002Fquickstart",{"title":546,"url":547},"Stagehand v4 announcement","https:\u002F\u002Fwww.browserbase.com\u002Fblog\u002Fstagehand-v4",{"title":549,"url":550},"Stagehand repository","https:\u002F\u002Fgithub.com\u002Fbrowserbase\u002Fstagehand",{"title":552,"url":553},"Browser Use comparison of the two vendors","https:\u002F\u002Fbrowser-use.com\u002Fposts\u002Fbrowser-use-vs-browserbase",{"title":555,"url":556},"Browser Use pricing","https:\u002F\u002Fwww.browser-use.com\u002Fpricing",{"title":558,"url":559},"Skyvern pricing","https:\u002F\u002Fskyvern.com\u002Fpricing",{"title":518,"url":561},"https:\u002F\u002Fplaywright.dev\u002F","\u002Fimages\u002Fblog\u002Fbrowserbase-stagehand\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fbrowserbase-stagehand\u002Fog.jpg",[65,66,67],"Browserbase und Stagehand im Test: gemietetes Chrome für KI-Agenten","Browserbase vermietet verwaltetes Chrome pro Minute, Stagehand legt Natural-Language-Schritte obendrauf. Was es kostet, wo die Zähler laufen und wann Playwright gewinnt.","Abstrakte Pipeline-Grafik für die Browserbase- und Stagehand-Bewertung","From $20 per month · OSS library free",{"slug":570,"published":513,"minutes":571,"category":7,"tags":572,"keywords":577,"about":584,"sources":592,"cover":616,"og":617,"expertise":63,"locales":618,"lang":66,"title":619,"description":620,"coverAlt":621,"url":622,"pricing":623,"kind":624},"webmcp",11,[573,574,575,576,519],"WebMCP","Agent tools","JSON Schema","Chrome",[570,578,579,580,581,582,583],"webmcp vs mcp","document.modelContext registerTool","webmcp declarative api","browser agent tools","webmcp origin trial","webmcp chrome 149",[585,587,590],{"name":573,"url":586},"https:\u002F\u002Fgithub.com\u002Fwebmachinelearning\u002Fwebmcp",{"name":588,"url":589},"Model Context Protocol","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FModel_Context_Protocol",{"name":575,"url":591},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FJSON_Schema",[593,596,599,602,605,608,611,613],{"title":594,"url":595},"Chrome for Developers: WebMCP (get started)","https:\u002F\u002Fdeveloper.chrome.com\u002Fdocs\u002Fai\u002Fwebmcp",{"title":597,"url":598},"Chrome for Developers: Imperative API","https:\u002F\u002Fdeveloper.chrome.com\u002Fdocs\u002Fai\u002Fwebmcp\u002Fimperative-api",{"title":600,"url":601},"Chrome for Developers: Declarative API","https:\u002F\u002Fdeveloper.chrome.com\u002Fdocs\u002Fai\u002Fwebmcp\u002Fdeclarative-api",{"title":603,"url":604},"Chrome for Developers: WebMCP versus MCP","https:\u002F\u002Fdeveloper.chrome.com\u002Fdocs\u002Fai\u002Fwebmcp\u002Fcompare-mcp",{"title":606,"url":607},"Chrome for Developers: WebMCP tool security","https:\u002F\u002Fdeveloper.chrome.com\u002Fdocs\u002Fai\u002Fwebmcp\u002Fsecure-tools",{"title":609,"url":610},"Chrome for Developers: Build effective tools","https:\u002F\u002Fdeveloper.chrome.com\u002Fdocs\u002Fai\u002Fwebmcp\u002Fbuild-tools",{"title":612,"url":586},"WebMCP explainer and specification draft",{"title":614,"url":615},"WebMCP implementation status","https:\u002F\u002Fgithub.com\u002Fwebmachinelearning\u002Fwebmcp\u002Fblob\u002Fmain\u002Fimplementation-status.md","\u002Fimages\u002Fblog\u002Fwebmcp\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fwebmcp\u002Fog.jpg",[65,66,67],"WebMCP: Tools veröffentlichen statt Pixel ausliefern","WebMCP lässt eine Seite typisierte, aufrufbare Tools an einen Agenten im Browser publizieren. Was der Standard tut, wie viel heute ausgeliefert ist und wann ein MCP-Server die bessere Wahl bleibt.","Eine Seite registriert typisierte Tools im Browser, ein Browser-Agent ruft eines davon auf, und das Tool läuft in der Seite und aktualisiert deren Oberfläche.","https:\u002F\u002Fgithub.com\u002Fwebmcp","Emerging standard, open","Browser protocol",{"slug":626,"published":627,"minutes":6,"category":7,"tags":628,"keywords":631,"about":639,"sources":643,"cover":665,"og":666,"expertise":63,"locales":667,"lang":66,"title":668,"description":669,"coverAlt":670,"url":641,"pricing":671,"kind":515},"playwright","2026-05-27",[629,515,519,630],"End-to-end testing","Cross-browser",[626,632,633,634,635,636,637,638],"playwright vs selenium","playwright mcp","browser automation testing","playwright test runner","playwright for ai agents","playwright vs cypress","playwright cloud pricing",[640,642],{"name":518,"url":641},"https:\u002F\u002Fplaywright.dev",{"name":588,"url":589},[644,647,650,653,656,659,662],{"title":645,"url":646},"Playwright documentation: installation","https:\u002F\u002Fplaywright.dev\u002Fdocs\u002Fintro",{"title":648,"url":649},"Playwright MCP introduction","https:\u002F\u002Fplaywright.dev\u002Fmcp\u002Fintroduction",{"title":651,"url":652},"Playwright CLI introduction","https:\u002F\u002Fplaywright.dev\u002Fagent-cli\u002Fintroduction",{"title":654,"url":655},"Playwright Test agents","https:\u002F\u002Fplaywright.dev\u002Fdocs\u002Ftest-agents",{"title":657,"url":658},"npm package metadata for @playwright\u002Ftest","https:\u002F\u002Fregistry.npmjs.org\u002F@playwright\u002Ftest\u002Flatest",{"title":660,"url":661},"Microsoft Learn: Playwright Workspaces free trial","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fapp-testing\u002Fplaywright-workspaces\u002Fhow-to-try-playwright-workspaces-free",{"title":663,"url":664},"Azure App Testing pricing","https:\u002F\u002Fazure.microsoft.com\u002Fen-us\u002Fpricing\u002Fdetails\u002Fapp-testing\u002F","\u002Fimages\u002Fblog\u002Fplaywright\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fplaywright\u002Fog.jpg",[65,66,67],"Playwright: eine Browser-API für Tests, Skripte und Agents","Playwright steuert Chromium, Firefox und WebKit über eine Apache-2.0-API: Test-Runner, agent-taugliche CLI und MCP-Server. Was es kostet und wo es hapert.","Ein Playwright-Testlauf: eine Spec-Datei, ein Runner mit drei Browser-Engines und ein Agent, der Accessibility-Snapshots liest.","Apache-2.0 · cloud paid",{"slug":673,"published":627,"minutes":6,"category":7,"tags":674,"keywords":679,"about":686,"sources":693,"cover":717,"og":718,"expertise":63,"locales":719,"lang":66,"title":720,"description":721,"coverAlt":722,"url":723,"pricing":724,"kind":725},"elevenlabs",[675,676,677,678],"Text to speech","Voice API","Speech to text","Voice cloning",[673,680,681,682,683,684,685],"elevenlabs api pricing","elevenlabs vs openai tts","text to speech api comparison","elevenlabs flash latency","voice cloning api","eleven v4 model",[687,690],{"name":688,"url":689},"ElevenLabs","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FElevenLabs",{"name":691,"url":692},"Speech synthesis","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSpeech_synthesis",[694,697,700,703,706,708,711,714],{"title":695,"url":696},"ElevenLabs pricing: plans and credits","https:\u002F\u002Felevenlabs.io\u002Fpricing",{"title":698,"url":699},"ElevenAPI pricing: per-product rates","https:\u002F\u002Felevenlabs.io\u002Fpricing\u002Fapi",{"title":701,"url":702},"ElevenLabs documentation: models","https:\u002F\u002Felevenlabs.io\u002Fdocs\u002Fmodels",{"title":704,"url":705},"API reference: create speech","https:\u002F\u002Felevenlabs.io\u002Fdocs\u002Fapi-reference\u002Ftext-to-speech\u002Fconvert",{"title":707,"url":689},"Wikipedia: ElevenLabs",{"title":709,"url":710},"Amazon Polly pricing","https:\u002F\u002Faws.amazon.com\u002Fpolly\u002Fpricing\u002F",{"title":712,"url":713},"OpenAI API pricing","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fpricing",{"title":715,"url":716},"SILMA AI: text to speech price comparison, August 2026","https:\u002F\u002Fsilma.ai\u002Fblog\u002Ftext-to-speech-price-comparison-august-2026","\u002Fimages\u002Fblog\u002Felevenlabs\u002Fcover.webp","\u002Fimages\u002Fblog\u002Felevenlabs\u002Fog.jpg",[65,66,67],"ElevenLabs: Sprachsynthese als API","Ein Review der ElevenLabs-Audio-API: Modellpalette, Latenzangaben, Guthaben- und Zeichenpreise, formatabhängige Stufen, und wo OpenAI und Amazon Polly besser sind.","ElevenLabs-Covermotiv mit Beschriftungen einer Sprach-API-Pipeline","https:\u002F\u002Felevenlabs.io","Free tier · from $5 per month","Voice and audio API",1791383550865]