Proposal - Supporting user-provided ML models in workflows #6041
tanishqgandhi1908
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Goal
Make Texera a platform where a user can bring their own trained model and run it inside a workflow — upload the model, pick it in an operator, and get predictions on the data stream.
Context
Scope
flowchart TD Texera(["Texera"]) subgraph Packaging HF[Hugging Face] MLflow[MLflow] ONNX[ONNX] end subgraph Libraries TF[TensorFlow] PT[PyTorch] SK[scikit-learn] end subgraph Models["Model categories"] LLM[LLM] REG[Regression] CLS[Classification] TREE[Tree] end Texera --> HF Texera --> MLflow Texera --> ONNX HF --> TF HF --> PT MLflow --> TF MLflow --> PT MLflow --> SK ONNX --> PT ONNX --> SK TF --> LLM TF --> REG TF --> CLS PT --> LLM PT --> REG PT --> CLS SK --> REG SK --> CLS SK --> TREEStorage
Models are stored exactly like datasets — versioned in LakeFS with the bytes in MinIO — so we reuse the existing upload, versioning, and access-control stack. A model is simply an asset tagged with a type (
DATASETorMODEL); To namespace by type, logical file paths now carry a resource-type prefix —/datasets/<owner>/<name>/<version>/<file>and, for models,/models/<owner>/<name>/<version>/<file>— resolved through the same path → LakeFS → MinIO chain. A dedicated Models section in the UI mirrors Datasets for browsing and uploading.Design (from #4198)
Two user experiences
Both reuse the existing dataset storage (LakeFS/MinIO); a model is just an uploaded asset the operator/UDF fetches at run time.
Feedback wanted
We'd love feedback on the overall idea and the proposed architecture:
All thoughts, concerns, and alternative approaches welcome.
Beta Was this translation helpful? Give feedback.
All reactions