KI-Dateien sichern: Von der PiAPI-Ausgabe-URL zum dauerhaften Speicher

Eine fertige Generierung liefert ein Ergebnis, doch eine vom Anbieter gehostete URL ist keine dauerhafte Medienbibliothek. Wenn Nutzer Dateien später öffnen, bearbeiten oder herunterladen sollen, kopieren Sie diese in einen von Ihnen kontrollierten Speicher und verfolgen Sie die Kopie getrennt von der Generierung.
1. Die Ausgabe des verwendeten Modells lesen
Rufen Sie die gespeicherte Aufgaben-ID ab und verlangen Sie data.status gleich completed, bevor Sie Dateien extrahieren. data.output unterscheidet sich nach Modell und Aufgabentyp. Nutzen Sie das passende Abrufbeispiel; erwarten Sie nicht in jeder Antwort dieselbe Bild- oder Video-URL auf oberster Ebene.
Die dokumentierte Kling-Antwort enthält beispielsweise ein works-Array mit Videoressourcen. Andere Modelle haben andere Felder. Speichern Sie Aufgaben-ID, Modell, Aufgabentyp, Abschlusszeit und ausgewählten Ressourcenindex mit Ihrem Job, damit eine Wiederholung dasselbe Ergebnis findet.
2. Zügig kopieren und Aufbewahrung je Dienst prüfen
Die PiAPI-Dokumentation zur Ausgabespeicherung beschreibt unterschiedliche Regeln nach Dienst und Speicherort. Einige Einträge nennen kurze Fristen, andere verweisen auf die CDN-Regeln des Anbieters. Die Seite enthält auch ältere Dienste. Übertragen Sie eine Frist nicht auf alle heutigen Modelle und deuten Sie eine fehlende Angabe nicht als unbegrenzte Aufbewahrung.
Starten Sie nach Abschluss per Webhook oder Polling eine Hintergrundkopie. Speichern Sie den Job dauerhaft, bevor Sie den Callback bestätigen. Die folgende Zustandsfolge gehört zu Ihrer Anwendung; sie beschreibt keine Zustände der PiAPI-Aufgaben-API.
generation completed → copy queued → downloading → verified → saved
↘ copy failed → retry copy3. Bytes prüfen, bevor die Datei als gespeichert gilt
Laden Sie die Ergebnis-URL ohne Weitergabe Ihres PiAPI-API-Schlüssels herunter. Begrenzen Sie erlaubte Ziele, validieren Sie Weiterleitungen und setzen Sie Größen- und Zeitlimits. Prüfen Sie HTTP-Status, tatsächliche Bytezahl, erwarteten Medientyp und grundlegende Lesbarkeit. Eine HTML-Fehlerseite mit Status 200 ist kein gespeichertes Video.
Schreiben Sie zunächst ein temporäres Objekt, berechnen Sie eine Prüfsumme und veröffentlichen Sie das endgültige Objekt erst nach erfolgreicher Validierung. Verwenden Sie einen stabilen Schlüssel aus Aufgaben-ID und Ressourcenindex. Erfassen Sie Objektschlüssel, Bytezahl, Prüfsumme und Speicherzeit und stellen Sie eine eigene kontrollierte URL gemäß Ihrer Zugriffsregel bereit.
4. Speicherung unabhängig von Generierung wiederholen
Bei Kopierfehlern bleibt die Generierung abgeschlossen; wiederholen Sie die Kopie, solange die Quelle verfügbar ist. Ein dauerhafter eindeutiger Datensatz verhindert doppelte Medieneinträge. Ist die URL nicht mehr lesbar, rufen Sie die Aufgabe erneut ab und prüfen Sie ihre aktuelle Ausgabe; eine abgelaufene Datei lässt sich dadurch nicht garantiert wiederherstellen. Testen Sie doppelte Ereignisse, Teil-Downloads und nicht verfügbare URLs vor der Bereitstellung.
Quellen: Ausgabespeicherung, Kling-Aufgabenabruf und Webhooks. Dies ist ein Speichermuster für Ihre Anwendung, keine Zusage einer Archivierung durch PiAPI.


