Table of Contents

Class LeafFederatedBenchmarkOptions

Namespace
AiDotNet.Configuration
Assembly
AiDotNet.dll

Configuration options for running LEAF-backed federated benchmark suites.

public sealed class LeafFederatedBenchmarkOptions
Inheritance
LeafFederatedBenchmarkOptions
Inherited Members

Remarks

This options class supplies the dataset context required to run the LEAF suite (train/test JSON split files) while keeping the user-facing facade surface minimal.

For Beginners: LEAF datasets are stored as JSON files where each "user" corresponds to one federated client. You provide the file paths, and AiDotNet loads and evaluates the model against the suite.

Properties

LoadOptions

Gets or sets load options controlling how many users/clients are loaded.

public LeafFederatedDatasetLoadOptions LoadOptions { get; set; }

Property Value

LeafFederatedDatasetLoadOptions

MaxSamplesPerUser

Gets or sets the maximum number of samples to use per user/client (null uses all available).

public int? MaxSamplesPerUser { get; set; }

Property Value

int?

Remarks

This is primarily used to keep benchmark runs fast and deterministic in CI mode.

TestFilePath

Gets or sets the optional path to the LEAF test split JSON file.

public string? TestFilePath { get; set; }

Property Value

string

Remarks

If null, the suite will evaluate on the train split (CI/local-only convenience).

TrainFilePath

Gets or sets the path to the LEAF train split JSON file.

public string? TrainFilePath { get; set; }

Property Value

string

Remarks

This is required for suite execution because it defines the per-client partitioning.