Companion
Properties
Speichert die letzten MAX_HISTORY_SIZE Inferenzdauern (in ms) pro Modelltypschlüssel. Verwendet von estimateWaitMs zur Berechnung der durchschnittlichen Inferenzzeit pro Modelltyp.
Gemeinsames Semaphor, das gleichzeitige lokale KI-Schlussfolgerungen über alle Module hinweg begrenzt (LLAMA, Tesserakt, Flüstern). Konfiguriert über „AI_LLAMA_ENGINE_MaxConcurrent“ (Standard 2).
Whether the queue-position badge is enabled globally. Configured via AI_QueueBadge.
Verfolgt jede Anfrage, die auf das Inferenzsemaphor wartet oder es derzeit enthält. Streaming-Threads registrieren sich vor acquire; Wiederholungsbasierte Clients (Synchronisierung von LLAMA, Tesseract) Registrieren Sie sich beim ersten fehlgeschlagenen tryAcquire. Tickets werden entfernt, wenn die Inferenz abgeschlossen ist (in der „finally“-Block nach Release). Der Kartenwert ist der Erstellungszeitstempel für das Warten Tickets oder Long.MAX_VALUE zum Ausführen von Inferenzen (immun gegen veraltete Bereinigung).
Maps-Ticket-UUID → Modelltypschlüssel (z. B. „llama-thinking“, „llama-fast“, „tesseract“). Zusammen mit queueTickets registriert, damit estimateWaitMs nachschlagen kann, um welche Modelltypen es sich handelt vorne in der Warteschlange und berechnen Sie eine ungefähre Wartezeit.
Functions
Entfernt Wartetickets, die älter als 30 Sekunden sind (verlassene Kunden). Aktive Tickets (Long.MAX_VALUE) sind nicht betroffen.
Schätzt die Gesamtwartezeit (in ms) für ein Ticket durch Summieren der durchschnittlichen Inferenzdauer von jedem Ticket vor ihm in der Warteschlange. Nur Tickets, deren Modelltyp über einen aufgezeichneten Verlauf verfügt zur Schätzung beitragen. Gibt „null“ zurück, wenn keine Schätzung möglich ist (keine Historie für irgendeinen von). die in der Warteschlange befindlichen Modelltypen).
Zeichnet die Dauer einer abgeschlossenen Inferenz für einen bestimmten Modelltyp auf.
Replaces the shared inference semaphore with a new limit.