cicora.ai
API-SpezifikationAsynchrone Arbeit

Batch-Ausführung

Verarbeiten Sie unabhängige Vorgänge in kontrollierten Gruppen, wenn der Arbeitsablauf eine asynchrone Bereitstellung zulässt.

Integrationsreferenz: Wählen Sie Parameter und verfügbare Funktionen in den API-Einstellungen Ihres Kontos und im Modellkatalog für Ihre Umgebung aus.

Parallelität begrenzen

Verwenden Sie eine begrenzte clientseitige Warteschlange und senden Sie jeden Auftrag über eine gewöhnliche kompatible Anfrage. So steuern Sie die Last, ohne einen Batch-Endpunkt auf dem Server vorauszusetzen.

Der Batch-Modus eines Dienstes ist ein eigener API-Vertrag: Verwenden Sie seine Route und seinen Anfragetext erst, nachdem sie in den Kontoeinstellungen oder der Spezifikation veröffentlicht wurden.

Vom Client gesteuerte begrenzte Parallelität
typescript
async function runWithLimit(items, limit, work) {
  const results = [];
  for (let offset = 0; offset < items.length; offset += limit) {
    const group = items.slice(offset, offset + limit);
    results.push(...await Promise.all(group.map(work)));
  }
  return results;
}

Warteschlange steuern

  • Machen Sie eine interne Auftrags-ID innerhalb eines Durchlaufs deterministisch und eindeutig.
  • Teilen Sie eine übergroße Menge in handhabbare Gruppen auf.
  • Halten Sie den Fehler eines Elements vom Fehler der gesamten Warteschlange getrennt.

Ergebnisse erfassen

Ordnen Sie ein Ergebnis einer internen ID zu und speichern Sie den Status jedes Auftrags.

Wiederholen Sie nicht automatisch alle Aufträge: Wiederholen Sie nur vorübergehende Fehler, nachdem Sie die Idempotenz geprüft haben.