Unify separation tools and add exclusive control mode

This commit is contained in:
Mikei386 committed 2026-10-01 16:56:13 +02:00
1 parent 088f5f6f91
commit bd5aea7656
13 files changed
+81 -28

No files matched your search

+2 -2
View File
@@ -30,7 +30,7 @@ class Scheduler:
self.queue.append(ticket)
try:
while True:
if self.gpu_mode not in modes:raise InferenceError("Video-Modus aktiv oder Moduswechsel läuft; GPU-Aufträge sind gesperrt.")
if self.gpu_mode not in modes:raise InferenceError("Andere Betriebsart aktiv oder Moduswechsel läuft; GPU-Auftrag ist gesperrt.")
if not allowed():raise InferenceError('Endpunkt wird gestoppt oder Profil ist nicht mehr aktiviert.')
if self.queue[0] is ticket and not self.transition and (not self.active or (self.key==key and self.active<slots)) and (not self.tts_active or self.key==key and key!=('image',)):
self.queue.pop(0);self.active+=1;claimed=True
@@ -60,7 +60,7 @@ class Scheduler:
if claimed:
with self.cv:self.active-=1;self.cv.notify_all()
def image_reservation(self, wait=False,kind='image'):
lease=self.lease((kind,),timeout=600 if wait else 0,modes=("music",) if kind=="music" else ("llm",))
lease=self.lease((kind,),timeout=600 if wait else 0,modes=("music",) if kind=="music" else ("llm","separator") if kind=="separator" else ("llm",))
lease.__enter__()
return lambda:lease.__exit__(None,None,None)
def tts_reservation(self,wait=False):