Skip to content

feat: add support for datasets in training - #387

Open
stephantul wants to merge 6 commits into
mainfrom
streaming-datasets
Open

stephantul wants to merge 6 commits into
mainfrom
streaming-datasets

Conversation

@stephantul

@stephantul stephantul commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

This PR adds datasets to all our training paths.

@stephantul stephantul changed the title feat: add streaming datasets feat: add support for datasets in training Oct 1, 2026
@greptile-apps

greptile-apps Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 4/5

[Medium risk] Adds Hugging Face dataset support to the training pipeline.

The PR should not merge until configurable data-loading workers are restored or the API break and large-dataset loading regression are addressed.

Reviews (2) · Last reviewed commit: "remove worker code"

Comment thread model2vec/train/similarity.py Outdated
@codecov

codecov Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 99.71671% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
model2vec/train/dataset.py 99.33% 1 Missing ⚠️
Files with missing lines Coverage Δ
model2vec/inference/evaluation.py 100.00% <100.00%> (ø)
model2vec/model.py 97.56% <100.00%> (ø)
model2vec/train/base.py 99.56% <100.00%> (+0.01%) ⬆️
model2vec/train/classifier.py 100.00% <100.00%> (+1.57%) ⬆️
model2vec/train/pairs.py 100.00% <100.00%> (ø)
model2vec/train/similarity.py 100.00% <100.00%> (ø)
model2vec/train/utils.py 100.00% <100.00%> (ø)
model2vec/train/dataset.py 99.39% <99.33%> (-0.61%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Comment thread model2vec/train/dataset.py
@stephantul
stephantul requested a review from Pringled October 1, 2026 14:15

@Pringled Pringled left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very very nice! I ran some datasets and everything looks good. I only have one architectural suggestion to keep everything related to pyarrow in dataset.py, but up to you if it makes sense

Comment thread model2vec/train/classifier.py Outdated
Comment thread model2vec/train/classifier.py Outdated
pa.types.is_list(label_type) or pa.types.is_large_list(label_type) or pa.types.is_fixed_size_list(label_type)
)
value_type = label_type.value_type if multilabel else label_type
if not (pa.types.is_string(value_type) or pa.types.is_large_string(value_type) or pa.types.is_integer(value_type)):

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a bit hard for me to follow the flow of everything but I think we are checking this several times, is it possible to check this once in dataset.py and then just assume it's correct downstream?

Comment thread model2vec/train/similarity.py Outdated
Comment thread model2vec/train/utils.py Outdated

This branch has not been deployed

No deployments
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