Add API_STT_THREADS env var to configure the number of STT threads per worker

This commit is contained in:
ChaoticByte 2025-06-08 18:40:28 +02:00
parent 6f4f287601
commit 38d91cad0c
No known key found for this signature in database
3 changed files with 7 additions and 1 deletions

View file

@ -1,3 +1,4 @@
export ACCESS_CONTROL_ALLOW_ORIGIN="*"
export API_STT_MODEL="/Models/faster-whisper-medium"
# export API_STT_THREADS=4 # per worker, default: 4

View file

@ -9,6 +9,11 @@ _logger = _ComponentLogger("Environment", print_timestamp=False)
try:
ACCESS_CONTROL_ALLOW_ORIGIN = str(_environ["ACCESS_CONTROL_ALLOW_ORIGIN"])
API_STT_MODEL = _Path(_environ["API_STT_MODEL"])
API_STT_THREADS = int(_environ.get("API_STT_THREADS", 4)) # per worker
# log stt config
_logger.info("STT Configuration:")
_logger.info(f" Model: {API_STT_MODEL}")
_logger.info(f" Threads: {API_STT_THREADS} per worker")
except KeyError as e:
_logger.critical(f"Missing {e}")
exit(1)

View file

@ -31,7 +31,7 @@ def get_app() -> _Sanic:
@app.before_server_start
async def setup_stt(app):
app.ctx.stt = _STT(_env.API_STT_MODEL, logger=_ComponentLogger(f"{_getpid()}/STT"))
app.ctx.stt = _STT(_env.API_STT_MODEL, n_threads=_env.API_STT_THREADS, logger=_ComponentLogger(f"{_getpid()}/STT"))
@app.after_server_start
async def init_stt(app):