@promptbook/core 0.92.0-20 → 0.92.0-21
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/esm/index.es.js +64 -7
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/core.index.d.ts +4 -0
- package/esm/typings/src/config.d.ts +8 -0
- package/esm/typings/src/formats/json/utils/jsonParse.d.ts +0 -3
- package/esm/typings/src/formfactors/completion/CompletionFormfactorDefinition.d.ts +29 -0
- package/esm/typings/src/formfactors/index.d.ts +28 -3
- package/esm/typings/src/high-level-abstractions/index.d.ts +2 -2
- package/esm/typings/src/migrations/migratePipeline.d.ts +2 -0
- package/package.json +1 -1
- package/umd/index.umd.js +65 -6
- package/umd/index.umd.js.map +1 -1
|
@@ -32,6 +32,7 @@ import { DEFAULT_IS_VERBOSE } from '../config';
|
|
|
32
32
|
import { SET_IS_VERBOSE } from '../config';
|
|
33
33
|
import { DEFAULT_IS_AUTO_INSTALLED } from '../config';
|
|
34
34
|
import { DEFAULT_GET_PIPELINE_COLLECTION_FUNCTION_NAME } from '../config';
|
|
35
|
+
import { DEFAULT_RPM } from '../config';
|
|
35
36
|
import { ORDER_OF_PIPELINE_JSON } from '../constants';
|
|
36
37
|
import { RESERVED_PARAMETER_NAMES } from '../constants';
|
|
37
38
|
import { compilePipeline } from '../conversion/compilePipeline';
|
|
@@ -81,6 +82,7 @@ import { MANDATORY_CSV_SETTINGS } from '../formats/csv/CsvSettings';
|
|
|
81
82
|
import { TextFormatParser } from '../formats/text/TextFormatParser';
|
|
82
83
|
import { BoilerplateFormfactorDefinition } from '../formfactors/_boilerplate/BoilerplateFormfactorDefinition';
|
|
83
84
|
import { ChatbotFormfactorDefinition } from '../formfactors/chatbot/ChatbotFormfactorDefinition';
|
|
85
|
+
import { CompletionFormfactorDefinition } from '../formfactors/completion/CompletionFormfactorDefinition';
|
|
84
86
|
import { GeneratorFormfactorDefinition } from '../formfactors/generator/GeneratorFormfactorDefinition';
|
|
85
87
|
import { GenericFormfactorDefinition } from '../formfactors/generic/GenericFormfactorDefinition';
|
|
86
88
|
import { ImageGeneratorFormfactorDefinition } from '../formfactors/image-generator/ImageGeneratorFormfactorDefinition';
|
|
@@ -175,6 +177,7 @@ export { DEFAULT_IS_VERBOSE };
|
|
|
175
177
|
export { SET_IS_VERBOSE };
|
|
176
178
|
export { DEFAULT_IS_AUTO_INSTALLED };
|
|
177
179
|
export { DEFAULT_GET_PIPELINE_COLLECTION_FUNCTION_NAME };
|
|
180
|
+
export { DEFAULT_RPM };
|
|
178
181
|
export { ORDER_OF_PIPELINE_JSON };
|
|
179
182
|
export { RESERVED_PARAMETER_NAMES };
|
|
180
183
|
export { compilePipeline };
|
|
@@ -224,6 +227,7 @@ export { MANDATORY_CSV_SETTINGS };
|
|
|
224
227
|
export { TextFormatParser };
|
|
225
228
|
export { BoilerplateFormfactorDefinition };
|
|
226
229
|
export { ChatbotFormfactorDefinition };
|
|
230
|
+
export { CompletionFormfactorDefinition };
|
|
227
231
|
export { GeneratorFormfactorDefinition };
|
|
228
232
|
export { GenericFormfactorDefinition };
|
|
229
233
|
export { ImageGeneratorFormfactorDefinition };
|
|
@@ -265,6 +265,14 @@ export declare const DEFAULT_IS_AUTO_INSTALLED = false;
|
|
|
265
265
|
* @public exported from `@promptbook/core`
|
|
266
266
|
*/
|
|
267
267
|
export declare const DEFAULT_GET_PIPELINE_COLLECTION_FUNCTION_NAME = "getPipelineCollection";
|
|
268
|
+
/**
|
|
269
|
+
* Default rate limits (requests per minute)
|
|
270
|
+
*
|
|
271
|
+
* Note: Adjust based on the provider tier you are have
|
|
272
|
+
*
|
|
273
|
+
* @public exported from `@promptbook/core`
|
|
274
|
+
*/
|
|
275
|
+
export declare const DEFAULT_RPM = 60;
|
|
268
276
|
/**
|
|
269
277
|
* @@@
|
|
270
278
|
*
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Completion is formfactor that emulates completion models
|
|
3
|
+
*
|
|
4
|
+
* @public exported from `@promptbook/core`
|
|
5
|
+
*/
|
|
6
|
+
export declare const CompletionFormfactorDefinition: {
|
|
7
|
+
readonly name: "COMPLETION";
|
|
8
|
+
readonly description: "@@@";
|
|
9
|
+
readonly documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
|
|
10
|
+
readonly pipelineInterface: {
|
|
11
|
+
readonly inputParameters: readonly [{
|
|
12
|
+
readonly name: "inputText";
|
|
13
|
+
readonly description: "Input text to be completed";
|
|
14
|
+
readonly isInput: true;
|
|
15
|
+
readonly isOutput: false;
|
|
16
|
+
}, {
|
|
17
|
+
readonly name: "instructions";
|
|
18
|
+
readonly description: "Additional instructions for the model, for example the required length, empty by default";
|
|
19
|
+
readonly isInput: true;
|
|
20
|
+
readonly isOutput: false;
|
|
21
|
+
}];
|
|
22
|
+
readonly outputParameters: readonly [{
|
|
23
|
+
readonly name: "followingText";
|
|
24
|
+
readonly description: "Text that follows the input text";
|
|
25
|
+
readonly isInput: false;
|
|
26
|
+
readonly isOutput: true;
|
|
27
|
+
}];
|
|
28
|
+
};
|
|
29
|
+
};
|
|
@@ -36,9 +36,6 @@ export declare const FORMFACTOR_DEFINITIONS: readonly [{
|
|
|
36
36
|
readonly outputParameters: readonly [{
|
|
37
37
|
readonly name: "title";
|
|
38
38
|
readonly description: "Title of the conversation";
|
|
39
|
-
/**
|
|
40
|
-
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
41
|
-
*/
|
|
42
39
|
readonly isInput: false;
|
|
43
40
|
readonly isOutput: true;
|
|
44
41
|
}, {
|
|
@@ -132,6 +129,11 @@ export declare const FORMFACTOR_DEFINITIONS: readonly [{
|
|
|
132
129
|
readonly isInput: true;
|
|
133
130
|
readonly isOutput: false;
|
|
134
131
|
}];
|
|
132
|
+
/**
|
|
133
|
+
* All available formfactor definitions
|
|
134
|
+
*
|
|
135
|
+
* @public exported from `@promptbook/core`
|
|
136
|
+
*/
|
|
135
137
|
readonly outputParameters: readonly [{
|
|
136
138
|
readonly name: "prompt";
|
|
137
139
|
readonly description: "Prompt to be used for image generation";
|
|
@@ -139,6 +141,29 @@ export declare const FORMFACTOR_DEFINITIONS: readonly [{
|
|
|
139
141
|
readonly isOutput: true;
|
|
140
142
|
}];
|
|
141
143
|
};
|
|
144
|
+
}, {
|
|
145
|
+
readonly name: "COMPLETION";
|
|
146
|
+
readonly description: "@@@";
|
|
147
|
+
readonly documentationUrl: "https://github.com/webgptorg/promptbook/discussions/@@";
|
|
148
|
+
readonly pipelineInterface: {
|
|
149
|
+
readonly inputParameters: readonly [{
|
|
150
|
+
readonly name: "inputText";
|
|
151
|
+
readonly description: "Input text to be completed";
|
|
152
|
+
readonly isInput: true;
|
|
153
|
+
readonly isOutput: false;
|
|
154
|
+
}, {
|
|
155
|
+
readonly name: "instructions";
|
|
156
|
+
readonly description: "Additional instructions for the model, for example the required length, empty by default";
|
|
157
|
+
readonly isInput: true;
|
|
158
|
+
readonly isOutput: false;
|
|
159
|
+
}];
|
|
160
|
+
readonly outputParameters: readonly [{
|
|
161
|
+
readonly name: "followingText";
|
|
162
|
+
readonly description: "Text that follows the input text";
|
|
163
|
+
readonly isInput: false;
|
|
164
|
+
readonly isOutput: true;
|
|
165
|
+
}];
|
|
166
|
+
};
|
|
142
167
|
}];
|
|
143
168
|
/**
|
|
144
169
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -23,7 +23,7 @@ export declare const HIGH_LEVEL_ABSTRACTIONS: readonly [{
|
|
|
23
23
|
path: string | null;
|
|
24
24
|
content: import("../pipeline/PipelineString").PipelineString;
|
|
25
25
|
}[];
|
|
26
|
-
readonly formfactorName?: "CHATBOT" | "GENERATOR" | "GENERIC" | "IMAGE_GENERATOR" | "EXPERIMENTAL_MATCHER" | "SHEETS" | "TRANSLATOR" | undefined;
|
|
26
|
+
readonly formfactorName?: "CHATBOT" | "COMPLETION" | "GENERATOR" | "GENERIC" | "IMAGE_GENERATOR" | "EXPERIMENTAL_MATCHER" | "SHEETS" | "TRANSLATOR" | undefined;
|
|
27
27
|
}>): void;
|
|
28
28
|
}, {
|
|
29
29
|
type: "SYNC";
|
|
@@ -45,7 +45,7 @@ export declare const HIGH_LEVEL_ABSTRACTIONS: readonly [{
|
|
|
45
45
|
path: string | null;
|
|
46
46
|
content: import("../pipeline/PipelineString").PipelineString;
|
|
47
47
|
}[];
|
|
48
|
-
readonly formfactorName?: "CHATBOT" | "GENERATOR" | "GENERIC" | "IMAGE_GENERATOR" | "EXPERIMENTAL_MATCHER" | "SHEETS" | "TRANSLATOR" | undefined;
|
|
48
|
+
readonly formfactorName?: "CHATBOT" | "COMPLETION" | "GENERATOR" | "GENERIC" | "IMAGE_GENERATOR" | "EXPERIMENTAL_MATCHER" | "SHEETS" | "TRANSLATOR" | undefined;
|
|
49
49
|
}>): void;
|
|
50
50
|
}];
|
|
51
51
|
/**
|
|
@@ -2,6 +2,8 @@ import type { PipelineJson } from '../pipeline/PipelineJson/PipelineJson';
|
|
|
2
2
|
/**
|
|
3
3
|
* Migrates the pipeline to the latest version
|
|
4
4
|
*
|
|
5
|
+
* Note: Migration does not do heavy lifting like calling the LLMs, just lightweight changes of the structure
|
|
6
|
+
*
|
|
5
7
|
* @public exported from `@promptbook/core`
|
|
6
8
|
*/
|
|
7
9
|
export declare function migratePipeline(deprecatedPipeline: PipelineJson): PipelineJson;
|
package/package.json
CHANGED
package/umd/index.umd.js
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
* @generated
|
|
28
28
|
* @see https://github.com/webgptorg/promptbook
|
|
29
29
|
*/
|
|
30
|
-
const PROMPTBOOK_ENGINE_VERSION = '0.92.0-
|
|
30
|
+
const PROMPTBOOK_ENGINE_VERSION = '0.92.0-21';
|
|
31
31
|
/**
|
|
32
32
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
33
33
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -462,6 +462,14 @@
|
|
|
462
462
|
* @public exported from `@promptbook/core`
|
|
463
463
|
*/
|
|
464
464
|
const DEFAULT_GET_PIPELINE_COLLECTION_FUNCTION_NAME = `getPipelineCollection`;
|
|
465
|
+
/**
|
|
466
|
+
* Default rate limits (requests per minute)
|
|
467
|
+
*
|
|
468
|
+
* Note: Adjust based on the provider tier you are have
|
|
469
|
+
*
|
|
470
|
+
* @public exported from `@promptbook/core`
|
|
471
|
+
*/
|
|
472
|
+
const DEFAULT_RPM = 60;
|
|
465
473
|
/**
|
|
466
474
|
* @@@
|
|
467
475
|
*
|
|
@@ -2185,15 +2193,12 @@
|
|
|
2185
2193
|
}
|
|
2186
2194
|
throw new Error(spaceTrim__default["default"]((block) => `
|
|
2187
2195
|
${block(error.message)}
|
|
2188
|
-
|
|
2196
|
+
|
|
2189
2197
|
The JSON text:
|
|
2190
2198
|
${block(value)}
|
|
2191
2199
|
`));
|
|
2192
2200
|
}
|
|
2193
2201
|
}
|
|
2194
|
-
/**
|
|
2195
|
-
* TODO: !!!! Use in Promptbook.studio
|
|
2196
|
-
*/
|
|
2197
2202
|
|
|
2198
2203
|
/**
|
|
2199
2204
|
* Recursively converts JSON strings to JSON objects
|
|
@@ -7212,6 +7217,43 @@
|
|
|
7212
7217
|
},
|
|
7213
7218
|
};
|
|
7214
7219
|
|
|
7220
|
+
/**
|
|
7221
|
+
* Completion is formfactor that emulates completion models
|
|
7222
|
+
*
|
|
7223
|
+
* @public exported from `@promptbook/core`
|
|
7224
|
+
*/
|
|
7225
|
+
const CompletionFormfactorDefinition = {
|
|
7226
|
+
name: 'COMPLETION',
|
|
7227
|
+
description: `@@@`,
|
|
7228
|
+
documentationUrl: `https://github.com/webgptorg/promptbook/discussions/@@`,
|
|
7229
|
+
// <- TODO: https://github.com/webgptorg/promptbook/discussions/new?category=concepts
|
|
7230
|
+
// "🔠 Completion Formfactor"
|
|
7231
|
+
pipelineInterface: {
|
|
7232
|
+
inputParameters: [
|
|
7233
|
+
{
|
|
7234
|
+
name: 'inputText',
|
|
7235
|
+
description: `Input text to be completed`,
|
|
7236
|
+
isInput: true,
|
|
7237
|
+
isOutput: false,
|
|
7238
|
+
},
|
|
7239
|
+
{
|
|
7240
|
+
name: 'instructions',
|
|
7241
|
+
description: `Additional instructions for the model, for example the required length, empty by default`,
|
|
7242
|
+
isInput: true,
|
|
7243
|
+
isOutput: false,
|
|
7244
|
+
},
|
|
7245
|
+
],
|
|
7246
|
+
outputParameters: [
|
|
7247
|
+
{
|
|
7248
|
+
name: 'followingText',
|
|
7249
|
+
description: `Text that follows the input text`,
|
|
7250
|
+
isInput: false,
|
|
7251
|
+
isOutput: true,
|
|
7252
|
+
},
|
|
7253
|
+
],
|
|
7254
|
+
},
|
|
7255
|
+
};
|
|
7256
|
+
|
|
7215
7257
|
/**
|
|
7216
7258
|
* Generator is form of app that @@@
|
|
7217
7259
|
*
|
|
@@ -7396,6 +7438,8 @@
|
|
|
7396
7438
|
MatcherFormfactorDefinition,
|
|
7397
7439
|
GeneratorFormfactorDefinition,
|
|
7398
7440
|
ImageGeneratorFormfactorDefinition,
|
|
7441
|
+
CompletionFormfactorDefinition,
|
|
7442
|
+
// <- [🛬] When making new formfactor, copy the _boilerplate and link it here
|
|
7399
7443
|
];
|
|
7400
7444
|
/**
|
|
7401
7445
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -10888,6 +10932,7 @@
|
|
|
10888
10932
|
className: 'OpenAiExecutionTools',
|
|
10889
10933
|
options: {
|
|
10890
10934
|
apiKey: 'sk-',
|
|
10935
|
+
maxRequestsPerMinute: DEFAULT_RPM,
|
|
10891
10936
|
},
|
|
10892
10937
|
};
|
|
10893
10938
|
},
|
|
@@ -10960,20 +11005,28 @@
|
|
|
10960
11005
|
/**
|
|
10961
11006
|
* Migrates the pipeline to the latest version
|
|
10962
11007
|
*
|
|
11008
|
+
* Note: Migration does not do heavy lifting like calling the LLMs, just lightweight changes of the structure
|
|
11009
|
+
*
|
|
10963
11010
|
* @public exported from `@promptbook/core`
|
|
10964
11011
|
*/
|
|
10965
11012
|
function migratePipeline(deprecatedPipeline) {
|
|
10966
11013
|
/* eslint-disable prefer-const */
|
|
10967
11014
|
let { pipelineUrl, sourceFile, title, bookVersion, description, formfactorName, parameters, tasks, knowledgeSources, knowledgePieces, personas, preparations, sources, } = deprecatedPipeline;
|
|
11015
|
+
let isChanged = false;
|
|
10968
11016
|
personas = personas.map((persona) => {
|
|
10969
11017
|
const migratedPersona = { ...persona }; /* <- TODO: [🌪] */
|
|
10970
11018
|
if (migratedPersona.modelRequirements !== undefined) {
|
|
11019
|
+
isChanged = true;
|
|
10971
11020
|
migratedPersona.modelsRequirements = [migratedPersona.modelRequirements];
|
|
10972
11021
|
delete migratedPersona.modelRequirements;
|
|
10973
11022
|
}
|
|
10974
11023
|
return migratedPersona;
|
|
10975
11024
|
});
|
|
10976
|
-
|
|
11025
|
+
if (!isChanged) {
|
|
11026
|
+
// Note: If nothing to migrate, return the same pipeline
|
|
11027
|
+
return deprecatedPipeline;
|
|
11028
|
+
}
|
|
11029
|
+
const migratedPipeline = {
|
|
10977
11030
|
pipelineUrl,
|
|
10978
11031
|
sourceFile,
|
|
10979
11032
|
title,
|
|
@@ -10989,6 +11042,10 @@
|
|
|
10989
11042
|
sources,
|
|
10990
11043
|
// <- TODO: [🍙] Make some standard order of json properties
|
|
10991
11044
|
};
|
|
11045
|
+
console.info(`Book automatically migrated`, { deprecatedPipeline, migratedPipeline });
|
|
11046
|
+
// console.info(`Book automatically migrated from ${} -> ${}`, {deprecatedPipeline,migratedPipeline})
|
|
11047
|
+
// <- TODO: Report the versions of the migration, DO not migrate backwards, throw `CompatibilityError` when given newer version than current version of the engine and link the NPM + Docker packages
|
|
11048
|
+
return migratedPipeline;
|
|
10992
11049
|
}
|
|
10993
11050
|
|
|
10994
11051
|
/**
|
|
@@ -11440,6 +11497,7 @@
|
|
|
11440
11497
|
exports.CallbackInterfaceTools = CallbackInterfaceTools;
|
|
11441
11498
|
exports.ChatbotFormfactorDefinition = ChatbotFormfactorDefinition;
|
|
11442
11499
|
exports.CollectionError = CollectionError;
|
|
11500
|
+
exports.CompletionFormfactorDefinition = CompletionFormfactorDefinition;
|
|
11443
11501
|
exports.CsvFormatError = CsvFormatError;
|
|
11444
11502
|
exports.CsvFormatParser = CsvFormatParser;
|
|
11445
11503
|
exports.DEFAULT_BOOKS_DIRNAME = DEFAULT_BOOKS_DIRNAME;
|
|
@@ -11459,6 +11517,7 @@
|
|
|
11459
11517
|
exports.DEFAULT_PIPELINE_COLLECTION_BASE_FILENAME = DEFAULT_PIPELINE_COLLECTION_BASE_FILENAME;
|
|
11460
11518
|
exports.DEFAULT_PROMPT_TASK_TITLE = DEFAULT_PROMPT_TASK_TITLE;
|
|
11461
11519
|
exports.DEFAULT_REMOTE_SERVER_URL = DEFAULT_REMOTE_SERVER_URL;
|
|
11520
|
+
exports.DEFAULT_RPM = DEFAULT_RPM;
|
|
11462
11521
|
exports.DEFAULT_SCRAPE_CACHE_DIRNAME = DEFAULT_SCRAPE_CACHE_DIRNAME;
|
|
11463
11522
|
exports.DEFAULT_TASK_TITLE = DEFAULT_TASK_TITLE;
|
|
11464
11523
|
exports.EXPECTATION_UNITS = EXPECTATION_UNITS;
|