@iyulab/mloop-mcp 0.14.0 → 0.16.0

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 (115) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +21 -3
  3. package/build/server.d.ts.map +1 -1
  4. package/build/server.js +4 -1
  5. package/build/server.js.map +1 -1
  6. package/build/tool-hints.d.ts.map +1 -1
  7. package/build/tool-hints.js +4 -1
  8. package/build/tool-hints.js.map +1 -1
  9. package/build/tools/analyze.d.ts +1 -0
  10. package/build/tools/analyze.d.ts.map +1 -1
  11. package/build/tools/analyze.js +7 -1
  12. package/build/tools/analyze.js.map +1 -1
  13. package/build/tools/auto-train.js +1 -1
  14. package/build/tools/auto-train.js.map +1 -1
  15. package/build/tools/calibrate.d.ts +1 -0
  16. package/build/tools/calibrate.d.ts.map +1 -1
  17. package/build/tools/calibrate.js +4 -1
  18. package/build/tools/calibrate.js.map +1 -1
  19. package/build/tools/compare.d.ts +4 -1
  20. package/build/tools/compare.d.ts.map +1 -1
  21. package/build/tools/compare.js +11 -2
  22. package/build/tools/compare.js.map +1 -1
  23. package/build/tools/detect.d.ts +1 -0
  24. package/build/tools/detect.d.ts.map +1 -1
  25. package/build/tools/detect.js +4 -1
  26. package/build/tools/detect.js.map +1 -1
  27. package/build/tools/docker.d.ts +23 -0
  28. package/build/tools/docker.d.ts.map +1 -0
  29. package/build/tools/docker.js +38 -0
  30. package/build/tools/docker.js.map +1 -0
  31. package/build/tools/embed.d.ts +1 -0
  32. package/build/tools/embed.d.ts.map +1 -1
  33. package/build/tools/embed.js +6 -3
  34. package/build/tools/embed.js.map +1 -1
  35. package/build/tools/encoder.d.ts +5 -1
  36. package/build/tools/encoder.d.ts.map +1 -1
  37. package/build/tools/encoder.js +18 -9
  38. package/build/tools/encoder.js.map +1 -1
  39. package/build/tools/evaluate.js +1 -1
  40. package/build/tools/evaluate.js.map +1 -1
  41. package/build/tools/explain.d.ts +29 -0
  42. package/build/tools/explain.d.ts.map +1 -0
  43. package/build/tools/explain.js +57 -0
  44. package/build/tools/explain.js.map +1 -0
  45. package/build/tools/feedback.d.ts +3 -0
  46. package/build/tools/feedback.d.ts.map +1 -1
  47. package/build/tools/feedback.js +7 -0
  48. package/build/tools/feedback.js.map +1 -1
  49. package/build/tools/index.d.ts +3 -0
  50. package/build/tools/index.d.ts.map +1 -1
  51. package/build/tools/index.js +3 -0
  52. package/build/tools/index.js.map +1 -1
  53. package/build/tools/info.d.ts +1 -0
  54. package/build/tools/info.d.ts.map +1 -1
  55. package/build/tools/info.js +5 -1
  56. package/build/tools/info.js.map +1 -1
  57. package/build/tools/init.d.ts +2 -0
  58. package/build/tools/init.d.ts.map +1 -1
  59. package/build/tools/init.js +8 -1
  60. package/build/tools/init.js.map +1 -1
  61. package/build/tools/list.d.ts +1 -0
  62. package/build/tools/list.d.ts.map +1 -1
  63. package/build/tools/list.js +4 -1
  64. package/build/tools/list.js.map +1 -1
  65. package/build/tools/logs.d.ts +2 -0
  66. package/build/tools/logs.d.ts.map +1 -1
  67. package/build/tools/logs.js +6 -0
  68. package/build/tools/logs.js.map +1 -1
  69. package/build/tools/predict.d.ts +2 -0
  70. package/build/tools/predict.d.ts.map +1 -1
  71. package/build/tools/predict.js +9 -2
  72. package/build/tools/predict.js.map +1 -1
  73. package/build/tools/prep-plan.d.ts +1 -0
  74. package/build/tools/prep-plan.d.ts.map +1 -1
  75. package/build/tools/prep-plan.js +4 -1
  76. package/build/tools/prep-plan.js.map +1 -1
  77. package/build/tools/prep.js +1 -1
  78. package/build/tools/prep.js.map +1 -1
  79. package/build/tools/promote.d.ts +1 -0
  80. package/build/tools/promote.d.ts.map +1 -1
  81. package/build/tools/promote.js +4 -1
  82. package/build/tools/promote.js.map +1 -1
  83. package/build/tools/runtime.d.ts +31 -0
  84. package/build/tools/runtime.d.ts.map +1 -0
  85. package/build/tools/runtime.js +42 -0
  86. package/build/tools/runtime.js.map +1 -0
  87. package/build/tools/sample.d.ts +2 -1
  88. package/build/tools/sample.d.ts.map +1 -1
  89. package/build/tools/sample.js +5 -3
  90. package/build/tools/sample.js.map +1 -1
  91. package/build/tools/status.d.ts +1 -0
  92. package/build/tools/status.d.ts.map +1 -1
  93. package/build/tools/status.js +4 -1
  94. package/build/tools/status.js.map +1 -1
  95. package/build/tools/threshold.d.ts +1 -0
  96. package/build/tools/threshold.d.ts.map +1 -1
  97. package/build/tools/threshold.js +4 -1
  98. package/build/tools/threshold.js.map +1 -1
  99. package/build/tools/train.d.ts +6 -0
  100. package/build/tools/train.d.ts.map +1 -1
  101. package/build/tools/train.js +21 -1
  102. package/build/tools/train.js.map +1 -1
  103. package/build/tools/trigger.d.ts +2 -0
  104. package/build/tools/trigger.d.ts.map +1 -1
  105. package/build/tools/trigger.js +6 -0
  106. package/build/tools/trigger.js.map +1 -1
  107. package/build/tools/validate.d.ts +1 -0
  108. package/build/tools/validate.d.ts.map +1 -1
  109. package/build/tools/validate.js +3 -0
  110. package/build/tools/validate.js.map +1 -1
  111. package/build/training-run.d.ts +7 -1
  112. package/build/training-run.d.ts.map +1 -1
  113. package/build/training-run.js +9 -1
  114. package/build/training-run.js.map +1 -1
  115. package/package.json +2 -3
package/CHANGELOG.md CHANGED
@@ -6,6 +6,49 @@ Releases before 0.11.3 are described by their commits. 0.12.0 includes the 0.11.
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.16.0] - 2026-11-09
10
+
11
+ ### Added
12
+
13
+ - `mloop_train` takes `ensemble`, passed as `mloop train --ensemble`: answer with a weighted blend of the trainer search's best trials when it scores better out of fold (binary classification and regression). A blend is one model file several times larger and a single-row request to a served model takes several times as long; `mloop_export_onnx` refuses it. Needs an `mloop` that has the flag.
14
+
15
+ ### Changed
16
+
17
+ - The descriptions of the data-file arguments (`mloop_train`, `mloop_auto_train`, `mloop_evaluate`, `mloop_explain`, `mloop_predict`, `mloop_prep`) and the agent guide say where the default comes from when `dataFile` is left out: the `data.train`, `data.test` or `data.predict` the project's `mloop.yaml` declares, else `datasets/train.csv`, `datasets/test.csv` or `datasets/predict.csv`. An agent reading them no longer assumes the conventional file when the project names another one. No behaviour change.
18
+
19
+ ## [0.15.0] - 2026-11-02
20
+
21
+ ### Added
22
+
23
+ - `mloop_predict` takes `scoreThreshold`, passed as `mloop predict --score-threshold`: for an object-detection model, the confidence a box needs to be reported (default 0.5). A detector that finds objects without being 0.5 confident scores `map_50` 0 and shows nothing at the default; `0.3` (then lower) shows what it finds. Needs an `mloop` that has the flag; any other task refuses it.
24
+ - `mloop_train` takes `epochs`, passed as `mloop train --epochs`: how many epochs a deep-learning task (text classification, sentence similarity, NER,
25
+ question answering, object detection) trains for. `time` does not shorten such a fit, so the epoch count is its one dial on cost - try 2 first to see
26
+ what an epoch costs on the machine. Needs an `mloop` that has the flag; a task that does not count epochs refuses it.
27
+ - Options the CLI had and the tools could not pass now are fields: `records` (the dotted path to the rows of a JSON data file) on `mloop_info`,
28
+ `mloop_analyze`, `mloop_threshold`, `mloop_calibrate` and `mloop_detect`; `trials` on `mloop_list` (one experiment's trial leaderboard);
29
+ `from` / `to` on `mloop_logs` and `mloop_feedback` (`list`, `metrics`) and `limit` on `mloop_feedback` `list`; `accuracy` and `feedback`
30
+ thresholds on `mloop_trigger`; `best`, `metric` and `metricsFile` on `mloop_compare` (its `experiments` may now be left out, to compare the
31
+ model's completed experiments); `model` (a model file) on `mloop_predict`.
32
+ - `mloop_train` takes `analyzeData` (check the data quality and train nothing), `generateScript` (write a preprocessing script from that check), `autoMerge`
33
+ (merge the CSV files of one schema in `datasets/`) and `autoTime` (`true` sizes the time budget from the data even where `mloop.yaml` sets one, `false`
34
+ keeps the 300 s default). The answer of a data check carries `analysis` (the findings, each with a suggested fix; an empty list when there are none) and,
35
+ with `generateScript`, `script` (the path written) in place of `result`. The events come from an `mloop` newer than 0.48: older ones say nothing for
36
+ `--analyze-data --json`, and both fields are then null.
37
+ - `decideOnly` on `mloop_promote` (report what `latest`/`best` would promote and move nothing), `modelName` and `label` on `mloop_init`, `verbose` on
38
+ `mloop_status` and `mloop_validate`, `list` on `mloop_prep_plan`, and `textFile` on `mloop_embed` (a file of texts, one per line).
39
+ - `mloop_sample` takes `records` (the dotted path to the rows of a JSON data file) and says that `dataFile` may be a TSV, JSON, Excel or Parquet file - the sample is
40
+ written as CSV. Needs an `mloop` that reads those formats in `sample create --from`.
41
+ - Three tools for commands the CLI had and the server did not: `mloop_explain` (which input columns a model relies on — permutation importance on a labeled
42
+ file; needs an `mloop` newer than 0.48), `mloop_runtime` (list, install or remove the deep-learning runtimes `tf`, `torch`, `onnxruntime`) and
43
+ `mloop_docker` (write the Dockerfile and docker-compose.yml that serve a model). `mloop_encoder` also takes `add`: register an encoder of your own from its
44
+ definition file, ONNX graph and, for a text encoder, tokenizer.
45
+
46
+ ### Fixed
47
+
48
+ - The package's `repository` field names this repository (`iyulab/mloop-mcp`). It pointed at the `MLoop` repository with a `mcp` directory, which that repository does
49
+ not have, so the npm page linked to a repository that does not hold this code (and a provenance statement made from this repository's
50
+ workflow would not have matched it).
51
+
9
52
  ## [0.14.0] - 2026-10-30
10
53
 
11
54
  ### Added
package/README.md CHANGED
@@ -94,13 +94,31 @@ plugins:
94
94
  | `mloop_serve` | Start the REST API server; returns once it answers `/health`, and leaves it running |
95
95
  | `mloop_token` | Issue the bearer token the server requires on every endpoint but `/health` (`role: admin` for writes) |
96
96
  | `mloop_embed` | Images or texts to vectors with a pretrained encoder, with the encoder's identity (texts: mloop >= 0.46) |
97
- | `mloop_encoder` | List, install (catalog: `dinov2-small`, `multilingual-minilm`) or remove pretrained encoders |
97
+ | `mloop_encoder` | List, install (catalog: `dinov2-small`, `multilingual-minilm`), add your own (definition, ONNX graph, tokenizer) or remove pretrained encoders |
98
+ | `mloop_explain` | Which input columns a model relies on — permutation importance on a labeled file, in the metric `mloop_evaluate` reports (an `mloop` newer than 0.48) |
99
+ | `mloop_runtime` | List, install or remove the on-demand deep-learning runtimes (`tf`, `torch`, `onnxruntime`) |
100
+ | `mloop_docker` | Generate the Dockerfile and docker-compose.yml that serve a project's model |
101
+ | `mloop_init` | Initialize a new MLoop project (`mloop.yaml`, `datasets/`, `models/`) |
102
+ | `mloop_quick_start` | One step from zero to a production model: initialize, train, auto-promote |
103
+ | `mloop_auto_train` | Profile the data, train with an automatic time budget and list the experiments in one call |
104
+ | `mloop_project_overview` | Status, every experiment and the production model's metrics in one call |
105
+ | `mloop_validate` | Validate `mloop.yaml` (syntax, missing fields, invalid values) |
106
+ | `mloop_prep` | Run a model's declared preprocessing steps over a CSV file and write the prepared file |
107
+ | `mloop_logs` | View a model's prediction logs |
108
+ | `mloop_feedback` | Add the actual value for a logged prediction (source, optional weight), list feedback, or read its metrics |
109
+ | `mloop_sample` | Create a sampled dataset from a CSV file, or a retraining dataset from logged predictions and feedback |
110
+ | `mloop_trigger` | Check whether retraining is due, as JSON: one result per condition |
98
111
 
99
112
  Every tool declares the MCP safety hints (`readOnlyHint`, `destructiveHint`, `idempotentHint`, `openWorldHint`) in `tools/list`, so a
100
113
  client can apply an approval policy without reading tool names: the reading tools (`mloop_list`, `mloop_status`, `mloop_info`,
101
114
  `mloop_analyze`, `mloop_compare`, `mloop_evaluate`, `mloop_validate`, `mloop_logs`, `mloop_trigger`, `mloop_drift`, `mloop_embed`,
102
- `mloop_project_overview`, `mloop_token`) change nothing; the others write, and `destructiveHint: true` marks the ones that can overwrite a
103
- file at a path you name or delete a setting, a threshold or an installed encoder. The table is `src/tool-hints.ts`.
115
+ `mloop_project_overview`, `mloop_token`, `mloop_explain`) change nothing; the others write, and `destructiveHint: true` marks the ones that can overwrite a
116
+ file at a path you name or delete a setting, a threshold, an installed encoder or runtime. The table is `src/tool-hints.ts`.
117
+
118
+ Two `mloop` options are left out on purpose, because each deletes data an agent cannot get back: `mloop logs prune` (drops the
119
+ prediction-log and feedback day-files older than the project's `retention.days`, which `mloop serve` already does once a day) and
120
+ `mloop promote --no-backup` (skips the backup `mloop_rollback` restores from). Run them from a shell, or set `retention:` in
121
+ `mloop.yaml`.
104
122
 
105
123
  ## Tool Examples
106
124
 
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAsB,MAAM,8BAA8B,CAAC;AAqF7E;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAexC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAsB,MAAM,8BAA8B,CAAC;AA2F7E;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAexC"}
package/build/server.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * MCP Server for MLoop CLI
3
3
  */
4
4
  import { McpServer } from '@modelcontextprotocol/server';
5
- import { trainTool, trainSchema, predictTool, predictSchema, listTool, listSchema, promoteTool, promoteSchema, rollbackTool, rollbackSchema, thresholdTool, thresholdSchema, calibrateTool, calibrateSchema, exportOnnxTool, exportOnnxSchema, infoTool, infoSchema, statusTool, statusSchema, compareTool, compareSchema, evaluateTool, evaluateSchema, serveTool, serveSchema, initTool, initSchema, validateTool, validateSchema, prepTool, prepSchema, logsTool, logsSchema, feedbackTool, feedbackSchema, sampleTool, sampleSchema, triggerTool, triggerSchema, driftTool, driftSchema, analyzeTool, analyzeSchema, detectTool, detectSchema, prepPlanTool, prepPlanSchema, featuresSelectTool, featuresSelectSchema, tokenTool, tokenSchema, embedTool, embedSchema, encoderTool, encoderSchema, quickStartTool, quickStartSchema, autoTrainTool, autoTrainSchema, projectOverviewTool, projectOverviewSchema, } from './tools/index.js';
5
+ import { trainTool, trainSchema, predictTool, predictSchema, listTool, listSchema, promoteTool, promoteSchema, rollbackTool, rollbackSchema, thresholdTool, thresholdSchema, calibrateTool, calibrateSchema, exportOnnxTool, exportOnnxSchema, infoTool, infoSchema, statusTool, statusSchema, compareTool, compareSchema, evaluateTool, evaluateSchema, serveTool, serveSchema, initTool, initSchema, validateTool, validateSchema, prepTool, prepSchema, logsTool, logsSchema, feedbackTool, feedbackSchema, sampleTool, sampleSchema, triggerTool, triggerSchema, driftTool, driftSchema, analyzeTool, analyzeSchema, detectTool, detectSchema, prepPlanTool, prepPlanSchema, featuresSelectTool, featuresSelectSchema, tokenTool, tokenSchema, embedTool, embedSchema, encoderTool, encoderSchema, explainTool, explainSchema, runtimeTool, runtimeSchema, dockerTool, dockerSchema, quickStartTool, quickStartSchema, autoTrainTool, autoTrainSchema, projectOverviewTool, projectOverviewSchema, } from './tools/index.js';
6
6
  import { packageVersion } from './package-info.js';
7
7
  import { withRequestSignal } from './executor.js';
8
8
  import { hintsFor } from './tool-hints.js';
@@ -36,6 +36,9 @@ const tools = [
36
36
  [tokenTool, tokenSchema],
37
37
  [embedTool, embedSchema],
38
38
  [encoderTool, encoderSchema],
39
+ [explainTool, explainSchema],
40
+ [runtimeTool, runtimeSchema],
41
+ [dockerTool, dockerSchema],
39
42
  [quickStartTool, quickStartSchema],
40
43
  [autoTrainTool, autoTrainSchema],
41
44
  [projectOverviewTool, projectOverviewSchema],
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-hints.d.ts","sourceRoot":"","sources":["../src/tool-hints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;CACxB;AAYD,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAyC1D,CAAC;AAEF,0EAA0E;AAC1E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAKhD"}
1
+ {"version":3,"file":"tool-hints.d.ts","sourceRoot":"","sources":["../src/tool-hints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;CACxB;AAYD,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CA4C1D,CAAC;AAEF,0EAA0E;AAC1E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAKhD"}
@@ -34,6 +34,7 @@ export const TOOL_HINTS = {
34
34
  mloop_trigger: READS,
35
35
  mloop_drift: READS,
36
36
  mloop_embed: READS,
37
+ mloop_explain: READS,
37
38
  mloop_project_overview: READS,
38
39
  mloop_token: READS, // issues a signed token; nothing is stored
39
40
  // Adds
@@ -56,8 +57,10 @@ export const TOOL_HINTS = {
56
57
  mloop_features_select: WRITES_OVER,
57
58
  mloop_sample: WRITES_OVER,
58
59
  mloop_detect: WRITES_OVER, // writes only when `output` is given
59
- // Installs download weights; remove deletes them
60
+ mloop_docker: WRITES_OVER, // writes a Dockerfile and a compose file over the ones there
61
+ // Installs download weights or a runtime; remove deletes them
60
62
  mloop_encoder: hints(false, true, true, true),
63
+ mloop_runtime: hints(false, true, true, true),
61
64
  };
62
65
  /** The hints of tool <paramref name="name"/>; throws when it has none. */
63
66
  export function hintsFor(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-hints.js","sourceRoot":"","sources":["../src/tool-hints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AASH,MAAM,KAAK,GAAG,CAAC,YAAqB,EAAE,eAAwB,EAAE,cAAuB,EAAE,aAAa,GAAG,KAAK,EAAa,EAAE,CAC3H,CAAC,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC;AAErE,2DAA2D;AAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACvC,qHAAqH;AACrH,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC7C,sFAAsF;AACtF,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAwC;IAC7D,QAAQ;IACR,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,KAAK;IACpB,cAAc,EAAE,KAAK;IACrB,cAAc,EAAE,KAAK;IACrB,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,KAAK;IAClB,sBAAsB,EAAE,KAAK;IAC7B,WAAW,EAAE,KAAK,EAAE,2CAA2C;IAE/D,OAAO;IACP,WAAW,EAAE,IAAI,EAAS,iFAAiF;IAC3G,gBAAgB,EAAE,IAAI,EAAI,wBAAwB;IAClD,iBAAiB,EAAE,IAAI,EAAG,sCAAsC;IAChE,UAAU,EAAE,IAAI,EAAU,0BAA0B;IACpD,cAAc,EAAE,IAAI,EAAM,yBAAyB;IACnD,cAAc,EAAE,IAAI,EAAM,4DAA4D;IACtF,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,0EAA0E;IACpH,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,iEAAiE;IAEhH,wEAAwE;IACxE,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;IAExC,+FAA+F;IAC/F,eAAe,EAAE,WAAW;IAC5B,eAAe,EAAE,WAAW;IAC5B,iBAAiB,EAAE,WAAW;IAC9B,UAAU,EAAE,WAAW;IACvB,eAAe,EAAE,WAAW;IAC5B,qBAAqB,EAAE,WAAW;IAClC,YAAY,EAAE,WAAW;IACzB,YAAY,EAAE,WAAW,EAAE,qCAAqC;IAEhE,iDAAiD;IACjD,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;CAC9C,CAAC;AAEF,0EAA0E;AAC1E,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK;QACR,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,mEAAmE,CAAC,CAAC;IACpG,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"tool-hints.js","sourceRoot":"","sources":["../src/tool-hints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AASH,MAAM,KAAK,GAAG,CAAC,YAAqB,EAAE,eAAwB,EAAE,cAAuB,EAAE,aAAa,GAAG,KAAK,EAAa,EAAE,CAC3H,CAAC,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC;AAErE,2DAA2D;AAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACvC,qHAAqH;AACrH,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC7C,sFAAsF;AACtF,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAwC;IAC7D,QAAQ;IACR,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,KAAK;IACpB,cAAc,EAAE,KAAK;IACrB,cAAc,EAAE,KAAK;IACrB,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,WAAW,EAAE,KAAK;IAClB,WAAW,EAAE,KAAK;IAClB,aAAa,EAAE,KAAK;IACpB,sBAAsB,EAAE,KAAK;IAC7B,WAAW,EAAE,KAAK,EAAE,2CAA2C;IAE/D,OAAO;IACP,WAAW,EAAE,IAAI,EAAS,iFAAiF;IAC3G,gBAAgB,EAAE,IAAI,EAAI,wBAAwB;IAClD,iBAAiB,EAAE,IAAI,EAAG,sCAAsC;IAChE,UAAU,EAAE,IAAI,EAAU,0BAA0B;IACpD,cAAc,EAAE,IAAI,EAAM,yBAAyB;IACnD,cAAc,EAAE,IAAI,EAAM,4DAA4D;IACtF,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,0EAA0E;IACpH,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,iEAAiE;IAEhH,wEAAwE;IACxE,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;IAExC,+FAA+F;IAC/F,eAAe,EAAE,WAAW;IAC5B,eAAe,EAAE,WAAW;IAC5B,iBAAiB,EAAE,WAAW;IAC9B,UAAU,EAAE,WAAW;IACvB,eAAe,EAAE,WAAW;IAC5B,qBAAqB,EAAE,WAAW;IAClC,YAAY,EAAE,WAAW;IACzB,YAAY,EAAE,WAAW,EAAE,qCAAqC;IAChE,YAAY,EAAE,WAAW,EAAE,6DAA6D;IAExF,8DAA8D;IAC9D,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;IAC7C,aAAa,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;CAC9C,CAAC;AAEF,0EAA0E;AAC1E,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK;QACR,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,mEAAmE,CAAC,CAAC;IACpG,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -23,6 +23,7 @@ export declare const analyzeSchema: z.ZodObject<{
23
23
  maxLag: z.ZodOptional<z.ZodNumber>;
24
24
  aroundTrend: z.ZodOptional<z.ZodBoolean>;
25
25
  modelName: z.ZodOptional<z.ZodString>;
26
+ records: z.ZodOptional<z.ZodString>;
26
27
  }, z.core.$strip>;
27
28
  export type AnalyzeParams = z.infer<typeof analyzeSchema>;
28
29
  export declare function analyze(params: AnalyzeParams): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;iBA2CxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,wBAAsB,OAAO,CAC3B,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA8ChF;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IAIX,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;iBA+CxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,wBAAsB,OAAO,CAC3B,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA+ChF;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IAIX,OAAO;CACR,CAAC"}
@@ -49,11 +49,17 @@ export const analyzeSchema = z.object({
49
49
  .string()
50
50
  .optional()
51
51
  .describe('Model name to read label configuration from mloop.yaml (default: "default")'),
52
+ records: z
53
+ .string()
54
+ .optional()
55
+ .describe('For a JSON data file: the dotted path to the array whose items are the rows'),
52
56
  });
53
57
  export async function analyze(params) {
54
58
  try {
55
- const { aspect, dataFile, projectPath, label, modelName, column, maxLag, aroundTrend } = params;
59
+ const { aspect, dataFile, projectPath, label, modelName, column, maxLag, aroundTrend, records } = params;
56
60
  const cliParams = {};
61
+ if (records)
62
+ cliParams['records'] = records;
57
63
  if (aspect === 'series') {
58
64
  // A series has no label and no model: its options are the column and the two test choices.
59
65
  if (column)
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/tools/analyze.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { runTraining } from '../training-run.js';
7
7
  import { formatError } from '../utils/errors.js';
8
8
  export const autoTrainSchema = z.object({
9
9
  projectPath: z.string().describe('Project directory path'),
10
- dataFile: z.string().optional().describe('Training data file (default: datasets/train.csv)'),
10
+ dataFile: z.string().optional().describe('Training data file (default: data.train in mloop.yaml, else datasets/train.csv)'),
11
11
  label: z.string().optional().describe('Label column (uses mloop.yaml default if omitted)'),
12
12
  modelName: z.string().optional().describe('Model name (default: "default")'),
13
13
  time: z.number().positive().optional().describe('Training time (omit for auto-time)'),
@@ -1 +1 @@
1
- {"version":3,"file":"auto-train.js","sourceRoot":"","sources":["../../src/tools/auto-train.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-train.js","sourceRoot":"","sources":["../../src/tools/auto-train.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC1D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;IAC3H,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IAC1F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC5E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;CACtF,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAuB,EAAE,GAAmB;IAC1E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,yCAAyC;QACzC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YACpF,MAAM,YAAY,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YAC1D,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9B,CAAC;QAED,gBAAgB;QAChB,MAAM,eAAe,GAAa,EAAE,CAAC;QACrC,IAAI,MAAM,CAAC,QAAQ;YAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAE3D,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,IAAI,MAAM,CAAC,KAAK;YAAE,SAAS,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QACpD,IAAI,MAAM,CAAC,IAAI;YAAE,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;QACjD,IAAI,MAAM,CAAC,SAAS;YAAE,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;QAE3D,MAAM,SAAS,GAAG,uBAAuB,CAAC,OAAO,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACvF,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEhC,2BAA2B;QAC3B,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAC7C,IAAI,MAAM,CAAC,SAAS;YAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;QAC1D,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC7E,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAEjC,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,qBAAqB;wBAC9B,KAAK;wBACL,eAAe,EAAE,WAAW;wBAC5B,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;qBAC3C,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,OAAO,EAAE,KAAK;wBACd,OAAO,EAAE,mBAAmB;wBAC5B,eAAe,EAAE,KAAK;wBACtB,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;qBAC1B,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,+IAA+I;IAC5J,OAAO,EAAE,SAAS;CACnB,CAAC"}
@@ -14,6 +14,7 @@ export declare const calibrateSchema: z.ZodObject<{
14
14
  }>>;
15
15
  weight: z.ZodOptional<z.ZodString>;
16
16
  clear: z.ZodOptional<z.ZodBoolean>;
17
+ records: z.ZodOptional<z.ZodString>;
17
18
  }, z.core.$strip>;
18
19
  export type CalibrateParams = z.infer<typeof calibrateSchema>;
19
20
  export declare function calibrate(params: CalibrateParams): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"calibrate.d.ts","sourceRoot":"","sources":["../../src/tools/calibrate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,eAAe;;;;;;;;;;;;iBAQ1B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,wBAAsB,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAwBvI;AAED,eAAO,MAAM,aAAa;IACxB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"calibrate.d.ts","sourceRoot":"","sources":["../../src/tools/calibrate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,eAAe;;;;;;;;;;;;;iBAS1B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,wBAAsB,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAyBvI;AAED,eAAO,MAAM,aAAa;IACxB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
@@ -13,10 +13,11 @@ export const calibrateSchema = z.object({
13
13
  method: z.enum(['platt', 'isotonic', 'temperature']).optional().describe('Binary: platt (default; steady on a few hundred rows) or isotonic (no shape assumed, needs more rows). Multiclass: temperature (default; answers unchanged)'),
14
14
  weight: z.string().optional().describe('Column that weights the rows (1/π for a recheck sample)'),
15
15
  clear: z.boolean().optional().describe('Remove the calibration: the model answers with its own probabilities again'),
16
+ records: z.string().optional().describe('For a JSON dataFile: the dotted path to the array whose items are the rows'),
16
17
  });
17
18
  export async function calibrate(params) {
18
19
  try {
19
- const { projectPath, experimentId, modelName, dataFile, method, weight, clear } = params;
20
+ const { projectPath, experimentId, modelName, dataFile, method, weight, clear, records } = params;
20
21
  const args = ['calibrate'];
21
22
  if (experimentId)
22
23
  args.push(experimentId);
@@ -28,6 +29,8 @@ export async function calibrate(params) {
28
29
  args.push('--method', method);
29
30
  if (weight)
30
31
  args.push('--weight', weight);
32
+ if (records)
33
+ args.push('--records', records);
31
34
  if (clear)
32
35
  args.push('--clear');
33
36
  args.push('--json');
@@ -1 +1 @@
1
- {"version":3,"file":"calibrate.js","sourceRoot":"","sources":["../../src/tools/calibrate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;IACvG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACvD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4EAA4E,CAAC;IACtH,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6JAA6J,CAAC;IACvO,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;IACjG,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4EAA4E,CAAC;CACrH,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAuB;IACrD,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QAEzF,MAAM,IAAI,GAAa,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,YAAY;YAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,QAAQ;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5C,IAAI,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAI,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAI,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEpB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAE9D,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,wBAAwB,EAAE,CAAC;SAC7F,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,spBAAspB;IACnqB,OAAO,EAAE,SAAS;CACnB,CAAC"}
1
+ {"version":3,"file":"calibrate.js","sourceRoot":"","sources":["../../src/tools/calibrate.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,11 @@
4
4
  import { z } from 'zod';
5
5
  export declare const compareSchema: z.ZodObject<{
6
6
  projectPath: z.ZodString;
7
- experiments: z.ZodArray<z.ZodString>;
7
+ experiments: z.ZodOptional<z.ZodArray<z.ZodString>>;
8
8
  modelName: z.ZodOptional<z.ZodString>;
9
+ best: z.ZodOptional<z.ZodNumber>;
10
+ metric: z.ZodOptional<z.ZodString>;
11
+ metricsFile: z.ZodOptional<z.ZodString>;
9
12
  }, z.core.$strip>;
10
13
  export type CompareParams = z.infer<typeof compareSchema>;
11
14
  export declare function compare(params: CompareParams): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"compare.d.ts","sourceRoot":"","sources":["../../src/tools/compare.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;iBAIxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,wBAAsB,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA8BnI;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"compare.d.ts","sourceRoot":"","sources":["../../src/tools/compare.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;;;;iBAOxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,wBAAsB,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAiCnI;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
@@ -7,16 +7,25 @@ import { parseCliOutput } from '../utils/parser.js';
7
7
  import { formatError } from '../utils/errors.js';
8
8
  export const compareSchema = z.object({
9
9
  projectPath: z.string().describe('Path to MLoop project directory'),
10
- experiments: z.array(z.string()).min(2).describe('Experiment IDs to compare (at least 2)'),
10
+ experiments: z.array(z.string()).min(2).optional().describe('Experiment IDs to compare (at least 2; leave out to compare the model\'s completed experiments)'),
11
11
  modelName: z.string().optional().describe('Model name'),
12
+ best: z.number().int().positive().optional().describe('Compare only the top N experiments by metric (without experiments)'),
13
+ metric: z.string().optional().describe('Rank by this metric instead of the one the model was trained to optimize'),
14
+ metricsFile: z.string().optional().describe('Rank candidates from a JSON file of metrics, with no MLoop project needed (an external system of record\'s candidates): [{"id": ..., "metrics": {...}}, ...]'),
12
15
  });
13
16
  export async function compare(params) {
14
17
  try {
15
- const { projectPath, experiments, modelName } = params;
18
+ const { projectPath, experiments = [], modelName, best, metric, metricsFile } = params;
16
19
  const args = ['compare', ...experiments, '--json'];
17
20
  if (modelName) {
18
21
  args.push('--name', modelName);
19
22
  }
23
+ if (best !== undefined)
24
+ args.push('--best', String(best));
25
+ if (metric)
26
+ args.push('--metric', metric);
27
+ if (metricsFile)
28
+ args.push('--metrics-file', metricsFile);
20
29
  const result = await executeMloop(args, {
21
30
  cwd: projectPath,
22
31
  });
@@ -1 +1 @@
1
- {"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/tools/compare.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC1F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;CACxD,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAqB;IACjD,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAEvD,MAAM,IAAI,GAAa,CAAC,SAAS,EAAE,GAAG,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC7D,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE;YACtC,GAAG,EAAE,WAAW;SACjB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE7C,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM,IAAI,+BAA+B;iBAChD,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC;iBACzB,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,oFAAoF;IACjG,OAAO,EAAE,OAAO;CACjB,CAAC"}
1
+ {"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/tools/compare.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iGAAiG,CAAC;IAC9J,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oEAAoE,CAAC;IAC3H,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0EAA0E,CAAC;IAClH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8JAA8J,CAAC;CAC5M,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAqB;IACjD,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,WAAW,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAEvF,MAAM,IAAI,GAAa,CAAC,SAAS,EAAE,GAAG,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC7D,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,IAAI,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAI,WAAW;YAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAE1D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE;YACtC,GAAG,EAAE,WAAW;SACjB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE7C,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM,IAAI,+BAA+B;iBAChD,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC;iBACzB,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,oFAAoF;IACjG,OAAO,EAAE,OAAO;CACjB,CAAC"}
@@ -8,6 +8,7 @@ export declare const detectSchema: z.ZodObject<{
8
8
  threshold: z.ZodOptional<z.ZodNumber>;
9
9
  sensitivity: z.ZodOptional<z.ZodNumber>;
10
10
  output: z.ZodOptional<z.ZodString>;
11
+ records: z.ZodOptional<z.ZodString>;
11
12
  }, z.core.$strip>;
12
13
  export type DetectParams = z.infer<typeof detectSchema>;
13
14
  export declare function detect(params: DetectParams): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/tools/detect.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,YAAY;;;;;;iBAMvB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,wBAAsB,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAmCjI;AAED,eAAO,MAAM,UAAU;IACrB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/tools/detect.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,YAAY;;;;;;;iBAOvB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,wBAAsB,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAoCjI;AAED,eAAO,MAAM,UAAU;IACrB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
@@ -12,11 +12,14 @@ export const detectSchema = z.object({
12
12
  threshold: z.number().positive().optional().describe("Score above which a point is an anomaly (> 0; the score is a point's saliency relative to the points before it; default 3)"),
13
13
  sensitivity: z.number().gt(0).lt(100).optional().describe('Coverage of the control limits in percent (0-100, exclusive; 99.73 = 3 sigma; default 99.73)'),
14
14
  output: z.string().optional().describe('Also write the full per-point result to this CSV file'),
15
+ records: z.string().optional().describe('For a JSON data file: the dotted path to the array whose items are the rows'),
15
16
  });
16
17
  export async function detect(params) {
17
18
  try {
18
- const { dataPath, column, threshold, sensitivity, output } = params;
19
+ const { dataPath, column, threshold, sensitivity, output, records } = params;
19
20
  const cliParams = {};
21
+ if (records)
22
+ cliParams['records'] = records;
20
23
  if (column)
21
24
  cliParams['column'] = column;
22
25
  if (threshold !== undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/tools/detect.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IAChF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0EAA0E,CAAC;IAClH,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4HAA4H,CAAC;IAClL,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8FAA8F,CAAC;IACzJ,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;CAChG,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,MAAoB;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAEpE,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,IAAI,MAAM;YAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QACzC,IAAI,SAAS,KAAK,SAAS;YAAE,SAAS,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;QAChE,IAAI,WAAW,KAAK,SAAS;YAAE,SAAS,CAAC,aAAa,CAAC,GAAG,WAAW,CAAC;QACtE,IAAI,MAAM;YAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QACzC,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QAEzB,MAAM,IAAI,GAAG,uBAAuB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;QAEtE,4FAA4F;QAC5F,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE;YACtC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC1C,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjD,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU,IAAI,sBAAsB;iBAC3C,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC;iBACzB,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,gcAAgc;IAC7c,OAAO,EAAE,MAAM;CAChB,CAAC"}
1
+ {"version":3,"file":"detect.js","sourceRoot":"","sources":["../../src/tools/detect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * mloop_docker tool - Generate the Docker configuration that serves a model
3
+ */
4
+ import { z } from 'zod';
5
+ export declare const dockerSchema: z.ZodObject<{
6
+ projectPath: z.ZodString;
7
+ modelName: z.ZodOptional<z.ZodString>;
8
+ port: z.ZodOptional<z.ZodNumber>;
9
+ }, z.core.$strip>;
10
+ export type DockerParams = z.infer<typeof dockerSchema>;
11
+ export declare function docker(params: DockerParams): Promise<{
12
+ content: Array<{
13
+ type: 'text';
14
+ text: string;
15
+ }>;
16
+ isError?: boolean;
17
+ }>;
18
+ export declare const dockerTool: {
19
+ name: string;
20
+ description: string;
21
+ handler: typeof docker;
22
+ };
23
+ //# sourceMappingURL=docker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../../src/tools/docker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,YAAY;;;;iBAIvB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,wBAAsB,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAmBjI;AAED,eAAO,MAAM,UAAU;IACrB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * mloop_docker tool - Generate the Docker configuration that serves a model
3
+ */
4
+ import { z } from 'zod';
5
+ import { executeMloop } from '../executor.js';
6
+ import { parseCliOutput } from '../utils/parser.js';
7
+ import { formatError } from '../utils/errors.js';
8
+ export const dockerSchema = z.object({
9
+ projectPath: z.string().describe('Path to MLoop project directory (the files are written here)'),
10
+ modelName: z.string().optional().describe('Model to containerize (default: "default")'),
11
+ port: z.number().int().positive().max(65535).optional().describe('Port the API is exposed on (default 5000)'),
12
+ });
13
+ export async function docker(params) {
14
+ try {
15
+ const { projectPath, modelName, port } = params;
16
+ const args = ['docker'];
17
+ if (modelName)
18
+ args.push('--name', modelName);
19
+ if (port !== undefined)
20
+ args.push('--port', String(port));
21
+ const result = await executeMloop(args, { cwd: projectPath });
22
+ return {
23
+ content: [{ type: 'text', text: parseCliOutput(result.stdout) || 'Docker files generated.' }],
24
+ };
25
+ }
26
+ catch (error) {
27
+ return {
28
+ content: [{ type: 'text', text: formatError(error) }],
29
+ isError: true,
30
+ };
31
+ }
32
+ }
33
+ export const dockerTool = {
34
+ name: 'mloop_docker',
35
+ description: 'Generate the Docker configuration that serves a project\'s model with `mloop serve` (a Dockerfile and a docker-compose.yml, whose compose service mounts the project\'s models read-only and needs a JWT_SIGNING_KEY of 32+ characters to start) into the project directory. Files already there are overwritten. Answers the console text: this command has no JSON output.',
36
+ handler: docker,
37
+ };
38
+ //# sourceMappingURL=docker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/tools/docker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IAChG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IACvF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;CAC9G,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,MAAoB;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QAEhD,MAAM,IAAI,GAAa,CAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAE9D,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,yBAAyB,EAAE,CAAC;SAC9F,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,8WAA8W;IAC3X,OAAO,EAAE,MAAM;CAChB,CAAC"}
@@ -8,6 +8,7 @@ export declare const embedSchema: z.ZodObject<{
8
8
  texts: z.ZodOptional<z.ZodArray<z.ZodString>>;
9
9
  encoder: z.ZodOptional<z.ZodString>;
10
10
  patches: z.ZodOptional<z.ZodBoolean>;
11
+ textFile: z.ZodOptional<z.ZodString>;
11
12
  }, z.core.$strip>;
12
13
  export type EmbedParams = z.infer<typeof embedSchema>;
13
14
  export declare function embed(params: EmbedParams): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/tools/embed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,WAAW;;;;;;iBAMtB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,wBAAsB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA2B/H;AAED,eAAO,MAAM,SAAS;IACpB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/tools/embed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,WAAW;;;;;;;iBAOtB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEtD,wBAAsB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA4B/H;AAED,eAAO,MAAM,SAAS;IACpB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
@@ -11,12 +11,13 @@ export const embedSchema = z.object({
11
11
  texts: z.array(z.string()).max(256).optional().describe('Texts to embed with a text encoder, at most 256 — instead of images'),
12
12
  encoder: z.string().optional().describe('The encoder to use (mloop_encoder list); may be left out when only one of the kind is installed'),
13
13
  patches: z.boolean().optional().describe('Also one vector per patch of each image, on the encoder\'s grid (images only, at most 8)'),
14
+ textFile: z.string().optional().describe('A UTF-8 file of texts to embed, one per line (at most 256 together with texts) — instead of images'),
14
15
  });
15
16
  export async function embed(params) {
16
- const { projectPath, images = [], texts = [], encoder, patches } = params;
17
- if ((images.length === 0) === (texts.length === 0)) {
17
+ const { projectPath, images = [], texts = [], textFile, encoder, patches } = params;
18
+ if ((images.length === 0) === (texts.length === 0 && !textFile)) {
18
19
  return {
19
- content: [{ type: 'text', text: 'Give either images or texts to embed (one of the two, not both).' }],
20
+ content: [{ type: 'text', text: 'Give either images or texts (texts or textFile) to embed (one of the two, not both).' }],
20
21
  isError: true,
21
22
  };
22
23
  }
@@ -24,6 +25,8 @@ export async function embed(params) {
24
25
  const args = ['embed', ...images];
25
26
  for (const text of texts)
26
27
  args.push('--text', text);
28
+ if (textFile)
29
+ args.push('--text-file', textFile);
27
30
  if (encoder)
28
31
  args.push('--encoder', encoder);
29
32
  if (patches)
@@ -1 +1 @@
1
- {"version":3,"file":"embed.js","sourceRoot":"","sources":["../../src/tools/embed.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gFAAgF,CAAC;IAClH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IAC1G,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IAC9H,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iGAAiG,CAAC;IAC1I,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0FAA0F,CAAC;CACrI,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,MAAmB;IAC7C,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC1E,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACnD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kEAAkE,EAAE,CAAC;YACrG,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAa,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;QAC5C,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACpD,IAAI,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC7C,IAAI,OAAO;YAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEpB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAE9D,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SACjE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,wQAAwQ;IACrR,OAAO,EAAE,KAAK;CACf,CAAC"}
1
+ {"version":3,"file":"embed.js","sourceRoot":"","sources":["../../src/tools/embed.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,19 @@
1
1
  /**
2
- * mloop_encoder tool - List, install or remove pretrained encoders
2
+ * mloop_encoder tool - List, install, add or remove pretrained encoders
3
3
  */
4
4
  import { z } from 'zod';
5
5
  export declare const encoderSchema: z.ZodObject<{
6
6
  projectPath: z.ZodString;
7
7
  action: z.ZodEnum<{
8
+ add: "add";
8
9
  install: "install";
9
10
  list: "list";
10
11
  remove: "remove";
11
12
  }>;
12
13
  encoder: z.ZodOptional<z.ZodString>;
14
+ definition: z.ZodOptional<z.ZodString>;
15
+ model: z.ZodOptional<z.ZodString>;
16
+ tokenizer: z.ZodOptional<z.ZodString>;
13
17
  }, z.core.$strip>;
14
18
  export type EncoderParams = z.infer<typeof encoderSchema>;
15
19
  export declare function encoder(params: EncoderParams): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"encoder.d.ts","sourceRoot":"","sources":["../../src/tools/encoder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;;;;;iBAIxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,wBAAsB,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAyBnI;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"encoder.d.ts","sourceRoot":"","sources":["../../src/tools/encoder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;;;;;;;;;iBAOxB,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D,wBAAsB,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA8BnI;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}