From 2004c53a94e9a8dc7a74b705dc170e711667d843 Mon Sep 17 00:00:00 2001
From: Christopher Rhodes <christopher.rhodes@embl.de>
Date: Wed, 30 Aug 2023 14:33:27 +0200
Subject: [PATCH] Added more reporting of inference and model-loading events

---
 api.py                  | 11 ++---------
 model_server/session.py |  2 ++
 2 files changed, 4 insertions(+), 9 deletions(-)

diff --git a/api.py b/api.py
index ec6c99cf..32eea187 100644
--- a/api.py
+++ b/api.py
@@ -30,7 +30,7 @@ def load_model(model_id: str, params: Dict[str, str] = None) -> dict:
     session.load_model(model_id, params=params)
     return session.describe_loaded_models()
 
-@app.put('/i2i/infer/') # image file in, image file out
+@app.put('/i2i/infer/')
 def infer_img(model_id: str, input_filename: str, channel: int = None) -> dict:
     if model_id not in session.describe_loaded_models().keys():
         raise HTTPException(
@@ -43,18 +43,11 @@ def infer_img(model_id: str, input_filename: str, channel: int = None) -> dict:
             status_code=404,
             detail=f'Could not find file:\n{inpath}'
         )
-    model = session.models[model_id]['object']
     record = infer_image_to_image(
         inpath,
         session.models[model_id]['object'],
         session.outbound.path,
         channel=channel,
-        # TODO: optional callback for status reporting
     )
     session.record_workflow_run(record)
-    return record
-
-# TODO: report out model inference status
-@app.get('/i2i/status/{model_id}')
-def status_model_inference(model_id: str) -> dict:
-    pass
\ No newline at end of file
+    return record
\ No newline at end of file
diff --git a/model_server/session.py b/model_server/session.py
index bd9a5d9d..7508f103 100644
--- a/model_server/session.py
+++ b/model_server/session.py
@@ -59,6 +59,7 @@ class Session(object):
         """
         Append a JSON describing inference data to this session's manifest
         """
+        self.log_event(f'Ran model {record.model_id} on {record.input_filepath} to infer {record.output_filepath}')
         with open(self.manifest_json, 'w+') as fh:
             json.dump(record.dict(), fh)
 
@@ -81,6 +82,7 @@ class Session(object):
                     'object': mi,
                     'params': params,
                 }
+                self.log_event(f'Loaded model {model_id}')
                 return True
         raise CouldNotFindModelError(
             f'Could not find {model_id} in:\n{models}',
-- 
GitLab