Skip to main content

No project description provided

Project description

Fount SDK API Reference

Quick Reference

Client Initialization

from fount import Fount

# Basic usage
client = Fount()

# With custom transport
client = Fount(transport=custom_httpx_client)

# As context manager
with Fount() as client:
    # auto cleanup
    pass

Environment Variables

Class: Fount

Methods

upload_dataframe(dataframe, name=None) -> Dataset

Upload a pandas DataFrame.

Parameters:

  • dataframe (pd.DataFrame): DataFrame to upload
  • name (str, optional): Dataset name

Returns: Dataset object with ID


upload_csv(pathname, name) -> Dataset

Upload a CSV file.

Parameters:

  • pathname (str): Path to CSV file
  • name (str, optional): Dataset name

Returns: Dataset object with ID


upload_excel(pathname, sheet_name, name) -> Dataset

Upload Excel file (not implemented).

Parameters:

  • pathname (str): Path to Excel file
  • sheet_name (str): Sheet to extract
  • name (str, optional): Dataset name

train(dataset, categorical_cols, date_column, target, validation_data_required, validation_split, **kwargs) -> TrainingJob

Train a model.

Parameters:

  • dataset (Dataset): Training dataset
  • categorical_cols (List[str]): Categorical column names
  • date_column (str): Date column name
  • target (str): Target column name
  • validation_data_required (bool): Create validation set
  • validation_split (float): Validation split ratio (0-1)
  • time_granularity (str): Time interval or frequency
  • **kwargs: Additional parameters (epochs, learning_rate, etc.)

Returns: TrainingJob object


tune(categorical_cols, date_column, target, validation_data_required, validation_split, **kwargs) -> TuningJob

Hyperparameter tuning.

Parameters:

  • categorical_cols (List[str]): Categorical column names
  • date_column (str): Date column name
  • target (str): Target column name
  • validation_data_required (bool): Create validation set
  • validation_split (float): Validation split ratio (0-1)
  • time_granularity (str): Time interval or frequency
  • **kwargs: Additional parameters (param_grid, n_trials, etc.)

Returns: TuningJob object


inference(model_name, batch_size, **kwargs) -> InferenceJob

Run batch inference.

Parameters:

  • model_name (str): Model name/ID
  • batch_size (int): Batch size
  • **kwargs: Additional parameters (input_dataset, output_format, etc.)

Returns: InferenceJob object


close() -> None

Close client and release resources.


Job Classes

All job classes (TrainingJob, TuningJob, InferenceJob) have:

Methods

status() -> Dict

Get job status.

Returns: Dict with:

  • state: Current state (pending, running, completed, failed)
  • progress: Progress percentage
  • message: Status message

metrics() -> Dict

Get job results/metrics.

Returns: Dict with job-specific metrics

Exceptions

  • SDKError - Base SDK exception
  • AuthenticationError - Auth failures
  • RateLimitError - Rate limit exceeded
  • UploadError - Upload failures
  • TrainingError - Training failures
  • InferenceError - Inference failures
  • TuningError - Tuning failures

Common Patterns

Training Pipeline

# Upload data
df = pd.read_csv("data.csv")
dataset = client.upload_dataframe(df)

# Train model
job = client.train(
    dataset=dataset,
    categorical_cols=["cat1", "cat2"],
    date_column="date",
    target="target",
    validation_data_required=True,
    validation_split=0.2
)

# Monitor progress
while True:
    status = job.status()
    if status["state"] in ["completed", "failed"]:
        break
    time.sleep(30)

# Get results
if status["state"] == "completed":
    metrics = job.metrics()

Batch Inference

# Run inference
job = client.inference(
    model_name="my_model",
    batch_size=1000,
    input_dataset=dataset.id
)

# Get predictions
results = job.metrics()
predictions = results["predictions"]

Error Handling

from fount.errors import AuthenticationError, UploadError

try:
    dataset = client.upload_dataframe(df)
except AuthenticationError:
    print("Invalid API key")
except UploadError as e:
    print(f"Upload failed: {e}")

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

fount_core-0.1.5.0.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

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

fount_core-0.1.5.0-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file fount_core-0.1.5.0.tar.gz.

File metadata

  • Download URL: fount_core-0.1.5.0.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for fount_core-0.1.5.0.tar.gz
Algorithm Hash digest
SHA256 ceceebc197746e439f097062fd162175d272122bba25e76ed8cfbcc0a744e7f4
MD5 24d8111c944e39cd3400b00a22bc9f8b
BLAKE2b-256 72ab4c2c18ba0485be062013a0b2500956563f78b6fc0c0a0bf22f779a7d7a45

See more details on using hashes here.

File details

Details for the file fount_core-0.1.5.0-py3-none-any.whl.

File metadata

  • Download URL: fount_core-0.1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for fount_core-0.1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 26ad094ce8fdf43ae973b34aa5fb6e39da596c8c3d2386481c85ef46439d2def
MD5 8f7c2cd2a8142698c866ef2ea9500640
BLAKE2b-256 28102b6f5767b2630f9b564e060b511463297ca123d70419eedc7e3c7dbaa2bd

See more details on using hashes here.

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