Konzepte

Ausführungen

Ein Agent in einer Wegwerf-microVM, von der Warteschlange bis zur Abrechnung.

Eine Ausführung ist ein Agent, der eine Aufgabe in einer eigenen microVM bearbeitet. Sie senden einen Prompt, JSON-Eingabe sowie die Dateien und Verbindungen, die er nutzen darf. Ephemeral stellt sie in die Warteschlange, startet eine frische Maschine, zeichnet jeden Schritt auf und zerstört die Maschine, wenn die Ausführung endet.

Woraus eine Ausführung besteht

Jede Ausführung hat einen Prompt und optional eine Eingabe. Der Rest der Definition legt fest, welches Modell sie verwendet, was sie lesen und aufrufen darf, wie lange sie dauern und wie viel sie ausgeben darf. Sie können die gesamte Definition direkt mitsenden oder einen gespeicherten Workflow benennen und nur die Eingabe senden.

POST /v1/runs
{
  "prompt": "Find out why this payment failed. Follow the playbook.",
  "input": { "payment_id": "pay_123" },
  "model": "anthropic/claude-haiku-5.5",
  "files": [{ "file": "playbook.md" }],
  "connections": { "payments": { "ref": "payments-api", "allowed_methods": ["GET"] } },
  "timeout_seconds": 120,
  "shell": false,
  "max_cost_micros": 500000
}

In der microVM kann der Agent die eingebundenen Dateien immer lesen. Bei aktivierter shell, der Standardeinstellung, kann er außerdem Shell-Befehle ausführen und Dateien in seinem Arbeitsverzeichnis schreiben. Jede freigegebene Verbindung fügt Tools hinzu, die er aufrufen kann, und bei aktiviertem Webzugriff kann er Seiten lesen, suchen und öffentliche APIs aufrufen. Die Maschine selbst hat kein Internet. Das Arbeitsverzeichnis wird mit der Maschine verworfen, sodass nichts in die nächste Ausführung übernommen wird.

Lebenszyklus

Eine Ausführung durchläuft diese Status. Die letzten fünf sind final; sobald eine Ausführung einen davon erreicht, ändert sie sich nicht mehr.

StatusBedeutung
reservingNur beim gehosteten Dienst. Das Guthaben für das Budget der Ausführung wird reserviert.
queuedWartet auf einen freien Worker-Platz.
startingAus der Warteschlange genommen. Definition und Dateien werden geladen.
runningDie microVM startet oder der Agent arbeitet.
succeededDer Agent hat die Aufgabe beendet und eine Ausgabe geliefert.
failedDer Worker ist fehlgeschlagen oder das Guthaben konnte nicht reserviert werden. Das Feld error nennt den Grund.
cancelledJemand hat die Ausführung abgebrochen.
timed_outDie Ausführung hat ihr Zeitlimit erreicht, bevor sie fertig war.
interruptedDie Engine wurde während der Ausführung neu gestartet oder die Zulassung wurde nicht abgeschlossen.

Ausführungen verlassen die Warteschlange in der Reihenfolge ihrer Erstellung. Eine selbst gehostete Installation führt standardmäßig zwei gleichzeitig aus; die übrigen warten in queued. Das Zeitlimit zählt ab dem Moment, in dem eine Ausführung die Warteschlange verlässt, die Wartezeit verbraucht es also nicht.

Limits

LimitWert
timeout_seconds1 bis 3.600. Standard 300.
Prompt128 KiB
Eingabe1 MiB JSON
Dateien32 pro Ausführung, je 1 MiB, insgesamt 4 MiB
Verbindungen16 pro Ausführung
Modellaufrufe100 pro Ausführung
Ausgabe pro ModellantwortDas eigene Limit des Modells, bis zu 32.000 Tokens, gekürzt auf das, was vom Budget noch übrig ist. Eine am Limit abgeschnittene Antwort wird automatisch fortgesetzt, höchstens zweimal.
Webanfragen und Suchen50 pro Ausführung, wenn Webzugriff aktiviert ist
AusgabeBis zu 1 MiB. Eine längere Antwort wird dort abgeschnitten, und die Ausführung vermerkt dies.
EreignisseDie Aufzeichnung speichert bis zu 256 KiB pro Ereignis und 10.000 Ereignisse oder 16 MiB pro Ausführung. Größere Tool-Ergebnisse werden in der Aufzeichnung gekürzt und markiert; der Agent erhält sie weiterhin vollständig. Ist die Aufzeichnung voll, werden spätere Details übersprungen und gezählt. Beides lässt die Ausführung nie fehlschlagen.
max_cost_micros1 bis 100.000.000 (bis zu $100)

Eine Ausführung verfolgen

Es gibt drei Wege, zu erfahren, was eine Ausführung gerade tut und wann sie endet.

  • Fragen Sie GET /v1/runs/{id} ab, bis der Status final ist.
  • Streamen Sie GET /v1/runs/{id}/events. Das ist ein Server-Sent-Events-Stream, der alles bisher Aufgezeichnete wiedergibt und dann live fortfährt, bis die Ausführung endet.
  • Legen Sie für die Ausführung einen Callback fest. Ephemeral sendet eine signierte Anfrage an Ihren Server, sobald die Ausführung einen finalen Status erreicht.

Das Schließen des Ereignis-Streams hat keine Auswirkung auf die Ausführung. Sie können sich mit der zuletzt erhaltenen Ereignis-ID erneut verbinden und von dort aus fortfahren.

Ereignistypen

TypAufgezeichnet, wenn
statusdie Ausführung zu laufen beginnt oder einen finalen Status erreicht.
microvm_startingEphemeral eine microVM anfordert.
microvm_readydie microVM bereit ist.
worker_startedder Agent-Prozess startet. Enthält, ob die Shell aktiviert ist.
connection_readyeine MCP-Verbindung bereit ist, mit den Tools, die die Ausführung aufrufen darf.
tool_startder Agent ein Tool aufruft. Enthält die Argumente.
tool_endein Tool-Aufruf zurückkehrt. Enthält das Ergebnis und ob es ein Fehler war. Ein Ergebnis über 256 KiB wird hier gekürzt und enthält trimmed_from_bytes.
text_deltadas Modell Text streamt, in Blöcken etwa zehnmal pro Sekunde.
model_usageeine Modellantwort endet. Token-Verbrauch, wie vom Worker gemeldet; wird nicht für die Abrechnung verwendet.
usageEphemeral die Kosten eines Modellaufrufs autorisiert oder abgleicht.
connectiondie Engine im Namen der Ausführung eine HTTP-Anfrage oder einen MCP-Tool-Aufruf ausführt.
web_requestdie Engine eine Webanfrage für den Agenten sendet. Enthält die URL, den Status, die Kosten und die Sicherheitsprüfung.
web_searchdie Engine eine Websuche für den Agenten ausführt.
web_refusedeine Webanfrage oder Suche abgelehnt wurde, bevor sie gesendet wurde. Enthält den Grund.
resultder Agent seine endgültige Ausgabe liefert. Das Feld output der Ausführung enthält sie vollständig; dieses Ereignis kann gekürzt sein.
model_call_refusedein Modellaufruf abgelehnt wurde, etwa weil seine Kosten im ungünstigsten Fall das übrige Budget übersteigen. Enthält den Grund.
output_limiteine Antwort das Ausgabelimit des Modells erreicht hat und der Agent gebeten wurde fortzufahren.
output_truncateddie endgültige Ausgabe länger als 1 MiB war und dort abgeschnitten wurde.
events_skippeddie Aufzeichnung der Ausführung voll war und spätere Ereignisse deshalb nicht gespeichert wurden. Enthält die Anzahl.
worker_errorder Worker mit einem Fehler stoppt.
microvm_terminatedDie microVM ist als zerstört bestätigt.
microvm_cleanup_pendingdie Beendigung noch nicht bestätigt werden konnte und erneut versucht wird.
donedie letzte Nachricht im Stream. Enthält das finale Ausführungsobjekt.

Ephemeral entfernt bekannte Zugangsdaten, etwa Verbindungs-Tokens, aus Ereignissen und Ausgaben, bevor es sie speichert. Das genaue Stream-Format zeigt die API-Referenz.

Eine Ausführung abbrechen

POST /v1/runs/{id}/cancel stoppt eine Ausführung im Status reserving, queued, starting oder running. Der Worker wird gestoppt und die microVM beendet. Das Abbrechen einer bereits beendeten Ausführung ändert nichts.

Ein Abbruch macht externe Aktionen nicht rückgängig
Hat der Agent bereits eine API aufgerufen, die etwas verändert hat, etwa eine Erstattung ausgelöst, wird dies durch den Abbruch nicht zurückgenommen. Dasselbe gilt für Ausführungen, die fehlschlagen, ein Zeitlimit erreichen oder unterbrochen werden. Ephemeral wiederholt eine Ausführung nie automatisch, sodass auch ein Nebeneffekt nicht erneut eintritt.

Null-Datenspeicherung

Setzen Sie zero_data_retention bei einer Ausführung oder in einem gespeicherten Workflow auf true, wenn die Aufgabe sensibel ist. Ephemeral zeichnet dann nichts vom Inhalt der Ausführung auf: Sie erhalten nur die Ausgabe.

GespeichertNicht gespeichert
Ausführungs-ID, Organisation, Status, Zeitstempel, Zeitplan, Kosten- und Nutzungszahlen sowie eine allgemeine Fehlerkategorie ohne Text vom Worker.Ereignisse und die Ausgabe nach der Lieferung, Fehlertexte des Workers und die Definition der Ausführung: Prompt, Eingabe, Dateiliste und Verbindungsverweise. Die Definition einer solchen Ausführung kann nicht abgerufen oder erneut gestartet werden.
  • Ereignisse werden weiterhin gestreamt, solange die Ausführung läuft, über GET /v1/runs/{id}/events auf jeder Engine. Sie liegen in einem flüchtigen Speicher und werden wenige Minuten nach dem Ende der Ausführung gelöscht.
  • Die Ausgabe wird einmal geliefert. Das erste GET /v1/runs/{id} nach dem Ende der Ausführung enthält sie und löscht sie. Hat die Ausführung einen Callback, liefert der Callback die Ausgabe, und Lesezugriffe lassen sie bis dahin bestehen. In jedem Fall wird sie spätestens nach einer Stunde gelöscht. output_available und output_expires_at zeigen, ob sie noch vorgehalten wird.
  • Modellaufrufe gehen nur an Anbieter, die Ihre Daten weder speichern noch zum Training verwenden. Ein Modell ohne einen solchen Anbieter wird mit 400 abgelehnt, bevor etwas reserviert wird.
  • Im gehosteten Dienst kostet die Ausführung 10 % mehr: Der Aufschlag gilt für Rechenzeit, Modellaufrufe und Webanfragen, zählt zum Budget und erscheint in der Kostenaufschlüsselung. Selbst gehostete Installationen berechnen nichts zusätzlich.
  • Flüchtige Daten liegen in Tabellen, die jedes Backup auslässt. Eine wiederhergestellte Datenbank enthält sie daher nie.

Nach einer Ausführung

Die Ausführung behält ihre Ausgabe, Fehlermeldung, Zeitstempel, Ereignisse und Kosten. Betrachten Sie die Kosten als endgültig, sobald der Status final und billing_pending auf false gesetzt ist; siehe Budgets und Abrechnung.

Beendete Ausführungen werden 30 Tage nach ihrem Ende gelöscht, zusammen mit ihren Ereignissen. Eine Ausführung wird länger aufbewahrt, solange ihre Abrechnung, die Callback-Zustellung oder die Bereinigung der microVM noch aussteht. Selbst gehostete Installationen können die Aufbewahrungsdauer ändern.

Um dieselbe Aufgabe erneut auszuführen, rufen Sie GET /v1/runs/{id}/definition ab. Sie liefert die Definition, die die Ausführung tatsächlich verwendet hat, ohne Zugangsdaten. So können Sie sie prüfen, ein neues Budget festlegen und sie absenden.

Eine Ausführungsdefinition enthält den Prompt, die Eingabe und die Inline-Dateiinhalte, die Sie gesendet haben. Legen Sie darin keine Geheimnisse ab; nutzen Sie stattdessen eine gespeicherte Verbindung.
© 2026 EphemeralProduziert von erni.works
esc

Keine Treffer für „“.