@promptbook/openai 0.70.0-1 → 0.71.0-7
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/README.md +28 -59
- package/esm/index.es.js +89 -10
- package/esm/index.es.js.map +1 -1
- package/esm/typings/promptbook-collection/index.d.ts +0 -3
- package/esm/typings/src/_packages/browser.index.d.ts +1 -1
- package/esm/typings/src/_packages/core.index.d.ts +37 -11
- package/esm/typings/src/_packages/node.index.d.ts +6 -2
- package/esm/typings/src/_packages/types.index.d.ts +40 -20
- package/esm/typings/src/_packages/utils.index.d.ts +4 -4
- package/esm/typings/src/cli/cli-commands/about.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/hello.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/make.d.ts +2 -2
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +1 -1
- package/esm/typings/src/cli/main.d.ts +1 -1
- package/esm/typings/src/cli/promptbookCli.d.ts +1 -1
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +8 -5
- package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +1 -1
- package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/FOREACH/ForeachCommand.d.ts +3 -7
- package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +27 -0
- package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +2 -3
- package/esm/typings/src/commands/FORMAT/formatCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.d.ts +11 -0
- package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.test.d.ts +4 -0
- package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/TEMPLATE/templateCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/URL/urlCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +4 -4
- package/esm/typings/src/config.d.ts +26 -3
- package/esm/typings/src/conversion/pipelineStringToJson.d.ts +2 -15
- package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +1 -1
- package/esm/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +3 -0
- package/esm/typings/src/conversion/utils/extractParameterNamesFromTemplate.d.ts +2 -1
- package/esm/typings/src/conversion/validation/_importPipeline.d.ts +1 -1
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +10 -5
- package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceTools.d.ts +2 -2
- package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceToolsOptions.d.ts +2 -2
- package/esm/typings/src/{knowledge/dialogs → dialogs}/simple-prompt/SimplePromptInterfaceTools.d.ts +4 -4
- package/esm/typings/src/errors/AbstractFormatError.d.ts +11 -0
- package/esm/typings/src/errors/KnowledgeScrapeError.d.ts +9 -0
- package/esm/typings/src/errors/MissingToolsError.d.ts +9 -0
- package/esm/typings/src/execution/ExecutionTools.d.ts +3 -3
- package/esm/typings/src/execution/PipelineExecutor.d.ts +1 -0
- package/esm/typings/src/execution/PipelineExecutorResult.d.ts +9 -8
- package/esm/typings/src/execution/createPipelineExecutor/$OngoingTemplateResult.d.ts +45 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +23 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +29 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +13 -0
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +58 -0
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +65 -0
- package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +15 -0
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +74 -0
- package/esm/typings/src/execution/createPipelineExecutor/filterJustOutputParameters.d.ts +34 -0
- package/esm/typings/src/execution/createPipelineExecutor/getContextForTemplate.d.ts +10 -0
- package/esm/typings/src/execution/createPipelineExecutor/getKnowledgeForTemplate.d.ts +27 -0
- package/esm/typings/src/execution/createPipelineExecutor/getReservedParametersForTemplate.d.ts +30 -0
- package/esm/typings/src/execution/createPipelineExecutor/getSamplesForTemplate.d.ts +10 -0
- package/esm/typings/src/execution/embeddingVectorToString.d.ts +1 -1
- package/esm/typings/src/execution/utils/checkExpectations.d.ts +2 -0
- package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -0
- package/esm/typings/src/execution/utils/usageToHuman.d.ts +3 -4
- package/esm/typings/src/formats/_common/FormatDefinition.d.ts +14 -15
- package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +31 -0
- package/esm/typings/src/formats/csv/{ListFormatDefinition.d.ts → CsvFormatDefinition.d.ts} +6 -3
- package/esm/typings/src/formats/csv/CsvFormatError.d.ts +10 -0
- package/esm/typings/src/formats/csv/CsvSettings.d.ts +13 -0
- package/esm/typings/src/formats/index.d.ts +1 -1
- package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +4 -3
- package/esm/typings/src/formats/text/TextFormatDefinition.d.ts +19 -0
- package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +4 -3
- package/esm/typings/src/llm-providers/_common/createLlmToolsFromConfigurationFromEnv.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +1 -1
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +2 -1
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/anthropic-claude/createAnthropicClaudeExecutionTools.d.ts +2 -2
- package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -2
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +8 -1
- package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +1 -0
- package/esm/typings/src/llm-providers/langtail/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/multiple/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +2 -1
- package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +2 -1
- package/esm/typings/src/llm-providers/remote/playground/playground.d.ts +3 -0
- package/esm/typings/src/personas/preparePersona.d.ts +3 -3
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +67 -0
- package/esm/typings/src/prepare/isPipelinePrepared.d.ts +1 -1
- package/esm/typings/src/prepare/preparePipeline.d.ts +2 -2
- package/esm/typings/src/prepare/prepareTemplates.d.ts +3 -3
- package/esm/typings/src/scrapers/_common/Converter.d.ts +28 -0
- package/esm/typings/src/scrapers/_common/Scraper.d.ts +71 -0
- package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +11 -0
- package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.d.ts +4 -4
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +33 -0
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.test.d.ts +4 -0
- package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +10 -0
- package/esm/typings/src/scrapers/document/documentScraper.d.ts +37 -0
- package/esm/typings/src/scrapers/document/documentScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/document/playground/document-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/document-legacy/legacyDocumentScraper.d.ts +37 -0
- package/esm/typings/src/scrapers/document-legacy/legacyDocumentScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/document-legacy/playground/legacy-document-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/index.d.ts +7 -0
- package/esm/typings/src/scrapers/markdown/markdownScraper.d.ts +29 -0
- package/esm/typings/src/scrapers/markdown/playground/markdown-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/pdf/pdfScraper.d.ts +35 -0
- package/esm/typings/src/scrapers/pdf/playground/pdf-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/website/playground/website-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/website/utils/markdownConverter.d.ts +12 -0
- package/esm/typings/src/scrapers/website/websiteScraper.d.ts +43 -0
- package/esm/typings/src/storage/{files-storage/FilesStorage.d.ts → file-cache-storage/FileCacheStorage.d.ts} +4 -4
- package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +10 -0
- package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.d.ts +1 -1
- package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +1 -1
- package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +1 -1
- package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +9 -2
- package/esm/typings/src/types/PipelineJson/ParameterJson.d.ts +1 -0
- package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +3 -3
- package/esm/typings/src/types/PipelineJson/TemplateJsonCommon.d.ts +5 -0
- package/esm/typings/src/types/execution-report/executionReportJsonToString.d.ts +2 -1
- package/esm/typings/src/types/typeAliases.d.ts +9 -12
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +14 -0
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +17 -0
- package/esm/typings/src/utils/execCommand/IExecCommandOptions.d.ts +23 -0
- package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.d.ts +10 -0
- package/esm/typings/src/utils/expectation-counters/index.d.ts +3 -0
- package/esm/typings/src/utils/files/$isDirectoryExisting.d.ts +3 -3
- package/esm/typings/src/utils/files/$isFileExisting.d.ts +3 -3
- package/esm/typings/src/utils/files/$listAllFiles.d.ts +4 -4
- package/esm/typings/src/utils/files/extensionToMimeType.d.ts +8 -0
- package/esm/typings/src/utils/files/getFileExtension.d.ts +8 -0
- package/esm/typings/src/utils/files/getFileExtension.test.d.ts +1 -0
- package/esm/typings/src/utils/organization/{f.d.ts → empty_object.d.ts} +5 -1
- package/esm/typings/src/utils/organization/just_empty_object.d.ts +12 -0
- package/esm/typings/src/utils/{extractParameterNames.d.ts → parameters/extractParameterNames.d.ts} +2 -2
- package/esm/typings/src/utils/parameters/extractParameterNames.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.d.ts +27 -0
- package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.test.d.ts +1 -0
- package/esm/typings/src/utils/{replaceParameters.d.ts → parameters/replaceParameters.d.ts} +2 -2
- package/esm/typings/src/utils/parameters/replaceParameters.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/checkSerializableAsJson.d.ts +1 -1
- package/esm/typings/src/utils/serialization/isSerializableAsJson.d.ts +1 -1
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -2
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +10 -0
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.test.d.ts +1 -0
- package/package.json +17 -13
- package/umd/index.umd.js +89 -10
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/execution/createPipelineExecutor.d.ts +0 -72
- package/esm/typings/src/formats/list/ListFormatDefinition.d.ts +0 -16
- package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +0 -37
- package/esm/typings/src/knowledge/prepare-knowledge/markdown/playground/markdown-knowledge-playground.d.ts +0 -2
- package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +0 -14
- package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +0 -15
- package/esm/typings/src/prepare/PrepareOptions.d.ts +0 -22
- package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +0 -10
- /package/esm/typings/src/{knowledge/dialogs → dialogs}/user-interface-execution-tools.test.d.ts +0 -0
- /package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.test.d.ts +0 -0
- /package/esm/typings/src/{knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts → scrapers/markdown/markdownScraper.test.d.ts} +0 -0
- /package/esm/typings/src/{execution/utils/usageToHuman.test.d.ts → scrapers/website/utils/markdownConverter.test.d.ts} +0 -0
- /package/esm/typings/src/{knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.test.d.ts → scrapers/website/websiteScraper.test.d.ts} +0 -0
- /package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.test.d.ts +0 -0
- /package/esm/typings/src/{personas/preparePersona.test.d.ts → utils/execCommand/execCommand.test.d.ts} +0 -0
- /package/esm/typings/src/utils/{extractParameterNames.test.d.ts → execCommand/execCommandNormalizeOptions.test.d.ts} +0 -0
- /package/esm/typings/src/utils/{replaceParameters.test.d.ts → files/extensionToMimeType.test.d.ts} +0 -0
|
@@ -3,7 +3,7 @@ import type { UrlCommand } from './UrlCommand';
|
|
|
3
3
|
/**
|
|
4
4
|
* Parses the url command
|
|
5
5
|
*
|
|
6
|
-
* @see
|
|
6
|
+
* @see `documentationUrl` for more details
|
|
7
7
|
* @private within the commands folder
|
|
8
8
|
*/
|
|
9
9
|
export declare const urlCommandParser: PipelineHeadCommandParser<UrlCommand>;
|
|
@@ -3,7 +3,7 @@ import type { ActionCommand } from './ActionCommand';
|
|
|
3
3
|
/**
|
|
4
4
|
* Parses the action command
|
|
5
5
|
*
|
|
6
|
-
* @see
|
|
6
|
+
* @see `documentationUrl` for more details
|
|
7
7
|
* @private within the commands folder
|
|
8
8
|
*/
|
|
9
9
|
export declare const actionCommandParser: PipelineHeadCommandParser<ActionCommand>;
|
|
@@ -3,7 +3,7 @@ import type { InstrumentCommand } from './InstrumentCommand';
|
|
|
3
3
|
/**
|
|
4
4
|
* Parses the instrument command
|
|
5
5
|
*
|
|
6
|
-
* @see
|
|
6
|
+
* @see `documentationUrl` for more details
|
|
7
7
|
* @private within the commands folder
|
|
8
8
|
*/
|
|
9
9
|
export declare const instrumentCommandParser: PipelineHeadCommandParser<InstrumentCommand>;
|
|
@@ -5,7 +5,7 @@ import type { BoilerplateCommand } from './BoilerplateCommand';
|
|
|
5
5
|
*
|
|
6
6
|
* Note: @@@ This command is used as boilerplate for new commands - it should NOT be used in any `.ptbk.md` file
|
|
7
7
|
*
|
|
8
|
-
* @see
|
|
8
|
+
* @see `documentationUrl` for more details
|
|
9
9
|
* @private within the commands folder
|
|
10
10
|
*/
|
|
11
11
|
export declare const boilerplateCommandParser: PipelineBothCommandParser<BoilerplateCommand>;
|
|
@@ -156,28 +156,28 @@ export type CommandParserInput = {
|
|
|
156
156
|
* @@@
|
|
157
157
|
*
|
|
158
158
|
* @example 'promptbook version 0.62.0'
|
|
159
|
-
* @example 'FOREACH
|
|
159
|
+
* @example 'FOREACH Text Line `{customers}` -> `{customer}`'
|
|
160
160
|
*/
|
|
161
161
|
readonly raw: string_markdown_text;
|
|
162
162
|
/**
|
|
163
163
|
* @@@
|
|
164
164
|
*
|
|
165
165
|
* @example '0.62.0'
|
|
166
|
-
* @example 'List Line -> `{customer}`'
|
|
166
|
+
* @example 'List Line `{customers}` -> `{customer}`'
|
|
167
167
|
*/
|
|
168
168
|
readonly rawArgs: string_markdown_text;
|
|
169
169
|
/**
|
|
170
170
|
* @@@
|
|
171
171
|
*
|
|
172
172
|
* @example 'PROMPTBOOK_VERSION_0_62_0'
|
|
173
|
-
* @example '
|
|
173
|
+
* @example 'FOREACH_LIST_LINE_CUSTOMERS_CUSTOMER'
|
|
174
174
|
*/
|
|
175
175
|
readonly normalized: string_name & string_SCREAMING_CASE;
|
|
176
176
|
/**
|
|
177
177
|
* @@@
|
|
178
178
|
*
|
|
179
179
|
* @example [ '0.62.0' ]
|
|
180
|
-
* @example [ 'List', 'Line', '', '{customer}' ]
|
|
180
|
+
* @example [ 'List', 'Line', '{customers}', '', '{customer}' ]
|
|
181
181
|
*/
|
|
182
182
|
readonly args: Array<string_name>;
|
|
183
183
|
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CsvSettings } from './formats/csv/CsvSettings';
|
|
1
2
|
/**
|
|
2
3
|
* Warning message for the generated sections and files files
|
|
3
4
|
*
|
|
@@ -68,14 +69,14 @@ export declare const MAX_EXECUTION_ATTEMPTS = 3;
|
|
|
68
69
|
export declare const MAX_FILENAME_LENGTH = 30;
|
|
69
70
|
/**
|
|
70
71
|
* @@@
|
|
71
|
-
* TODO: [🐝] !!! Use
|
|
72
|
+
* TODO: [🐝][main] !!! Use
|
|
72
73
|
*
|
|
73
74
|
* @public exported from `@promptbook/core`
|
|
74
75
|
*/
|
|
75
76
|
export declare const MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH = 3;
|
|
76
77
|
/**
|
|
77
78
|
* @@@
|
|
78
|
-
* TODO: [🐝] !!! Use
|
|
79
|
+
* TODO: [🐝][main] !!! Use
|
|
79
80
|
*
|
|
80
81
|
* @public exported from `@promptbook/core`
|
|
81
82
|
*/
|
|
@@ -83,9 +84,19 @@ export declare const MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL = 200;
|
|
|
83
84
|
/**
|
|
84
85
|
* Where to store the cache of executions for promptbook CLI
|
|
85
86
|
*
|
|
87
|
+
* Note: When the folder does not exist, it is created recursively
|
|
88
|
+
*
|
|
86
89
|
* @public exported from `@promptbook/core`
|
|
87
90
|
*/
|
|
88
91
|
export declare const EXECUTIONS_CACHE_DIRNAME = "/.promptbook/executions-cache";
|
|
92
|
+
/**
|
|
93
|
+
* Where to store the scrape cache
|
|
94
|
+
*
|
|
95
|
+
* Note: When the folder does not exist, it is created recursively
|
|
96
|
+
*
|
|
97
|
+
* @public exported from `@promptbook/core`
|
|
98
|
+
*/
|
|
99
|
+
export declare const SCRAPE_CACHE_DIRNAME = "/.promptbook/scrape-cache";
|
|
89
100
|
/**
|
|
90
101
|
* The name of the builded pipeline collection made by CLI `ptbk make` and for lookup in `createCollectionFromDirectory`
|
|
91
102
|
*
|
|
@@ -137,6 +148,12 @@ export declare const DEFAULT_REMOTE_URL = "https://api.pavolhejny.com/";
|
|
|
137
148
|
* @public exported from `@promptbook/core`
|
|
138
149
|
*/
|
|
139
150
|
export declare const DEFAULT_REMOTE_URL_PATH = "/promptbook/socket.io";
|
|
151
|
+
/**
|
|
152
|
+
* @@@
|
|
153
|
+
*
|
|
154
|
+
* @public exported from `@promptbook/core`
|
|
155
|
+
*/
|
|
156
|
+
export declare const DEFAULT_CSV_SETTINGS: CsvSettings;
|
|
140
157
|
/**
|
|
141
158
|
* @@@
|
|
142
159
|
*
|
|
@@ -148,7 +165,13 @@ export declare const IS_VERBOSE = false;
|
|
|
148
165
|
*
|
|
149
166
|
* @private within the repository
|
|
150
167
|
*/
|
|
151
|
-
export declare const
|
|
168
|
+
export declare const IS_PIPELINE_LOGIC_VALIDATED: boolean;
|
|
169
|
+
/**
|
|
170
|
+
* @@@
|
|
171
|
+
*
|
|
172
|
+
* @private within the repository
|
|
173
|
+
*/
|
|
174
|
+
export declare const IS_COST_PREVENTED: boolean;
|
|
152
175
|
/**
|
|
153
176
|
* TODO: [🧠][🧜♂️] Maybe join remoteUrl and path into single value
|
|
154
177
|
*/
|
|
@@ -1,19 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
|
|
2
2
|
import type { PipelineJson } from '../types/PipelineJson/PipelineJson';
|
|
3
3
|
import type { PipelineString } from '../types/PipelineString';
|
|
4
|
-
/**
|
|
5
|
-
* Options for `pipelineStringToJson`
|
|
6
|
-
*
|
|
7
|
-
* @public exported from `@promptbook/core`
|
|
8
|
-
*/
|
|
9
|
-
export type PipelineStringToJsonOptions = {
|
|
10
|
-
/**
|
|
11
|
-
* Tools for processing required for preparation of knowledge *(not for actual execution)*
|
|
12
|
-
*
|
|
13
|
-
* Note: If you provide `null`, the knowledge will not be prepared
|
|
14
|
-
*/
|
|
15
|
-
readonly llmTools: LlmExecutionTools | null;
|
|
16
|
-
};
|
|
17
4
|
/**
|
|
18
5
|
* Compile pipeline from string (markdown) format to JSON format
|
|
19
6
|
*
|
|
@@ -31,7 +18,7 @@ export type PipelineStringToJsonOptions = {
|
|
|
31
18
|
* @throws {ParseError} if the promptbook string is not valid
|
|
32
19
|
* @public exported from `@promptbook/core`
|
|
33
20
|
*/
|
|
34
|
-
export declare function pipelineStringToJson(pipelineString: PipelineString, options?:
|
|
21
|
+
export declare function pipelineStringToJson(pipelineString: PipelineString, options?: PrepareAndScrapeOptions): Promise<PipelineJson>;
|
|
35
22
|
/**
|
|
36
23
|
* TODO: [🏏] Leverage the batch API and build queues @see https://platform.openai.com/docs/guides/batch
|
|
37
24
|
* TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
|
|
@@ -18,7 +18,7 @@ import type { PipelineString } from '../types/PipelineString';
|
|
|
18
18
|
*/
|
|
19
19
|
export declare function pipelineStringToJsonSync(pipelineString: PipelineString): PipelineJson;
|
|
20
20
|
/**
|
|
21
|
-
* TODO: !!!! Warn if used only sync version
|
|
21
|
+
* TODO: [main] !!!! Warn if used only sync version
|
|
22
22
|
* TODO: [🚞] Report here line/column of error
|
|
23
23
|
* TODO: Use spaceTrim more effectively
|
|
24
24
|
* TODO: [🧠] Parameter flags - isInput, isOutput, isInternal
|
|
@@ -22,6 +22,9 @@ export type renderPipelineMermaidOptions = {
|
|
|
22
22
|
*/
|
|
23
23
|
export declare function renderPromptbookMermaid(pipelineJson: PipelineJson, options?: renderPipelineMermaidOptions): string;
|
|
24
24
|
/**
|
|
25
|
+
* TODO: !!!!! FOREACH in mermaid graph
|
|
26
|
+
* TODO: !!!!! Knowledge in mermaid graph
|
|
27
|
+
* TODO: !!!!! Personas in mermaid graph
|
|
25
28
|
* TODO: Maybe use some Mermaid package instead of string templating
|
|
26
29
|
* TODO: [🕌] When more than 2 functionalities, split into separate functions
|
|
27
30
|
*/
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ReadonlyDeep } from 'type-fest';
|
|
1
2
|
import type { TemplateJson } from '../../types/PipelineJson/TemplateJson';
|
|
2
3
|
import type { string_parameter_name } from '../../types/typeAliases';
|
|
3
4
|
/**
|
|
@@ -8,7 +9,7 @@ import type { string_parameter_name } from '../../types/typeAliases';
|
|
|
8
9
|
* @throws {ParseError} if the script is invalid
|
|
9
10
|
* @public exported from `@promptbook/utils`
|
|
10
11
|
*/
|
|
11
|
-
export declare function extractParameterNamesFromTemplate(template: Pick<TemplateJson, 'title' | 'description' | 'templateType' | 'content' | 'preparedContent' | 'jokerParameterNames'
|
|
12
|
+
export declare function extractParameterNamesFromTemplate(template: ReadonlyDeep<Pick<TemplateJson, 'title' | 'description' | 'templateType' | 'content' | 'preparedContent' | 'jokerParameterNames' | 'foreach'>>): Set<string_parameter_name>;
|
|
12
13
|
/**
|
|
13
14
|
* TODO: [🔣] If script require contentLanguage
|
|
14
15
|
*/
|
|
@@ -25,5 +25,5 @@ export declare function importPipelineJson(path: `${string}.ptbk.json`): Pipelin
|
|
|
25
25
|
*/
|
|
26
26
|
export declare function importPipelineJsonAsString(path: `${string}.ptbk.json`): string_json<PipelineJson>;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Note: [⚫] Code in this file should never be published in any package
|
|
29
29
|
*/
|
|
@@ -16,6 +16,11 @@ import type { PipelineJson } from '../../types/PipelineJson/PipelineJson';
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function validatePipeline(pipeline: PipelineJson): PipelineJson;
|
|
18
18
|
/**
|
|
19
|
+
* @private internal function for `validatePipeline`
|
|
20
|
+
*/
|
|
21
|
+
export declare function validatePipelineCore(pipeline: PipelineJson): void;
|
|
22
|
+
/**
|
|
23
|
+
* TODO: !!!!! [🧞♀️] Do not allow joker + foreach
|
|
19
24
|
* TODO: [🧠] Work with promptbookVersion
|
|
20
25
|
* TODO: Use here some json-schema, Zod or something similar and change it to:
|
|
21
26
|
* > /**
|
|
@@ -27,11 +32,11 @@ export declare function validatePipeline(pipeline: PipelineJson): PipelineJson;
|
|
|
27
32
|
* > ex port function validatePipeline(promptbook: really_unknown): asserts promptbook is PipelineJson {
|
|
28
33
|
*/
|
|
29
34
|
/**
|
|
30
|
-
* TODO: [🐣] !!!! Validate that all samples match expectations
|
|
31
|
-
* TODO: [🐣][🐝] !!!! Validate that knowledge is valid (non-void)
|
|
32
|
-
* TODO: [🐣] !!!! Validate that persona can be used only with CHAT variant
|
|
33
|
-
* TODO: [🐣] !!!! Validate that parameter with reserved name not used RESERVED_PARAMETER_NAMES
|
|
34
|
-
* TODO: [🐣] !!!! Validate that reserved parameter is not used as joker
|
|
35
|
+
* TODO: [🐣][main] !!!! Validate that all samples match expectations
|
|
36
|
+
* TODO: [🐣][🐝][main] !!!! Validate that knowledge is valid (non-void)
|
|
37
|
+
* TODO: [🐣][main] !!!! Validate that persona can be used only with CHAT variant
|
|
38
|
+
* TODO: [🐣][main] !!!! Validate that parameter with reserved name not used RESERVED_PARAMETER_NAMES
|
|
39
|
+
* TODO: [🐣][main] !!!! Validate that reserved parameter is not used as joker
|
|
35
40
|
* TODO: [🧠] Validation not only logic itself but imports around - files and websites and rerefenced pipelines exists
|
|
36
41
|
* TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
|
|
37
42
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { UserInterfaceTools } from '
|
|
2
|
-
import type { UserInterfaceToolsPromptDialogOptions } from '
|
|
1
|
+
import type { UserInterfaceTools } from '../../execution/UserInterfaceTools';
|
|
2
|
+
import type { UserInterfaceToolsPromptDialogOptions } from '../../execution/UserInterfaceTools';
|
|
3
3
|
import type { CallbackInterfaceToolsOptions } from './CallbackInterfaceToolsOptions';
|
|
4
4
|
/**
|
|
5
5
|
* Delagates the user interaction to a async callback function
|
package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceToolsOptions.d.ts
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Promisable } from 'type-fest';
|
|
2
|
-
import type { CommonExecutionToolsOptions } from '
|
|
3
|
-
import type { UserInterfaceToolsPromptDialogOptions } from '
|
|
2
|
+
import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutionToolsOptions';
|
|
3
|
+
import type { UserInterfaceToolsPromptDialogOptions } from '../../execution/UserInterfaceTools';
|
|
4
4
|
/**
|
|
5
5
|
* Options for `CallbackInterfaceTools`
|
|
6
6
|
*
|
package/esm/typings/src/{knowledge/dialogs → dialogs}/simple-prompt/SimplePromptInterfaceTools.d.ts
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { CommonExecutionToolsOptions } from '
|
|
2
|
-
import type { UserInterfaceTools } from '
|
|
3
|
-
import type { UserInterfaceToolsPromptDialogOptions } from '
|
|
1
|
+
import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutionToolsOptions';
|
|
2
|
+
import type { UserInterfaceTools } from '../../execution/UserInterfaceTools';
|
|
3
|
+
import type { UserInterfaceToolsPromptDialogOptions } from '../../execution/UserInterfaceTools';
|
|
4
4
|
/**
|
|
5
5
|
* Wrapper around `window.prompt` synchronous function that interacts with the user via browser prompt
|
|
6
6
|
*
|
|
@@ -18,5 +18,5 @@ export declare class SimplePromptInterfaceTools implements UserInterfaceTools {
|
|
|
18
18
|
promptDialog(options: UserInterfaceToolsPromptDialogOptions): Promise<string>;
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
|
-
* Note: [🔵]
|
|
21
|
+
* Note: [🔵] Code in this file should never be published outside of `@promptbook/browser`
|
|
22
22
|
*/
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This error indicates problems parsing the format value
|
|
3
|
+
*
|
|
4
|
+
* For example, when the format value is not a valid JSON or CSV
|
|
5
|
+
* This is not thrown directly but in extended classes
|
|
6
|
+
*
|
|
7
|
+
* @public exported from `@promptbook/core`
|
|
8
|
+
*/
|
|
9
|
+
export declare class AbstractFormatError extends Error {
|
|
10
|
+
constructor(message: string);
|
|
11
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This error indicates that the promptbook can not retrieve knowledge from external sources
|
|
3
|
+
*
|
|
4
|
+
* @public exported from `@promptbook/core`
|
|
5
|
+
*/
|
|
6
|
+
export declare class KnowledgeScrapeError extends Error {
|
|
7
|
+
readonly name = "KnowledgeScrapeError";
|
|
8
|
+
constructor(message: string);
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This error type indicates that some tools are missing for pipeline execution or preparation
|
|
3
|
+
*
|
|
4
|
+
* @public exported from `@promptbook/core`
|
|
5
|
+
*/
|
|
6
|
+
export declare class MissingToolsError extends Error {
|
|
7
|
+
readonly name = "MissingToolsError";
|
|
8
|
+
constructor(message: string);
|
|
9
|
+
}
|
|
@@ -14,7 +14,7 @@ export type ExecutionTools = {
|
|
|
14
14
|
* Tip: Use `createLlmToolsFromEnv()` to use all available LLM providers you configured
|
|
15
15
|
* @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#llm-execution-tools
|
|
16
16
|
*/
|
|
17
|
-
llm?: Arrayable<LlmExecutionTools>;
|
|
17
|
+
readonly llm?: Arrayable<LlmExecutionTools>;
|
|
18
18
|
/**
|
|
19
19
|
* Tools for executing scripts
|
|
20
20
|
*
|
|
@@ -25,12 +25,12 @@ export type ExecutionTools = {
|
|
|
25
25
|
* @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#script-execution-tools
|
|
26
26
|
* @default [] - If not provided, no script execution will be possible
|
|
27
27
|
*/
|
|
28
|
-
script?: Arrayable<ScriptExecutionTools>;
|
|
28
|
+
readonly script?: Arrayable<ScriptExecutionTools>;
|
|
29
29
|
/**
|
|
30
30
|
* Tools for interacting with the user
|
|
31
31
|
*
|
|
32
32
|
* Note: When undefined, the user interface is disabled and promptbook which requires user interaction will fail
|
|
33
33
|
* @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#user-interface-tools
|
|
34
34
|
*/
|
|
35
|
-
userInterface?: UserInterfaceTools;
|
|
35
|
+
readonly userInterface?: UserInterfaceTools;
|
|
36
36
|
};
|
|
@@ -14,5 +14,6 @@ export type PipelineExecutor = {
|
|
|
14
14
|
(inputParameters: Parameters, onProgress?: (taskProgress: TaskProgress) => Promisable<void>): Promise<PipelineExecutorResult>;
|
|
15
15
|
};
|
|
16
16
|
/**
|
|
17
|
+
* TODO: [🐚] Change onProgress to object that represents the running execution, can be subscribed via RxJS to and also awaited
|
|
17
18
|
* TODO: [🧠] Should this file be in /execution or /types folder?
|
|
18
19
|
*/
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { ReadonlyDeep } from 'type-fest';
|
|
2
|
+
import type { ErrorJson } from '../errors/utils/ErrorJson';
|
|
1
3
|
import type { ExecutionReportJson } from '../types/execution-report/ExecutionReportJson';
|
|
2
|
-
import type { Parameters } from '../types/typeAliases';
|
|
3
4
|
import type { PipelineJson } from '../types/PipelineJson/PipelineJson';
|
|
4
|
-
import type {
|
|
5
|
+
import type { Parameters } from '../types/typeAliases';
|
|
5
6
|
import type { PromptResultUsage } from './PromptResultUsage';
|
|
6
7
|
/**
|
|
7
8
|
* @@@
|
|
@@ -14,7 +15,7 @@ export type PipelineExecutorResult = {
|
|
|
14
15
|
*
|
|
15
16
|
* Note: If the execution was not successful, there are only some of the result parameters
|
|
16
17
|
*/
|
|
17
|
-
readonly outputParameters: Parameters
|
|
18
|
+
readonly outputParameters: Readonly<Parameters>;
|
|
18
19
|
/**
|
|
19
20
|
* Whether the execution was successful, details are aviable in `executionReport`
|
|
20
21
|
*/
|
|
@@ -22,26 +23,26 @@ export type PipelineExecutorResult = {
|
|
|
22
23
|
/**
|
|
23
24
|
* Added usage of whole execution, detailed usage is aviable in `executionReport`
|
|
24
25
|
*/
|
|
25
|
-
readonly usage: PromptResultUsage
|
|
26
|
+
readonly usage: ReadonlyDeep<PromptResultUsage>;
|
|
26
27
|
/**
|
|
27
28
|
* Errors that occured during the execution, details are aviable in `executionReport`
|
|
28
29
|
*/
|
|
29
|
-
readonly errors: Array<ErrorJson
|
|
30
|
+
readonly errors: ReadonlyDeep<Array<ErrorJson>>;
|
|
30
31
|
/**
|
|
31
32
|
* Warnings that occured during the execution, details are aviable in `executionReport`
|
|
32
33
|
*/
|
|
33
|
-
readonly warnings: Array<ErrorJson
|
|
34
|
+
readonly warnings: ReadonlyDeep<Array<ErrorJson>>;
|
|
34
35
|
/**
|
|
35
36
|
* The report of the execution with all details
|
|
36
37
|
*/
|
|
37
|
-
readonly executionReport: ExecutionReportJson
|
|
38
|
+
readonly executionReport: ReadonlyDeep<ExecutionReportJson>;
|
|
38
39
|
/**
|
|
39
40
|
* The prepared pipeline that was used for the execution
|
|
40
41
|
*
|
|
41
42
|
* Note: If you called `createPipelineExecutor` with fully prepared pipeline, this is the same object as this pipeline
|
|
42
43
|
* If you passed not fully prepared pipeline, this is same pipeline but fully prepared
|
|
43
44
|
*/
|
|
44
|
-
readonly preparedPipeline: PipelineJson
|
|
45
|
+
readonly preparedPipeline: ReadonlyDeep<PipelineJson>;
|
|
45
46
|
};
|
|
46
47
|
/**
|
|
47
48
|
* TODO: [🧠] Should this file be in /execution or /types folder?
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ExpectError } from '../../errors/ExpectError';
|
|
2
|
+
import type { Prompt } from '../../types/Prompt';
|
|
3
|
+
import type { ChatPromptResult } from '../PromptResult';
|
|
4
|
+
import type { CompletionPromptResult } from '../PromptResult';
|
|
5
|
+
import type { EmbeddingPromptResult } from '../PromptResult';
|
|
6
|
+
import type { PromptResult } from '../PromptResult';
|
|
7
|
+
/**
|
|
8
|
+
* @@@
|
|
9
|
+
*
|
|
10
|
+
* @private internal utility of `createPipelineExecutor`
|
|
11
|
+
*/
|
|
12
|
+
export type $OngoingTemplateResult = {
|
|
13
|
+
/**
|
|
14
|
+
* @@@
|
|
15
|
+
*/
|
|
16
|
+
$prompt?: Prompt;
|
|
17
|
+
/**
|
|
18
|
+
* @@@
|
|
19
|
+
*/
|
|
20
|
+
$chatResult?: ChatPromptResult;
|
|
21
|
+
/**
|
|
22
|
+
* @@@
|
|
23
|
+
*/
|
|
24
|
+
$completionResult?: CompletionPromptResult;
|
|
25
|
+
/**
|
|
26
|
+
* @@@
|
|
27
|
+
*/
|
|
28
|
+
$embeddingResult?: EmbeddingPromptResult;
|
|
29
|
+
/**
|
|
30
|
+
* @@@
|
|
31
|
+
*/
|
|
32
|
+
$result: PromptResult | null;
|
|
33
|
+
/**
|
|
34
|
+
* @@@
|
|
35
|
+
*/
|
|
36
|
+
$resultString: string | null;
|
|
37
|
+
/**
|
|
38
|
+
* @@@
|
|
39
|
+
*/
|
|
40
|
+
$expectError: ExpectError | null;
|
|
41
|
+
/**
|
|
42
|
+
* @@@
|
|
43
|
+
*/
|
|
44
|
+
$scriptPipelineExecutionErrors: Array<Error>;
|
|
45
|
+
};
|
package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PipelineJson } from '../../types/PipelineJson/PipelineJson';
|
|
2
|
+
import type { ExecutionTools } from '../ExecutionTools';
|
|
3
|
+
import type { CreatePipelineExecutorSettings } from './00-CreatePipelineExecutorSettings';
|
|
4
|
+
/**
|
|
5
|
+
* Options for `createPipelineExecutor`
|
|
6
|
+
*/
|
|
7
|
+
export type CreatePipelineExecutorOptions = {
|
|
8
|
+
/**
|
|
9
|
+
* The pipeline to be executed
|
|
10
|
+
*/
|
|
11
|
+
readonly pipeline: PipelineJson;
|
|
12
|
+
/**
|
|
13
|
+
* The execution tools to be used during the execution of the pipeline
|
|
14
|
+
*/
|
|
15
|
+
readonly tools: ExecutionTools;
|
|
16
|
+
/**
|
|
17
|
+
* Optional settings for the pipeline executor
|
|
18
|
+
*/
|
|
19
|
+
readonly settings?: Partial<CreatePipelineExecutorSettings>;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* TODO: !!!!!! Unite `CreatePipelineExecutorOptions` and `CreatePipelineExecutorSettings` OR describe the difference
|
|
23
|
+
*/
|
package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { CsvSettings } from '../../formats/csv/CsvSettings';
|
|
2
|
+
import type { PrepareAndScrapeOptions } from '../../prepare/PrepareAndScrapeOptions';
|
|
3
|
+
export type CreatePipelineExecutorSettings = Omit<PrepareAndScrapeOptions, 'llmTools'> & {
|
|
4
|
+
/**
|
|
5
|
+
* When executor does not satisfy expectations it will be retried this amount of times
|
|
6
|
+
*
|
|
7
|
+
* @default MAX_EXECUTION_ATTEMPTS
|
|
8
|
+
*/
|
|
9
|
+
readonly maxExecutionAttempts: number;
|
|
10
|
+
/**
|
|
11
|
+
* Settings for CSV format
|
|
12
|
+
*
|
|
13
|
+
* @default DEFAULT_CSV_SETTINGS
|
|
14
|
+
*/
|
|
15
|
+
readonly csvSettings: CsvSettings;
|
|
16
|
+
/**
|
|
17
|
+
* If you pass fully prepared pipeline, this does not matter
|
|
18
|
+
*
|
|
19
|
+
* Otherwise:
|
|
20
|
+
* If false or not set, warning is shown when pipeline is not prepared
|
|
21
|
+
* If true, warning is suppressed
|
|
22
|
+
*
|
|
23
|
+
* @default false
|
|
24
|
+
*/
|
|
25
|
+
readonly isNotPreparedWarningSupressed: boolean;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* TODO: [🤹♂️] More granular setting for limits of execution + better waiting for queue
|
|
29
|
+
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { PipelineExecutor } from '../PipelineExecutor';
|
|
2
|
+
import type { CreatePipelineExecutorOptions } from './00-CreatePipelineExecutorOptions';
|
|
3
|
+
/**
|
|
4
|
+
* Creates executor function from pipeline and execution tools.
|
|
5
|
+
*
|
|
6
|
+
* @returns The executor function
|
|
7
|
+
* @throws {PipelineLogicError} on logical error in the pipeline
|
|
8
|
+
* @public exported from `@promptbook/core`
|
|
9
|
+
*/
|
|
10
|
+
export declare function createPipelineExecutor(options: CreatePipelineExecutorOptions): PipelineExecutor;
|
|
11
|
+
/**
|
|
12
|
+
* TODO: [🐚] Change onProgress to object that represents the running execution, can be subscribed via RxJS to and also awaited
|
|
13
|
+
*/
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { Promisable, ReadonlyDeep } from 'type-fest';
|
|
2
|
+
import type { PipelineJson } from '../../types/PipelineJson/PipelineJson';
|
|
3
|
+
import type { TaskProgress } from '../../types/TaskProgress';
|
|
4
|
+
import type { Parameters } from '../../types/typeAliases';
|
|
5
|
+
import type { ExecutionTools } from '../ExecutionTools';
|
|
6
|
+
import type { PipelineExecutorResult } from '../PipelineExecutorResult';
|
|
7
|
+
import type { CreatePipelineExecutorSettings } from './00-CreatePipelineExecutorSettings';
|
|
8
|
+
/**
|
|
9
|
+
* @@@
|
|
10
|
+
*
|
|
11
|
+
* @private internal type of `executePipelinex`
|
|
12
|
+
*/
|
|
13
|
+
type ExecutePipelineOptions = {
|
|
14
|
+
/**
|
|
15
|
+
* @@@
|
|
16
|
+
*/
|
|
17
|
+
readonly inputParameters: Readonly<Parameters>;
|
|
18
|
+
/**
|
|
19
|
+
* @@@
|
|
20
|
+
*/
|
|
21
|
+
readonly tools: ExecutionTools;
|
|
22
|
+
/**
|
|
23
|
+
* @@@
|
|
24
|
+
*/
|
|
25
|
+
onProgress?(taskProgress: TaskProgress): Promisable<void>;
|
|
26
|
+
/**
|
|
27
|
+
* @@@
|
|
28
|
+
*/
|
|
29
|
+
readonly pipeline: PipelineJson;
|
|
30
|
+
/**
|
|
31
|
+
* @@@
|
|
32
|
+
*/
|
|
33
|
+
readonly preparedPipeline: ReadonlyDeep<PipelineJson>;
|
|
34
|
+
/**
|
|
35
|
+
* @@@
|
|
36
|
+
*/
|
|
37
|
+
readonly setPreparedPipeline: (preparedPipeline: ReadonlyDeep<PipelineJson>) => void;
|
|
38
|
+
/**
|
|
39
|
+
* @@@
|
|
40
|
+
*/
|
|
41
|
+
readonly pipelineIdentification: string;
|
|
42
|
+
/**
|
|
43
|
+
* Settings for the pipeline executor
|
|
44
|
+
*/
|
|
45
|
+
readonly settings: CreatePipelineExecutorSettings;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* @@@
|
|
49
|
+
*
|
|
50
|
+
* Note: This is not a `PipelineExecutor` (which is binded with one exact pipeline), but a utility function of `createPipelineExecutor` which creates `PipelineExecutor`
|
|
51
|
+
*
|
|
52
|
+
* @private internal utility of `createPipelineExecutor`
|
|
53
|
+
*/
|
|
54
|
+
export declare function executePipeline(options: ExecutePipelineOptions): Promise<PipelineExecutorResult>;
|
|
55
|
+
export {};
|
|
56
|
+
/**
|
|
57
|
+
* TODO: [🐚] Change onProgress to object that represents the running execution, can be subscribed via RxJS to and also awaited
|
|
58
|
+
*/
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Promisable, ReadonlyDeep } from 'type-fest';
|
|
2
|
+
import { MultipleLlmExecutionTools } from '../../llm-providers/multiple/MultipleLlmExecutionTools';
|
|
3
|
+
import type { ExecutionReportJson } from '../../types/execution-report/ExecutionReportJson';
|
|
4
|
+
import type { PipelineJson } from '../../types/PipelineJson/PipelineJson';
|
|
5
|
+
import type { TemplateJson } from '../../types/PipelineJson/TemplateJson';
|
|
6
|
+
import type { TaskProgress } from '../../types/TaskProgress';
|
|
7
|
+
import type { Parameters } from '../../types/typeAliases';
|
|
8
|
+
import type { ExecutionTools } from '../ExecutionTools';
|
|
9
|
+
import type { CreatePipelineExecutorSettings } from './00-CreatePipelineExecutorSettings';
|
|
10
|
+
/**
|
|
11
|
+
* @@@
|
|
12
|
+
*
|
|
13
|
+
* @private internal type of `executeTemplate`
|
|
14
|
+
*/
|
|
15
|
+
type executeSingleTemplateOptions = {
|
|
16
|
+
/**
|
|
17
|
+
* @@@
|
|
18
|
+
*/
|
|
19
|
+
readonly currentTemplate: ReadonlyDeep<TemplateJson>;
|
|
20
|
+
/**
|
|
21
|
+
* @@@
|
|
22
|
+
*/
|
|
23
|
+
readonly preparedPipeline: ReadonlyDeep<PipelineJson>;
|
|
24
|
+
/**
|
|
25
|
+
* @@@
|
|
26
|
+
*/
|
|
27
|
+
readonly parametersToPass: Readonly<Parameters>;
|
|
28
|
+
/**
|
|
29
|
+
* @@@
|
|
30
|
+
*/
|
|
31
|
+
readonly tools: Omit<ExecutionTools, 'llm'>;
|
|
32
|
+
/**
|
|
33
|
+
* @@@
|
|
34
|
+
*/
|
|
35
|
+
readonly llmTools: MultipleLlmExecutionTools;
|
|
36
|
+
/**
|
|
37
|
+
* @@@
|
|
38
|
+
*/
|
|
39
|
+
readonly onProgress: (taskProgress: TaskProgress) => Promisable<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Settings for the pipeline executor
|
|
42
|
+
*/
|
|
43
|
+
readonly settings: CreatePipelineExecutorSettings;
|
|
44
|
+
/**
|
|
45
|
+
* @@@
|
|
46
|
+
*/
|
|
47
|
+
readonly $executionReport: ExecutionReportJson;
|
|
48
|
+
/**
|
|
49
|
+
* @@@
|
|
50
|
+
*/
|
|
51
|
+
readonly pipelineIdentification: string;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* @@@
|
|
55
|
+
*
|
|
56
|
+
* @private internal utility of `createPipelineExecutor`
|
|
57
|
+
*/
|
|
58
|
+
export declare function executeTemplate(options: executeSingleTemplateOptions): Promise<Readonly<Parameters>>;
|
|
59
|
+
export {};
|
|
60
|
+
/**
|
|
61
|
+
* TODO: [🤹♂️]
|
|
62
|
+
*/
|
|
63
|
+
/**
|
|
64
|
+
* TODO: [🐚] Change onProgress to object that represents the running execution, can be subscribed via RxJS to and also awaited
|
|
65
|
+
*/
|