// builder_varargs_demo.proto
syntax = "proto3";

package builder_varargs_demo;

import "py_gen_ml/extensions.proto";


// Linear layer configuration
message Linear {
    option (pgml.factory) = "torch.nn.Linear";
    // Number of input features
    uint32 in_features = 1;
    // Number of output features
    uint32 out_features = 2;
    // Bias
    bool bias = 3;
}

// MLP configuration
message MLP {
    option (pgml.factory) = "torch.nn.Sequential";
    // Linear layers
    repeated Linear layers = 1 [(pgml.as_varargs) = true];
}
