4ebe779b7c
onnxruntime is in requirements-ml.txt only (deliberately kept out of the lean web image and CI). The top-level `import onnxruntime` broke pytest collection of test_ml_tagger / test_ml_suggestions / test_tasks_ml even though those are pure-logic/integration-marked, because collection imports the module. Mirrors the embedder's lazy-torch pattern: onnxruntime is imported inside Tagger.load(), placed AFTER the file-existence checks so test_load_raises_when_model_missing still gets RuntimeError (not ModuleNotFoundError) in onnxruntime-less environments. self._session annotation dropped to a comment to avoid an eval-time ort reference. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>