Skip to main content

Zero-shot predictive machine learning platform powered by Tabular Foundation Models (TabFM)

Project description

tabengine — Zero-Shot Tabular ML SDK

PyPI Version License

tabengine is an open-source Python library for zero-shot predictive machine learning on tabular data. Powered by Tabular Foundation Models (TabFM) and sub-10ms distance retrieval kernels (DuckDB), it replaces traditional XGBoost model training and hyperparameter tuning pipelines with real-time in-context learning.


⚡ Quickstart

1. Installation

pip install tabengine

2. Zero-Shot Classification

import pandas as pd
from tabengine import ZeroShotClassifier

# Historical context dataframe
df = pd.DataFrame({
    'monthly_active_days': [28, 2, 22, 5, 29],
    'support_tickets': [1, 8, 2, 6, 0],
    'account_tier': ['Enterprise', 'Basic', 'Pro', 'Basic', 'Enterprise'],
    'churn_status': ['Retained', 'Churned', 'Retained', 'Churned', 'Retained']
})

# Initialize Zero-Shot Classifier (0 seconds spent training model parameters)
model = ZeroShotClassifier(target="churn_status")
model.fit(df)

# Predict on new query row
query_row = {
    'monthly_active_days': 3,
    'support_tickets': 7,
    'account_tier': 'Basic'
}

# Get prediction with explanation & retrieved context rows
explanation = model.predict_with_explanation(query_row)
print("Prediction:", explanation["prediction"])
print("Confidence:", explanation["confidence"])
print("Top Matching Context Row:", explanation["top_contexts"][0])

3. Zero-Shot Regression

from tabengine import ZeroShotRegressor

# Real estate price valuation example
model = ZeroShotRegressor(target="price")
model.fit(real_estate_df)

predicted_price = model.predict([{"sqft": 1650, "beds": 3, "baths": 2}])
print(f"Predicted Price: ${predicted_price[0]:,.2f}")

📄 License

Apache License 2.0. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tabengine-0.1.2.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tabengine-0.1.2-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file tabengine-0.1.2.tar.gz.

File metadata

  • Download URL: tabengine-0.1.2.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for tabengine-0.1.2.tar.gz
Algorithm Hash digest
SHA256 5a90de1024697ceb5ebb38229878e7de7c89ebc60974858a2221e03f927ecae8
MD5 03f862f22613ca1ec522596d6fe1a2bf
BLAKE2b-256 48e6038577c426bd7df253670c38fa85cff5fc546b3ac27a7e47ca8b2afd6631

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabengine-0.1.2.tar.gz:

Publisher: publish-pypi.yml on tabengine-ai/tabengine-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tabengine-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: tabengine-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for tabengine-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ca12cab688f339046495ee7f378e1c568ba438c545f809820e024b6649d11b5a
MD5 8fb1fffd40905901a3e54437a8ff517a
BLAKE2b-256 c80a886c8e92faccf626833184795dfb54491f71814502110355ae682439b51d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tabengine-0.1.2-py3-none-any.whl:

Publisher: publish-pypi.yml on tabengine-ai/tabengine-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page