dial-docker-compose/ollama/ollama_setup/utils.py (25 lines of code) (raw):

import logging import sys import time from contextlib import asynccontextmanager class Writer: @classmethod def write(cls, s: str): # NOTE: every tqdm progress bar update is deliberately ended with "\n", # otherwise one wouldn't see the bar running in console upon running `docker compose up`. if s in ["\n", ""]: return print(s.strip(), file=sys.stderr, flush=True, end="\n") @classmethod def flush(cls): sys.stderr.flush() print_info = Writer.write @asynccontextmanager async def timer(name: str): print_info(f"[{name}] Starting...") start = time.perf_counter() yield elapsed = time.perf_counter() - start print_info(f"[{name}] Finished in {elapsed:.2f} seconds") class HealthFilter(logging.Filter): def filter(self, record: logging.LogRecord) -> bool: return record.getMessage().find("/health") == -1 logging.getLogger("uvicorn.access").addFilter(HealthFilter())