Bilderzeugung per Relay
Verwenden Sie das Skript relay.sh im Ordner dieser Fähigkeit (demselben Ordner wie diese SKILL.md). Es liest die Relay-URL und das Token aus der danebenliegenden Datei relay.env (oder aus IMAGE_RELAY_URL / IMAGE_RELAY_TOKEN, falls gesetzt), ruft das Relay auf und speichert die Bilder als Dateien. Führen Sie es mit bash und dem vollständigen Pfad aus.
Geben Sie niemals das Token oder relay.env aus, zeigen Sie es nicht an und setzen Sie es niemals in eine Befehlszeile.
Generieren
bash /pfad/zu/image-gen/relay.sh generate "Ein Aquarellfuchs im verschneiten Wald" --aspect 16:9
Optionen:
--aspect R: eines von 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9--n N: Anzahl der Bilder (1-4)--model M: nur, wenn der Benutzer nach einem bestimmten Modell fragt; führen Sierelay.sh modelsaus, um die zulässigen Modelle aufzulisten--out VERZ: wohin gespeichert werden soll (Standard:/mnt/user-data/outputs, falls vorhanden, ansonsten das aktuelle Verzeichnis)
Die Ausgabezeilen sehen so aus: saved: /pfad/abc123.jpg (512345 bytes, relay file: abc123.jpg). Zeigen Sie die gespeicherten Dateien dem Benutzer an oder hängen Sie sie an. Behalten Sie die Namen der relay file für spätere Bearbeitungen.
Warten auf Ergebnisse
Die Generierung kann Minuten dauern, daher führt das Relay sie als Hintergrundjob aus. relay.sh generate sendet den Job ab und überprüft etwa alle 30 Sekunden (das Intervall, das das Relay vorgibt) bis zu 90 Sekunden lang auf Ergebnisse. Wenn das Bild fertig ist, erhalten Sie die üblichen saved:-Zeilen.
Wenn es pending: job <id> ... ausgibt, läuft der Job noch im Relay und ist nicht verloren. Warten Sie die angegebene Anzahl von Sekunden (z. B. sleep 30) und führen Sie dann Folgendes aus:
bash /pfad/zu/image-gen/relay.sh result <id>
Während des Wartens kann das Skript mitteilen, dass der Job „geprüft wird“ (das Relay überprüft noch die Anfrage) oder „angenommen, wird generiert“. Wiederholen Sie dies, bis saved:-Zeilen oder ein Fehler ausgegeben werden. Senden Sie die Aufforderung nicht erneut, während ein Job aussteht: Das würde ein zweites Bild generieren (und berechnen). --wait SEKUNDEN ändert, wie lange ein Aufruf wartet (Standard: 90).
Bearbeiten oder Referenzbilder verwenden
Übergeben Sie die Bilddateien des Benutzers mit --image (wiederholbar, bis zu 4 insgesamt; PNG, JPEG, WebP oder GIF, max. 10 MB pro Datei):
bash /pfad/zu/image-gen/relay.sh generate "Mach den Himmel lila, behalte alles andere bei" --image /pfad/zu/photo.jpg
Um ein früher im Gespräch generiertes Bild zu verfeinern, übergeben Sie seinen Relay-Dateinamen mit --ref (schneller als erneutes Hochladen; Relay-Dateien laufen nach 24 Stunden ab):
bash /pfad/zu/image-gen/relay.sh generate "Füge oben rechts einen kleinen Mond hinzu" --ref abc123.jpg
--ref akzeptiert auch eine https://-Bild-URL.
Aufforderungen
Schreiben Sie eine spezifische Aufforderung, die das Motiv, den Stil, die Komposition, die Beleuchtung und die Farben abdeckt. Geben Sie bei Bearbeitungen an, was geändert und was beibehalten werden soll.
Fehler
Das Skript gibt error: HTTP <code> <code_name>: <message> aus:
rate_limited: Warten Sie die angegebenen Sekunden und wiederholen Sie es dann einmal.model_not_allowed,invalid_aspect_ratio,invalid_n: Korrigieren Sie die Option und wiederholen Sie es.invalid_input_images/ 413: Das Bild ist kein unterstützter Typ oder zu groß; konvertieren oder verkleinern Sie es.upstream_error(z. B. „nicht rechtzeitig geantwortet“): Das Relay hat bereits auf seiner Seite wiederholt. Informieren Sie den Benutzer, senden Sie es dann einmal erneut; schlägt es erneut fehl, brechen Sie ab und melden Sie es.request_rejected: Das Relay hat die Anfrage nicht angenommen (es gibt keinen Grund an). Teilen Sie dem Benutzer mit, dass sie abgelehnt wurde; raten Sie nicht zur Ursache, schreiben Sie die Aufforderung oder Bilder nicht um oder tarnen Sie sie nicht, um daran vorbeizukommen, und senden Sie sie nicht erneut.prompt_rejected: Die Inhaltsrichtlinie des Relay hat die Aufforderung blockiert. Informieren Sie den Benutzer; formulieren Sie die Aufforderung nicht um, um den Filter zu umgehen.image_rejected: Ein Referenzbild wurde durch die Inhaltsrichtlinie blockiert. Informieren Sie den Benutzer; wiederholen Sie es nicht mit demselben Bild und versuchen Sie nicht, es zu tarnen.no_image: Es wurde kein Bild erzeugt; formulieren Sie die Aufforderung um.job_not_found/job_lost: Die Job-ID ist abgelaufen oder der Server hat sie abgebrochen; senden Sie die Aufforderung erneut.could not reach: Der Netzwerkzugriff auf die Relay-Domain ist blockiert. Weisen Sie den Benutzer an, die Domain unter Einstellungen → Fähigkeiten (Netzwerkausgang) zuzulassen.unauthorized: Das Token fehlt, ist falsch oder abgelaufen. Informieren Sie den Benutzer; versuchen Sie nicht, ein anderes Token zu finden.