@iyulab/mloop-mcp 0.13.0 → 0.15.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.
- package/CHANGELOG.md +68 -0
- package/LICENSE +21 -0
- package/README.md +22 -3
- package/build/server.d.ts.map +1 -1
- package/build/server.js +6 -2
- package/build/server.js.map +1 -1
- package/build/tasks.d.ts +26 -0
- package/build/tasks.d.ts.map +1 -0
- package/build/tasks.js +26 -0
- package/build/tasks.js.map +1 -0
- package/build/tool-hints.d.ts +26 -0
- package/build/tool-hints.d.ts.map +1 -0
- package/build/tool-hints.js +72 -0
- package/build/tool-hints.js.map +1 -0
- package/build/tools/analyze.d.ts +5 -0
- package/build/tools/analyze.d.ts.map +1 -1
- package/build/tools/analyze.js +41 -8
- package/build/tools/analyze.js.map +1 -1
- package/build/tools/calibrate.d.ts +1 -0
- package/build/tools/calibrate.d.ts.map +1 -1
- package/build/tools/calibrate.js +4 -1
- package/build/tools/calibrate.js.map +1 -1
- package/build/tools/compare.d.ts +4 -1
- package/build/tools/compare.d.ts.map +1 -1
- package/build/tools/compare.js +11 -2
- package/build/tools/compare.js.map +1 -1
- package/build/tools/detect.d.ts +1 -0
- package/build/tools/detect.d.ts.map +1 -1
- package/build/tools/detect.js +4 -1
- package/build/tools/detect.js.map +1 -1
- package/build/tools/docker.d.ts +23 -0
- package/build/tools/docker.d.ts.map +1 -0
- package/build/tools/docker.js +38 -0
- package/build/tools/docker.js.map +1 -0
- package/build/tools/embed.d.ts +1 -0
- package/build/tools/embed.d.ts.map +1 -1
- package/build/tools/embed.js +6 -3
- package/build/tools/embed.js.map +1 -1
- package/build/tools/encoder.d.ts +5 -1
- package/build/tools/encoder.d.ts.map +1 -1
- package/build/tools/encoder.js +18 -9
- package/build/tools/encoder.js.map +1 -1
- package/build/tools/evaluate.d.ts +2 -0
- package/build/tools/evaluate.d.ts.map +1 -1
- package/build/tools/evaluate.js +9 -1
- package/build/tools/evaluate.js.map +1 -1
- package/build/tools/explain.d.ts +29 -0
- package/build/tools/explain.d.ts.map +1 -0
- package/build/tools/explain.js +57 -0
- package/build/tools/explain.js.map +1 -0
- package/build/tools/feedback.d.ts +3 -0
- package/build/tools/feedback.d.ts.map +1 -1
- package/build/tools/feedback.js +7 -0
- package/build/tools/feedback.js.map +1 -1
- package/build/tools/index.d.ts +3 -0
- package/build/tools/index.d.ts.map +1 -1
- package/build/tools/index.js +3 -0
- package/build/tools/index.js.map +1 -1
- package/build/tools/info.d.ts +1 -0
- package/build/tools/info.d.ts.map +1 -1
- package/build/tools/info.js +5 -1
- package/build/tools/info.js.map +1 -1
- package/build/tools/init.d.ts +15 -0
- package/build/tools/init.d.ts.map +1 -1
- package/build/tools/init.js +10 -2
- package/build/tools/init.js.map +1 -1
- package/build/tools/list.d.ts +1 -0
- package/build/tools/list.d.ts.map +1 -1
- package/build/tools/list.js +4 -1
- package/build/tools/list.js.map +1 -1
- package/build/tools/logs.d.ts +2 -0
- package/build/tools/logs.d.ts.map +1 -1
- package/build/tools/logs.js +6 -0
- package/build/tools/logs.js.map +1 -1
- package/build/tools/predict.d.ts +4 -0
- package/build/tools/predict.d.ts.map +1 -1
- package/build/tools/predict.js +14 -1
- package/build/tools/predict.js.map +1 -1
- package/build/tools/prep-plan.d.ts +1 -0
- package/build/tools/prep-plan.d.ts.map +1 -1
- package/build/tools/prep-plan.js +4 -1
- package/build/tools/prep-plan.js.map +1 -1
- package/build/tools/promote.d.ts +1 -0
- package/build/tools/promote.d.ts.map +1 -1
- package/build/tools/promote.js +4 -1
- package/build/tools/promote.js.map +1 -1
- package/build/tools/quick-start.d.ts +14 -1
- package/build/tools/quick-start.d.ts.map +1 -1
- package/build/tools/quick-start.js +7 -4
- package/build/tools/quick-start.js.map +1 -1
- package/build/tools/runtime.d.ts +31 -0
- package/build/tools/runtime.d.ts.map +1 -0
- package/build/tools/runtime.js +42 -0
- package/build/tools/runtime.js.map +1 -0
- package/build/tools/sample.d.ts +2 -1
- package/build/tools/sample.d.ts.map +1 -1
- package/build/tools/sample.js +5 -3
- package/build/tools/sample.js.map +1 -1
- package/build/tools/status.d.ts +1 -0
- package/build/tools/status.d.ts.map +1 -1
- package/build/tools/status.js +4 -1
- package/build/tools/status.js.map +1 -1
- package/build/tools/threshold.d.ts +2 -0
- package/build/tools/threshold.d.ts.map +1 -1
- package/build/tools/threshold.js +8 -2
- package/build/tools/threshold.js.map +1 -1
- package/build/tools/train.d.ts +29 -0
- package/build/tools/train.d.ts.map +1 -1
- package/build/tools/train.js +44 -2
- package/build/tools/train.js.map +1 -1
- package/build/tools/trigger.d.ts +2 -0
- package/build/tools/trigger.d.ts.map +1 -1
- package/build/tools/trigger.js +6 -0
- package/build/tools/trigger.js.map +1 -1
- package/build/tools/validate.d.ts +1 -0
- package/build/tools/validate.d.ts.map +1 -1
- package/build/tools/validate.js +3 -0
- package/build/tools/validate.js.map +1 -1
- package/build/training-run.d.ts +7 -1
- package/build/training-run.d.ts.map +1 -1
- package/build/training-run.js +9 -1
- package/build/training-run.js.map +1 -1
- package/package.json +4 -4
package/build/tools/init.d.ts
CHANGED
|
@@ -5,10 +5,25 @@ import { z } from 'zod';
|
|
|
5
5
|
export declare const initSchema: z.ZodObject<{
|
|
6
6
|
projectPath: z.ZodString;
|
|
7
7
|
task: z.ZodEnum<{
|
|
8
|
+
"anomaly-detection": "anomaly-detection";
|
|
8
9
|
"binary-classification": "binary-classification";
|
|
10
|
+
clustering: "clustering";
|
|
11
|
+
forecasting: "forecasting";
|
|
12
|
+
"image-anomaly": "image-anomaly";
|
|
13
|
+
"image-classification": "image-classification";
|
|
9
14
|
"multiclass-classification": "multiclass-classification";
|
|
15
|
+
ner: "ner";
|
|
16
|
+
"object-detection": "object-detection";
|
|
17
|
+
"question-answering": "question-answering";
|
|
18
|
+
ranking: "ranking";
|
|
19
|
+
recommendation: "recommendation";
|
|
10
20
|
regression: "regression";
|
|
21
|
+
"sentence-similarity": "sentence-similarity";
|
|
22
|
+
"text-classification": "text-classification";
|
|
23
|
+
"time-series-anomaly": "time-series-anomaly";
|
|
11
24
|
}>;
|
|
25
|
+
modelName: z.ZodOptional<z.ZodString>;
|
|
26
|
+
label: z.ZodOptional<z.ZodString>;
|
|
12
27
|
}, z.core.$strip>;
|
|
13
28
|
export type InitParams = z.infer<typeof initSchema>;
|
|
14
29
|
export declare function init(params: InitParams): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;iBAMrB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEpD,wBAAsB,IAAI,CAAC,MAAM,EAAE,UAAU,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,CA6B7H;AAED,eAAO,MAAM,QAAQ;IACnB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
|
package/build/tools/init.js
CHANGED
|
@@ -6,16 +6,24 @@ import { mkdirSync } from 'fs';
|
|
|
6
6
|
import { executeMloop, buildArgsWithPositional } from '../executor.js';
|
|
7
7
|
import { parseCliOutput } from '../utils/parser.js';
|
|
8
8
|
import { formatError } from '../utils/errors.js';
|
|
9
|
+
import { taskSchema } from '../tasks.js';
|
|
9
10
|
export const initSchema = z.object({
|
|
10
11
|
projectPath: z.string().describe('Path to create/initialize the MLoop project'),
|
|
11
|
-
task:
|
|
12
|
+
task: taskSchema
|
|
12
13
|
.describe('ML task type for this project'),
|
|
14
|
+
modelName: z.string().optional().describe('Name of the first model (default: "default")'),
|
|
15
|
+
label: z.string().optional().describe('Label column name (can be set later in mloop.yaml; default: "Label")'),
|
|
13
16
|
});
|
|
14
17
|
export async function init(params) {
|
|
15
18
|
try {
|
|
16
19
|
// Ensure project directory exists
|
|
17
20
|
mkdirSync(params.projectPath, { recursive: true });
|
|
18
|
-
const args = buildArgsWithPositional('init', ['.'], {
|
|
21
|
+
const args = buildArgsWithPositional('init', ['.'], {
|
|
22
|
+
task: params.task,
|
|
23
|
+
...(params.modelName ? { name: params.modelName } : {}),
|
|
24
|
+
...(params.label ? { label: params.label } : {}),
|
|
25
|
+
json: true,
|
|
26
|
+
});
|
|
19
27
|
const result = await executeMloop(args, { cwd: params.projectPath });
|
|
20
28
|
const output = parseCliOutput(result.stdout);
|
|
21
29
|
return {
|
package/build/tools/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,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;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,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,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IAC/E,IAAI,EAAE,UAAU;SACb,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IACzF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;CAC9G,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,MAAkB;IAC3C,IAAI,CAAC;QACH,kCAAkC;QAClC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEnD,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE;YAClD,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACrE,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,mCAAmC;iBACpD,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,QAAQ,GAAG;IACtB,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,qFAAqF;IAClG,OAAO,EAAE,IAAI;CACd,CAAC"}
|
package/build/tools/list.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export declare const listSchema: z.ZodObject<{
|
|
|
6
6
|
projectPath: z.ZodString;
|
|
7
7
|
modelName: z.ZodOptional<z.ZodString>;
|
|
8
8
|
showAll: z.ZodOptional<z.ZodBoolean>;
|
|
9
|
+
trials: z.ZodOptional<z.ZodString>;
|
|
9
10
|
}, z.core.$strip>;
|
|
10
11
|
export type ListParams = z.infer<typeof listSchema>;
|
|
11
12
|
export declare function list(params: ListParams): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/tools/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,UAAU
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/tools/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,UAAU;;;;;iBAKrB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEpD,wBAAsB,IAAI,CAAC,MAAM,EAAE,UAAU,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,CAkC7H;AAED,eAAO,MAAM,QAAQ;IACnB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
|
package/build/tools/list.js
CHANGED
|
@@ -9,15 +9,18 @@ export const listSchema = z.object({
|
|
|
9
9
|
projectPath: z.string().describe('Path to MLoop project directory'),
|
|
10
10
|
modelName: z.string().optional().describe('Filter by model name'),
|
|
11
11
|
showAll: z.boolean().optional().describe('Include failed experiments'),
|
|
12
|
+
trials: z.string().optional().describe('An experiment ID: show its trial leaderboard (every candidate the search tried, e.g. a clustering run\'s K = 2..10) instead of the experiment overview'),
|
|
12
13
|
});
|
|
13
14
|
export async function list(params) {
|
|
14
15
|
try {
|
|
15
|
-
const { projectPath, modelName, showAll } = params;
|
|
16
|
+
const { projectPath, modelName, showAll, trials } = params;
|
|
16
17
|
const cliParams = {};
|
|
17
18
|
if (modelName)
|
|
18
19
|
cliParams['name'] = modelName;
|
|
19
20
|
if (showAll)
|
|
20
21
|
cliParams['all'] = true;
|
|
22
|
+
if (trials)
|
|
23
|
+
cliParams['trials'] = trials;
|
|
21
24
|
// Structured output (mloop >= 0.21): experiments array + production map — no table scraping.
|
|
22
25
|
cliParams['json'] = true;
|
|
23
26
|
const args = buildArgs('list', cliParams);
|
package/build/tools/list.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/tools/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/tools/list.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACjE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACtE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wJAAwJ,CAAC;CACjM,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,MAAkB;IAC3C,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAE3D,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,IAAI,SAAS;YAAE,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;QAC7C,IAAI,OAAO;YAAE,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;QACrC,IAAI,MAAM;YAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QACzC,6FAA6F;QAC7F,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QAEzB,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAE1C,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,uBAAuB;iBACxC,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,QAAQ,GAAG;IACtB,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,qDAAqD;IAClE,OAAO,EAAE,IAAI;CACd,CAAC"}
|
package/build/tools/logs.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ export declare const logsSchema: z.ZodObject<{
|
|
|
6
6
|
projectPath: z.ZodString;
|
|
7
7
|
modelName: z.ZodOptional<z.ZodString>;
|
|
8
8
|
limit: z.ZodOptional<z.ZodNumber>;
|
|
9
|
+
from: z.ZodOptional<z.ZodString>;
|
|
10
|
+
to: z.ZodOptional<z.ZodString>;
|
|
9
11
|
}, z.core.$strip>;
|
|
10
12
|
export type LogsParams = z.infer<typeof logsSchema>;
|
|
11
13
|
export declare function logs(params: LogsParams): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/tools/logs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,UAAU
|
|
1
|
+
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/tools/logs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,UAAU;;;;;;iBAMrB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEpD,wBAAsB,IAAI,CAAC,MAAM,EAAE,UAAU,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,CA4B7H;AAED,eAAO,MAAM,QAAQ;IACnB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
|
package/build/tools/logs.js
CHANGED
|
@@ -9,6 +9,8 @@ export const logsSchema = z.object({
|
|
|
9
9
|
projectPath: z.string().describe('Path to MLoop project directory'),
|
|
10
10
|
modelName: z.string().optional().describe('Model name (default: "default")'),
|
|
11
11
|
limit: z.number().positive().optional().describe('Maximum number of log entries to show'),
|
|
12
|
+
from: z.string().optional().describe('Only entries from this day on (yyyy-MM-dd)'),
|
|
13
|
+
to: z.string().optional().describe('Only entries up to this day (yyyy-MM-dd)'),
|
|
12
14
|
});
|
|
13
15
|
export async function logs(params) {
|
|
14
16
|
try {
|
|
@@ -17,6 +19,10 @@ export async function logs(params) {
|
|
|
17
19
|
cliParams['name'] = params.modelName;
|
|
18
20
|
if (params.limit)
|
|
19
21
|
cliParams['limit'] = params.limit;
|
|
22
|
+
if (params.from)
|
|
23
|
+
cliParams['from'] = params.from;
|
|
24
|
+
if (params.to)
|
|
25
|
+
cliParams['to'] = params.to;
|
|
20
26
|
cliParams['json'] = true;
|
|
21
27
|
const args = buildArgs('logs', cliParams);
|
|
22
28
|
const result = await executeMloop(args, { cwd: params.projectPath });
|
package/build/tools/logs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/tools/logs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC5E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/tools/logs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC5E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACzF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IAClF,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;CAC/E,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,MAAkB;IAC3C,IAAI,CAAC;QACH,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,IAAI,MAAM,CAAC,SAAS;YAAE,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;QAC3D,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,EAAE;YAAE,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;QAE3C,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QACzB,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACrE,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,2BAA2B;iBAC5C,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,QAAQ,GAAG;IACtB,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,yFAAyF;IACtG,OAAO,EAAE,IAAI;CACd,CAAC"}
|
package/build/tools/predict.d.ts
CHANGED
|
@@ -7,14 +7,18 @@ export declare const predictSchema: z.ZodObject<{
|
|
|
7
7
|
dataFile: z.ZodOptional<z.ZodString>;
|
|
8
8
|
modelName: z.ZodOptional<z.ZodString>;
|
|
9
9
|
experimentId: z.ZodOptional<z.ZodString>;
|
|
10
|
+
model: z.ZodOptional<z.ZodString>;
|
|
10
11
|
output: z.ZodOptional<z.ZodString>;
|
|
11
12
|
log: z.ZodOptional<z.ZodBoolean>;
|
|
13
|
+
includeFeatures: z.ZodOptional<z.ZodBoolean>;
|
|
14
|
+
records: z.ZodOptional<z.ZodString>;
|
|
12
15
|
unknownStrategy: z.ZodOptional<z.ZodEnum<{
|
|
13
16
|
auto: "auto";
|
|
14
17
|
error: "error";
|
|
15
18
|
"use-missing": "use-missing";
|
|
16
19
|
"use-most-frequent": "use-most-frequent";
|
|
17
20
|
}>>;
|
|
21
|
+
scoreThreshold: z.ZodOptional<z.ZodNumber>;
|
|
18
22
|
}, z.core.$strip>;
|
|
19
23
|
export type PredictParams = z.infer<typeof predictSchema>;
|
|
20
24
|
export declare function predict(params: PredictParams): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predict.d.ts","sourceRoot":"","sources":["../../src/tools/predict.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"predict.d.ts","sourceRoot":"","sources":["../../src/tools/predict.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;iBAexB,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,CA2DnI;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
|
package/build/tools/predict.js
CHANGED
|
@@ -11,14 +11,19 @@ export const predictSchema = z.object({
|
|
|
11
11
|
modelName: z.string().optional().describe('Model name'),
|
|
12
12
|
experimentId: z.string().optional()
|
|
13
13
|
.describe('Predict with this experiment (e.g. a staging candidate) instead of production — production does not move'),
|
|
14
|
+
model: z.string().optional().describe('Path to a model file to predict with instead of the production model'),
|
|
14
15
|
output: z.string().optional().describe('Output file path'),
|
|
15
16
|
log: z.boolean().optional().describe('Log the predictions; without an output file each returned row carries the predictionId that feedback takes'),
|
|
17
|
+
includeFeatures: z.boolean().optional().describe('Whether the output file repeats the input feature columns (the CLI default is yes; false leaves them out)'),
|
|
18
|
+
records: z.string().optional().describe('For a JSON data file: the dotted path to the array whose items are the rows'),
|
|
16
19
|
unknownStrategy: z.enum(['auto', 'error', 'use-most-frequent', 'use-missing']).optional()
|
|
17
20
|
.describe('Strategy for handling unknown categorical values in prediction data'),
|
|
21
|
+
scoreThreshold: z.number().gt(0).max(1).optional()
|
|
22
|
+
.describe('Object detection only: report boxes with at least this confidence (default 0.5). A detector trained by MLoop since the ranked metrics keeps every box down to 0.05, so 0.3 (then lower) shows what a not-yet-confident detector finds; an older model keeps only boxes of 0.5 and over'),
|
|
18
23
|
});
|
|
19
24
|
export async function predict(params) {
|
|
20
25
|
try {
|
|
21
|
-
const { projectPath, dataFile, modelName, experimentId, output, log, unknownStrategy } = params;
|
|
26
|
+
const { projectPath, dataFile, modelName, model, experimentId, output, log, unknownStrategy, includeFeatures, records, scoreThreshold } = params;
|
|
22
27
|
// dataFile is a positional argument
|
|
23
28
|
const positional = [];
|
|
24
29
|
if (dataFile)
|
|
@@ -28,12 +33,20 @@ export async function predict(params) {
|
|
|
28
33
|
cliParams['name'] = modelName;
|
|
29
34
|
if (experimentId)
|
|
30
35
|
cliParams['experiment'] = experimentId;
|
|
36
|
+
if (model)
|
|
37
|
+
cliParams['model'] = model;
|
|
31
38
|
if (output)
|
|
32
39
|
cliParams['output'] = output;
|
|
33
40
|
if (log)
|
|
34
41
|
cliParams['log'] = true;
|
|
35
42
|
if (unknownStrategy)
|
|
36
43
|
cliParams['unknown-strategy'] = unknownStrategy;
|
|
44
|
+
if (includeFeatures === false)
|
|
45
|
+
cliParams['include-features'] = 'false';
|
|
46
|
+
if (records)
|
|
47
|
+
cliParams['records'] = records;
|
|
48
|
+
if (scoreThreshold !== undefined)
|
|
49
|
+
cliParams['score-threshold'] = scoreThreshold;
|
|
37
50
|
// Structured propagation: without an explicit output file, request `--json` so the agent receives the
|
|
38
51
|
// full prediction rows (predictedLabel, probabilities, conformal band, and the normalized `confidence`
|
|
39
52
|
// MLoop now owns) instead of scraped Spectre text — this is what unblocked MCP structured consumption.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predict.js","sourceRoot":"","sources":["../../src/tools/predict.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;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAChG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACvD,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAChC,QAAQ,CAAC,0GAA0G,CAAC;IACvH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAC1D,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4GAA4G,CAAC;IAClJ,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE;SACtF,QAAQ,CAAC,qEAAqE,CAAC;
|
|
1
|
+
{"version":3,"file":"predict.js","sourceRoot":"","sources":["../../src/tools/predict.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ export declare const prepPlanSchema: z.ZodObject<{
|
|
|
14
14
|
columns: z.ZodOptional<z.ZodString>;
|
|
15
15
|
remove: z.ZodOptional<z.ZodString>;
|
|
16
16
|
modelName: z.ZodOptional<z.ZodString>;
|
|
17
|
+
list: z.ZodOptional<z.ZodBoolean>;
|
|
17
18
|
}, z.core.$strip>;
|
|
18
19
|
export type PrepPlanParams = z.infer<typeof prepPlanSchema>;
|
|
19
20
|
export declare function prepPlan(params: PrepPlanParams): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prep-plan.d.ts","sourceRoot":"","sources":["../../src/tools/prep-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"prep-plan.d.ts","sourceRoot":"","sources":["../../src/tools/prep-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc;;;;;;;iBAazB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE5D,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,cAAc,GACrB,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,CA0BhF;AAED,eAAO,MAAM,YAAY;IACvB,IAAI;IACJ,WAAW;IAMX,OAAO;CACR,CAAC"}
|
package/build/tools/prep-plan.js
CHANGED
|
@@ -23,10 +23,11 @@ export const prepPlanSchema = z.object({
|
|
|
23
23
|
.describe('Comma-separated target columns for the --set/--remove step (e.g. "a,b")'),
|
|
24
24
|
remove: z.string().optional().describe('Remove prep step(s) of this type'),
|
|
25
25
|
modelName: z.string().optional().describe('Model name in mloop.yaml (default: "default")'),
|
|
26
|
+
list: z.boolean().optional().describe('List the current prep steps'),
|
|
26
27
|
});
|
|
27
28
|
export async function prepPlan(params) {
|
|
28
29
|
try {
|
|
29
|
-
const { projectPath, set, columns, remove, modelName } = params;
|
|
30
|
+
const { projectPath, set, columns, remove, modelName, list } = params;
|
|
30
31
|
const cliParams = {};
|
|
31
32
|
if (set)
|
|
32
33
|
cliParams['set'] = set;
|
|
@@ -34,6 +35,8 @@ export async function prepPlan(params) {
|
|
|
34
35
|
cliParams['columns'] = columns;
|
|
35
36
|
if (remove)
|
|
36
37
|
cliParams['remove'] = remove;
|
|
38
|
+
if (list)
|
|
39
|
+
cliParams['list'] = true;
|
|
37
40
|
if (modelName)
|
|
38
41
|
cliParams['name'] = modelName;
|
|
39
42
|
// Always emit the structured JSON envelope for LLM consumption.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prep-plan.js","sourceRoot":"","sources":["../../src/tools/prep-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;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;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IACvE,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,wFAAwF,CAAC;IACrG,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,yEAAyE,CAAC;IACtF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC1E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"prep-plan.js","sourceRoot":"","sources":["../../src/tools/prep-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;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;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IACvE,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,wFAAwF,CAAC;IACrG,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,yEAAyE,CAAC;IACtF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC1E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;IAC1F,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;CACrE,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAsB;IAEtB,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QAEtE,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,IAAI,GAAG;YAAE,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;QAChC,IAAI,OAAO;YAAE,SAAS,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;QAC5C,IAAI,MAAM;YAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QACzC,IAAI,IAAI;YAAE,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QACnC,IAAI,SAAS;YAAE,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;QAC7C,gEAAgE;QAChE,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QAEzB,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE7C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,oBAAoB,EAAE,CAAC;SAClE,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,YAAY,GAAG;IAC1B,IAAI,EAAE,iBAAiB;IACvB,WAAW,EACT,iFAAiF;QACjF,wFAAwF;QACxF,6FAA6F;QAC7F,oFAAoF;QACpF,wDAAwD;IAC1D,OAAO,EAAE,QAAQ;CAClB,CAAC"}
|
package/build/tools/promote.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export declare const promoteSchema: z.ZodObject<{
|
|
|
10
10
|
modelName: z.ZodOptional<z.ZodString>;
|
|
11
11
|
force: z.ZodOptional<z.ZodBoolean>;
|
|
12
12
|
history: z.ZodOptional<z.ZodBoolean>;
|
|
13
|
+
decideOnly: z.ZodOptional<z.ZodBoolean>;
|
|
13
14
|
}, z.core.$strip>;
|
|
14
15
|
export type PromoteParams = z.infer<typeof promoteSchema>;
|
|
15
16
|
export declare function promote(params: PromoteParams): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promote.d.ts","sourceRoot":"","sources":["../../src/tools/promote.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"promote.d.ts","sourceRoot":"","sources":["../../src/tools/promote.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,aAAa;;;;;;;;;iBASxB,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,CA+DnI;AAED,eAAO,MAAM,WAAW;IACtB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
|
package/build/tools/promote.js
CHANGED
|
@@ -13,10 +13,11 @@ export const promoteSchema = z.object({
|
|
|
13
13
|
modelName: z.string().optional().describe('Model name'),
|
|
14
14
|
force: z.boolean().optional().describe('Skip confirmation, and promote a model the quality gate refuses'),
|
|
15
15
|
history: z.boolean().optional().describe('List every change of production instead of promoting (mloop >= 0.39)'),
|
|
16
|
+
decideOnly: z.boolean().optional().describe('Report which experiment latest/best would promote, and move nothing — the production model stays as it is'),
|
|
16
17
|
});
|
|
17
18
|
export async function promote(params) {
|
|
18
19
|
try {
|
|
19
|
-
const { projectPath, experimentId, latest, best, modelName, force, history } = params;
|
|
20
|
+
const { projectPath, experimentId, latest, best, modelName, force, history, decideOnly } = params;
|
|
20
21
|
// The history changes nothing and takes no selector.
|
|
21
22
|
if (history) {
|
|
22
23
|
if (experimentId || latest || best || force) {
|
|
@@ -55,6 +56,8 @@ export async function promote(params) {
|
|
|
55
56
|
args.push('--name', modelName);
|
|
56
57
|
if (force)
|
|
57
58
|
args.push('--force');
|
|
59
|
+
if (decideOnly)
|
|
60
|
+
args.push('--decide-only');
|
|
58
61
|
// Structured, non-interactive output (mloop >= 0.21): result object or {"error": ...}.
|
|
59
62
|
args.push('--json');
|
|
60
63
|
const result = await executeMloop(args, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promote.js","sourceRoot":"","sources":["../../src/tools/promote.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,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IACrH,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IACvF,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;IAChH,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACvD,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;IACzG,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;
|
|
1
|
+
{"version":3,"file":"promote.js","sourceRoot":"","sources":["../../src/tools/promote.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,24 @@ import type { ServerContext } from '@modelcontextprotocol/server';
|
|
|
6
6
|
export declare const quickStartSchema: z.ZodObject<{
|
|
7
7
|
projectPath: z.ZodString;
|
|
8
8
|
dataFile: z.ZodString;
|
|
9
|
-
label: z.ZodString
|
|
9
|
+
label: z.ZodOptional<z.ZodString>;
|
|
10
10
|
task: z.ZodEnum<{
|
|
11
|
+
"anomaly-detection": "anomaly-detection";
|
|
11
12
|
"binary-classification": "binary-classification";
|
|
13
|
+
clustering: "clustering";
|
|
14
|
+
forecasting: "forecasting";
|
|
15
|
+
"image-anomaly": "image-anomaly";
|
|
16
|
+
"image-classification": "image-classification";
|
|
12
17
|
"multiclass-classification": "multiclass-classification";
|
|
18
|
+
ner: "ner";
|
|
19
|
+
"object-detection": "object-detection";
|
|
20
|
+
"question-answering": "question-answering";
|
|
21
|
+
ranking: "ranking";
|
|
22
|
+
recommendation: "recommendation";
|
|
13
23
|
regression: "regression";
|
|
24
|
+
"sentence-similarity": "sentence-similarity";
|
|
25
|
+
"text-classification": "text-classification";
|
|
26
|
+
"time-series-anomaly": "time-series-anomaly";
|
|
14
27
|
}>;
|
|
15
28
|
time: z.ZodOptional<z.ZodNumber>;
|
|
16
29
|
}, z.core.$strip>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-start.d.ts","sourceRoot":"","sources":["../../src/tools/quick-start.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"quick-start.d.ts","sourceRoot":"","sources":["../../src/tools/quick-start.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAMlE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;iBAQ3B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE,wBAAsB,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,CAAC,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,CA+C9J;AAED,eAAO,MAAM,cAAc;IACzB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
|
|
@@ -6,11 +6,12 @@ import { mkdirSync } from 'fs';
|
|
|
6
6
|
import { executeMloop, buildArgsWithPositional } from '../executor.js';
|
|
7
7
|
import { runTraining } from '../training-run.js';
|
|
8
8
|
import { formatError } from '../utils/errors.js';
|
|
9
|
+
import { taskSchema } from '../tasks.js';
|
|
9
10
|
export const quickStartSchema = z.object({
|
|
10
11
|
projectPath: z.string().describe('Project directory path'),
|
|
11
|
-
dataFile: z.string().describe('Training data CSV file
|
|
12
|
-
label: z.string().describe('Label column name'),
|
|
13
|
-
task:
|
|
12
|
+
dataFile: z.string().describe('Training data: a CSV (or other table) file, or for the image tasks a folder of pictures'),
|
|
13
|
+
label: z.string().optional().describe('Label column name (omit for tasks that learn without one: clustering, anomaly-detection, image-anomaly, ...)'),
|
|
14
|
+
task: taskSchema
|
|
14
15
|
.describe('ML task type'),
|
|
15
16
|
time: z.number().positive().optional()
|
|
16
17
|
.describe('Training time in seconds (omit for auto-time)'),
|
|
@@ -24,7 +25,9 @@ export async function quickStart(params, ctx) {
|
|
|
24
25
|
await executeMloop(initArgs, { cwd: params.projectPath });
|
|
25
26
|
steps.push('Project initialized');
|
|
26
27
|
// Step 2: Train (auto-time if time not specified)
|
|
27
|
-
const trainParams = {
|
|
28
|
+
const trainParams = {};
|
|
29
|
+
if (params.label)
|
|
30
|
+
trainParams['label'] = params.label;
|
|
28
31
|
if (params.time)
|
|
29
32
|
trainParams['time'] = params.time;
|
|
30
33
|
const trainArgs = buildArgsWithPositional('train', [params.dataFile], trainParams);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-start.js","sourceRoot":"","sources":["../../src/tools/quick-start.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"quick-start.js","sourceRoot":"","sources":["../../src/tools/quick-start.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* mloop_runtime tool - List, install or remove the on-demand deep-learning runtimes
|
|
3
|
+
*/
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
export declare const runtimeSchema: z.ZodObject<{
|
|
6
|
+
projectPath: z.ZodString;
|
|
7
|
+
action: z.ZodEnum<{
|
|
8
|
+
install: "install";
|
|
9
|
+
list: "list";
|
|
10
|
+
remove: "remove";
|
|
11
|
+
}>;
|
|
12
|
+
runtime: z.ZodOptional<z.ZodEnum<{
|
|
13
|
+
onnxruntime: "onnxruntime";
|
|
14
|
+
tf: "tf";
|
|
15
|
+
torch: "torch";
|
|
16
|
+
}>>;
|
|
17
|
+
}, z.core.$strip>;
|
|
18
|
+
export type RuntimeParams = z.infer<typeof runtimeSchema>;
|
|
19
|
+
export declare function runtime(params: RuntimeParams): Promise<{
|
|
20
|
+
content: Array<{
|
|
21
|
+
type: 'text';
|
|
22
|
+
text: string;
|
|
23
|
+
}>;
|
|
24
|
+
isError?: boolean;
|
|
25
|
+
}>;
|
|
26
|
+
export declare const runtimeTool: {
|
|
27
|
+
name: string;
|
|
28
|
+
description: string;
|
|
29
|
+
handler: typeof runtime;
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/tools/runtime.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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* mloop_runtime tool - List, install or remove the on-demand deep-learning runtimes
|
|
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 runtimeSchema = z.object({
|
|
9
|
+
projectPath: z.string().describe('Working directory (runtimes are kept per user, not per project)'),
|
|
10
|
+
action: z.enum(['list', 'install', 'remove']).describe('list the runtimes and whether each is installed, install one, or remove an installed one'),
|
|
11
|
+
runtime: z.enum(['tf', 'torch', 'onnxruntime']).optional().describe('The runtime to install or remove: tf (image classification), torch (text tasks), onnxruntime (ONNX export check, image encoders)'),
|
|
12
|
+
});
|
|
13
|
+
export async function runtime(params) {
|
|
14
|
+
const { projectPath, action, runtime: name } = params;
|
|
15
|
+
if (action !== 'list' && !name) {
|
|
16
|
+
return { content: [{ type: 'text', text: `Name the runtime to ${action}: tf, torch or onnxruntime.` }], isError: true };
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
// Only list has --json; install and remove answer in a line of text. install is told to be quiet: there is nobody to prompt.
|
|
20
|
+
const args = action === 'list'
|
|
21
|
+
? ['runtime', 'list', '--json']
|
|
22
|
+
: action === 'install'
|
|
23
|
+
? ['runtime', 'install', name, '--quiet']
|
|
24
|
+
: ['runtime', 'remove', name];
|
|
25
|
+
const result = await executeMloop(args, { cwd: projectPath });
|
|
26
|
+
return {
|
|
27
|
+
content: [{ type: 'text', text: parseCliOutput(result.stdout) || (action === 'list' ? 'No runtime information.' : `Runtime '${name}' ${action === 'install' ? 'installed' : 'removed'}.`) }],
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
return {
|
|
32
|
+
content: [{ type: 'text', text: formatError(error) }],
|
|
33
|
+
isError: true,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
export const runtimeTool = {
|
|
38
|
+
name: 'mloop_runtime',
|
|
39
|
+
description: 'Manage the deep-learning runtimes mloop downloads on demand: list them with their install state, install one (tf for image classification, torch for text tasks, onnxruntime for the ONNX export check and image encoders — a large download), or remove it. A task whose runtime is missing refuses to train and names the runtime to install.',
|
|
40
|
+
handler: runtime,
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/tools/runtime.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,iEAAiE,CAAC;IACnG,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,0FAA0F,CAAC;IAClJ,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kIAAkI,CAAC;CACxM,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAqB;IACjD,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IACtD,IAAI,MAAM,KAAK,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,MAAM,6BAA6B,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC1H,CAAC;IAED,IAAI,CAAC;QACH,6HAA6H;QAC7H,MAAM,IAAI,GAAa,MAAM,KAAK,MAAM;YACtC,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC;YAC/B,CAAC,CAAC,MAAM,KAAK,SAAS;gBACpB,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,IAAK,EAAE,SAAS,CAAC;gBAC1C,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAK,CAAC,CAAC;QAEnC,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,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,YAAY,IAAI,KAAK,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;SAC7L,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,WAAW,GAAG;IACzB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,iVAAiV;IAC9V,OAAO,EAAE,OAAO;CACjB,CAAC"}
|
package/build/tools/sample.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* mloop_sample tool - Sample data from
|
|
2
|
+
* mloop_sample tool - Sample data from data files (CSV, TSV, JSON, Excel, Parquet) or prediction logs
|
|
3
3
|
*/
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
export declare const sampleSchema: z.ZodObject<{
|
|
@@ -10,6 +10,7 @@ export declare const sampleSchema: z.ZodObject<{
|
|
|
10
10
|
}>;
|
|
11
11
|
modelName: z.ZodOptional<z.ZodString>;
|
|
12
12
|
dataFile: z.ZodOptional<z.ZodString>;
|
|
13
|
+
records: z.ZodOptional<z.ZodString>;
|
|
13
14
|
size: z.ZodOptional<z.ZodNumber>;
|
|
14
15
|
strategy: z.ZodOptional<z.ZodString>;
|
|
15
16
|
label: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sample.d.ts","sourceRoot":"","sources":["../../src/tools/sample.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"sample.d.ts","sourceRoot":"","sources":["../../src/tools/sample.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,YAAY;;;;;;;;;;;;;iBAYvB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExD,yFAAyF;AACzF,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,CAezD;AAED,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,CAoBjI;AAED,eAAO,MAAM,UAAU;IACrB,IAAI;IACJ,WAAW;IACX,OAAO;CACR,CAAC"}
|
package/build/tools/sample.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* mloop_sample tool - Sample data from
|
|
2
|
+
* mloop_sample tool - Sample data from data files (CSV, TSV, JSON, Excel, Parquet) or prediction logs
|
|
3
3
|
*/
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
import { executeMloop, buildArgsWithPositional } from '../executor.js';
|
|
@@ -9,7 +9,8 @@ export const sampleSchema = z.object({
|
|
|
9
9
|
projectPath: z.string().describe('Path to MLoop project directory'),
|
|
10
10
|
action: z.enum(['create', 'stats']).describe('Sample action to perform'),
|
|
11
11
|
modelName: z.string().optional().describe('Model whose logged predictions and feedback to sample ("create": a retraining dataset — the feedback under the model\'s label, weighted when feedback carries weights; "stats": default "default")'),
|
|
12
|
-
dataFile: z.string().optional().describe('
|
|
12
|
+
dataFile: z.string().optional().describe('Data file to sample from instead of prediction logs — CSV, TSV, JSON, Excel or Parquet; the sample is written as CSV ("create" only)'),
|
|
13
|
+
records: z.string().optional().describe('For a JSON data file: the dotted path to the array whose items are the rows ("create" only)'),
|
|
13
14
|
size: z.number().int().positive().optional().describe('Number of rows to sample (default 1000)'),
|
|
14
15
|
strategy: z.string().optional().describe('Sampling strategy — logs: random, recent, feedback-priority, stratified, low-confidence; CSV: random, head, stratified'),
|
|
15
16
|
label: z.string().optional().describe('Label column for stratified CSV sampling'),
|
|
@@ -20,6 +21,7 @@ export function sampleArgs(params) {
|
|
|
20
21
|
const cliParams = {};
|
|
21
22
|
if (params.action === 'create') {
|
|
22
23
|
cliParams['from'] = params.dataFile;
|
|
24
|
+
cliParams['records'] = params.dataFile ? params.records : undefined;
|
|
23
25
|
cliParams['name'] = params.dataFile ? undefined : (params.modelName ?? 'default');
|
|
24
26
|
cliParams['rows'] = params.size;
|
|
25
27
|
cliParams['strategy'] = params.strategy;
|
|
@@ -55,7 +57,7 @@ export async function sample(params) {
|
|
|
55
57
|
}
|
|
56
58
|
export const sampleTool = {
|
|
57
59
|
name: 'mloop_sample',
|
|
58
|
-
description: 'Create a sampled dataset — from a model\'s logged predictions and feedback (a retraining dataset: feedback under the model\'s label, with a weight column when feedback carries weights) or from a
|
|
60
|
+
description: 'Create a sampled dataset — from a model\'s logged predictions and feedback (a retraining dataset: feedback under the model\'s label, with a weight column when feedback carries weights) or from a data file (CSV, TSV, JSON, Excel, Parquet; written as CSV) — or view sampling statistics.',
|
|
59
61
|
handler: sample,
|
|
60
62
|
};
|
|
61
63
|
//# sourceMappingURL=sample.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sample.js","sourceRoot":"","sources":["../../src/tools/sample.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;AAEjD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACnE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACxE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACvC,oMAAoM,CAAC;IACvM,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"sample.js","sourceRoot":"","sources":["../../src/tools/sample.ts"],"names":[],"mappings":"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"}
|
package/build/tools/status.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
export declare const statusSchema: z.ZodObject<{
|
|
6
6
|
projectPath: z.ZodString;
|
|
7
|
+
verbose: z.ZodOptional<z.ZodBoolean>;
|
|
7
8
|
}, z.core.$strip>;
|
|
8
9
|
export type StatusParams = z.infer<typeof statusSchema>;
|
|
9
10
|
export declare function status(params: StatusParams): Promise<{
|