added auto-detection for the output type on the client side to be able to download binary files such as videos
This commit is contained in:
parent
775c78c6cb
commit
1a49aa3779
5 changed files with 39 additions and 1 deletions
|
@ -1,3 +1,4 @@
|
|||
import asyncio
|
||||
import json
|
||||
import os
|
||||
import typing
|
||||
|
@ -10,6 +11,11 @@ from source import model, api
|
|||
|
||||
|
||||
class ModelManager:
|
||||
"""
|
||||
The model manager
|
||||
Load the list of models available, ensure that only one model is loaded at the same time.
|
||||
"""
|
||||
|
||||
def __init__(self, application: api.Application, model_library: os.PathLike | str):
|
||||
self.application: api.Application = application
|
||||
self.model_library: Path = Path(model_library)
|
||||
|
@ -20,7 +26,9 @@ class ModelManager:
|
|||
self.models: dict[str, model.base.BaseModel] = {}
|
||||
|
||||
# the currently loaded model
|
||||
# TODO(Faraphel): load more than one model at a time ? require a way more complex manager to handle memory issue
|
||||
# TODO(Faraphel): load more than one model at a time ?
|
||||
# would require a way more complex manager to handle memory issue
|
||||
# having two calculations at the same time might not be worth it either
|
||||
self.current_loaded_model: typing.Optional[model.base.BaseModel] = None
|
||||
|
||||
# lock to avoid concurrent inference and concurrent model loading and unloading
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue