Skip to main content

iil-gpufw

Schmaler HTTP-Client des GPU-Lease-Arbiters (illustration-hub) — ADR-296 §4.5, Auftrag platform#2020.

Normative Quelle ist der HTTP-Vertrag, nicht dieses Paket: illustration-hub/docs/api/gpu-lease-vertrag.md (v0). Strategie (Vorrang, Karenz, Räum-Reihenfolge) bleibt serverseitig. Keine Laufzeit-Dependencies, kein Django-Import; Config wird injiziert.

Nutzung

from gpufw import ArbiterConfig, interaktive_lease, batch_lease

config = ArbiterConfig.aus_env()  # GPU_ARBITER_URL, GPU_ARBITER_TOKEN, CF_ACCESS_*

# Interaktiv: ein Mensch wartet — BELEGT heisst ehrlich abbrechen.
with interaktive_lease(config, verbraucher="mein-cli", zweck="render x") as zusage:
    if not zusage.gewaehrt:
        raise RuntimeError(zusage.als_fehlertext())  # traegt den belegt-Marker
    arbeit()

# Batch: BELEGT heisst warten (Aufrufer-Sache); Verdraengung meldet sich
# ueber das Event — zwischen Arbeitsschritten pruefen und pausieren.
with batch_lease(config, verbraucher="text-batch", job_id="job-42") as zusage:
    if not zusage.gewaehrt:
        warte_und_versuche_spaeter(zusage.grund)
    else:
        for kapitel in arbeit_in_schritten():
            if zusage.verdraengt.is_set():
                pausieren()  # interaktive Lane hat Vorrang
                break
            verarbeite(kapitel)

Client-Pflichten aus dem Vertrag (fail-open, kein Bezahl-Rückfall bei BELEGT, immer freigeben, tolerant lesen) sind in gpufw.lease umgesetzt und getestet (make test, Stub-Arbiter, kein Netz).

Grenzen (ehrlich)

  • Fail-open heisst: ohne erreichbaren Arbiter läuft der Konsument ohne Koordination weiter (degradiert=True + Log). Das ist Vertragsabsicht — kein Handgriff darf Render/Song/Text verhindern.
  • GRANTED ist ein Absichts-Register, keine Karten-Wahrheit: Ollama-Einzelcalls sind lease-frei (§4.2 Nr. 7), VRAM kann trotzdem belegt sein.

Release

Über den etablierten /release-Weg (ADR-084-Muster). PyPI-Publish ist ein eigener Freigabe-Schritt des Owners.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iil_gpufw-0.1.1.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iil_gpufw-0.1.1-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file iil_gpufw-0.1.1.tar.gz.

File metadata

  • Download URL: iil_gpufw-0.1.1.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for iil_gpufw-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0632f1bdf8647e52677620e52f069f689eb04920910045b6c12ac742d0bee5bd
MD5 9e69536f8aab5281782fae82c1c1868d
BLAKE2b-256 45df020bbdf4aae69072597255f7e4dfaa7ef6eca8f5cf7d8d5b81a1aef9f3cf

See more details on using hashes here.

File details

Details for the file iil_gpufw-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: iil_gpufw-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for iil_gpufw-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0f753bbcbe181fcf92e7a70f2eaee38312055eaeb6b2c34b95e08726bb22937c
MD5 eb79aaec0a7e6d37c5960f56b53229e1
BLAKE2b-256 f697f911d506c20b8ae1bfe2d55675d19ad197428a0da6f8981d82ea0727bc4d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page