@promptbook/openai 0.61.0-9 → 0.62.0-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/README.md +46 -5
- package/esm/index.es.js +238 -31
- package/esm/index.es.js.map +1 -1
- package/esm/typings/promptbook-collection/index.d.ts +200 -30
- package/esm/typings/src/_packages/core.index.d.ts +9 -3
- package/esm/typings/src/_packages/execute-javascript.index.d.ts +1 -1
- package/esm/typings/src/_packages/node.index.d.ts +2 -1
- package/esm/typings/src/_packages/types.index.d.ts +12 -8
- package/esm/typings/src/_packages/utils.index.d.ts +11 -8
- package/esm/typings/src/cli/cli-commands/hello.d.ts +3 -0
- package/esm/typings/src/cli/cli-commands/make.d.ts +3 -0
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +3 -0
- package/esm/typings/src/cli/promptbookCli.d.ts +1 -0
- package/esm/typings/src/collection/PipelineCollection.d.ts +1 -1
- package/esm/typings/src/collection/SimplePipelineCollection.d.ts +10 -10
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +7 -7
- package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +2 -2
- package/esm/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +2 -3
- package/esm/typings/src/commands/MODEL/ModelCommand.d.ts +2 -2
- package/esm/typings/src/commands/PERSONA/PersonaCommand.d.ts +4 -2
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -0
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +42 -14
- package/esm/typings/src/config.d.ts +46 -1
- package/esm/typings/src/config.test.d.ts +4 -0
- package/esm/typings/src/conversion/pipelineJsonToString.d.ts +3 -2
- package/esm/typings/src/conversion/pipelineStringToJson.d.ts +9 -5
- package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +6 -3
- package/esm/typings/src/conversion/prettify/PrettifyOptions.d.ts +2 -2
- package/{umd/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts → esm/typings/src/conversion/utils/extractParameterNamesFromPromptTemplate.d.ts} +2 -2
- package/esm/typings/src/conversion/utils/renameParameter.d.ts +3 -3
- package/esm/typings/src/conversion/utils/stringifyPipelineJson.d.ts +14 -0
- package/esm/typings/src/conversion/validation/_importPipeline.d.ts +12 -3
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +10 -1
- package/esm/typings/src/errors/EnvironmentMismatchError.d.ts +7 -0
- package/esm/typings/src/errors/LimitReachedError.d.ts +7 -0
- package/esm/typings/src/errors/VersionMismatchError.d.ts +8 -0
- package/esm/typings/src/execution/CommonExecutionToolsOptions.d.ts +1 -0
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +10 -8
- package/esm/typings/src/execution/PipelineExecutor.d.ts +48 -26
- package/esm/typings/src/execution/PromptResult.d.ts +39 -54
- package/esm/typings/src/execution/PromptResultUsage.d.ts +29 -0
- package/esm/typings/src/execution/ScriptExecutionTools.d.ts +5 -4
- package/esm/typings/src/execution/UncertainNumber.d.ts +18 -0
- package/esm/typings/src/execution/UserInterfaceTools.d.ts +5 -5
- package/esm/typings/src/execution/createPipelineExecutor.d.ts +31 -3
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +2 -2
- package/esm/typings/src/execution/utils/addUsage.d.ts +58 -2
- package/esm/typings/src/execution/utils/computeUsageCounts.d.ts +1 -1
- package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -1
- package/esm/typings/src/execution/utils/uncertainNumber.d.ts +1 -1
- package/esm/typings/src/execution/utils/usageToHuman.d.ts +15 -0
- package/esm/typings/src/execution/utils/usageToWorktime.d.ts +2 -2
- package/esm/typings/src/formats/_common/FormatDefinition.d.ts +1 -1
- package/esm/typings/src/formats/csv/ListFormatDefinition.d.ts +2 -1
- package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +2 -1
- package/esm/typings/src/formats/list/ListFormatDefinition.d.ts +2 -1
- package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +1 -0
- package/esm/typings/src/knowledge/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +1 -1
- package/esm/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +3 -0
- package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +27 -0
- package/esm/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.d.ts +18 -0
- package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +9 -23
- package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts +3 -0
- package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +8 -14
- package/esm/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +31 -0
- package/esm/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +11 -0
- package/esm/typings/src/llm-providers/_common/getLlmToolsForTestingAndScriptsAndPlayground.d.ts +12 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +29 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +10 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +19 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/LlmExecutionToolsWithTotalUsage.d.ts +14 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/countTotalUsage.d.ts +17 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.d.ts +35 -0
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +4 -3
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +1 -1
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +3 -3
- package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -4
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +5 -5
- package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +3 -0
- package/esm/typings/src/llm-providers/langtail/LangtailExecutionToolsOptions.d.ts +1 -1
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -5
- package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +7 -7
- package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +12 -8
- package/esm/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +3 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +7 -6
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/computeUsage.d.ts +2 -2
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +3 -2
- package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +10 -8
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionToolsOptions.d.ts +1 -1
- package/esm/typings/src/llm-providers/remote/startRemoteServer.d.ts +2 -2
- package/esm/typings/src/personas/preparePersona.d.ts +15 -0
- package/esm/typings/src/prepare/PrepareOptions.d.ts +22 -0
- package/esm/typings/src/prepare/isPipelinePrepared.d.ts +14 -0
- package/esm/typings/src/prepare/preparePipeline.d.ts +16 -0
- package/esm/typings/src/prepare/prepareTemplates.d.ts +31 -0
- package/esm/typings/src/prepare/unpreparePipeline.d.ts +11 -0
- package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +1 -1
- package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
- package/esm/typings/src/scripting/javascript/utils/unknownToString.d.ts +2 -1
- package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +25 -0
- package/esm/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
- package/esm/typings/src/storage/files-storage/FilesStorage.d.ts +30 -0
- package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +13 -0
- package/esm/typings/src/storage/files-storage/utils/nameToSubfolderPath.d.ts +7 -0
- package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +9 -0
- package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +9 -0
- package/esm/typings/src/storage/memory/MemoryStorage.d.ts +34 -0
- package/esm/typings/src/storage/utils/PrefixStorage.d.ts +26 -0
- package/esm/typings/src/storage/utils/makePromptbookStorageFromWebStorage.d.ts +11 -0
- package/esm/typings/src/types/ModelRequirements.d.ts +71 -11
- package/esm/typings/src/types/ModelVariant.d.ts +14 -0
- package/esm/typings/src/types/PipelineJson/Expectations.d.ts +6 -2
- package/esm/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +70 -0
- package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +27 -0
- package/esm/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +10 -1
- package/esm/typings/src/types/PipelineJson/PersonaJson.d.ts +41 -0
- package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +31 -5
- package/esm/typings/src/types/PipelineJson/PreparationJson.d.ts +22 -0
- package/esm/typings/src/types/PipelineJson/PromptDialogJson.d.ts +8 -2
- package/esm/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +5 -1
- package/esm/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +23 -4
- package/esm/typings/src/types/PipelineJson/PromptTemplateParameterJson.d.ts +12 -2
- package/esm/typings/src/types/PipelineJson/ScriptJson.d.ts +7 -2
- package/esm/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +7 -2
- package/esm/typings/src/types/PipelineString.d.ts +1 -1
- package/esm/typings/src/types/Prompt.d.ts +54 -10
- package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +4 -4
- package/esm/typings/src/types/execution-report/ExecutionReportStringOptions.d.ts +3 -3
- package/esm/typings/src/types/execution-report/countWorkingDuration.d.ts +1 -1
- package/esm/typings/src/types/typeAliases.d.ts +114 -15
- package/esm/typings/src/utils/FromtoItems.d.ts +3 -3
- package/esm/typings/src/utils/currentDate.d.ts +7 -0
- package/esm/typings/src/utils/deepClone.d.ts +9 -0
- package/esm/typings/src/utils/deepFreeze.d.ts +22 -0
- package/esm/typings/src/utils/emojis.d.ts +2 -2
- package/esm/typings/src/utils/{extractParameters.d.ts → extractParameterNames.d.ts} +2 -2
- package/esm/typings/src/utils/formatNumber.d.ts +1 -1
- package/esm/typings/src/utils/isRunningInWhatever.d.ts +3 -0
- package/esm/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +3 -3
- package/esm/typings/src/utils/markdown/createMarkdownChart.d.ts +7 -10
- package/esm/typings/src/utils/markdown/createMarkdownTable.d.ts +1 -1
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +9 -2
- package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +1 -1
- package/esm/typings/src/utils/markdown/parseMarkdownSection.d.ts +3 -3
- package/esm/typings/src/utils/normalization/parseKeywords.d.ts +2 -1
- package/esm/typings/src/utils/organization/TODO_USE.d.ts +12 -0
- package/esm/typings/src/utils/organization/TODO_any.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_object.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
- package/esm/typings/src/utils/organization/___.d.ts +6 -0
- package/{umd/typings/src/utils → esm/typings/src/utils/organization}/just.d.ts +5 -1
- package/esm/typings/src/utils/organization/keepUnused.d.ts +16 -0
- package/esm/typings/src/utils/organization/really_any.d.ts +6 -0
- package/esm/typings/src/utils/organization/really_unknown.d.ts +6 -0
- package/esm/typings/src/utils/random/randomSeed.d.ts +7 -0
- package/esm/typings/src/{execution/utils → utils}/replaceParameters.d.ts +2 -4
- package/esm/typings/src/utils/replaceParameters.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/difference.d.ts +3 -0
- package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +2 -1
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -1
- package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -1
- package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +2 -1
- package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +2 -1
- package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +2 -1
- package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +2 -1
- package/esm/typings/src/utils/validators/uuid/isValidUuid.d.ts +2 -1
- package/package.json +3 -3
- package/umd/index.umd.js +238 -31
- package/umd/index.umd.js.map +1 -1
- package/umd/typings/promptbook-collection/index.d.ts +200 -30
- package/umd/typings/src/_packages/core.index.d.ts +9 -3
- package/umd/typings/src/_packages/execute-javascript.index.d.ts +1 -1
- package/umd/typings/src/_packages/node.index.d.ts +2 -1
- package/umd/typings/src/_packages/types.index.d.ts +12 -8
- package/umd/typings/src/_packages/utils.index.d.ts +11 -8
- package/umd/typings/src/cli/cli-commands/hello.d.ts +3 -0
- package/umd/typings/src/cli/cli-commands/make.d.ts +3 -0
- package/umd/typings/src/cli/cli-commands/prettify.d.ts +3 -0
- package/umd/typings/src/cli/promptbookCli.d.ts +1 -0
- package/umd/typings/src/collection/PipelineCollection.d.ts +1 -1
- package/umd/typings/src/collection/SimplePipelineCollection.d.ts +10 -10
- package/umd/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +7 -7
- package/umd/typings/src/collection/constructors/createCollectionFromUrl.d.ts +2 -2
- package/umd/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +2 -3
- package/umd/typings/src/commands/MODEL/ModelCommand.d.ts +2 -2
- package/umd/typings/src/commands/PERSONA/PersonaCommand.d.ts +4 -2
- package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -0
- package/umd/typings/src/commands/_common/types/CommandParser.d.ts +42 -14
- package/umd/typings/src/config.d.ts +46 -1
- package/umd/typings/src/config.test.d.ts +4 -0
- package/umd/typings/src/conversion/pipelineJsonToString.d.ts +3 -2
- package/umd/typings/src/conversion/pipelineStringToJson.d.ts +9 -5
- package/umd/typings/src/conversion/pipelineStringToJsonSync.d.ts +6 -3
- package/umd/typings/src/conversion/prettify/PrettifyOptions.d.ts +2 -2
- package/{esm/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts → umd/typings/src/conversion/utils/extractParameterNamesFromPromptTemplate.d.ts} +2 -2
- package/umd/typings/src/conversion/utils/extractParameterNamesFromPromptTemplate.test.d.ts +1 -0
- package/umd/typings/src/conversion/utils/renameParameter.d.ts +3 -3
- package/umd/typings/src/conversion/utils/stringifyPipelineJson.d.ts +14 -0
- package/umd/typings/src/conversion/utils/stringifyPipelineJson.test.d.ts +1 -0
- package/umd/typings/src/conversion/validation/_importPipeline.d.ts +12 -3
- package/umd/typings/src/conversion/validation/validatePipeline.d.ts +10 -1
- package/umd/typings/src/errors/EnvironmentMismatchError.d.ts +7 -0
- package/umd/typings/src/errors/LimitReachedError.d.ts +7 -0
- package/umd/typings/src/errors/VersionMismatchError.d.ts +8 -0
- package/umd/typings/src/execution/CommonExecutionToolsOptions.d.ts +1 -0
- package/umd/typings/src/execution/LlmExecutionTools.d.ts +10 -8
- package/umd/typings/src/execution/PipelineExecutor.d.ts +48 -26
- package/umd/typings/src/execution/PromptResult.d.ts +39 -54
- package/umd/typings/src/execution/PromptResultUsage.d.ts +29 -0
- package/umd/typings/src/execution/ScriptExecutionTools.d.ts +5 -4
- package/umd/typings/src/execution/UncertainNumber.d.ts +18 -0
- package/umd/typings/src/execution/UserInterfaceTools.d.ts +5 -5
- package/umd/typings/src/execution/createPipelineExecutor.d.ts +31 -3
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +2 -2
- package/umd/typings/src/execution/utils/addUsage.d.ts +58 -2
- package/umd/typings/src/execution/utils/computeUsageCounts.d.ts +1 -1
- package/umd/typings/src/execution/utils/forEachAsync.d.ts +1 -1
- package/umd/typings/src/execution/utils/uncertainNumber.d.ts +1 -1
- package/umd/typings/src/execution/utils/usageToHuman.d.ts +15 -0
- package/umd/typings/src/execution/utils/usageToHuman.test.d.ts +1 -0
- package/umd/typings/src/execution/utils/usageToWorktime.d.ts +2 -2
- package/umd/typings/src/formats/_common/FormatDefinition.d.ts +1 -1
- package/umd/typings/src/formats/csv/ListFormatDefinition.d.ts +2 -1
- package/umd/typings/src/formats/json/JsonFormatDefinition.d.ts +2 -1
- package/umd/typings/src/formats/list/ListFormatDefinition.d.ts +2 -1
- package/umd/typings/src/formats/xml/XmlFormatDefinition.d.ts +1 -0
- package/umd/typings/src/knowledge/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +1 -1
- package/umd/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +3 -0
- package/umd/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +27 -0
- package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.d.ts +18 -0
- package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts +1 -0
- package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +9 -23
- package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts +3 -0
- package/umd/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +8 -14
- package/umd/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +31 -0
- package/umd/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +11 -0
- package/umd/typings/src/llm-providers/_common/getLlmToolsForTestingAndScriptsAndPlayground.d.ts +12 -0
- package/umd/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +29 -0
- package/umd/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +10 -0
- package/umd/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +19 -0
- package/umd/typings/src/llm-providers/_common/utils/count-total-usage/LlmExecutionToolsWithTotalUsage.d.ts +14 -0
- package/umd/typings/src/llm-providers/_common/utils/count-total-usage/countTotalUsage.d.ts +17 -0
- package/umd/typings/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.d.ts +35 -0
- package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +4 -3
- package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +1 -1
- package/umd/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +3 -3
- package/umd/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -0
- package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -4
- package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +5 -5
- package/umd/typings/src/llm-providers/azure-openai/playground/playground.d.ts +3 -0
- package/umd/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +3 -0
- package/umd/typings/src/llm-providers/langtail/LangtailExecutionToolsOptions.d.ts +1 -1
- package/umd/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -5
- package/umd/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +7 -7
- package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +12 -8
- package/umd/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +3 -0
- package/umd/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +7 -6
- package/umd/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +1 -1
- package/umd/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
- package/umd/typings/src/llm-providers/openai/computeUsage.d.ts +2 -2
- package/umd/typings/src/llm-providers/openai/openai-models.d.ts +3 -2
- package/umd/typings/src/llm-providers/openai/playground/playground.d.ts +3 -0
- package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +10 -8
- package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionToolsOptions.d.ts +1 -1
- package/umd/typings/src/llm-providers/remote/startRemoteServer.d.ts +2 -2
- package/umd/typings/src/personas/preparePersona.d.ts +15 -0
- package/umd/typings/src/personas/preparePersona.test.d.ts +1 -0
- package/umd/typings/src/prepare/PrepareOptions.d.ts +22 -0
- package/umd/typings/src/prepare/isPipelinePrepared.d.ts +14 -0
- package/umd/typings/src/prepare/isPipelinePrepared.test.d.ts +1 -0
- package/umd/typings/src/prepare/preparePipeline.d.ts +16 -0
- package/umd/typings/src/prepare/prepareTemplates.d.ts +31 -0
- package/umd/typings/src/prepare/unpreparePipeline.d.ts +11 -0
- package/umd/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +1 -1
- package/umd/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
- package/umd/typings/src/scripting/javascript/utils/unknownToString.d.ts +2 -1
- package/umd/typings/src/storage/_common/PromptbookStorage.d.ts +25 -0
- package/umd/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
- package/umd/typings/src/storage/files-storage/FilesStorage.d.ts +30 -0
- package/umd/typings/src/storage/files-storage/FilesStorageOptions.d.ts +13 -0
- package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.d.ts +7 -0
- package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.test.d.ts +1 -0
- package/umd/typings/src/storage/local-storage/getLocalStorage.d.ts +9 -0
- package/umd/typings/src/storage/local-storage/getSessionStorage.d.ts +9 -0
- package/umd/typings/src/storage/memory/MemoryStorage.d.ts +34 -0
- package/umd/typings/src/storage/utils/PrefixStorage.d.ts +26 -0
- package/umd/typings/src/storage/utils/makePromptbookStorageFromWebStorage.d.ts +11 -0
- package/umd/typings/src/types/ModelRequirements.d.ts +71 -11
- package/umd/typings/src/types/ModelVariant.d.ts +14 -0
- package/umd/typings/src/types/PipelineJson/Expectations.d.ts +6 -2
- package/umd/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +70 -0
- package/umd/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +27 -0
- package/umd/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +10 -1
- package/umd/typings/src/types/PipelineJson/PersonaJson.d.ts +41 -0
- package/umd/typings/src/types/PipelineJson/PipelineJson.d.ts +31 -5
- package/umd/typings/src/types/PipelineJson/PreparationJson.d.ts +22 -0
- package/umd/typings/src/types/PipelineJson/PromptDialogJson.d.ts +8 -2
- package/umd/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +5 -1
- package/umd/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +23 -4
- package/umd/typings/src/types/PipelineJson/PromptTemplateParameterJson.d.ts +12 -2
- package/umd/typings/src/types/PipelineJson/ScriptJson.d.ts +7 -2
- package/umd/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +7 -2
- package/umd/typings/src/types/PipelineString.d.ts +1 -1
- package/umd/typings/src/types/Prompt.d.ts +54 -10
- package/umd/typings/src/types/execution-report/ExecutionReportJson.d.ts +4 -4
- package/umd/typings/src/types/execution-report/ExecutionReportStringOptions.d.ts +3 -3
- package/umd/typings/src/types/execution-report/countWorkingDuration.d.ts +1 -1
- package/umd/typings/src/types/typeAliases.d.ts +114 -15
- package/umd/typings/src/utils/FromtoItems.d.ts +3 -3
- package/umd/typings/src/utils/currentDate.d.ts +7 -0
- package/umd/typings/src/utils/deepClone.d.ts +9 -0
- package/umd/typings/src/utils/deepFreeze.d.ts +22 -0
- package/umd/typings/src/utils/emojis.d.ts +2 -2
- package/umd/typings/src/utils/{extractParameters.d.ts → extractParameterNames.d.ts} +2 -2
- package/umd/typings/src/utils/extractParameterNames.test.d.ts +1 -0
- package/umd/typings/src/utils/formatNumber.d.ts +1 -1
- package/umd/typings/src/utils/isRunningInWhatever.d.ts +3 -0
- package/umd/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +3 -3
- package/umd/typings/src/utils/markdown/createMarkdownChart.d.ts +7 -10
- package/umd/typings/src/utils/markdown/createMarkdownTable.d.ts +1 -1
- package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
- package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +9 -2
- package/umd/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +1 -1
- package/umd/typings/src/utils/markdown/parseMarkdownSection.d.ts +3 -3
- package/umd/typings/src/utils/normalization/parseKeywords.d.ts +2 -1
- package/umd/typings/src/utils/organization/TODO_USE.d.ts +12 -0
- package/umd/typings/src/utils/organization/TODO_any.d.ts +6 -0
- package/umd/typings/src/utils/organization/TODO_object.d.ts +6 -0
- package/umd/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
- package/umd/typings/src/utils/organization/___.d.ts +6 -0
- package/{esm/typings/src/utils → umd/typings/src/utils/organization}/just.d.ts +5 -1
- package/umd/typings/src/utils/organization/keepUnused.d.ts +16 -0
- package/umd/typings/src/utils/organization/really_any.d.ts +6 -0
- package/umd/typings/src/utils/organization/really_unknown.d.ts +6 -0
- package/umd/typings/src/utils/random/randomSeed.d.ts +7 -0
- package/umd/typings/src/{execution/utils → utils}/replaceParameters.d.ts +2 -4
- package/umd/typings/src/utils/replaceParameters.test.d.ts +1 -0
- package/umd/typings/src/utils/sets/difference.d.ts +3 -0
- package/umd/typings/src/utils/validators/email/isValidEmail.d.ts +2 -1
- package/umd/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -1
- package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -1
- package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +2 -1
- package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +2 -1
- package/umd/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +2 -1
- package/umd/typings/src/utils/validators/url/isValidUrl.d.ts +2 -1
- package/umd/typings/src/utils/validators/uuid/isValidUuid.d.ts +2 -1
- package/esm/typings/src/collection/constructors/justTestFsImport.d.ts +0 -7
- package/esm/typings/src/personas/personaToModelRequirements.d.ts +0 -6
- package/esm/typings/src/types/Parameters.d.ts +0 -14
- package/esm/typings/src/types/PipelineJson/KnowledgeJson.d.ts +0 -6
- package/esm/typings/src/types/PipelineJson/MaterialKnowledgePieceJson.d.ts +0 -28
- package/umd/typings/src/collection/constructors/justTestFsImport.d.ts +0 -7
- package/umd/typings/src/personas/personaToModelRequirements.d.ts +0 -6
- package/umd/typings/src/types/Parameters.d.ts +0 -14
- package/umd/typings/src/types/PipelineJson/KnowledgeJson.d.ts +0 -6
- package/umd/typings/src/types/PipelineJson/MaterialKnowledgePieceJson.d.ts +0 -28
- /package/esm/typings/src/conversion/utils/{extractParametersFromPromptTemplate.test.d.ts → extractParameterNamesFromPromptTemplate.test.d.ts} +0 -0
- /package/esm/typings/src/{execution/addPromptResultUsage.test.d.ts → conversion/utils/stringifyPipelineJson.test.d.ts} +0 -0
- /package/esm/typings/src/execution/utils/{replaceParameters.test.d.ts → usageToHuman.test.d.ts} +0 -0
- /package/esm/typings/src/{utils/extractParameters.test.d.ts → knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts} +0 -0
- /package/{umd/typings/src/conversion/utils/extractParametersFromPromptTemplate.test.d.ts → esm/typings/src/personas/preparePersona.test.d.ts} +0 -0
- /package/esm/typings/src/{utils/postprocessing → postprocessing/utils}/extractBlock.d.ts +0 -0
- /package/{umd/typings/src/execution/addPromptResultUsage.test.d.ts → esm/typings/src/prepare/isPipelinePrepared.test.d.ts} +0 -0
- /package/{umd/typings/src/execution/utils/replaceParameters.test.d.ts → esm/typings/src/storage/files-storage/utils/nameToSubfolderPath.test.d.ts} +0 -0
- /package/{umd/typings/src/utils/extractParameters.test.d.ts → esm/typings/src/utils/extractParameterNames.test.d.ts} +0 -0
- /package/umd/typings/src/{utils/postprocessing → postprocessing/utils}/extractBlock.d.ts +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { Promisable } from 'type-fest';
|
|
2
|
-
import type { ModelVariant } from '../types/
|
|
2
|
+
import type { ModelVariant } from '../types/ModelVariant';
|
|
3
3
|
import type { Prompt } from '../types/Prompt';
|
|
4
4
|
import type { string_markdown } from '../types/typeAliases';
|
|
5
5
|
import type { string_markdown_text } from '../types/typeAliases';
|
|
6
6
|
import type { string_model_name } from '../types/typeAliases';
|
|
7
7
|
import type { string_title } from '../types/typeAliases';
|
|
8
|
-
import type {
|
|
9
|
-
import type {
|
|
10
|
-
import type {
|
|
8
|
+
import type { ChatPromptResult } from './PromptResult';
|
|
9
|
+
import type { CompletionPromptResult } from './PromptResult';
|
|
10
|
+
import type { EmbeddingPromptResult } from './PromptResult';
|
|
11
11
|
/**
|
|
12
12
|
* Container for all the tools needed to execute prompts to large language models like GPT-4
|
|
13
13
|
* On its interface it exposes common methods for prompt execution.
|
|
@@ -31,15 +31,15 @@ export type LlmExecutionTools = {
|
|
|
31
31
|
/**
|
|
32
32
|
* Calls a chat model
|
|
33
33
|
*/
|
|
34
|
-
callChatModel?(prompt: Prompt): Promise<
|
|
34
|
+
callChatModel?(prompt: Prompt): Promise<ChatPromptResult>;
|
|
35
35
|
/**
|
|
36
36
|
* Calls a completion model
|
|
37
37
|
*/
|
|
38
|
-
callCompletionModel?(prompt: Prompt): Promise<
|
|
38
|
+
callCompletionModel?(prompt: Prompt): Promise<CompletionPromptResult>;
|
|
39
39
|
/**
|
|
40
40
|
* Calls an embedding model
|
|
41
41
|
*/
|
|
42
|
-
callEmbeddingModel?(prompt: Prompt): Promise<
|
|
42
|
+
callEmbeddingModel?(prompt: Prompt): Promise<EmbeddingPromptResult>;
|
|
43
43
|
/**
|
|
44
44
|
* List all available models that can be used
|
|
45
45
|
*/
|
|
@@ -63,8 +63,10 @@ export type AvailableModel = {
|
|
|
63
63
|
readonly modelVariant: ModelVariant;
|
|
64
64
|
};
|
|
65
65
|
/**
|
|
66
|
-
* TODO:
|
|
66
|
+
* TODO: [🏳] Add `callTranslationModel`
|
|
67
|
+
* TODO: Maybe reorder `listModels` and put it befor `callChatModel`, `callCompletionModel`, `callEmbeddingModel`
|
|
67
68
|
* TODO: [🧠] Emulation of one type of model with another one - emuate chat with completion; emulate translation with chat
|
|
68
69
|
* TODO: [🍓][♐] Some heuristic to pick the best model in listed models
|
|
69
70
|
* TODO: [🧠] Should or should not there be a word "GPT" in both callCompletionModel and callChatModel
|
|
71
|
+
* TODO: [🧠][🪐] Should be common things like types, utils in folder containing A,B,C,.. or else outside this listing folder?
|
|
70
72
|
*/
|
|
@@ -1,42 +1,64 @@
|
|
|
1
1
|
import type { Promisable } from 'type-fest';
|
|
2
|
+
import type { PipelineJson } from '../types/PipelineJson/PipelineJson';
|
|
3
|
+
import { PipelineExecutionError } from '../errors/PipelineExecutionError';
|
|
2
4
|
import type { TaskProgress } from '../types/TaskProgress';
|
|
3
5
|
import type { ExecutionReportJson } from '../types/execution-report/ExecutionReportJson';
|
|
4
|
-
import type {
|
|
5
|
-
import type { PromptResultUsage } from './
|
|
6
|
+
import type { Parameters } from '../types/typeAliases';
|
|
7
|
+
import type { PromptResultUsage } from './PromptResultUsage';
|
|
6
8
|
/**
|
|
7
9
|
* Executor is a simple async function that takes INPUT PARAMETERs and returns result parameters _(along with all intermediate parameters and INPUT PARAMETERs = it extends input object)_.
|
|
8
10
|
* Executor is made by combining execution tools and pipeline collection.
|
|
9
11
|
*
|
|
10
12
|
* It can be created with `createPipelineExecutor` function.
|
|
11
13
|
*
|
|
14
|
+
* @@@ almost-JSON (what about errors)
|
|
15
|
+
*
|
|
12
16
|
* @see https://github.com/webgptorg/promptbook#executor
|
|
13
17
|
*/
|
|
14
18
|
export type PipelineExecutor = {
|
|
15
|
-
(inputParameters:
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
19
|
+
(inputParameters: Parameters, onProgress?: (taskProgress: TaskProgress) => Promisable<void>): Promise<PipelineExecutorResult>;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* @@@
|
|
23
|
+
*
|
|
24
|
+
* @@@ almost-JSON (what about errors)
|
|
25
|
+
*/
|
|
26
|
+
export type PipelineExecutorResult = {
|
|
27
|
+
/**
|
|
28
|
+
* Result parameters of the execution
|
|
29
|
+
*
|
|
30
|
+
* Note: If the execution was not successful, there are only some of the result parameters
|
|
31
|
+
*/
|
|
32
|
+
readonly outputParameters: Parameters;
|
|
33
|
+
/**
|
|
34
|
+
* Whether the execution was successful, details are aviable in `executionReport`
|
|
35
|
+
*/
|
|
36
|
+
readonly isSuccessful: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Added usage of whole execution, detailed usage is aviable in `executionReport`
|
|
39
|
+
*/
|
|
40
|
+
readonly usage: PromptResultUsage;
|
|
41
|
+
/**
|
|
42
|
+
* Errors that occured during the execution, details are aviable in `executionReport`
|
|
43
|
+
*/
|
|
44
|
+
readonly errors: Array<PipelineExecutionError | Error>;
|
|
45
|
+
/**
|
|
46
|
+
* Warnings that occured during the execution, details are aviable in `executionReport`
|
|
47
|
+
*/
|
|
48
|
+
readonly warnings: Array<PipelineExecutionError | Error>;
|
|
49
|
+
/**
|
|
50
|
+
* The report of the execution with all details
|
|
51
|
+
*/
|
|
52
|
+
readonly executionReport: ExecutionReportJson;
|
|
53
|
+
/**
|
|
54
|
+
* The prepared pipeline that was used for the execution
|
|
55
|
+
*
|
|
56
|
+
* Note: If you called `createPipelineExecutor` with fully prepared pipeline, this is the same object as this pipeline
|
|
57
|
+
* If you passed not fully prepared pipeline, this is same pipeline but fully prepared
|
|
58
|
+
*/
|
|
59
|
+
readonly preparedPipeline: PipelineJson;
|
|
39
60
|
};
|
|
40
61
|
/**
|
|
41
62
|
* TODO: [🧠] Should this file be in /execution or /types folder?
|
|
63
|
+
* TODO: [💷] `assertsExecutionSuccessful` should be the method of `PipelineExecutor` result - BUT maybe NOT?
|
|
42
64
|
*/
|
|
@@ -1,37 +1,46 @@
|
|
|
1
|
-
import type { KebabCase } from 'type-fest';
|
|
2
|
-
import type { ExpectationUnit } from '../types/PipelineJson/Expectations';
|
|
3
|
-
import type { number_positive } from '../types/typeAliases';
|
|
4
|
-
import type { number_usd } from '../types/typeAliases';
|
|
5
1
|
import type { string_date_iso8601 } from '../types/typeAliases';
|
|
6
2
|
import type { string_model_name } from '../types/typeAliases';
|
|
3
|
+
import type { string_prompt } from '../types/typeAliases';
|
|
4
|
+
import type { TODO_object } from '../utils/organization/TODO_object';
|
|
7
5
|
import type { EmbeddingVector } from './EmbeddingVector';
|
|
6
|
+
import type { PromptResultUsage } from './PromptResultUsage';
|
|
8
7
|
/**
|
|
9
8
|
* Prompt result is the simplest concept of execution.
|
|
10
9
|
* It is the result of executing one prompt _(NOT a template)_.
|
|
11
10
|
*
|
|
12
11
|
* @see https://github.com/webgptorg/promptbook#prompt-result
|
|
13
12
|
*/
|
|
14
|
-
export type PromptResult =
|
|
13
|
+
export type PromptResult = CompletionPromptResult | ChatPromptResult | EmbeddingPromptResult;
|
|
15
14
|
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
15
|
+
* Completion prompt result
|
|
16
|
+
*
|
|
17
|
+
* Note:It contains only the newly generated text NOT the whole completion
|
|
18
|
+
* Note: This is fully serializable as JSON
|
|
18
19
|
*/
|
|
19
|
-
export type
|
|
20
|
+
export type CompletionPromptResult = CommonPromptResult;
|
|
20
21
|
/**
|
|
21
|
-
*
|
|
22
|
+
*Chat prompt result
|
|
23
|
+
*
|
|
24
|
+
* Note: This is fully serializable as JSON
|
|
22
25
|
*/
|
|
23
|
-
export type
|
|
26
|
+
export type ChatPromptResult = CommonPromptResult & {};
|
|
24
27
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
28
|
+
* Embedding prompt result
|
|
29
|
+
*
|
|
30
|
+
* Note: This is fully serializable as JSON
|
|
27
31
|
*/
|
|
28
|
-
export type
|
|
32
|
+
export type EmbeddingPromptResult = Omit<CommonPromptResult, 'content'> & {
|
|
29
33
|
/**
|
|
30
34
|
* The response from the model
|
|
31
35
|
*/
|
|
32
36
|
content: EmbeddingVector;
|
|
33
37
|
};
|
|
34
|
-
|
|
38
|
+
/**
|
|
39
|
+
* Common properties for all prompt results
|
|
40
|
+
*
|
|
41
|
+
* Note: This is fully serializable as JSON
|
|
42
|
+
*/
|
|
43
|
+
export type CommonPromptResult = {
|
|
35
44
|
/**
|
|
36
45
|
* Exact text response from the model
|
|
37
46
|
*/
|
|
@@ -47,68 +56,44 @@ export type PromptCommonResult = {
|
|
|
47
56
|
/**
|
|
48
57
|
* Start of the execution
|
|
49
58
|
*/
|
|
50
|
-
start: string_date_iso8601;
|
|
59
|
+
readonly start: string_date_iso8601;
|
|
51
60
|
/**
|
|
52
61
|
* First token generated
|
|
53
62
|
*/
|
|
54
|
-
firstToken?: string_date_iso8601;
|
|
63
|
+
readonly firstToken?: string_date_iso8601;
|
|
55
64
|
/**
|
|
56
65
|
* End of the execution
|
|
57
66
|
*/
|
|
58
|
-
complete: string_date_iso8601;
|
|
67
|
+
readonly complete: string_date_iso8601;
|
|
59
68
|
};
|
|
60
69
|
/**
|
|
61
70
|
* Usage of the prompt execution
|
|
62
71
|
*/
|
|
63
72
|
readonly usage: PromptResultUsage;
|
|
64
73
|
/**
|
|
65
|
-
*
|
|
66
|
-
*/
|
|
67
|
-
readonly rawResponse: object;
|
|
68
|
-
};
|
|
69
|
-
/**
|
|
70
|
-
* Usage statistics for one or many prompt results
|
|
71
|
-
*/
|
|
72
|
-
export type PromptResultUsage = {
|
|
73
|
-
/**
|
|
74
|
-
* Cost of the execution in USD
|
|
74
|
+
* Exact text of the prompt (with all replacements)
|
|
75
75
|
*
|
|
76
|
-
* Note:
|
|
76
|
+
* Note: This contains redundant information
|
|
77
77
|
*/
|
|
78
|
-
|
|
78
|
+
readonly rawPromptContent: string_prompt;
|
|
79
79
|
/**
|
|
80
|
-
*
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Number of tokens used in the output aka. `completion_tokens`
|
|
85
|
-
*/
|
|
86
|
-
output: PromptResultUsageCounts;
|
|
87
|
-
};
|
|
88
|
-
/**
|
|
89
|
-
* Record of all possible measurable units
|
|
90
|
-
*/
|
|
91
|
-
export type PromptResultUsageCounts = Record<`${KebabCase<'TOKENS' | ExpectationUnit>}Count`, UncertainNumber>;
|
|
92
|
-
/**
|
|
93
|
-
* Number which can be uncertain
|
|
94
|
-
*
|
|
95
|
-
* Note: If the value is completelly unknown, the value 0 and isUncertain is true
|
|
96
|
-
* Note: Not using NaN or null because it looses the value which is better to be uncertain then not to be at all
|
|
97
|
-
*/
|
|
98
|
-
export type UncertainNumber = {
|
|
99
|
-
/**
|
|
100
|
-
* The numeric value
|
|
80
|
+
* Raw request to the model
|
|
81
|
+
*
|
|
82
|
+
* Note: This contains redundant information
|
|
101
83
|
*/
|
|
102
|
-
|
|
84
|
+
readonly rawRequest: TODO_object | null;
|
|
103
85
|
/**
|
|
104
|
-
*
|
|
86
|
+
* Raw response from the model
|
|
87
|
+
*
|
|
88
|
+
* Note: This contains redundant information
|
|
105
89
|
*/
|
|
106
|
-
|
|
90
|
+
readonly rawResponse: TODO_object;
|
|
107
91
|
};
|
|
108
92
|
/**
|
|
109
93
|
* TODO: [🧠] Maybe timing more accurate then seconds?
|
|
110
94
|
* TODO: [🧠] Should here be link to the prompt?
|
|
111
|
-
* TODO: [🧠] Maybe type
|
|
95
|
+
* TODO: [🧠] Maybe type `rawResponse` properly - not onject but OpenAI.result.whatever
|
|
112
96
|
* TODO: [🧠] Maybe remove redundant raw.choices.text
|
|
113
97
|
* TODO: Log raw even if prompt failed - log the raw error
|
|
98
|
+
* TODO: [🏳] Add `TranslationPromptResult`
|
|
114
99
|
*/
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { KebabCase } from 'type-fest';
|
|
2
|
+
import type { ExpectationUnit } from '../types/PipelineJson/Expectations';
|
|
3
|
+
import type { UncertainNumber } from './UncertainNumber';
|
|
4
|
+
/**
|
|
5
|
+
* Usage statistics for one or many prompt results
|
|
6
|
+
*/
|
|
7
|
+
export type PromptResultUsage = {
|
|
8
|
+
/**
|
|
9
|
+
* Cost of the execution in USD
|
|
10
|
+
*
|
|
11
|
+
* Note: If the cost is unknown, the value 0 and isUncertain is true
|
|
12
|
+
*/
|
|
13
|
+
readonly price: UncertainNumber;
|
|
14
|
+
/**
|
|
15
|
+
* Number of whatever used in the input aka. `prompt_tokens`
|
|
16
|
+
*/
|
|
17
|
+
readonly input: PromptResultUsageCounts;
|
|
18
|
+
/**
|
|
19
|
+
* Number of tokens used in the output aka. `completion_tokens`
|
|
20
|
+
*/
|
|
21
|
+
readonly output: PromptResultUsageCounts;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Record of all possible measurable units
|
|
25
|
+
*/
|
|
26
|
+
export type PromptResultUsageCounts = Record<`${KebabCase<'TOKENS' | ExpectationUnit>}Count`, UncertainNumber>;
|
|
27
|
+
/**
|
|
28
|
+
* TODO: [🍙] Make some standart order of json properties
|
|
29
|
+
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ScriptLanguage } from '../types/ScriptLanguage';
|
|
2
|
-
import type {
|
|
2
|
+
import type { Parameters } from '../types/typeAliases';
|
|
3
3
|
import type { string_script } from '../types/typeAliases';
|
|
4
4
|
/**
|
|
5
5
|
* Represents all the tools needed to EXECUTE SCRIPTs
|
|
@@ -16,13 +16,13 @@ export type ScriptExecutionToolsExecuteOptions = {
|
|
|
16
16
|
/**
|
|
17
17
|
* Language of the script
|
|
18
18
|
*/
|
|
19
|
-
scriptLanguage: ScriptLanguage;
|
|
19
|
+
readonly scriptLanguage: ScriptLanguage;
|
|
20
20
|
/**
|
|
21
21
|
* Parameters for the script
|
|
22
22
|
* Theese parameters are passed to the script as variables
|
|
23
23
|
* For example: { "name": "John" } => const name = "John";
|
|
24
24
|
*/
|
|
25
|
-
parameters:
|
|
25
|
+
readonly parameters: Parameters;
|
|
26
26
|
/**
|
|
27
27
|
* The content of the script to execute
|
|
28
28
|
* - It can be a single statement
|
|
@@ -31,8 +31,9 @@ export type ScriptExecutionToolsExecuteOptions = {
|
|
|
31
31
|
* - It can be IIFE (immediately invoked function expression)
|
|
32
32
|
* - It can use the parameters as variables and functions from global scope
|
|
33
33
|
*/
|
|
34
|
-
script: string_script;
|
|
34
|
+
readonly script: string_script;
|
|
35
35
|
};
|
|
36
36
|
/**
|
|
37
37
|
* TODO: [🧠][💙] Distinct between options passed into ExecutionTools and to ExecutionTools.execute
|
|
38
|
+
* TODO: [🧠][🪐] Should be common things like types, utils in folder containing A,B,C,.. or else outside this listing folder?
|
|
38
39
|
*/
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { number_positive } from '../types/typeAliases';
|
|
2
|
+
import type { number_usd } from '../types/typeAliases';
|
|
3
|
+
/**
|
|
4
|
+
* Number which can be uncertain
|
|
5
|
+
*
|
|
6
|
+
* Note: If the value is completelly unknown, the value 0 and isUncertain is true
|
|
7
|
+
* Note: Not using NaN or null because it looses the value which is better to be uncertain then not to be at all
|
|
8
|
+
*/
|
|
9
|
+
export type UncertainNumber = {
|
|
10
|
+
/**
|
|
11
|
+
* The numeric value
|
|
12
|
+
*/
|
|
13
|
+
readonly value: number_usd & (number_positive | 0);
|
|
14
|
+
/**
|
|
15
|
+
* Is the value uncertain
|
|
16
|
+
*/
|
|
17
|
+
readonly isUncertain?: true;
|
|
18
|
+
};
|
|
@@ -21,26 +21,26 @@ export type UserInterfaceToolsPromptDialogOptions = {
|
|
|
21
21
|
* Note: This is not a prompt to language model but a prompt to the user
|
|
22
22
|
* @example "Your name"
|
|
23
23
|
*/
|
|
24
|
-
promptTitle: string;
|
|
24
|
+
readonly promptTitle: string;
|
|
25
25
|
/**
|
|
26
26
|
* Prompt message
|
|
27
27
|
*
|
|
28
28
|
* Note: This is not a prompt to language model but a prompt to the user
|
|
29
29
|
* @example "Please enter your name, including your last name, title, etc."
|
|
30
30
|
*/
|
|
31
|
-
promptMessage: string;
|
|
31
|
+
readonly promptMessage: string;
|
|
32
32
|
/**
|
|
33
33
|
* Default value for the input/textarea
|
|
34
34
|
*/
|
|
35
|
-
defaultValue: string | null;
|
|
35
|
+
readonly defaultValue: string | null;
|
|
36
36
|
/**
|
|
37
37
|
* Placeholder for the input/textarea
|
|
38
38
|
*/
|
|
39
|
-
placeholder?: string;
|
|
39
|
+
readonly placeholder?: string;
|
|
40
40
|
/**
|
|
41
41
|
* Priority of the prompt
|
|
42
42
|
*
|
|
43
43
|
* Note: This would be reflected for example into the UI z-index of the prompt modal
|
|
44
44
|
*/
|
|
45
|
-
priority: number_integer & number_positive;
|
|
45
|
+
readonly priority: number_integer & number_positive;
|
|
46
46
|
};
|
|
@@ -5,12 +5,34 @@ type CreatePipelineExecutorSettings = {
|
|
|
5
5
|
/**
|
|
6
6
|
* When executor does not satisfy expectations it will be retried this amount of times
|
|
7
7
|
*
|
|
8
|
-
* @default
|
|
8
|
+
* @default MAX_EXECUTION_ATTEMPTS
|
|
9
9
|
*/
|
|
10
|
-
readonly maxExecutionAttempts
|
|
10
|
+
readonly maxExecutionAttempts?: number;
|
|
11
|
+
/**
|
|
12
|
+
* Maximum number of tasks running in parallel
|
|
13
|
+
*
|
|
14
|
+
* @default MAX_PARALLEL_COUNT
|
|
15
|
+
*/
|
|
16
|
+
readonly maxParallelCount?: number;
|
|
17
|
+
/**
|
|
18
|
+
* If true, the preparation logs additional information
|
|
19
|
+
*
|
|
20
|
+
* @default false
|
|
21
|
+
*/
|
|
22
|
+
readonly isVerbose?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* If you pass fully prepared pipeline, this does not matter
|
|
25
|
+
*
|
|
26
|
+
* Otherwise:
|
|
27
|
+
* If false or not set, warning is shown when pipeline is not prepared
|
|
28
|
+
* If true, warning is suppressed
|
|
29
|
+
*
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
readonly isNotPreparedWarningSupressed?: boolean;
|
|
11
33
|
};
|
|
12
34
|
/**
|
|
13
|
-
* Options for
|
|
35
|
+
* Options for `createPipelineExecutor`
|
|
14
36
|
*/
|
|
15
37
|
interface CreatePipelineExecutorOptions {
|
|
16
38
|
/**
|
|
@@ -35,8 +57,14 @@ interface CreatePipelineExecutorOptions {
|
|
|
35
57
|
export declare function createPipelineExecutor(options: CreatePipelineExecutorOptions): PipelineExecutor;
|
|
36
58
|
export {};
|
|
37
59
|
/**
|
|
60
|
+
* TODO: Use isVerbose here (not only pass to `preparePipeline`)
|
|
61
|
+
* TODO: [🧠] Use here `countTotalUsage` and put preparation and prepared pipiline to report
|
|
62
|
+
* TODO: [🪂] Use maxParallelCount here (not only pass to `preparePipeline`)
|
|
63
|
+
* TODO: [♈] Probbably move expectations from templates to parameters
|
|
38
64
|
* TODO: [🧠] When not meet expectations in PROMPT_DIALOG, make some way to tell the user
|
|
39
65
|
* TODO: [👧] Strongly type the executors to avoid need of remove nullables whtn noUncheckedIndexedAccess in tsconfig.json
|
|
40
66
|
* Note: CreatePipelineExecutorOptions are just connected to PipelineExecutor so do not extract to types folder
|
|
41
67
|
* TODO: [🧠][3] transparent = (report intermediate parameters) / opaque execution = (report only output parameters) progress reporting mode
|
|
68
|
+
* TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
|
|
69
|
+
* TODO: [🧠][💷] `assertsExecutionSuccessful` should be the method of `PipelineExecutor` result BUT maybe NOT to preserve pure JSON object
|
|
42
70
|
*/
|
|
@@ -1,7 +1,63 @@
|
|
|
1
|
-
import type { PromptResultUsage } from '../
|
|
1
|
+
import type { PromptResultUsage } from '../PromptResultUsage';
|
|
2
|
+
/**
|
|
3
|
+
* @@@
|
|
4
|
+
*
|
|
5
|
+
* TODO: [🔼] Export with addUsage
|
|
6
|
+
*/
|
|
7
|
+
export declare const ZERO_USAGE: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
8
|
+
readonly price: {
|
|
9
|
+
readonly value: 0;
|
|
10
|
+
};
|
|
11
|
+
readonly input: {
|
|
12
|
+
readonly tokensCount: {
|
|
13
|
+
readonly value: 0;
|
|
14
|
+
};
|
|
15
|
+
readonly charactersCount: {
|
|
16
|
+
readonly value: 0;
|
|
17
|
+
};
|
|
18
|
+
readonly wordsCount: {
|
|
19
|
+
readonly value: 0;
|
|
20
|
+
};
|
|
21
|
+
readonly sentencesCount: {
|
|
22
|
+
readonly value: 0;
|
|
23
|
+
};
|
|
24
|
+
readonly linesCount: {
|
|
25
|
+
readonly value: 0;
|
|
26
|
+
};
|
|
27
|
+
readonly paragraphsCount: {
|
|
28
|
+
readonly value: 0;
|
|
29
|
+
};
|
|
30
|
+
readonly pagesCount: {
|
|
31
|
+
readonly value: 0;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
readonly output: {
|
|
35
|
+
readonly tokensCount: {
|
|
36
|
+
readonly value: 0;
|
|
37
|
+
};
|
|
38
|
+
readonly charactersCount: {
|
|
39
|
+
readonly value: 0;
|
|
40
|
+
};
|
|
41
|
+
readonly wordsCount: {
|
|
42
|
+
readonly value: 0;
|
|
43
|
+
};
|
|
44
|
+
readonly sentencesCount: {
|
|
45
|
+
readonly value: 0;
|
|
46
|
+
};
|
|
47
|
+
readonly linesCount: {
|
|
48
|
+
readonly value: 0;
|
|
49
|
+
};
|
|
50
|
+
readonly paragraphsCount: {
|
|
51
|
+
readonly value: 0;
|
|
52
|
+
};
|
|
53
|
+
readonly pagesCount: {
|
|
54
|
+
readonly value: 0;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
}>;
|
|
2
58
|
/**
|
|
3
59
|
* Function `addUsage` will add multiple usages into one
|
|
4
60
|
*
|
|
5
|
-
* Note: If you provide 0 values, it returns
|
|
61
|
+
* Note: If you provide 0 values, it returns ZERO_USAGE
|
|
6
62
|
*/
|
|
7
63
|
export declare function addUsage(...usageItems: Array<PromptResultUsage>): PromptResultUsage;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { string_markdown } from '../../types/typeAliases';
|
|
2
|
+
import type { PromptResultUsage } from '../PromptResultUsage';
|
|
3
|
+
/**
|
|
4
|
+
* Function `usageToHuman` will take usage and convert it to human readable report
|
|
5
|
+
*/
|
|
6
|
+
export declare function usageToHuman(usage: PromptResultUsage): string_markdown;
|
|
7
|
+
/**
|
|
8
|
+
* TODO: Use "$1" not "1 USD"
|
|
9
|
+
* TODO: Use markdown formatting like "Cost approximately **$1**"
|
|
10
|
+
* TODO: Report in minutes, seconds, days NOT 0.1 hours
|
|
11
|
+
* TODO: [🧠] Maybe make from `uncertainNumberToHuman` separate exported utility
|
|
12
|
+
* TODO: When negligible usage, report "Negligible" or just don't report it
|
|
13
|
+
* TODO: [🧠] Maybe use "~" instead of "approximately"
|
|
14
|
+
* TODO: [🏛] Maybe make some markdown builder
|
|
15
|
+
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { PromptResultUsage } from '../
|
|
2
|
-
import type { UncertainNumber } from '../
|
|
1
|
+
import type { PromptResultUsage } from '../PromptResultUsage';
|
|
2
|
+
import type { UncertainNumber } from '../UncertainNumber';
|
|
3
3
|
/**
|
|
4
4
|
* Function usageToWorktime will take usage and estimate saved worktime in hours of reading / writing
|
|
5
5
|
*
|
|
@@ -65,5 +65,5 @@ export type FormatDefinition<TValue extends TPartialValue, TPartialValue extends
|
|
|
65
65
|
* TODO: [🍓][👨⚖️] Compute TPartialValue dynamically - PartialString<TValue>
|
|
66
66
|
* TODO: [🍓][🧠] Should execution tools be aviable to heal, canBeValid and isValid?
|
|
67
67
|
* TODO: [🍓][🧠] llm Provider Bindings
|
|
68
|
-
* TODO: [🍓]Export via some package
|
|
68
|
+
* TODO: [🍓][🔼] Export via some package
|
|
69
69
|
*/
|
|
@@ -8,4 +8,5 @@ export declare const CsvFormatDefinition: FormatDefinition<string, string, objec
|
|
|
8
8
|
* TODO: [🍓] In `CsvFormatDefinition` implement partial `canBeValid`
|
|
9
9
|
* TODO: [🍓] In `CsvFormatDefinition` implement `heal
|
|
10
10
|
* TODO: [🍓] In `CsvFormatDefinition` implement `extractValues`
|
|
11
|
-
|
|
11
|
+
* TODO: [🏢] Allow to expect something inside CSV objects and other formats
|
|
12
|
+
*/
|
|
@@ -12,4 +12,5 @@ export declare const JsonFormatDefinition: FormatDefinition<string, string, obje
|
|
|
12
12
|
* TODO: [🍓] In `JsonFormatDefinition` implement partial `canBeValid`
|
|
13
13
|
* TODO: [🍓] In `JsonFormatDefinition` implement `heal
|
|
14
14
|
* TODO: [🍓] In `JsonFormatDefinition` implement `extractValues`
|
|
15
|
-
|
|
15
|
+
* TODO: [🏢] Allow to expect something inside JSON objects and other formats
|
|
16
|
+
*/
|
|
@@ -10,4 +10,5 @@ export declare const ListFormatDefinition: FormatDefinition<string, string, obje
|
|
|
10
10
|
* TODO: [🍓] In `ListFormatDefinition` implement partial `canBeValid`
|
|
11
11
|
* TODO: [🍓] In `ListFormatDefinition` implement `heal
|
|
12
12
|
* TODO: [🍓] In `ListFormatDefinition` implement `extractValues`
|
|
13
|
-
|
|
13
|
+
* TODO: [🏢] Allow to expect something inside each item of list and other formats
|
|
14
|
+
*/
|
|
@@ -12,4 +12,5 @@ export declare const XmlFormatDefinition: FormatDefinition<string, string, objec
|
|
|
12
12
|
* TODO: [🍓] In `XmlFormatDefinition` implement partial `canBeValid`
|
|
13
13
|
* TODO: [🍓] In `XmlFormatDefinition` implement `heal
|
|
14
14
|
* TODO: [🍓] In `XmlFormatDefinition` implement `extractValues`
|
|
15
|
+
* TODO: [🏢] Allow to expect something inside XML and other formats
|
|
15
16
|
*/
|
|
@@ -2,7 +2,7 @@ import type { Promisable } from 'type-fest';
|
|
|
2
2
|
import type { CommonExecutionToolsOptions } from '../../../execution/CommonExecutionToolsOptions';
|
|
3
3
|
import type { UserInterfaceToolsPromptDialogOptions } from '../../../execution/UserInterfaceTools';
|
|
4
4
|
/**
|
|
5
|
-
* Options for CallbackInterfaceTools
|
|
5
|
+
* Options for `CallbackInterfaceTools`
|
|
6
6
|
*/
|
|
7
7
|
export type CallbackInterfaceToolsOptions = CommonExecutionToolsOptions & {
|
|
8
8
|
/**
|
|
@@ -15,3 +15,6 @@ export declare class SimplePromptInterfaceTools implements UserInterfaceTools {
|
|
|
15
15
|
*/
|
|
16
16
|
promptDialog(options: UserInterfaceToolsPromptDialogOptions): Promise<string>;
|
|
17
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Note: [🔵] This code should never be published outside of `@promptbook/browser`
|
|
20
|
+
*/
|