koaning/embetter

just a bunch of useful embeddings for scikit-learn pipelines

What it solves

Embetter simplifies the process of integrating high-quality embeddings for text and images into scikit-learn pipelines. It removes the friction of manually preparing data and managing pretrained models when building proof-of-concepts, classifiers, or bulk labeling workflows.

How it works

It provides a set of scikit-learn compatible encoders and loaders that act as stateless components within a pipeline. Users can use a ColumnGrabber to extract data from pandas DataFrames, then pass that data through specialized encoders (such as SentenceEncoder for text or ClipEncoder for multimodal data) to generate embeddings that can then be fed into standard scikit-learn estimators like Logistic Regression.

Who it’s for

Data scientists and ML engineers who use scikit-learn and want to quickly implement embedding-based features for text or vision tasks without writing extensive boilerplate code.

Highlights

  • Scikit-learn Compatibility: Works seamlessly as a step in make_pipeline.
  • Multimodal Support: Includes encoders for text, computer vision (Timm, Color Histogram), and multimodal models (CLIP).
  • External API Integration: Supports embeddings from providers like OpenAI and Cohere.
  • Out-of-core Processing: Compatible with the partial_fit mechanic for handling datasets that are too large for memory.

Related

  • Project
  • Project
  • Project
  • Project