@elaraai/east-py-datascience 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/src/alns/alns.d.ts +528 -0
  2. package/dist/src/alns/alns.d.ts.map +1 -0
  3. package/dist/src/alns/alns.js +238 -0
  4. package/dist/src/alns/alns.js.map +1 -0
  5. package/dist/src/google_or/google_or.d.ts +2457 -0
  6. package/dist/src/google_or/google_or.d.ts.map +1 -0
  7. package/dist/src/google_or/google_or.js +547 -0
  8. package/dist/src/google_or/google_or.js.map +1 -0
  9. package/dist/src/gp/gp.d.ts +447 -0
  10. package/dist/src/gp/gp.d.ts.map +1 -0
  11. package/dist/src/gp/gp.js +222 -0
  12. package/dist/src/gp/gp.js.map +1 -0
  13. package/dist/src/index.d.ts +34 -0
  14. package/dist/src/index.d.ts.map +1 -0
  15. package/dist/src/index.js +57 -0
  16. package/dist/src/index.js.map +1 -0
  17. package/dist/src/lightgbm/lightgbm.d.ts +575 -0
  18. package/dist/src/lightgbm/lightgbm.d.ts.map +1 -0
  19. package/dist/src/lightgbm/lightgbm.js +241 -0
  20. package/dist/src/lightgbm/lightgbm.js.map +1 -0
  21. package/dist/src/lightning/lightning.d.ts +1594 -0
  22. package/dist/src/lightning/lightning.d.ts.map +1 -0
  23. package/dist/src/lightning/lightning.js +468 -0
  24. package/dist/src/lightning/lightning.js.map +1 -0
  25. package/dist/src/mads/mads.d.ts +410 -0
  26. package/dist/src/mads/mads.d.ts.map +1 -0
  27. package/dist/src/mads/mads.js +219 -0
  28. package/dist/src/mads/mads.js.map +1 -0
  29. package/dist/src/mapie/mapie.d.ts +3680 -0
  30. package/dist/src/mapie/mapie.d.ts.map +1 -0
  31. package/dist/src/mapie/mapie.js +616 -0
  32. package/dist/src/mapie/mapie.js.map +1 -0
  33. package/dist/src/ngboost/ngboost.d.ts +483 -0
  34. package/dist/src/ngboost/ngboost.d.ts.map +1 -0
  35. package/dist/src/ngboost/ngboost.js +231 -0
  36. package/dist/src/ngboost/ngboost.js.map +1 -0
  37. package/dist/src/optimization/optimization.d.ts +700 -0
  38. package/dist/src/optimization/optimization.d.ts.map +1 -0
  39. package/dist/src/optimization/optimization.js +411 -0
  40. package/dist/src/optimization/optimization.js.map +1 -0
  41. package/dist/src/optuna/optuna.d.ts +857 -0
  42. package/dist/src/optuna/optuna.d.ts.map +1 -0
  43. package/dist/src/optuna/optuna.js +270 -0
  44. package/dist/src/optuna/optuna.js.map +1 -0
  45. package/dist/src/pymc/pymc.d.ts +2932 -0
  46. package/dist/src/pymc/pymc.d.ts.map +1 -0
  47. package/dist/src/pymc/pymc.js +688 -0
  48. package/dist/src/pymc/pymc.js.map +1 -0
  49. package/dist/src/scipy/scipy.d.ts +2205 -0
  50. package/dist/src/scipy/scipy.d.ts.map +1 -0
  51. package/dist/src/scipy/scipy.js +884 -0
  52. package/dist/src/scipy/scipy.js.map +1 -0
  53. package/dist/src/shap/shap.d.ts +4611 -0
  54. package/dist/src/shap/shap.d.ts.map +1 -0
  55. package/dist/src/shap/shap.js +552 -0
  56. package/dist/src/shap/shap.js.map +1 -0
  57. package/dist/src/simanneal/simanneal.d.ts +628 -0
  58. package/dist/src/simanneal/simanneal.d.ts.map +1 -0
  59. package/dist/src/simanneal/simanneal.js +328 -0
  60. package/dist/src/simanneal/simanneal.js.map +1 -0
  61. package/dist/src/simulation/simulation.d.ts +224 -0
  62. package/dist/src/simulation/simulation.d.ts.map +1 -0
  63. package/dist/src/simulation/simulation.js +189 -0
  64. package/dist/src/simulation/simulation.js.map +1 -0
  65. package/dist/src/sklearn/sklearn.d.ts +6362 -0
  66. package/dist/src/sklearn/sklearn.d.ts.map +1 -0
  67. package/dist/src/sklearn/sklearn.js +1508 -0
  68. package/dist/src/sklearn/sklearn.js.map +1 -0
  69. package/dist/src/torch/torch.d.ts +1205 -0
  70. package/dist/src/torch/torch.d.ts.map +1 -0
  71. package/dist/src/torch/torch.js +440 -0
  72. package/dist/src/torch/torch.js.map +1 -0
  73. package/dist/src/types.d.ts +43 -0
  74. package/dist/src/types.d.ts.map +1 -0
  75. package/dist/src/types.js +44 -0
  76. package/dist/src/types.js.map +1 -0
  77. package/dist/src/xgboost/xgboost.d.ts +1424 -0
  78. package/dist/src/xgboost/xgboost.d.ts.map +1 -0
  79. package/dist/src/xgboost/xgboost.js +432 -0
  80. package/dist/src/xgboost/xgboost.js.map +1 -0
  81. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"torch.d.ts","sourceRoot":"","sources":["../../../src/torch/torch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,440 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * PyTorch platform functions for East.
7
+ *
8
+ * Provides neural network models using PyTorch.
9
+ * Uses cloudpickle for model serialization.
10
+ *
11
+ * @packageDocumentation
12
+ */
13
+ import { East, StructType, VariantType, OptionType, IntegerType, FloatType, BlobType, ArrayType, NullType, } from "@elaraai/east";
14
+ import { VectorType, MatrixType } from "../types.js";
15
+ // Re-export shared types for convenience
16
+ export { VectorType, MatrixType } from "../types.js";
17
+ // ============================================================================
18
+ // Enum Types
19
+ // ============================================================================
20
+ /**
21
+ * Activation function type for hidden layers.
22
+ */
23
+ export const TorchActivationType = VariantType({
24
+ /** Rectified Linear Unit */
25
+ relu: NullType,
26
+ /** Hyperbolic tangent */
27
+ tanh: NullType,
28
+ /** Sigmoid function */
29
+ sigmoid: NullType,
30
+ /** Leaky ReLU */
31
+ leaky_relu: NullType,
32
+ });
33
+ /**
34
+ * Loss function type for training.
35
+ */
36
+ export const TorchLossType = VariantType({
37
+ /** Mean Squared Error (regression) */
38
+ mse: NullType,
39
+ /** Mean Absolute Error (regression) */
40
+ mae: NullType,
41
+ /** Cross Entropy (multi-class classification with integer targets) */
42
+ cross_entropy: NullType,
43
+ /** KL Divergence (distribution matching, use with softmax output) */
44
+ kl_div: NullType,
45
+ /** Binary Cross Entropy (multi-label binary, requires sigmoid output) */
46
+ bce: NullType,
47
+ /** Binary Cross Entropy with Logits (more stable, applies sigmoid internally - do NOT use with sigmoid output_activation) */
48
+ bce_with_logits: NullType,
49
+ });
50
+ /**
51
+ * Optimizer type for training.
52
+ */
53
+ export const TorchOptimizerType = VariantType({
54
+ /** Adam optimizer */
55
+ adam: NullType,
56
+ /** Stochastic Gradient Descent */
57
+ sgd: NullType,
58
+ /** AdamW with weight decay */
59
+ adamw: NullType,
60
+ /** RMSprop optimizer */
61
+ rmsprop: NullType,
62
+ });
63
+ /**
64
+ * Output activation function type for the final layer.
65
+ * Applied only to the output layer, not hidden layers.
66
+ */
67
+ export const TorchOutputActivationType = VariantType({
68
+ /** No activation (linear output) - default */
69
+ none: NullType,
70
+ /** Softmax (outputs sum to 1, for probability distributions) */
71
+ softmax: NullType,
72
+ /** Sigmoid (each output independently in [0,1]) */
73
+ sigmoid: NullType,
74
+ });
75
+ // ============================================================================
76
+ // Config Types
77
+ // ============================================================================
78
+ /**
79
+ * Configuration for MLP architecture.
80
+ */
81
+ export const TorchMLPConfigType = StructType({
82
+ /** Hidden layer sizes, e.g., [64, 32] */
83
+ hidden_layers: ArrayType(IntegerType),
84
+ /** Activation function for hidden layers (default relu) */
85
+ activation: OptionType(TorchActivationType),
86
+ /** Output activation function (default none/linear). Ignored if output_constraints is set. */
87
+ output_activation: OptionType(TorchOutputActivationType),
88
+ /** Dropout rate (default 0.0) */
89
+ dropout: OptionType(FloatType),
90
+ /** Output dimension (default 1) */
91
+ output_dim: OptionType(IntegerType),
92
+ });
93
+ /**
94
+ * Configuration for training.
95
+ */
96
+ export const TorchTrainConfigType = StructType({
97
+ /** Number of epochs (default 100) */
98
+ epochs: OptionType(IntegerType),
99
+ /** Batch size (default 32) */
100
+ batch_size: OptionType(IntegerType),
101
+ /** Learning rate (default 0.001) */
102
+ learning_rate: OptionType(FloatType),
103
+ /** Loss function (default mse) */
104
+ loss: OptionType(TorchLossType),
105
+ /** Optimizer (default adam) */
106
+ optimizer: OptionType(TorchOptimizerType),
107
+ /** Early stopping patience, 0 = disabled */
108
+ early_stopping: OptionType(IntegerType),
109
+ /** Validation split fraction (default 0.2) */
110
+ validation_split: OptionType(FloatType),
111
+ /** Random seed for reproducibility */
112
+ random_state: OptionType(IntegerType),
113
+ });
114
+ // ============================================================================
115
+ // Result Types
116
+ // ============================================================================
117
+ /**
118
+ * Result type for training.
119
+ */
120
+ export const TorchTrainResultType = StructType({
121
+ /** Training loss per epoch */
122
+ train_losses: VectorType(FloatType),
123
+ /** Validation loss per epoch */
124
+ val_losses: VectorType(FloatType),
125
+ /** Best epoch (for early stopping) */
126
+ best_epoch: IntegerType,
127
+ });
128
+ /**
129
+ * Combined result from training (model + metrics).
130
+ */
131
+ export const TorchTrainOutputType = StructType({
132
+ /** Trained model blob */
133
+ model: VariantType({
134
+ torch_mlp: StructType({
135
+ data: BlobType,
136
+ n_features: IntegerType,
137
+ hidden_layers: ArrayType(IntegerType),
138
+ output_dim: IntegerType,
139
+ }),
140
+ }),
141
+ /** Training result with losses */
142
+ result: TorchTrainResultType,
143
+ });
144
+ // ============================================================================
145
+ // Model Blob Types
146
+ // ============================================================================
147
+ /**
148
+ * Model blob type for serialized PyTorch models.
149
+ */
150
+ export const TorchModelBlobType = VariantType({
151
+ /** PyTorch MLP model */
152
+ torch_mlp: StructType({
153
+ /** Cloudpickle serialized model */
154
+ data: BlobType,
155
+ /** Number of input features */
156
+ n_features: IntegerType,
157
+ /** Hidden layer sizes */
158
+ hidden_layers: ArrayType(IntegerType),
159
+ /** Output dimension */
160
+ output_dim: IntegerType,
161
+ }),
162
+ });
163
+ // ============================================================================
164
+ // Platform Functions
165
+ // ============================================================================
166
+ /**
167
+ * Train a PyTorch MLP model.
168
+ *
169
+ * @param X - Feature matrix
170
+ * @param y - Target vector
171
+ * @param mlp_config - MLP architecture configuration
172
+ * @param train_config - Training configuration
173
+ * @returns Model blob and training result
174
+ */
175
+ export const torch_mlp_train = East.platform("torch_mlp_train", [MatrixType(FloatType), VectorType(FloatType), TorchMLPConfigType, TorchTrainConfigType], TorchTrainOutputType);
176
+ /**
177
+ * Make predictions with a trained PyTorch MLP.
178
+ *
179
+ * @param model - Trained MLP model blob
180
+ * @param X - Feature matrix
181
+ * @returns Predicted values
182
+ */
183
+ export const torch_mlp_predict = East.platform("torch_mlp_predict", [TorchModelBlobType, MatrixType(FloatType)], VectorType(FloatType));
184
+ /**
185
+ * Train a PyTorch MLP model with multi-output support.
186
+ *
187
+ * Supports multi-output regression (predicting multiple values per sample)
188
+ * and autoencoders (where input equals target for reconstruction learning).
189
+ * Output dimension is inferred from y.shape[1] unless overridden in config.
190
+ *
191
+ * @param X - Feature matrix (n_samples x n_features)
192
+ * @param y - Target matrix (n_samples x n_outputs)
193
+ * @param mlp_config - MLP architecture configuration
194
+ * @param train_config - Training configuration
195
+ * @returns Model blob and training result
196
+ */
197
+ export const torch_mlp_train_multi = East.platform("torch_mlp_train_multi", [MatrixType(FloatType), MatrixType(FloatType), TorchMLPConfigType, TorchTrainConfigType], TorchTrainOutputType);
198
+ /**
199
+ * Make predictions with a trained PyTorch MLP (multi-output).
200
+ *
201
+ * Returns a matrix where each row contains the predicted outputs for a sample.
202
+ *
203
+ * @param model - Trained MLP model blob
204
+ * @param X - Feature matrix (n_samples x n_features)
205
+ * @returns Predicted matrix (n_samples x n_outputs)
206
+ */
207
+ export const torch_mlp_predict_multi = East.platform("torch_mlp_predict_multi", [TorchModelBlobType, MatrixType(FloatType)], MatrixType(FloatType));
208
+ /**
209
+ * Extract intermediate layer activations (embeddings) from a trained MLP.
210
+ *
211
+ * For autoencoders, this allows extracting the bottleneck representation.
212
+ * The layer_index specifies which hidden layer's output to return (0-indexed).
213
+ *
214
+ * For an autoencoder with architecture [input -> 8 -> 2 -> 8 -> output]
215
+ * (hidden_layers: [8, 2, 8]):
216
+ * - layer_index=0: output after first hidden layer (8 features)
217
+ * - layer_index=1: output after second hidden layer (2 features) <- bottleneck
218
+ * - layer_index=2: output after third hidden layer (8 features)
219
+ *
220
+ * @param model - Trained MLP model blob
221
+ * @param X - Feature matrix (n_samples x n_features)
222
+ * @param layer_index - Which hidden layer's output to return (0-indexed)
223
+ * @returns Embedding matrix (n_samples x hidden_dim at that layer)
224
+ *
225
+ * @example
226
+ * ```ts
227
+ * // Train autoencoder: 4 features -> 8 -> 2 (bottleneck) -> 8 -> 4 features
228
+ * const mlp_config = $.let({
229
+ * hidden_layers: [8n, 2n, 8n],
230
+ * activation: variant('some', variant('relu', {})),
231
+ * dropout: variant('none', null),
232
+ * output_dim: variant('none', null),
233
+ * });
234
+ * const output = $.let(Torch.mlpTrainMulti(X, X, mlp_config, train_config));
235
+ *
236
+ * // Extract bottleneck embeddings (layer_index=1 for the 2-dim bottleneck)
237
+ * const embeddings = $.let(Torch.mlpEncode(output.model, X, 1n));
238
+ * // embeddings is now (n_samples x 2)
239
+ * ```
240
+ */
241
+ export const torch_mlp_encode = East.platform("torch_mlp_encode", [TorchModelBlobType, MatrixType(FloatType), IntegerType], MatrixType(FloatType));
242
+ /**
243
+ * Decode embeddings back through the decoder portion of an MLP.
244
+ *
245
+ * For autoencoders, this takes bottleneck activations and runs them through
246
+ * the decoder to reconstruct the output. This is the complement to mlpEncode.
247
+ *
248
+ * For an autoencoder with architecture [input -> 8 -> 2 -> 8 -> output]
249
+ * (hidden_layers: [8, 2, 8]):
250
+ * - layer_index=1: Start from the 2-dim bottleneck, run through layers 2+ to output
251
+ * - layer_index=0: Start from the 8-dim first layer, run through layers 1+ to output
252
+ *
253
+ * Use case: Compute weighted average of origin embeddings, then decode to
254
+ * get the reconstructed blend weight distribution.
255
+ *
256
+ * @param model - Trained MLP model blob
257
+ * @param embeddings - Embedding matrix (n_samples x hidden_dim at layer_index)
258
+ * @param layer_index - Which hidden layer the embeddings come from (0-indexed)
259
+ * @returns Decoded output matrix (n_samples x output_dim)
260
+ *
261
+ * @example
262
+ * ```ts
263
+ * // After training autoencoder and extracting embeddings...
264
+ * const origin_embeddings = $.let(Torch.mlpEncode(output.model, X_onehot, 1n));
265
+ *
266
+ * // Compute weighted blend embedding (e.g., 50% origin A + 50% origin B)
267
+ * const blend_embedding = $.let(...); // weighted average of origin embeddings
268
+ *
269
+ * // Decode back to weight distribution
270
+ * const reconstructed = $.let(Torch.mlpDecode(output.model, blend_embedding, 1n));
271
+ * ```
272
+ */
273
+ export const torch_mlp_decode = East.platform("torch_mlp_decode", [TorchModelBlobType, MatrixType(FloatType), IntegerType], MatrixType(FloatType));
274
+ // ============================================================================
275
+ // Grouped Export
276
+ // ============================================================================
277
+ /**
278
+ * Type definitions for PyTorch functions.
279
+ */
280
+ export const TorchTypes = {
281
+ /** Activation function type for hidden layers */
282
+ TorchActivationType,
283
+ /** Output activation function type */
284
+ TorchOutputActivationType,
285
+ /** Loss function type */
286
+ TorchLossType,
287
+ /** Optimizer type */
288
+ TorchOptimizerType,
289
+ /** MLP configuration type */
290
+ TorchMLPConfigType,
291
+ /** Training configuration type */
292
+ TorchTrainConfigType,
293
+ /** Training result type */
294
+ TorchTrainResultType,
295
+ /** Training output type (model + result) */
296
+ TorchTrainOutputType,
297
+ /** Model blob type for PyTorch models */
298
+ ModelBlobType: TorchModelBlobType,
299
+ };
300
+ /**
301
+ * PyTorch neural network models.
302
+ *
303
+ * Provides MLP training and inference using PyTorch.
304
+ *
305
+ * @example
306
+ * ```ts
307
+ * import { East, variant } from "@elaraai/east";
308
+ * import { Torch } from "@elaraai/east-py-datascience";
309
+ *
310
+ * const train = East.function([], Torch.Types.TorchTrainOutputType, $ => {
311
+ * const X = $.let([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0], [7.0, 8.0]]);
312
+ * const y = $.let([1.0, 2.0, 3.0, 4.0]);
313
+ * const mlp_config = $.let({
314
+ * hidden_layers: [32n, 16n],
315
+ * activation: variant('none', null),
316
+ * dropout: variant('none', null),
317
+ * output_dim: variant('none', null),
318
+ * });
319
+ * const train_config = $.let({
320
+ * epochs: variant('some', 50n),
321
+ * batch_size: variant('some', 4n),
322
+ * learning_rate: variant('some', 0.01),
323
+ * loss: variant('none', null),
324
+ * optimizer: variant('none', null),
325
+ * early_stopping: variant('none', null),
326
+ * validation_split: variant('some', 0.2),
327
+ * random_state: variant('some', 42n),
328
+ * });
329
+ * return $.return(Torch.mlpTrain(X, y, mlp_config, train_config));
330
+ * });
331
+ * ```
332
+ */
333
+ export const Torch = {
334
+ /**
335
+ * Train a PyTorch MLP model (single output).
336
+ *
337
+ * @example
338
+ * ```ts
339
+ * import { East, FloatType, MatrixType, VectorType, variant } from "@elaraai/east";
340
+ * import { Torch, TorchMLPConfigType, TorchTrainConfigType } from "@elaraai/east-py-datascience";
341
+ *
342
+ * const train = East.function([], Torch.Types.TorchTrainOutputType, ($) => {
343
+ * const X = $.let([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0], [7.0, 8.0]]);
344
+ * const y = $.let(new Float64Array([1.0, 2.0, 3.0, 4.0]));
345
+ * const mlp_config = $.let({
346
+ * hidden_layers: new BigInt64Array([16n, 8n]),
347
+ * activation: variant("some", variant("relu", null)),
348
+ * dropout: variant("none", null),
349
+ * output_dim: variant("none", null),
350
+ * output_activation: variant("none", null),
351
+ * }, TorchMLPConfigType);
352
+ * const train_config = $.let({
353
+ * epochs: variant("some", 50n), batch_size: variant("some", 4n),
354
+ * learning_rate: variant("some", 0.01), loss: variant("none", null),
355
+ * optimizer: variant("none", null), early_stopping: variant("none", null),
356
+ * validation_split: variant("some", 0.2), random_state: variant("some", 42n),
357
+ * }, TorchTrainConfigType);
358
+ * return $.return(Torch.mlpTrain(X, y, mlp_config, train_config));
359
+ * });
360
+ * ```
361
+ */
362
+ mlpTrain: torch_mlp_train,
363
+ /**
364
+ * Make predictions with a trained PyTorch MLP (single output).
365
+ *
366
+ * @example
367
+ * ```ts
368
+ * import { East, FloatType, MatrixType, VectorType } from "@elaraai/east";
369
+ * import { Torch } from "@elaraai/east-py-datascience";
370
+ *
371
+ * const predictFn = East.function(
372
+ * [Torch.Types.ModelBlobType, MatrixType(FloatType)],
373
+ * VectorType(FloatType),
374
+ * ($, model, X) => {
375
+ * return $.return(Torch.mlpPredict(model, X));
376
+ * }
377
+ * );
378
+ * ```
379
+ */
380
+ mlpPredict: torch_mlp_predict,
381
+ /**
382
+ * Train a PyTorch MLP model with multi-output support.
383
+ *
384
+ * Supports multi-output regression and autoencoders (X = y).
385
+ *
386
+ * @example
387
+ * ```ts
388
+ * import { East, FloatType, MatrixType, variant } from "@elaraai/east";
389
+ * import { Torch, TorchMLPConfigType, TorchTrainConfigType } from "@elaraai/east-py-datascience";
390
+ *
391
+ * const train = East.function([], Torch.Types.TorchTrainOutputType, ($) => {
392
+ * const X = $.let([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0], [7.0, 8.0, 9.0]]);
393
+ * const y = $.let([[10.0, 20.0], [30.0, 40.0], [50.0, 60.0]]);
394
+ * const mlp_config = $.let({
395
+ * hidden_layers: new BigInt64Array([16n, 8n]),
396
+ * activation: variant("some", variant("relu", null)),
397
+ * dropout: variant("none", null),
398
+ * output_dim: variant("none", null),
399
+ * output_activation: variant("none", null),
400
+ * }, TorchMLPConfigType);
401
+ * const train_config = $.let({
402
+ * epochs: variant("some", 50n), batch_size: variant("some", 4n),
403
+ * learning_rate: variant("some", 0.01), loss: variant("none", null),
404
+ * optimizer: variant("none", null), early_stopping: variant("none", null),
405
+ * validation_split: variant("some", 0.2), random_state: variant("some", 42n),
406
+ * }, TorchTrainConfigType);
407
+ * return $.return(Torch.mlpTrainMulti(X, y, mlp_config, train_config));
408
+ * });
409
+ * ```
410
+ */
411
+ mlpTrainMulti: torch_mlp_train_multi,
412
+ /**
413
+ * Make predictions with a trained PyTorch MLP (multi-output).
414
+ *
415
+ * Returns a matrix where each row contains predicted outputs for a sample.
416
+ *
417
+ * @example
418
+ * ```ts
419
+ * import { East, FloatType, MatrixType } from "@elaraai/east";
420
+ * import { Torch } from "@elaraai/east-py-datascience";
421
+ *
422
+ * const predictFn = East.function(
423
+ * [Torch.Types.ModelBlobType, MatrixType(FloatType)],
424
+ * MatrixType(FloatType),
425
+ * ($, model, X) => {
426
+ * // Returns (n_samples x n_outputs) matrix
427
+ * return $.return(Torch.mlpPredictMulti(model, X));
428
+ * }
429
+ * );
430
+ * ```
431
+ */
432
+ mlpPredictMulti: torch_mlp_predict_multi,
433
+ /** Extract intermediate layer activations (embeddings) from MLP */
434
+ mlpEncode: torch_mlp_encode,
435
+ /** Decode embeddings back through decoder portion of MLP */
436
+ mlpDecode: torch_mlp_decode,
437
+ /** Type definitions */
438
+ Types: TorchTypes,
439
+ };
440
+ //# sourceMappingURL=torch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"torch.js","sourceRoot":"","sources":["../../../src/torch/torch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Shared type definitions for East Data Science.
7
+ *
8
+ * Provides common East type definitions used across data science modules
9
+ * including vectors, matrices, and scalar function types.
10
+ *
11
+ * @packageDocumentation
12
+ */
13
+ import { FloatType, FunctionType, VectorType } from "@elaraai/east";
14
+ export { ArrayType, StructType, VariantType, OptionType, FloatType, IntegerType, BooleanType, StringType, FunctionType, VectorType, MatrixType, } from "@elaraai/east";
15
+ /**
16
+ * Scalar objective function type: Vector<Float> -> Float.
17
+ *
18
+ * Used for optimization objectives, constraints, and loss functions
19
+ * that take a vector of decision variables and return a scalar value.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * const sumSquares = East.function([VectorType(FloatType)], FloatType, ($, x) => {
24
+ * return x.reduce((acc, xi) => acc.add(xi.multiply(xi)), East.value(0.0));
25
+ * });
26
+ * ```
27
+ */
28
+ export declare const ScalarObjectiveType: FunctionType<[VectorType<FloatType>], FloatType>;
29
+ /**
30
+ * Vector objective function type: Vector<Float> -> Vector<Float>.
31
+ *
32
+ * Used for multi-output predictions and transformations.
33
+ *
34
+ * @example
35
+ * ```ts
36
+ * const predict = East.function([VectorType(FloatType)], VectorType(FloatType), ($, x) => {
37
+ * // Return multiple predictions
38
+ * return $.return([...]);
39
+ * });
40
+ * ```
41
+ */
42
+ export declare const VectorObjectiveType: FunctionType<[VectorType<FloatType>], VectorType<FloatType>>;
43
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AAEH,OAAO,EACH,SAAS,EACT,YAAY,EACZ,UAAU,EACb,MAAM,eAAe,CAAC;AAGvB,OAAO,EACH,SAAS,EACT,UAAU,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,UAAU,EACV,YAAY,EACZ,UAAU,EACV,UAAU,GACb,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,kDAAmD,CAAC;AAEpF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,8DAA+D,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Shared type definitions for East Data Science.
7
+ *
8
+ * Provides common East type definitions used across data science modules
9
+ * including vectors, matrices, and scalar function types.
10
+ *
11
+ * @packageDocumentation
12
+ */
13
+ import { FloatType, FunctionType, VectorType, } from "@elaraai/east";
14
+ // Re-export commonly used types for convenience
15
+ export { ArrayType, StructType, VariantType, OptionType, FloatType, IntegerType, BooleanType, StringType, FunctionType, VectorType, MatrixType, } from "@elaraai/east";
16
+ /**
17
+ * Scalar objective function type: Vector<Float> -> Float.
18
+ *
19
+ * Used for optimization objectives, constraints, and loss functions
20
+ * that take a vector of decision variables and return a scalar value.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * const sumSquares = East.function([VectorType(FloatType)], FloatType, ($, x) => {
25
+ * return x.reduce((acc, xi) => acc.add(xi.multiply(xi)), East.value(0.0));
26
+ * });
27
+ * ```
28
+ */
29
+ export const ScalarObjectiveType = FunctionType([VectorType(FloatType)], FloatType);
30
+ /**
31
+ * Vector objective function type: Vector<Float> -> Vector<Float>.
32
+ *
33
+ * Used for multi-output predictions and transformations.
34
+ *
35
+ * @example
36
+ * ```ts
37
+ * const predict = East.function([VectorType(FloatType)], VectorType(FloatType), ($, x) => {
38
+ * // Return multiple predictions
39
+ * return $.return([...]);
40
+ * });
41
+ * ```
42
+ */
43
+ export const VectorObjectiveType = FunctionType([VectorType(FloatType)], VectorType(FloatType));
44
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AAEH,OAAO,EACH,SAAS,EACT,YAAY,EACZ,UAAU,GACb,MAAM,eAAe,CAAC;AAEvB,gDAAgD;AAChD,OAAO,EACH,SAAS,EACT,UAAU,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,WAAW,EACX,UAAU,EACV,YAAY,EACZ,UAAU,EACV,UAAU,GACb,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAEpF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC"}