状态变化通知

This commit is contained in:
2023-07-12 18:18:24 +08:00
parent 16f98bfffb
commit 5add1c6e53

View File

@@ -105,6 +105,13 @@ func (model *Model) Inference(image_list []Image, callback func(Image)) {
if server.ModelID != model.ID {
log.Println("推理机未加载模型, 开始排队加载模型")
// 通知关注此任务的用户
for _, img := range image_list {
img.Status = "loading"
img.Preview = "正在切换模型"
callback(img)
}
// 执行切换模型(推理机需要先处理完当前的任务才能加载新的模型)
if err := goreq.Post(fmt.Sprintf("http://%s:%d/sdapi/v1/options", server.IP, server.Port)).SetJsonBody(map[string]interface{}{
"sd_model_checkpoint": model.ModelCheckpoint,
@@ -133,6 +140,14 @@ func (model *Model) Inference(image_list []Image, callback func(Image)) {
}
if time.Now().After(timeout) {
log.Println("模型切换超时:", form.SdModelCheckpoint)
// 通知关注此任务的用户
for _, img := range image_list {
img.Status = "error"
img.Preview = "模型切换超时"
callback(img)
}
return
}
time.Sleep(time.Second)