Skip to content

Conversation

@dionhaefner
Copy link
Contributor

Relevant issue or PR

Alternative implementation for #428

Description of changes

This adds a dep-free backend for MLFlow that uses raw HTTP requests to log stuff.

Seems to work just fine when the MLFlow server is serving artifacts directly. There are actually over a dozen possible backends for artifacts, and in most of them the client logs directly to cloud storage (e.g. uploading to S3). This is unsupported in this implementation and fails with an informative error.

Why? – The MLflow Python package has many dependencies, some of them heavy-weight and likely to collide with Tesseract user deps:

$ pip show mlflow
...
Requires: alembic, docker, Flask, graphene, gunicorn, matplotlib, mlflow-skinny, numpy, pandas, pyarrow, scikit-learn, scipy, sqlalchemy

Testing done

CI, old and new tests

@codecov
Copy link

codecov bot commented Dec 19, 2025

Codecov Report

❌ Patch coverage is 65.38462% with 54 lines in your changes missing coverage. Please review.
✅ Project coverage is 76.28%. Comparing base (5284bb6) to head (f257d16).

Files with missing lines Patch % Lines
tesseract_core/runtime/mlflow_client.py 64.66% 29 Missing and 18 partials ⚠️
tesseract_core/runtime/mpa.py 69.56% 6 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #430      +/-   ##
==========================================
+ Coverage   66.91%   76.28%   +9.36%     
==========================================
  Files          29       30       +1     
  Lines        3431     3559     +128     
  Branches      535      561      +26     
==========================================
+ Hits         2296     2715     +419     
+ Misses        945      596     -349     
- Partials      190      248      +58     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@dionhaefner
Copy link
Contributor Author

I missed that mlflow-skinny exists 🫠 Will probably close this after cherry picking a few things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants