model,model_family,f1_weighted,roc_auc,fp,fn,cv_test_gap_pp,train_test_gap_pp,f1_train,evaluation_source,production_default,notes,timestamp,f1_toxic,precision,recall,accuracy,n_test,cv_f1_mean,cv_f1_std,cm_plot,roc_plot,top_fp_terms,top_fn_terms LR + TF-IDF (tuned),sklearn_baseline,0.7579,0.81,18.0,30.0,4.76,14.07,0.8987,configs/best_params.yaml Optuna,true,Best sklearn model on held-out test split (IsToxic),,,,,,,,,,,, LR + TF-IDF (local),sklearn_baseline,0.7579,0.81,18.0,30.0,4.76,14.07,0.8987,models/final_model.joblib,true,Served by FastAPI and Streamlit via ModelService,,,,,,,,,,,, LR,,0.7387,0.7838,22.0,30.0,1.94,15.97,0.8984,,,,2026-05-23T16:35:21.125402,0.7045,0.7399,0.74,0.74,200.0,0.7193,0.0382,/Users/miraekang/proyectos/ai-nlp/reports/pipeline/lr/cm_lr.png,/Users/miraekang/proyectos/ai-nlp/reports/pipeline/lr/roc_lr.png,"black(14), would(9), white(9), shoot(8), get(7), people(7), guy(7), cop(6), police(5), car(4)","police(8), make(6), black(6), criminal(6), people(5), kill(5), want(4), cause(4), look(4), brown(4)" LR,,0.7387,0.7838,22.0,30.0,1.94,15.97,0.8984,,,,2026-05-23T16:36:05.009624,0.7045,0.7399,0.74,0.74,200.0,0.7193,0.0382,/Users/miraekang/proyectos/ai-nlp/reports/pipeline/lr/cm_lr.png,/Users/miraekang/proyectos/ai-nlp/reports/pipeline/lr/roc_lr.png,"black(14), would(9), white(9), shoot(8), get(7), people(7), guy(7), cop(6), police(5), car(4)","police(8), make(6), black(6), criminal(6), people(5), kill(5), want(4), cause(4), look(4), brown(4)" DistilBERT Toxicity,transformers_hf,,,,,,,ModelService catalog,false,Remote HF martin-ha/toxic-comment-model — switch via PUT /model/{name},,,,,,,,,,,,, toxic-bert (multilabel),transformers_hf,,,,,,,ModelService catalog,false,Remote HF unitary/toxic-bert — multilabel Jigsaw,,,,,,,,,,,,, RoBERTa Toxicity,transformers_hf,,,,,,,ModelService catalog,false,Remote HF s-nlp/roberta_toxicity_classifier,,,,,,,,,,,,, RF,sklearn_baseline,,,,,,,pipeline --model rf,false,Train and evaluate: python -m src.pipeline.run_pipeline --model rf,,,,,,,,,,,,, XGBoost,sklearn_baseline,,,,,,,pipeline --model xgboost,false,Train and evaluate: python -m src.pipeline.run_pipeline --model xgboost,,,,,,,,,,,,,