-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration & Logging
Giacomo Saccaggi edited this page Jun 19, 2026
·
1 revision
All library output goes through Python's logging module. Control it globally:
import scomp_link
scomp_link.set_verbosity("silent") # suppress everything
scomp_link.set_verbosity("warning") # only warnings and errors
scomp_link.set_verbosity("info") # default — progress messages
scomp_link.set_verbosity("debug") # verbose — internal detailsimport logging
logging.getLogger("scomp_link").setLevel(logging.WARNING)Every command supports --silent to suppress output:
scomp-link run --data train.csv --target y --task regression --silentscomp-link provides utility decorators you can use in your own code:
from scomp_link.utils.decorators import timer, retry, cache, deprecated, validate_args
@timer
def train_model(X, y):
... # prints "⏱️ train_model completed in 3.42s"
@retry(max_attempts=3, delay=1.0)
def fetch_data(url):
... # retries on failure
@cache
def expensive(n):
... # memoized after first call
@deprecated("Use new_function() instead")
def old_function():
... # emits DeprecationWarning
@validate_args(threshold=lambda x: 0 <= x <= 1)
def process(data, threshold=0.5):
... # raises ValueError if threshold out of range# config.yaml
project_name: "my_project"
task_type: regression
target_column: target
test_size: 0.2
engineer:
interactions: false
log_transform: true
date_features: false
target_encode: false
model_hint: numerical_prediction
ensemble: null
advanced_cv: false