@promptbook/node 0.63.0-0 → 0.63.0-10
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 +4 -2
- package/esm/index.es.js +192 -115
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/anthropic-claude.index.d.ts +2 -0
- package/esm/typings/src/_packages/browser.index.d.ts +2 -0
- package/esm/typings/src/_packages/core.index.d.ts +6 -4
- package/esm/typings/src/_packages/types.index.d.ts +0 -48
- package/esm/typings/src/_packages/utils.index.d.ts +6 -2
- package/esm/typings/src/cli/cli-commands/about.d.ts +11 -0
- package/esm/typings/src/cli/cli-commands/hello.d.ts +2 -2
- package/esm/typings/src/cli/cli-commands/make.d.ts +4 -1
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +2 -1
- package/esm/typings/src/cli/promptbookCli.d.ts +3 -1
- package/esm/typings/src/cli/test/ptbk.d.ts +2 -0
- package/esm/typings/src/collection/SimplePipelineCollection.d.ts +1 -2
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +2 -1
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +0 -1
- package/esm/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +2 -0
- package/esm/typings/src/commands/index.d.ts +2 -0
- package/esm/typings/src/config.d.ts +33 -5
- package/esm/typings/src/conversion/pipelineJsonToString.d.ts +1 -0
- package/esm/typings/src/conversion/pipelineStringToJson.d.ts +1 -0
- package/esm/typings/src/conversion/validation/_importPipeline.d.ts +8 -1
- package/esm/typings/src/errors/_ExpectError.d.ts +2 -1
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/AutomaticTranslator.d.ts +3 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/DebugAutomaticTranslator.d.ts +2 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/FakeAutomaticTranslator.d.ts +3 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +3 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +3 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +1 -0
- package/esm/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +3 -0
- package/esm/typings/src/execution/utils/checkExpectations.d.ts +1 -1
- package/esm/typings/src/execution/utils/computeUsageCounts.d.ts +1 -1
- package/esm/typings/src/expectations/drafts/isDomainNameFree.d.ts +3 -0
- package/esm/typings/src/expectations/drafts/isGithubNameFree.d.ts +3 -0
- package/esm/typings/src/formats/_common/FormatDefinition.d.ts +1 -1
- package/esm/typings/src/formats/csv/ListFormatDefinition.d.ts +2 -0
- package/esm/typings/src/formats/index.d.ts +2 -0
- package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +2 -0
- package/esm/typings/src/formats/list/ListFormatDefinition.d.ts +2 -0
- package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +2 -0
- package/esm/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +1 -1
- package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +2 -0
- package/esm/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +4 -2
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -0
- package/esm/typings/src/llm-providers/mocked/fakeTextToExpectations.d.ts +1 -1
- package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
- package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/utils/unknownToString.d.ts +1 -1
- package/esm/typings/src/scripting/python/PythonExecutionTools.d.ts +2 -0
- package/esm/typings/src/scripting/typescript/TypescriptExecutionTools.d.ts +2 -0
- package/esm/typings/src/storage/files-storage/FilesStorage.d.ts +1 -1
- package/esm/typings/src/types/Arrayable.d.ts +1 -1
- package/esm/typings/src/types/ModelVariant.d.ts +8 -7
- package/esm/typings/src/types/PipelineJson/Expectations.d.ts +10 -4
- package/esm/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +1 -1
- package/esm/typings/src/types/ScriptLanguage.d.ts +6 -4
- package/esm/typings/src/types/execution-report/executionReportJsonToString.d.ts +1 -0
- package/esm/typings/src/types/typeAliases.d.ts +2 -1
- package/esm/typings/src/utils/arrayableToArray.d.ts +1 -1
- package/esm/typings/src/utils/deepFreeze.d.ts +6 -5
- package/esm/typings/src/utils/files/isDirectoryExisting.d.ts +13 -0
- package/esm/typings/src/utils/files/isFileExisting.d.ts +12 -0
- package/esm/typings/src/utils/files/listAllFiles.d.ts +15 -0
- package/esm/typings/src/utils/getCurrentIsoDate.d.ts +1 -1
- package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +1 -1
- package/esm/typings/src/utils/normalization/normalizeWhitespaces.d.ts +3 -1
- package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +2 -0
- package/esm/typings/src/version.d.ts +0 -2
- package/package.json +12 -12
- package/umd/index.umd.js +191 -115
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/types/execution-report/config.d.ts +0 -8
- package/umd/typings/promptbook-collection/index.d.ts +0 -252
- package/umd/typings/src/_packages/anthropic-claude.index.d.ts +0 -6
- package/umd/typings/src/_packages/azure-openai.index.d.ts +0 -6
- package/umd/typings/src/_packages/browser.index.d.ts +0 -6
- package/umd/typings/src/_packages/cli.index.d.ts +0 -4
- package/umd/typings/src/_packages/core.index.d.ts +0 -124
- package/umd/typings/src/_packages/execute-javascript.index.d.ts +0 -8
- package/umd/typings/src/_packages/fake-llm.index.d.ts +0 -6
- package/umd/typings/src/_packages/langtail.index.d.ts +0 -6
- package/umd/typings/src/_packages/markdown-utils.index.d.ts +0 -36
- package/umd/typings/src/_packages/node.index.d.ts +0 -8
- package/umd/typings/src/_packages/openai.index.d.ts +0 -8
- package/umd/typings/src/_packages/remote-client.index.d.ts +0 -8
- package/umd/typings/src/_packages/remote-server.index.d.ts +0 -6
- package/umd/typings/src/_packages/types.index.d.ts +0 -462
- package/umd/typings/src/_packages/utils.index.d.ts +0 -130
- package/umd/typings/src/cli/cli-commands/hello.d.ts +0 -10
- package/umd/typings/src/cli/cli-commands/make.d.ts +0 -10
- package/umd/typings/src/cli/cli-commands/prettify.d.ts +0 -10
- package/umd/typings/src/cli/main.d.ts +0 -12
- package/umd/typings/src/cli/promptbookCli.d.ts +0 -10
- package/umd/typings/src/collection/PipelineCollection.d.ts +0 -25
- package/umd/typings/src/collection/SimplePipelineCollection.d.ts +0 -38
- package/umd/typings/src/collection/collectionToJson.d.ts +0 -13
- package/umd/typings/src/collection/collectionToJson.test.d.ts +0 -7
- package/umd/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +0 -48
- package/umd/typings/src/collection/constructors/createCollectionFromJson.d.ts +0 -13
- package/umd/typings/src/collection/constructors/createCollectionFromPromise.d.ts +0 -23
- package/umd/typings/src/collection/constructors/createCollectionFromUrl.d.ts +0 -29
- package/umd/typings/src/collection/constructors/createSubcollection.d.ts +0 -13
- package/umd/typings/src/commands/BLOCK/BlockCommand.d.ts +0 -11
- package/umd/typings/src/commands/BLOCK/BlockTypes.d.ts +0 -15
- package/umd/typings/src/commands/BLOCK/blockCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/EXPECT/ExpectAmountCommand.d.ts +0 -14
- package/umd/typings/src/commands/EXPECT/ExpectCommand.d.ts +0 -9
- package/umd/typings/src/commands/EXPECT/ExpectFormatCommand.d.ts +0 -7
- package/umd/typings/src/commands/EXPECT/expectCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/EXPECT/expectCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/JOKER/JokerCommand.d.ts +0 -11
- package/umd/typings/src/commands/JOKER/jokerCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/JOKER/jokerCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +0 -11
- package/umd/typings/src/commands/KNOWLEDGE/knowledgeCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/MODEL/ModelCommand.d.ts +0 -13
- package/umd/typings/src/commands/MODEL/modelCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/MODEL/modelCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/PARAMETER/ParameterCommand.d.ts +0 -15
- package/umd/typings/src/commands/PARAMETER/parameterCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/PERSONA/PersonaCommand.d.ts +0 -13
- package/umd/typings/src/commands/PERSONA/personaCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/PERSONA/personaCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/POSTPROCESS/PostprocessCommand.d.ts +0 -11
- package/umd/typings/src/commands/POSTPROCESS/postprocessCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/PROMPTBOOK_VERSION/PromptbookVersionCommand.d.ts +0 -11
- package/umd/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/URL/UrlCommand.d.ts +0 -10
- package/umd/typings/src/commands/URL/urlCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/URL/urlCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/X_ACTION/ActionCommand.d.ts +0 -9
- package/umd/typings/src/commands/X_ACTION/actionCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/X_ACTION/actionCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/X_INSTRUMENT/InstrumentCommand.d.ts +0 -9
- package/umd/typings/src/commands/X_INSTRUMENT/instrumentCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +0 -9
- package/umd/typings/src/commands/_BOILERPLATE/BoilerplateCommand.d.ts +0 -10
- package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +0 -13
- package/umd/typings/src/commands/_common/parseCommand.d.ts +0 -12
- package/umd/typings/src/commands/_common/parseCommand.test.d.ts +0 -1
- package/umd/typings/src/commands/_common/types/Command.d.ts +0 -6
- package/umd/typings/src/commands/_common/types/CommandParser.d.ts +0 -64
- package/umd/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +0 -9
- package/umd/typings/src/commands/index.d.ts +0 -4
- package/umd/typings/src/config.d.ts +0 -87
- package/umd/typings/src/config.test.d.ts +0 -4
- package/umd/typings/src/conversion/pipelineJsonToString.d.ts +0 -16
- package/umd/typings/src/conversion/pipelineStringToJson.d.ts +0 -38
- package/umd/typings/src/conversion/pipelineStringToJson.test.d.ts +0 -1
- package/umd/typings/src/conversion/pipelineStringToJsonSync.d.ts +0 -29
- package/umd/typings/src/conversion/pipelineStringToJsonSync.test.d.ts +0 -1
- package/umd/typings/src/conversion/prettify/PrettifyOptions.d.ts +0 -13
- package/umd/typings/src/conversion/prettify/prettifyPipelineString.d.ts +0 -12
- package/umd/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +0 -27
- package/umd/typings/src/conversion/utils/extractParameterNamesFromPromptTemplate.d.ts +0 -14
- package/umd/typings/src/conversion/utils/extractParameterNamesFromPromptTemplate.test.d.ts +0 -1
- package/umd/typings/src/conversion/utils/extractVariables.d.ts +0 -14
- package/umd/typings/src/conversion/utils/extractVariables.test.d.ts +0 -1
- package/umd/typings/src/conversion/utils/renameParameter.d.ts +0 -26
- package/umd/typings/src/conversion/utils/renameParameter.test.d.ts +0 -1
- package/umd/typings/src/conversion/utils/stringifyPipelineJson.d.ts +0 -16
- package/umd/typings/src/conversion/utils/stringifyPipelineJson.test.d.ts +0 -1
- package/umd/typings/src/conversion/utils/titleToName.d.ts +0 -9
- package/umd/typings/src/conversion/utils/titleToName.test.d.ts +0 -1
- package/umd/typings/src/conversion/validation/_importPipeline.d.ts +0 -22
- package/umd/typings/src/conversion/validation/pipelineStringToJson-syntaxErrors.test.d.ts +0 -1
- package/umd/typings/src/conversion/validation/validatePipeline-logicErrors.test.d.ts +0 -4
- package/umd/typings/src/conversion/validation/validatePipeline.d.ts +0 -37
- package/umd/typings/src/conversion/validation/validatePipeline.test.d.ts +0 -1
- package/umd/typings/src/errors/CollectionError.d.ts +0 -9
- package/umd/typings/src/errors/EnvironmentMismatchError.d.ts +0 -9
- package/umd/typings/src/errors/LimitReachedError.d.ts +0 -9
- package/umd/typings/src/errors/NotFoundError.d.ts +0 -9
- package/umd/typings/src/errors/NotYetImplementedError.d.ts +0 -9
- package/umd/typings/src/errors/ParsingError.d.ts +0 -9
- package/umd/typings/src/errors/PipelineExecutionError.d.ts +0 -9
- package/umd/typings/src/errors/PipelineLogicError.d.ts +0 -9
- package/umd/typings/src/errors/ReferenceError.d.ts +0 -9
- package/umd/typings/src/errors/UnexpectedError.d.ts +0 -9
- package/umd/typings/src/errors/VersionMismatchError.d.ts +0 -10
- package/umd/typings/src/errors/_ExpectError.d.ts +0 -10
- package/umd/typings/src/execution/CommonExecutionToolsOptions.d.ts +0 -10
- package/umd/typings/src/execution/EmbeddingVector.d.ts +0 -8
- package/umd/typings/src/execution/ExecutionTools.d.ts +0 -33
- package/umd/typings/src/execution/LlmExecutionTools.d.ts +0 -72
- package/umd/typings/src/execution/PipelineExecutor.d.ts +0 -64
- package/umd/typings/src/execution/PromptResult.d.ts +0 -99
- package/umd/typings/src/execution/PromptResultUsage.d.ts +0 -29
- package/umd/typings/src/execution/ScriptExecutionTools.d.ts +0 -39
- package/umd/typings/src/execution/UncertainNumber.d.ts +0 -18
- package/umd/typings/src/execution/UserInterfaceTools.d.ts +0 -46
- package/umd/typings/src/execution/assertsExecutionSuccessful.d.ts +0 -12
- package/umd/typings/src/execution/createPipelineExecutor.d.ts +0 -71
- package/umd/typings/src/execution/embeddingVectorToString.d.ts +0 -7
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/AutomaticTranslator.d.ts +0 -4
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/DebugAutomaticTranslator.d.ts +0 -9
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/FakeAutomaticTranslator.d.ts +0 -5
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +0 -11
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +0 -4
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +0 -7
- package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.test.d.ts +0 -1
- package/umd/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +0 -5
- package/umd/typings/src/execution/utils/addUsage.d.ts +0 -65
- package/umd/typings/src/execution/utils/addUsage.test.d.ts +0 -1
- package/umd/typings/src/execution/utils/checkExpectations.d.ts +0 -27
- package/umd/typings/src/execution/utils/checkExpectations.test.d.ts +0 -1
- package/umd/typings/src/execution/utils/computeUsageCounts.d.ts +0 -10
- package/umd/typings/src/execution/utils/forEachAsync.d.ts +0 -19
- package/umd/typings/src/execution/utils/uncertainNumber.d.ts +0 -9
- package/umd/typings/src/execution/utils/usageToHuman.d.ts +0 -17
- package/umd/typings/src/execution/utils/usageToHuman.test.d.ts +0 -1
- package/umd/typings/src/execution/utils/usageToWorktime.d.ts +0 -12
- package/umd/typings/src/execution/utils/usageToWorktime.test.d.ts +0 -1
- package/umd/typings/src/expectations/drafts/isDomainNameFree.d.ts +0 -6
- package/umd/typings/src/expectations/drafts/isGithubNameFree.d.ts +0 -6
- package/umd/typings/src/formats/_common/FormatDefinition.d.ts +0 -70
- package/umd/typings/src/formats/csv/ListFormatDefinition.d.ts +0 -12
- package/umd/typings/src/formats/index.d.ts +0 -4
- package/umd/typings/src/formats/json/JsonFormatDefinition.d.ts +0 -16
- package/umd/typings/src/formats/json/utils/isValidJsonString.d.ts +0 -6
- package/umd/typings/src/formats/json/utils/isValidJsonString.test.d.ts +0 -1
- package/umd/typings/src/formats/list/ListFormatDefinition.d.ts +0 -14
- package/umd/typings/src/formats/xml/XmlFormatDefinition.d.ts +0 -16
- package/umd/typings/src/knowledge/dialogs/callback/CallbackInterfaceTools.d.ts +0 -17
- package/umd/typings/src/knowledge/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +0 -14
- package/umd/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +0 -22
- package/umd/typings/src/knowledge/dialogs/user-interface-execution-tools.test.d.ts +0 -1
- package/umd/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +0 -37
- package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.d.ts +0 -18
- package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts +0 -1
- package/umd/typings/src/knowledge/prepare-knowledge/markdown/playground/markdown-knowledge-playground.d.ts +0 -2
- package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +0 -14
- package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts +0 -4
- package/umd/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +0 -13
- package/umd/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.test.d.ts +0 -1
- package/umd/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +0 -37
- package/umd/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +0 -20
- package/umd/typings/src/llm-providers/_common/getLlmToolsForTestingAndScriptsAndPlayground.d.ts +0 -21
- package/umd/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +0 -29
- package/umd/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +0 -16
- package/umd/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +0 -19
- package/umd/typings/src/llm-providers/_common/utils/count-total-usage/LlmExecutionToolsWithTotalUsage.d.ts +0 -15
- package/umd/typings/src/llm-providers/_common/utils/count-total-usage/countTotalUsage.d.ts +0 -17
- package/umd/typings/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.d.ts +0 -36
- package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +0 -52
- package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +0 -12
- package/umd/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +0 -22
- package/umd/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +0 -6
- package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +0 -50
- package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +0 -36
- package/umd/typings/src/llm-providers/azure-openai/playground/playground.d.ts +0 -5
- package/umd/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +0 -17
- package/umd/typings/src/llm-providers/langtail/LangtailExecutionToolsOptions.d.ts +0 -13
- package/umd/typings/src/llm-providers/langtail/playground/playground.d.ts +0 -2
- package/umd/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +0 -36
- package/umd/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +0 -40
- package/umd/typings/src/llm-providers/mocked/fakeTextToExpectations.d.ts +0 -14
- package/umd/typings/src/llm-providers/mocked/test/fakeTextToExpectations.test.d.ts +0 -1
- package/umd/typings/src/llm-providers/mocked/test/faked-completion.test.d.ts +0 -1
- package/umd/typings/src/llm-providers/mocked/test/joker.test.d.ts +0 -4
- package/umd/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +0 -5
- package/umd/typings/src/llm-providers/mocked/test/mocked-completion.test.d.ts +0 -4
- package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +0 -54
- package/umd/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +0 -21
- package/umd/typings/src/llm-providers/multiple/playground/playground.d.ts +0 -2
- package/umd/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +0 -68
- package/umd/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +0 -20
- package/umd/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +0 -14
- package/umd/typings/src/llm-providers/openai/computeOpenaiUsage.test.d.ts +0 -1
- package/umd/typings/src/llm-providers/openai/computeUsage.d.ts +0 -16
- package/umd/typings/src/llm-providers/openai/computeUsage.test.d.ts +0 -1
- package/umd/typings/src/llm-providers/openai/openai-models.d.ts +0 -29
- package/umd/typings/src/llm-providers/openai/playground/playground.d.ts +0 -5
- package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +0 -56
- package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionToolsOptions.d.ts +0 -26
- package/umd/typings/src/llm-providers/remote/interfaces/Promptbook_Server_Error.d.ts +0 -11
- package/umd/typings/src/llm-providers/remote/interfaces/Promptbook_Server_Progress.d.ts +0 -12
- package/umd/typings/src/llm-providers/remote/interfaces/Promptbook_Server_Request.d.ts +0 -17
- package/umd/typings/src/llm-providers/remote/interfaces/Promptbook_Server_Response.d.ts +0 -12
- package/umd/typings/src/llm-providers/remote/interfaces/RemoteServerOptions.d.ts +0 -37
- package/umd/typings/src/llm-providers/remote/startRemoteServer.d.ts +0 -21
- package/umd/typings/src/personas/preparePersona.d.ts +0 -15
- package/umd/typings/src/personas/preparePersona.test.d.ts +0 -1
- package/umd/typings/src/postprocessing/utils/extractBlock.d.ts +0 -17
- package/umd/typings/src/prepare/PrepareOptions.d.ts +0 -22
- package/umd/typings/src/prepare/isPipelinePrepared.d.ts +0 -15
- package/umd/typings/src/prepare/isPipelinePrepared.test.d.ts +0 -1
- package/umd/typings/src/prepare/preparePipeline.d.ts +0 -16
- package/umd/typings/src/prepare/prepareTemplates.d.ts +0 -32
- package/umd/typings/src/prepare/unpreparePipeline.d.ts +0 -12
- package/umd/typings/src/scripting/_test/custom-function-async.test.ts.test.d.ts +0 -1
- package/umd/typings/src/scripting/_test/custom-function-missing.test.d.ts +0 -1
- package/umd/typings/src/scripting/_test/custom-function-with-dependencies.test.d.ts +0 -1
- package/umd/typings/src/scripting/_test/custom-function.test.d.ts +0 -1
- package/umd/typings/src/scripting/_test/postprocessing.test.d.ts +0 -1
- package/umd/typings/src/scripting/_test/script-execution-errors.test.d.ts +0 -1
- package/umd/typings/src/scripting/_test/script-execution-tools.test.d.ts +0 -1
- package/umd/typings/src/scripting/javascript/JavascriptEvalExecutionTools.d.ts +0 -22
- package/umd/typings/src/scripting/javascript/JavascriptEvalExecutionTools.test.d.ts +0 -4
- package/umd/typings/src/scripting/javascript/JavascriptExecutionTools.d.ts +0 -8
- package/umd/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +0 -26
- package/umd/typings/src/scripting/javascript/postprocessing-functions.d.ts +0 -51
- package/umd/typings/src/scripting/javascript/utils/preserve.d.ts +0 -12
- package/umd/typings/src/scripting/javascript/utils/unknownToString.d.ts +0 -8
- package/umd/typings/src/scripting/python/PythonExecutionTools.d.ts +0 -16
- package/umd/typings/src/scripting/typescript/TypescriptExecutionTools.d.ts +0 -16
- package/umd/typings/src/storage/_common/PromptbookStorage.d.ts +0 -24
- package/umd/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +0 -5
- package/umd/typings/src/storage/files-storage/FilesStorage.d.ts +0 -31
- package/umd/typings/src/storage/files-storage/FilesStorageOptions.d.ts +0 -10
- package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.d.ts +0 -7
- package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.test.d.ts +0 -1
- package/umd/typings/src/storage/local-storage/getLocalStorage.d.ts +0 -10
- package/umd/typings/src/storage/local-storage/getSessionStorage.d.ts +0 -10
- package/umd/typings/src/storage/memory/MemoryStorage.d.ts +0 -33
- package/umd/typings/src/storage/utils/PrefixStorage.d.ts +0 -25
- package/umd/typings/src/storage/utils/makePromptbookStorageFromWebStorage.d.ts +0 -11
- package/umd/typings/src/types/Arrayable.d.ts +0 -10
- package/umd/typings/src/types/ModelRequirements.d.ts +0 -102
- package/umd/typings/src/types/ModelVariant.d.ts +0 -14
- package/umd/typings/src/types/PipelineJson/Expectations.d.ts +0 -32
- package/umd/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +0 -70
- package/umd/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +0 -27
- package/umd/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +0 -25
- package/umd/typings/src/types/PipelineJson/PersonaJson.d.ts +0 -41
- package/umd/typings/src/types/PipelineJson/PipelineJson.d.ts +0 -87
- package/umd/typings/src/types/PipelineJson/PreparationJson.d.ts +0 -22
- package/umd/typings/src/types/PipelineJson/PromptDialogJson.d.ts +0 -13
- package/umd/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +0 -13
- package/umd/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +0 -96
- package/umd/typings/src/types/PipelineJson/PromptTemplateParameterJson.d.ts +0 -36
- package/umd/typings/src/types/PipelineJson/ScriptJson.d.ts +0 -19
- package/umd/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +0 -12
- package/umd/typings/src/types/PipelineString.d.ts +0 -12
- package/umd/typings/src/types/Prompt.d.ts +0 -108
- package/umd/typings/src/types/ScriptLanguage.d.ts +0 -9
- package/umd/typings/src/types/TaskProgress.d.ts +0 -43
- package/umd/typings/src/types/execution-report/ExecutionReportJson.d.ts +0 -58
- package/umd/typings/src/types/execution-report/ExecutionReportString.d.ts +0 -16
- package/umd/typings/src/types/execution-report/ExecutionReportStringOptions.d.ts +0 -25
- package/umd/typings/src/types/execution-report/config.d.ts +0 -8
- package/umd/typings/src/types/execution-report/countWorkingDuration.d.ts +0 -7
- package/umd/typings/src/types/execution-report/countWorkingDuration.test.d.ts +0 -1
- package/umd/typings/src/types/execution-report/executionReportJsonToString.d.ts +0 -13
- package/umd/typings/src/types/typeAliasEmoji.d.ts +0 -9
- package/umd/typings/src/types/typeAliases.d.ts +0 -586
- package/umd/typings/src/utils/FromtoItems.d.ts +0 -19
- package/umd/typings/src/utils/arrayableToArray.d.ts +0 -11
- package/umd/typings/src/utils/arrayableToArray.test.d.ts +0 -1
- package/umd/typings/src/utils/currentDate.d.ts +0 -8
- package/umd/typings/src/utils/deepClone.d.ts +0 -10
- package/umd/typings/src/utils/deepFreeze.d.ts +0 -22
- package/umd/typings/src/utils/emojis.d.ts +0 -23
- package/umd/typings/src/utils/expectation-counters/countCharacters.d.ts +0 -7
- package/umd/typings/src/utils/expectation-counters/countCharacters.test.d.ts +0 -1
- package/umd/typings/src/utils/expectation-counters/countLines.d.ts +0 -7
- package/umd/typings/src/utils/expectation-counters/countLines.test.d.ts +0 -1
- package/umd/typings/src/utils/expectation-counters/countPages.d.ts +0 -7
- package/umd/typings/src/utils/expectation-counters/countPages.test.d.ts +0 -1
- package/umd/typings/src/utils/expectation-counters/countParagraphs.d.ts +0 -7
- package/umd/typings/src/utils/expectation-counters/countParagraphs.test.d.ts +0 -1
- package/umd/typings/src/utils/expectation-counters/countSentences.d.ts +0 -13
- package/umd/typings/src/utils/expectation-counters/countSentences.test.d.ts +0 -1
- package/umd/typings/src/utils/expectation-counters/countWords.d.ts +0 -7
- package/umd/typings/src/utils/expectation-counters/countWords.test.d.ts +0 -1
- package/umd/typings/src/utils/expectation-counters/index.d.ts +0 -8
- package/umd/typings/src/utils/extractParameterNames.d.ts +0 -10
- package/umd/typings/src/utils/extractParameterNames.test.d.ts +0 -1
- package/umd/typings/src/utils/formatNumber.d.ts +0 -6
- package/umd/typings/src/utils/formatNumber.test.d.ts +0 -1
- package/umd/typings/src/utils/getCurrentIsoDate.d.ts +0 -7
- package/umd/typings/src/utils/isRunningInWhatever.d.ts +0 -18
- package/umd/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +0 -14
- package/umd/typings/src/utils/markdown/addAutoGeneratedSection.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/createMarkdownChart.d.ts +0 -38
- package/umd/typings/src/utils/markdown/createMarkdownChart.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/createMarkdownTable.d.ts +0 -11
- package/umd/typings/src/utils/markdown/createMarkdownTable.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/escapeMarkdownBlock.d.ts +0 -11
- package/umd/typings/src/utils/markdown/escapeMarkdownBlock.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +0 -34
- package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/extractAllListItemsFromMarkdown.d.ts +0 -15
- package/umd/typings/src/utils/markdown/extractAllListItemsFromMarkdown.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +0 -20
- package/umd/typings/src/utils/markdown/extractOneBlockFromMarkdown.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/flattenMarkdown.d.ts +0 -17
- package/umd/typings/src/utils/markdown/flattenMarkdown.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/parseMarkdownSection.d.ts +0 -34
- package/umd/typings/src/utils/markdown/parseMarkdownSection.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/prettifyMarkdown.d.ts +0 -9
- package/umd/typings/src/utils/markdown/prettifyMarkdown.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/removeContentComments.d.ts +0 -10
- package/umd/typings/src/utils/markdown/removeContentComments.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/removeMarkdownFormatting.d.ts +0 -9
- package/umd/typings/src/utils/markdown/removeMarkdownFormatting.test.d.ts +0 -1
- package/umd/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +0 -15
- package/umd/typings/src/utils/markdown/splitMarkdownIntoSections.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/DIACRITIC_VARIANTS_LETTERS.d.ts +0 -12
- package/umd/typings/src/utils/normalization/IKeywords.d.ts +0 -21
- package/umd/typings/src/utils/normalization/capitalize.d.ts +0 -6
- package/umd/typings/src/utils/normalization/capitalize.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/decapitalize.d.ts +0 -6
- package/umd/typings/src/utils/normalization/decapitalize.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/isValidKeyword.d.ts +0 -10
- package/umd/typings/src/utils/normalization/isValidKeyword.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/nameToUriPart.d.ts +0 -9
- package/umd/typings/src/utils/normalization/nameToUriPart.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/nameToUriParts.d.ts +0 -9
- package/umd/typings/src/utils/normalization/nameToUriParts.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +0 -18
- package/umd/typings/src/utils/normalization/normalize-to-kebab-case.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +0 -17
- package/umd/typings/src/utils/normalization/normalizeTo_PascalCase.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +0 -26
- package/umd/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +0 -22
- package/umd/typings/src/utils/normalization/normalizeTo_camelCase.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +0 -17
- package/umd/typings/src/utils/normalization/normalizeTo_snake_case.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/normalizeWhitespaces.d.ts +0 -4
- package/umd/typings/src/utils/normalization/normalizeWhitespaces.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/parseKeywords.d.ts +0 -16
- package/umd/typings/src/utils/normalization/parseKeywords.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/parseKeywordsFromString.d.ts +0 -9
- package/umd/typings/src/utils/normalization/parseKeywordsFromString.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/removeDiacritics.d.ts +0 -11
- package/umd/typings/src/utils/normalization/removeDiacritics.test.d.ts +0 -1
- package/umd/typings/src/utils/normalization/searchKeywords.d.ts +0 -10
- package/umd/typings/src/utils/normalization/searchKeywords.test.d.ts +0 -1
- package/umd/typings/src/utils/organization/TODO_USE.d.ts +0 -12
- package/umd/typings/src/utils/organization/TODO_any.d.ts +0 -6
- package/umd/typings/src/utils/organization/TODO_object.d.ts +0 -6
- package/umd/typings/src/utils/organization/TODO_unknown.d.ts +0 -6
- package/umd/typings/src/utils/organization/___.d.ts +0 -6
- package/umd/typings/src/utils/organization/just.d.ts +0 -14
- package/umd/typings/src/utils/organization/keepUnused.d.ts +0 -16
- package/umd/typings/src/utils/organization/really_any.d.ts +0 -6
- package/umd/typings/src/utils/organization/really_unknown.d.ts +0 -6
- package/umd/typings/src/utils/parseNumber.d.ts +0 -16
- package/umd/typings/src/utils/parseNumber.test.d.ts +0 -1
- package/umd/typings/src/utils/random/randomSeed.d.ts +0 -8
- package/umd/typings/src/utils/removeEmojis.d.ts +0 -8
- package/umd/typings/src/utils/removeEmojis.test.d.ts +0 -1
- package/umd/typings/src/utils/removeQuotes.d.ts +0 -14
- package/umd/typings/src/utils/removeQuotes.test.d.ts +0 -1
- package/umd/typings/src/utils/replaceParameters.d.ts +0 -12
- package/umd/typings/src/utils/replaceParameters.test.d.ts +0 -1
- package/umd/typings/src/utils/sets/difference.d.ts +0 -10
- package/umd/typings/src/utils/sets/difference.test.d.ts +0 -1
- package/umd/typings/src/utils/sets/intersection.d.ts +0 -7
- package/umd/typings/src/utils/sets/intersection.test.d.ts +0 -1
- package/umd/typings/src/utils/sets/union.d.ts +0 -7
- package/umd/typings/src/utils/sets/union.test.d.ts +0 -1
- package/umd/typings/src/utils/trimCodeBlock.d.ts +0 -9
- package/umd/typings/src/utils/trimCodeBlock.test.d.ts +0 -1
- package/umd/typings/src/utils/trimEndOfCodeBlock.d.ts +0 -9
- package/umd/typings/src/utils/trimEndOfCodeBlock.test.d.ts +0 -1
- package/umd/typings/src/utils/unwrapResult.d.ts +0 -37
- package/umd/typings/src/utils/unwrapResult.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/email/isValidEmail.d.ts +0 -6
- package/umd/typings/src/utils/validators/email/isValidEmail.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/filePath/isValidFilePath.d.ts +0 -9
- package/umd/typings/src/utils/validators/filePath/isValidFilePath.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +0 -10
- package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +0 -15
- package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +0 -12
- package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +0 -11
- package/umd/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +0 -13
- package/umd/typings/src/utils/validators/url/isUrlOnPrivateNetwork.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +0 -15
- package/umd/typings/src/utils/validators/url/isValidPipelineUrl.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/url/isValidUrl.d.ts +0 -13
- package/umd/typings/src/utils/validators/url/isValidUrl.test.d.ts +0 -1
- package/umd/typings/src/utils/validators/uuid/isValidUuid.d.ts +0 -8
- package/umd/typings/src/utils/validators/uuid/isValidUuid.test.d.ts +0 -1
- package/umd/typings/src/version.d.ts +0 -8
- /package/{umd/typings/src/collection/constructors/createCollectionFromDirectory.test.d.ts → esm/typings/src/cli/test/ptbk.test.d.ts} +0 -0
- /package/{umd/typings/src/collection/constructors/createCollectionFromJson.test.d.ts → esm/typings/src/utils/files/isDirectoryExisting.test.d.ts} +0 -0
- /package/{umd/typings/src/collection/constructors/createCollectionFromPromise.test.d.ts → esm/typings/src/utils/files/isFileExisting.test.d.ts} +0 -0
- /package/{umd/typings/src/commands/BLOCK/blockCommand.test.d.ts → esm/typings/src/utils/files/listAllFiles.test.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
<!-- ⚠️ WARNING: This code has been generated so that any manual changes will be overwritten -->
|
|
2
|
+
|
|
1
3
|
#  Promptbook
|
|
2
4
|
|
|
3
5
|
Supercharge your use of large language models
|
|
@@ -314,11 +316,11 @@ Or you can install them separately:
|
|
|
314
316
|
> ⭐ Marked packages are worth to try first
|
|
315
317
|
|
|
316
318
|
|
|
317
|
-
|
|
318
319
|
- ⭐ **[ptbk](https://www.npmjs.com/package/ptbk)** - Bundle of all packages, when you want to install everything and you don't care about the size
|
|
319
320
|
- **[promptbook](https://www.npmjs.com/package/promptbook)** - Same as `ptbk`
|
|
320
321
|
- **[@promptbook/core](https://www.npmjs.com/package/@promptbook/core)** - Core of the library, it contains the main logic for promptbooks
|
|
321
|
-
- **[@promptbook/node](https://www.npmjs.com/package/@promptbook/node)** - Core of the library for Node.js
|
|
322
|
+
- **[@promptbook/node](https://www.npmjs.com/package/@promptbook/node)** - Core of the library for Node.js environment
|
|
323
|
+
- **[@promptbook/browser](https://www.npmjs.com/package/@promptbook/browser)** - Core of the library for browser environment
|
|
322
324
|
- ⭐ **[@promptbook/utils](https://www.npmjs.com/package/@promptbook/utils)** - Utility functions used in the library but also useful for individual use in preprocessing and postprocessing LLM inputs and outputs
|
|
323
325
|
- **[@promptbook/markdown-utils](https://www.npmjs.com/package/@promptbook/markdown-utils)** - Utility functions used for processing markdown
|
|
324
326
|
- _(Not finished)_ **[@promptbook/wizzard](https://www.npmjs.com/package/@promptbook/wizzard)** - Wizard for creating+running promptbooks in single line
|
package/esm/index.es.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import colors from 'colors';
|
|
2
|
-
import { access, constants,
|
|
3
|
-
import { join, dirname } from 'path';
|
|
2
|
+
import { stat, access, constants, readdir, readFile, writeFile, mkdir, unlink } from 'fs/promises';
|
|
3
|
+
import { join as join$1, dirname } from 'path';
|
|
4
4
|
import spaceTrim, { spaceTrim as spaceTrim$1 } from 'spacetrim';
|
|
5
5
|
import { format } from 'prettier';
|
|
6
6
|
import parserHtml from 'prettier/parser-html';
|
|
7
|
+
import { join } from 'path/posix';
|
|
7
8
|
import * as dotenv from 'dotenv';
|
|
8
9
|
import Anthropic from '@anthropic-ai/sdk';
|
|
9
10
|
import OpenAI from 'openai';
|
|
10
11
|
import hexEncoder from 'crypto-js/enc-hex';
|
|
11
12
|
import sha256 from 'crypto-js/sha256';
|
|
12
13
|
|
|
14
|
+
// ⚠️ WARNING: This code has been generated so that any manual changes will be overwritten
|
|
13
15
|
/**
|
|
14
16
|
* The version of the Promptbook library
|
|
15
|
-
*
|
|
16
|
-
* @public exported from all packages
|
|
17
17
|
*/
|
|
18
|
-
var PROMPTBOOK_VERSION = '0.
|
|
18
|
+
var PROMPTBOOK_VERSION = '0.63.0-9';
|
|
19
19
|
// TODO: !!!! List here all the versions and annotate + put into script
|
|
20
20
|
|
|
21
21
|
/*! *****************************************************************************
|
|
@@ -140,9 +140,10 @@ function __spreadArray(to, from, pack) {
|
|
|
140
140
|
/**
|
|
141
141
|
* @@@
|
|
142
142
|
*
|
|
143
|
-
* @returns The same object as the input, but deeply frozen
|
|
144
|
-
*
|
|
145
143
|
* Note: This function mutates the object and returns the original (but mutated-deep-freezed) object
|
|
144
|
+
*
|
|
145
|
+
* @returns The same object as the input, but deeply frozen
|
|
146
|
+
* @public exported from `@promptbook/utils`
|
|
146
147
|
*/
|
|
147
148
|
function deepFreeze(objectValue) {
|
|
148
149
|
var e_1, _a;
|
|
@@ -169,10 +170,10 @@ function deepFreeze(objectValue) {
|
|
|
169
170
|
* @@@
|
|
170
171
|
* @@@
|
|
171
172
|
*
|
|
172
|
-
* @returns The same object as the input, but deeply frozen
|
|
173
|
-
* @public exported from `@promptbook/utils`
|
|
174
|
-
*
|
|
175
173
|
* Note: This function mutates the object and returns the original (but mutated-deep-freezed) object
|
|
174
|
+
*
|
|
175
|
+
* @returns The same object as the input, but deeply frozen
|
|
176
|
+
* @private this is in comparison to `deepFreeze` a more specific utility and maybe not very good practice to use without specific reason and considerations
|
|
176
177
|
*/
|
|
177
178
|
function deepFreezeWithSameType(objectValue) {
|
|
178
179
|
return deepFreeze(objectValue);
|
|
@@ -181,10 +182,11 @@ function deepFreezeWithSameType(objectValue) {
|
|
|
181
182
|
* TODO: [🧠] Is there a way how to meaningfully test this utility
|
|
182
183
|
*/
|
|
183
184
|
|
|
185
|
+
// <- TODO: [🧠] Better system for generator warnings - not always "code" and "by `@promptbook/cli`"
|
|
184
186
|
/**
|
|
185
187
|
* The maximum number of iterations for a loops
|
|
186
188
|
*
|
|
187
|
-
* @private within the repository - too low-level in comparison
|
|
189
|
+
* @private within the repository - too low-level in comparison with other `MAX_...`
|
|
188
190
|
*/
|
|
189
191
|
var LOOP_LIMIT = 1000;
|
|
190
192
|
/**
|
|
@@ -213,6 +215,8 @@ var MAX_FILENAME_LENGTH = 30;
|
|
|
213
215
|
var PIPELINE_COLLECTION_BASE_FILENAME = "index";
|
|
214
216
|
/**
|
|
215
217
|
* Nonce which is used for replacing things in strings
|
|
218
|
+
*
|
|
219
|
+
* @private within the repository
|
|
216
220
|
*/
|
|
217
221
|
var REPLACING_NONCE = 'u$k42k%!V2zo34w7Fu#@QUHYPW';
|
|
218
222
|
/**
|
|
@@ -242,13 +246,6 @@ var RESERVED_PARAMETER_MISSING_VALUE = 'MISSING-' + REPLACING_NONCE;
|
|
|
242
246
|
* @private within the repository
|
|
243
247
|
*/
|
|
244
248
|
var RESERVED_PARAMETER_RESTRICTED = 'RESTRICTED-' + REPLACING_NONCE;
|
|
245
|
-
/*
|
|
246
|
-
TODO: !!! Just testing false-negative detection of [🟡][🟢][🔵][⚪] leak
|
|
247
|
-
*/
|
|
248
|
-
// [🟡][🟢][🔵][⚪]
|
|
249
|
-
/**
|
|
250
|
-
* TODO: !!!!!! Check that all @private contains some normalized explanation
|
|
251
|
-
*/
|
|
252
249
|
|
|
253
250
|
/**
|
|
254
251
|
* Prettify the html code
|
|
@@ -368,7 +365,7 @@ function pipelineJsonToString(pipelineJson) {
|
|
|
368
365
|
var contentLanguage = 'text';
|
|
369
366
|
if (blockType === 'PROMPT_TEMPLATE') {
|
|
370
367
|
var modelRequirements = promptTemplate.modelRequirements;
|
|
371
|
-
var modelName =
|
|
368
|
+
var _l = modelRequirements || {}, modelName = _l.modelName, modelVariant = _l.modelVariant;
|
|
372
369
|
commands_1.push("EXECUTE PROMPT TEMPLATE");
|
|
373
370
|
if (modelVariant) {
|
|
374
371
|
commands_1.push("MODEL VARIANT ".concat(capitalize(modelVariant)));
|
|
@@ -426,8 +423,8 @@ function pipelineJsonToString(pipelineJson) {
|
|
|
426
423
|
} /* not else */
|
|
427
424
|
if (expectations) {
|
|
428
425
|
try {
|
|
429
|
-
for (var
|
|
430
|
-
var
|
|
426
|
+
for (var _m = (e_6 = void 0, __values(Object.entries(expectations))), _o = _m.next(); !_o.done; _o = _m.next()) {
|
|
427
|
+
var _p = __read(_o.value, 2), unit = _p[0], _q = _p[1], min = _q.min, max = _q.max;
|
|
431
428
|
if (min === max) {
|
|
432
429
|
commands_1.push("EXPECT EXACTLY ".concat(min, " ").concat(capitalize(unit + (min > 1 ? 's' : ''))));
|
|
433
430
|
}
|
|
@@ -444,7 +441,7 @@ function pipelineJsonToString(pipelineJson) {
|
|
|
444
441
|
catch (e_6_1) { e_6 = { error: e_6_1 }; }
|
|
445
442
|
finally {
|
|
446
443
|
try {
|
|
447
|
-
if (
|
|
444
|
+
if (_o && !_o.done && (_f = _m.return)) _f.call(_m);
|
|
448
445
|
}
|
|
449
446
|
finally { if (e_6) throw e_6.error; }
|
|
450
447
|
}
|
|
@@ -479,7 +476,7 @@ function pipelineJsonToString(pipelineJson) {
|
|
|
479
476
|
return pipelineString;
|
|
480
477
|
}
|
|
481
478
|
/**
|
|
482
|
-
* @private internal
|
|
479
|
+
* @private internal utility of `pipelineJsonToString`
|
|
483
480
|
*/
|
|
484
481
|
function promptTemplateParameterJsonToString(promptTemplateParameterJson) {
|
|
485
482
|
var name = promptTemplateParameterJson.name, description = promptTemplateParameterJson.description;
|
|
@@ -494,6 +491,7 @@ function promptTemplateParameterJsonToString(promptTemplateParameterJson) {
|
|
|
494
491
|
* TODO: [🧠] Is there a way to auto-detect missing features in pipelineJsonToString
|
|
495
492
|
* TODO: [🏛] Maybe make some markdown builder
|
|
496
493
|
* TODO: [🏛] Escape all
|
|
494
|
+
* TODO: [🧠] Should be in generated .ptbk.md file GENERATOR_WARNING
|
|
497
495
|
*/
|
|
498
496
|
|
|
499
497
|
/**
|
|
@@ -692,7 +690,7 @@ function forEachAsync(array, options, callbackfunction) {
|
|
|
692
690
|
});
|
|
693
691
|
}
|
|
694
692
|
|
|
695
|
-
var PipelineCollection = [{title:"Prepare Knowledge from Markdown",pipelineUrl:"https://promptbook.studio/promptbook/prepare-knowledge-from-markdown.ptbk.md",promptbookVersion:"0.
|
|
693
|
+
var PipelineCollection = [{title:"Prepare Knowledge from Markdown",pipelineUrl:"https://promptbook.studio/promptbook/prepare-knowledge-from-markdown.ptbk.md",promptbookVersion:"0.63.0-9",parameters:[{name:"knowledgeContent",description:"Markdown document content",isInput:true,isOutput:false},{name:"knowledgePieces",description:"The knowledge JSON object",isInput:false,isOutput:true}],promptTemplates:[{blockType:"PROMPT_TEMPLATE",name:"knowledge",title:"Knowledge",modelRequirements:{modelVariant:"CHAT",modelName:"claude-3-opus-20240229"},content:"You are experienced data researcher, extract the important knowledge from the document.\n\n# Rules\n\n- Make pieces of information concise, clear, and easy to understand\n- One piece of information should be approximately 1 paragraph\n- Divide the paragraphs by markdown horizontal lines ---\n- Omit irrelevant information\n- Group redundant information\n- Write just extracted information, nothing else\n\n# The document\n\nTake information from this document:\n\n> {knowledgeContent}",dependentParameterNames:["knowledgeContent"],resultingParameterName:"knowledgePieces"}],knowledgeSources:[],knowledgePieces:[],personas:[],preparations:[{id:1,promptbookVersion:"0.63.0-9",usage:{price:{value:0},input:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}},output:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}}}}],sourceFile:"./promptbook-collection/prepare-knowledge-from-markdown.ptbk.md"},{title:"Prepare Keywords",pipelineUrl:"https://promptbook.studio/promptbook/prepare-knowledge-keywords.ptbk.md",promptbookVersion:"0.63.0-9",parameters:[{name:"knowledgePieceContent",description:"The content",isInput:true,isOutput:false},{name:"keywords",description:"Keywords separated by comma",isInput:false,isOutput:true}],promptTemplates:[{blockType:"PROMPT_TEMPLATE",name:"knowledge",title:"Knowledge",modelRequirements:{modelVariant:"CHAT",modelName:"claude-3-opus-20240229"},content:"You are experienced data researcher, detect the important keywords in the document.\n\n# Rules\n\n- Write just keywords separated by comma\n\n# The document\n\nTake information from this document:\n\n> {knowledgePieceContent}",dependentParameterNames:["knowledgePieceContent"],resultingParameterName:"keywords"}],knowledgeSources:[],knowledgePieces:[],personas:[],preparations:[{id:1,promptbookVersion:"0.63.0-9",usage:{price:{value:0},input:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}},output:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}}}}],sourceFile:"./promptbook-collection/prepare-knowledge-keywords.ptbk.md"},{title:"Prepare Title",pipelineUrl:"https://promptbook.studio/promptbook/prepare-knowledge-title.ptbk.md",promptbookVersion:"0.63.0-9",parameters:[{name:"knowledgePieceContent",description:"The content",isInput:true,isOutput:false},{name:"title",description:"The title of the document",isInput:false,isOutput:true}],promptTemplates:[{blockType:"PROMPT_TEMPLATE",name:"knowledge",title:"Knowledge",modelRequirements:{modelVariant:"CHAT",modelName:"claude-3-opus-20240229"},content:"You are experienced content creator, write best title for the document.\n\n# Rules\n\n- Write just title, nothing else\n- Title should be concise and clear\n- Write maximum 5 words for the title\n\n# The document\n\n> {knowledgePieceContent}",expectations:{words:{min:1,max:8}},dependentParameterNames:["knowledgePieceContent"],resultingParameterName:"title"}],knowledgeSources:[],knowledgePieces:[],personas:[],preparations:[{id:1,promptbookVersion:"0.63.0-9",usage:{price:{value:0},input:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}},output:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}}}}],sourceFile:"./promptbook-collection/prepare-knowledge-title.ptbk.md"},{title:"Prepare Keywords",pipelineUrl:"https://promptbook.studio/promptbook/prepare-persona.ptbk.md",promptbookVersion:"0.63.0-9",parameters:[{name:"availableModelNames",description:"List of available model names separated by comma (,)",isInput:true,isOutput:false},{name:"personaDescription",description:"Description of the persona",isInput:true,isOutput:false},{name:"modelRequirements",description:"Specific requirements for the model",isInput:false,isOutput:true}],promptTemplates:[{blockType:"PROMPT_TEMPLATE",name:"make-model-requirements",title:"Make modelRequirements",modelRequirements:{modelVariant:"CHAT",modelName:"gpt-4-turbo"},content:"You are experienced AI engineer, you need to create virtual assistant.\nWrite\n\n## Sample\n\n```json\n{\n\"modelName\": \"gpt-4o\",\n\"systemMessage\": \"You are experienced AI engineer and helpfull assistant.\",\n\"temperature\": 0.7\n}\n```\n\n## Instructions\n\n### Option `modelName`\n\nPick from the following models:\n\n- {availableModelNames}\n\n### Option `systemMessage`\n\nThe system message is used to communicate instructions or provide context to the model at the beginning of a conversation. It is displayed in a different format compared to user messages, helping the model understand its role in the conversation. The system message typically guides the model's behavior, sets the tone, or specifies desired output from the model. By utilizing the system message effectively, users can steer the model towards generating more accurate and relevant responses.\n\nFor example:\n\n> You are an experienced AI engineer and helpful assistant.\n\n> You are a friendly and knowledgeable chatbot.\n\n### Option `temperature`\n\nThe sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.\n\nYou can pick a value between 0 and 2. For example:\n\n- `0.1`: Low temperature, extremely conservative and deterministic\n- `0.5`: Medium temperature, balanced between conservative and creative\n- `1.0`: High temperature, creative and bit random\n- `1.5`: Very high temperature, extremely creative and often chaotic and unpredictable\n- `2.0`: Maximum temperature, completely random and unpredictable, for some extreme creative use cases\n\n# The assistant\n\nTake this description of the persona:\n\n> {personaDescription}",expectFormat:"JSON",dependentParameterNames:["availableModelNames","personaDescription"],resultingParameterName:"modelRequirements"}],knowledgeSources:[],knowledgePieces:[],personas:[],preparations:[{id:1,promptbookVersion:"0.63.0-9",usage:{price:{value:0},input:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}},output:{tokensCount:{value:0},charactersCount:{value:0},wordsCount:{value:0},sentencesCount:{value:0},linesCount:{value:0},paragraphsCount:{value:0},pagesCount:{value:0}}}}],sourceFile:"./promptbook-collection/prepare-persona.ptbk.md"}];
|
|
696
694
|
|
|
697
695
|
/**
|
|
698
696
|
* This error indicates that the promptbook in a markdown format cannot be parsed into a valid promptbook object
|
|
@@ -990,9 +988,6 @@ function validatePipeline(pipeline) {
|
|
|
990
988
|
throw new PipelineLogicError(spaceTrim$1(function (block) { return "\n Parameter name {".concat(template.resultingParameterName, "} is reserved, please use different name\n\n ").concat(block(pipelineIdentification), "\n "); }));
|
|
991
989
|
}
|
|
992
990
|
definedParameters.add(template.resultingParameterName);
|
|
993
|
-
if (template.blockType === 'PROMPT_TEMPLATE' && template.modelRequirements.modelVariant === undefined) {
|
|
994
|
-
throw new PipelineLogicError(spaceTrim$1(function (block) { return "\n\n You must specify MODEL VARIANT in the prompt template \"".concat(template.title, "\"\n\n For example:\n - MODEL VARIANT Chat\n - MODEL NAME `gpt-4-1106-preview`").concat(/* <- TODO: Dynamic listing of command examples */ '', "\n\n ").concat(block(pipelineIdentification), "\n "); }));
|
|
995
|
-
}
|
|
996
991
|
if (template.jokerParameterNames && template.jokerParameterNames.length > 0) {
|
|
997
992
|
if (!template.expectFormat &&
|
|
998
993
|
!template.expectations /* <- TODO: Require at least 1 -> min <- expectation to use jokers */) {
|
|
@@ -1226,7 +1221,7 @@ function unpreparePipeline(pipeline) {
|
|
|
1226
1221
|
* Library of pipelines that groups together pipelines for an application.
|
|
1227
1222
|
* This implementation is a very thin wrapper around the Array / Map of pipelines.
|
|
1228
1223
|
*
|
|
1229
|
-
* @private use `createCollectionFromJson` instead
|
|
1224
|
+
* @private internal function of `createCollectionFromJson`, use `createCollectionFromJson` instead
|
|
1230
1225
|
* @see https://github.com/webgptorg/pipeline#pipeline-collection
|
|
1231
1226
|
*/
|
|
1232
1227
|
var SimplePipelineCollection = /** @class */ (function () {
|
|
@@ -1235,7 +1230,6 @@ var SimplePipelineCollection = /** @class */ (function () {
|
|
|
1235
1230
|
*
|
|
1236
1231
|
* @param pipelines @@@
|
|
1237
1232
|
*
|
|
1238
|
-
* @private Use instead `createCollectionFromJson`
|
|
1239
1233
|
* Note: During the construction logic of all pipelines are validated
|
|
1240
1234
|
* Note: It is not recommended to use this constructor directly, use `createCollectionFromJson` *(or other variant)* instead
|
|
1241
1235
|
*/
|
|
@@ -1850,7 +1844,8 @@ function extractParameterNamesFromPromptTemplate(promptTemplate) {
|
|
|
1850
1844
|
/**
|
|
1851
1845
|
* This error occurs when some expectation is not met in the execution of the pipeline
|
|
1852
1846
|
*
|
|
1853
|
-
* @private
|
|
1847
|
+
* @private error of `checkExpectations` and `createPipelineExecutor`
|
|
1848
|
+
* Note: Always thrown in `checkExpectations` and catched in `createPipelineExecutor` and rethrown as `PipelineExecutionError`
|
|
1854
1849
|
* Note: This is a kindof subtype of PipelineExecutionError
|
|
1855
1850
|
*/
|
|
1856
1851
|
var ExpectError = /** @class */ (function (_super) {
|
|
@@ -1888,7 +1883,7 @@ function isValidJsonString(value /* <- [👨⚖️] */) {
|
|
|
1888
1883
|
/**
|
|
1889
1884
|
* Multiple LLM Execution Tools is a proxy server that uses multiple execution tools internally and exposes the executor interface externally.
|
|
1890
1885
|
*
|
|
1891
|
-
* @private
|
|
1886
|
+
* @private internal utility of `joinLlmExecutionTools`
|
|
1892
1887
|
*/
|
|
1893
1888
|
var MultipleLlmExecutionTools = /** @class */ (function () {
|
|
1894
1889
|
/**
|
|
@@ -2171,7 +2166,7 @@ function isPipelinePrepared(pipeline) {
|
|
|
2171
2166
|
* 2) Undefined returns empty array
|
|
2172
2167
|
* 3) Array returns itself
|
|
2173
2168
|
*
|
|
2174
|
-
* @private
|
|
2169
|
+
* @private internal utility
|
|
2175
2170
|
*/
|
|
2176
2171
|
function arrayableToArray(input) {
|
|
2177
2172
|
if (input === undefined) {
|
|
@@ -2469,7 +2464,7 @@ var CountUtils = {
|
|
|
2469
2464
|
*
|
|
2470
2465
|
* @throws {ExpectError} if the expectations are not met
|
|
2471
2466
|
* @returns {void} Nothing
|
|
2472
|
-
* @
|
|
2467
|
+
* @private internal function of `createPipelineExecutor`
|
|
2473
2468
|
*/
|
|
2474
2469
|
function checkExpectations(expectations, value) {
|
|
2475
2470
|
var e_1, _a;
|
|
@@ -4150,7 +4145,9 @@ var blockCommandParser = {
|
|
|
4150
4145
|
|
|
4151
4146
|
/**
|
|
4152
4147
|
* Units of text measurement
|
|
4148
|
+
*
|
|
4153
4149
|
* @see https://github.com/webgptorg/promptbook/discussions/30
|
|
4150
|
+
* @public exported from `@promptbook/core`
|
|
4154
4151
|
*/
|
|
4155
4152
|
var EXPECTATION_UNITS = ['CHARACTERS', 'WORDS', 'SENTENCES', 'LINES', 'PARAGRAPHS', 'PAGES'];
|
|
4156
4153
|
/**
|
|
@@ -4390,7 +4387,7 @@ var jokerCommandParser = {
|
|
|
4390
4387
|
/**
|
|
4391
4388
|
* @@@
|
|
4392
4389
|
*
|
|
4393
|
-
* @
|
|
4390
|
+
* @public exported from `@promptbook/core`
|
|
4394
4391
|
*/
|
|
4395
4392
|
var MODEL_VARIANTS = ['COMPLETION', 'CHAT', 'EMBEDDING' /* <- TODO [🏳] */ /* <- [🤖] */];
|
|
4396
4393
|
|
|
@@ -4855,11 +4852,12 @@ var boilerplateCommandParser = {
|
|
|
4855
4852
|
};
|
|
4856
4853
|
/**
|
|
4857
4854
|
* TODO: [💐] Implement BOILERPLATE command into `pipelineStringToJsonSync` function
|
|
4858
|
-
* Note: [⚪] This should never be in any released package
|
|
4859
4855
|
*/
|
|
4860
4856
|
|
|
4861
4857
|
/**
|
|
4862
4858
|
* All available command parsers
|
|
4859
|
+
*
|
|
4860
|
+
* @private internal index of `parseCommand`
|
|
4863
4861
|
*/
|
|
4864
4862
|
var COMMANDS = [
|
|
4865
4863
|
blockCommandParser,
|
|
@@ -5029,6 +5027,8 @@ var NotYetImplementedError = /** @class */ (function (_super) {
|
|
|
5029
5027
|
|
|
5030
5028
|
/**
|
|
5031
5029
|
* Supported script languages
|
|
5030
|
+
*
|
|
5031
|
+
* @private internal base for `ScriptLanguage`
|
|
5032
5032
|
*/
|
|
5033
5033
|
var SUPPORTED_SCRIPT_LANGUAGES = ['javascript', 'typescript', 'python'];
|
|
5034
5034
|
|
|
@@ -5169,7 +5169,7 @@ function extractOneBlockFromMarkdown(markdown) {
|
|
|
5169
5169
|
return codeBlocks[0];
|
|
5170
5170
|
}
|
|
5171
5171
|
/***
|
|
5172
|
-
* TODO: [🍓][🌻] Decide of this is internal
|
|
5172
|
+
* TODO: [🍓][🌻] Decide of this is internal utility, external util OR validator/postprocessor
|
|
5173
5173
|
*/
|
|
5174
5174
|
|
|
5175
5175
|
/**
|
|
@@ -5768,6 +5768,7 @@ function pipelineStringToJson(pipelineString, options) {
|
|
|
5768
5768
|
/**
|
|
5769
5769
|
* TODO: [🏏] Leverage the batch API and build queues @see https://platform.openai.com/docs/guides/batch
|
|
5770
5770
|
* TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
|
|
5771
|
+
* TODO: [🧠] Should be in generated JSON file GENERATOR_WARNING
|
|
5771
5772
|
*/
|
|
5772
5773
|
|
|
5773
5774
|
/**
|
|
@@ -5786,6 +5787,145 @@ var CollectionError = /** @class */ (function (_super) {
|
|
|
5786
5787
|
return CollectionError;
|
|
5787
5788
|
}(Error));
|
|
5788
5789
|
|
|
5790
|
+
/**
|
|
5791
|
+
* Checks if the file exists
|
|
5792
|
+
*
|
|
5793
|
+
* @private within the repository
|
|
5794
|
+
*/
|
|
5795
|
+
function isFileExisting(filePath) {
|
|
5796
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
5797
|
+
var isReadAccessAllowed, isFile;
|
|
5798
|
+
return __generator(this, function (_a) {
|
|
5799
|
+
switch (_a.label) {
|
|
5800
|
+
case 0: return [4 /*yield*/, access(filePath, constants.R_OK)
|
|
5801
|
+
.then(function () { return true; })
|
|
5802
|
+
.catch(function () { return false; })];
|
|
5803
|
+
case 1:
|
|
5804
|
+
isReadAccessAllowed = _a.sent();
|
|
5805
|
+
if (!isReadAccessAllowed) {
|
|
5806
|
+
return [2 /*return*/, false];
|
|
5807
|
+
}
|
|
5808
|
+
return [4 /*yield*/, stat(filePath)
|
|
5809
|
+
.then(function (fileStat) { return fileStat.isFile(); })
|
|
5810
|
+
.catch(function () { return false; })];
|
|
5811
|
+
case 2:
|
|
5812
|
+
isFile = _a.sent();
|
|
5813
|
+
return [2 /*return*/, isFile];
|
|
5814
|
+
}
|
|
5815
|
+
});
|
|
5816
|
+
});
|
|
5817
|
+
}
|
|
5818
|
+
/**
|
|
5819
|
+
* Note: [🟢] This code should never be published outside of `@promptbook/node` and `@promptbook/cli` and `@promptbook/cli`
|
|
5820
|
+
* TODO: [🐠] This can be a validator - with variants that return true/false and variants that throw errors with meaningless messages
|
|
5821
|
+
* TODO: [🖇] What about symlinks?
|
|
5822
|
+
*/
|
|
5823
|
+
|
|
5824
|
+
/**
|
|
5825
|
+
* Checks if the directory exists
|
|
5826
|
+
*
|
|
5827
|
+
* @private within the repository
|
|
5828
|
+
*/
|
|
5829
|
+
function isDirectoryExisting(directoryPath) {
|
|
5830
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
5831
|
+
var isReadAccessAllowed, isDirectory;
|
|
5832
|
+
return __generator(this, function (_a) {
|
|
5833
|
+
switch (_a.label) {
|
|
5834
|
+
case 0: return [4 /*yield*/, access(directoryPath, constants.R_OK)
|
|
5835
|
+
.then(function () { return true; })
|
|
5836
|
+
.catch(function () { return false; })];
|
|
5837
|
+
case 1:
|
|
5838
|
+
isReadAccessAllowed = _a.sent();
|
|
5839
|
+
if (!isReadAccessAllowed) {
|
|
5840
|
+
return [2 /*return*/, false];
|
|
5841
|
+
}
|
|
5842
|
+
return [4 /*yield*/, stat(directoryPath)
|
|
5843
|
+
.then(function (fileStat) { return fileStat.isDirectory(); })
|
|
5844
|
+
.catch(function () { return false; })];
|
|
5845
|
+
case 2:
|
|
5846
|
+
isDirectory = _a.sent();
|
|
5847
|
+
return [2 /*return*/, isDirectory];
|
|
5848
|
+
}
|
|
5849
|
+
});
|
|
5850
|
+
});
|
|
5851
|
+
}
|
|
5852
|
+
/**
|
|
5853
|
+
* Note: [🟢] This code should never be published outside of `@promptbook/node` and `@promptbook/cli` and `@promptbook/cli`
|
|
5854
|
+
* TODO: [🐠] This can be a validator - with variants that return true/false and variants that throw errors with meaningless messages
|
|
5855
|
+
* TODO: [🧠][📂] "directory" vs "folder"
|
|
5856
|
+
* TODO: [🖇] What about symlinks?
|
|
5857
|
+
*/
|
|
5858
|
+
|
|
5859
|
+
/**
|
|
5860
|
+
* Reads all files in the directory
|
|
5861
|
+
*
|
|
5862
|
+
* @param path
|
|
5863
|
+
* @param isRecursive
|
|
5864
|
+
* @returns List of all files in the directory
|
|
5865
|
+
* @private internal function of `createCollectionFromDirectory`
|
|
5866
|
+
*/
|
|
5867
|
+
function listAllFiles(path, isRecursive) {
|
|
5868
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
5869
|
+
var dirents, fileNames, _a, _b, dirent, subPath, _c, _d, _e, _f, e_1_1;
|
|
5870
|
+
var e_1, _g;
|
|
5871
|
+
return __generator(this, function (_h) {
|
|
5872
|
+
switch (_h.label) {
|
|
5873
|
+
case 0: return [4 /*yield*/, isDirectoryExisting(path)];
|
|
5874
|
+
case 1:
|
|
5875
|
+
if (!(_h.sent())) {
|
|
5876
|
+
throw new Error("Directory \"".concat(path, "\" does not exist or is not readable"));
|
|
5877
|
+
// <- TODO: Use some custom error class
|
|
5878
|
+
}
|
|
5879
|
+
return [4 /*yield*/, readdir(path, {
|
|
5880
|
+
withFileTypes: true /* Note: This is not working: recursive: isRecursive */,
|
|
5881
|
+
})];
|
|
5882
|
+
case 2:
|
|
5883
|
+
dirents = _h.sent();
|
|
5884
|
+
fileNames = dirents.filter(function (dirent) { return dirent.isFile(); }).map(function (_a) {
|
|
5885
|
+
var name = _a.name;
|
|
5886
|
+
return join(path, name);
|
|
5887
|
+
});
|
|
5888
|
+
if (!isRecursive) return [3 /*break*/, 10];
|
|
5889
|
+
_h.label = 3;
|
|
5890
|
+
case 3:
|
|
5891
|
+
_h.trys.push([3, 8, 9, 10]);
|
|
5892
|
+
_a = __values(dirents.filter(function (dirent) { return dirent.isDirectory(); })), _b = _a.next();
|
|
5893
|
+
_h.label = 4;
|
|
5894
|
+
case 4:
|
|
5895
|
+
if (!!_b.done) return [3 /*break*/, 7];
|
|
5896
|
+
dirent = _b.value;
|
|
5897
|
+
subPath = join(path, dirent.name);
|
|
5898
|
+
_d = (_c = fileNames.push).apply;
|
|
5899
|
+
_e = [fileNames];
|
|
5900
|
+
_f = [[]];
|
|
5901
|
+
return [4 /*yield*/, listAllFiles(subPath, isRecursive)];
|
|
5902
|
+
case 5:
|
|
5903
|
+
_d.apply(_c, _e.concat([__spreadArray.apply(void 0, _f.concat([__read.apply(void 0, [(_h.sent())]), false]))]));
|
|
5904
|
+
_h.label = 6;
|
|
5905
|
+
case 6:
|
|
5906
|
+
_b = _a.next();
|
|
5907
|
+
return [3 /*break*/, 4];
|
|
5908
|
+
case 7: return [3 /*break*/, 10];
|
|
5909
|
+
case 8:
|
|
5910
|
+
e_1_1 = _h.sent();
|
|
5911
|
+
e_1 = { error: e_1_1 };
|
|
5912
|
+
return [3 /*break*/, 10];
|
|
5913
|
+
case 9:
|
|
5914
|
+
try {
|
|
5915
|
+
if (_b && !_b.done && (_g = _a.return)) _g.call(_a);
|
|
5916
|
+
}
|
|
5917
|
+
finally { if (e_1) throw e_1.error; }
|
|
5918
|
+
return [7 /*endfinally*/];
|
|
5919
|
+
case 10: return [2 /*return*/, fileNames];
|
|
5920
|
+
}
|
|
5921
|
+
});
|
|
5922
|
+
});
|
|
5923
|
+
}
|
|
5924
|
+
/**
|
|
5925
|
+
* Note: [🟢] This code should never be published outside of `@promptbook/node` and `@promptbook/cli` and `@promptbook/cli`
|
|
5926
|
+
* TODO: [🖇] What about symlinks?
|
|
5927
|
+
*/
|
|
5928
|
+
|
|
5789
5929
|
/**
|
|
5790
5930
|
* Detects if the code is running in a browser environment in main thread (Not in a web worker)
|
|
5791
5931
|
*
|
|
@@ -5904,7 +6044,7 @@ function createCollectionFromPromise(promptbookSourcesPromiseOrFactory) {
|
|
|
5904
6044
|
*/
|
|
5905
6045
|
function createCollectionFromDirectory(path, options) {
|
|
5906
6046
|
return __awaiter(this, void 0, void 0, function () {
|
|
5907
|
-
var makedLibraryFilePath,
|
|
6047
|
+
var makedLibraryFilePath, _a, _b, isRecursive, _c, isVerbose, _d, isLazyLoaded, _e, isCrashedOnError, collection;
|
|
5908
6048
|
var _this = this;
|
|
5909
6049
|
return __generator(this, function (_f) {
|
|
5910
6050
|
switch (_f.label) {
|
|
@@ -5912,13 +6052,10 @@ function createCollectionFromDirectory(path, options) {
|
|
|
5912
6052
|
if (!isRunningInNode()) {
|
|
5913
6053
|
throw new Error('Function `createCollectionFromDirectory` can only be run in Node.js environment because it reads the file system.');
|
|
5914
6054
|
}
|
|
5915
|
-
makedLibraryFilePath = join(path, "".concat(PIPELINE_COLLECTION_BASE_FILENAME, ".json"));
|
|
5916
|
-
return [4 /*yield*/,
|
|
5917
|
-
.then(function () { return true; })
|
|
5918
|
-
.catch(function () { return false; })];
|
|
6055
|
+
makedLibraryFilePath = join$1(path, "".concat(PIPELINE_COLLECTION_BASE_FILENAME, ".json"));
|
|
6056
|
+
return [4 /*yield*/, isFileExisting(makedLibraryFilePath)];
|
|
5919
6057
|
case 1:
|
|
5920
|
-
|
|
5921
|
-
if (!makedLibraryFileExists) {
|
|
6058
|
+
if (!(_f.sent())) {
|
|
5922
6059
|
console.info(colors.yellow("Tip: Prebuild your pipeline collection (file with supposed prebuild ".concat(makedLibraryFilePath, " not found) with CLI util \"ptbk make\" to speed up the collection creation.")));
|
|
5923
6060
|
}
|
|
5924
6061
|
else {
|
|
@@ -6081,66 +6218,8 @@ function createCollectionFromDirectory(path, options) {
|
|
|
6081
6218
|
});
|
|
6082
6219
|
}
|
|
6083
6220
|
/**
|
|
6084
|
-
*
|
|
6085
|
-
*
|
|
6086
|
-
* @param path
|
|
6087
|
-
* @param isRecursive
|
|
6088
|
-
* @returns List of all files in the directory
|
|
6089
|
-
* @private internal function for `createCollectionFromDirectory`
|
|
6090
|
-
*/
|
|
6091
|
-
function listAllFiles(path, isRecursive) {
|
|
6092
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
6093
|
-
var dirents, fileNames, _a, _b, dirent, subPath, _c, _d, _e, _f, e_2_1;
|
|
6094
|
-
var e_2, _g;
|
|
6095
|
-
return __generator(this, function (_h) {
|
|
6096
|
-
switch (_h.label) {
|
|
6097
|
-
case 0: return [4 /*yield*/, readdir(path, {
|
|
6098
|
-
withFileTypes: true /* Note: This is not working: recursive: isRecursive */,
|
|
6099
|
-
})];
|
|
6100
|
-
case 1:
|
|
6101
|
-
dirents = _h.sent();
|
|
6102
|
-
fileNames = dirents.filter(function (dirent) { return dirent.isFile(); }).map(function (_a) {
|
|
6103
|
-
var name = _a.name;
|
|
6104
|
-
return join(path, name);
|
|
6105
|
-
});
|
|
6106
|
-
if (!isRecursive) return [3 /*break*/, 9];
|
|
6107
|
-
_h.label = 2;
|
|
6108
|
-
case 2:
|
|
6109
|
-
_h.trys.push([2, 7, 8, 9]);
|
|
6110
|
-
_a = __values(dirents.filter(function (dirent) { return dirent.isDirectory(); })), _b = _a.next();
|
|
6111
|
-
_h.label = 3;
|
|
6112
|
-
case 3:
|
|
6113
|
-
if (!!_b.done) return [3 /*break*/, 6];
|
|
6114
|
-
dirent = _b.value;
|
|
6115
|
-
subPath = join(path, dirent.name);
|
|
6116
|
-
_d = (_c = fileNames.push).apply;
|
|
6117
|
-
_e = [fileNames];
|
|
6118
|
-
_f = [[]];
|
|
6119
|
-
return [4 /*yield*/, listAllFiles(subPath, isRecursive)];
|
|
6120
|
-
case 4:
|
|
6121
|
-
_d.apply(_c, _e.concat([__spreadArray.apply(void 0, _f.concat([__read.apply(void 0, [(_h.sent())]), false]))]));
|
|
6122
|
-
_h.label = 5;
|
|
6123
|
-
case 5:
|
|
6124
|
-
_b = _a.next();
|
|
6125
|
-
return [3 /*break*/, 3];
|
|
6126
|
-
case 6: return [3 /*break*/, 9];
|
|
6127
|
-
case 7:
|
|
6128
|
-
e_2_1 = _h.sent();
|
|
6129
|
-
e_2 = { error: e_2_1 };
|
|
6130
|
-
return [3 /*break*/, 9];
|
|
6131
|
-
case 8:
|
|
6132
|
-
try {
|
|
6133
|
-
if (_b && !_b.done && (_g = _a.return)) _g.call(_a);
|
|
6134
|
-
}
|
|
6135
|
-
finally { if (e_2) throw e_2.error; }
|
|
6136
|
-
return [7 /*endfinally*/];
|
|
6137
|
-
case 9: return [2 /*return*/, fileNames];
|
|
6138
|
-
}
|
|
6139
|
-
});
|
|
6140
|
-
});
|
|
6141
|
-
}
|
|
6142
|
-
/**
|
|
6143
|
-
* Note: [🟢] This code should never be published outside of `@pipeline/node`
|
|
6221
|
+
* Note: [🟢] This code should never be published outside of `@promptbook/node` and `@promptbook/cli` and `@promptbook/cli`
|
|
6222
|
+
* TODO: [🖇] What about symlinks? Maybe option isSymlinksFollowed
|
|
6144
6223
|
*/
|
|
6145
6224
|
|
|
6146
6225
|
/**
|
|
@@ -6165,7 +6244,7 @@ var EnvironmentMismatchError = /** @class */ (function (_super) {
|
|
|
6165
6244
|
* @param content the content of prompt or response
|
|
6166
6245
|
* @returns part of PromptResultUsageCounts
|
|
6167
6246
|
*
|
|
6168
|
-
* @private internal
|
|
6247
|
+
* @private internal utility of LlmExecutionTools
|
|
6169
6248
|
*/
|
|
6170
6249
|
function computeUsageCounts(content) {
|
|
6171
6250
|
return {
|
|
@@ -6195,7 +6274,7 @@ function uncertainNumber(value) {
|
|
|
6195
6274
|
/**
|
|
6196
6275
|
* Get current date in ISO 8601 format
|
|
6197
6276
|
*
|
|
6198
|
-
* @private
|
|
6277
|
+
* @private internal utility
|
|
6199
6278
|
*/
|
|
6200
6279
|
function getCurrentIsoDate() {
|
|
6201
6280
|
return new Date().toISOString();
|
|
@@ -6217,6 +6296,7 @@ function computeUsage(value) {
|
|
|
6217
6296
|
* Note: Done at 2024-05-25
|
|
6218
6297
|
*
|
|
6219
6298
|
* @see https://docs.anthropic.com/en/docs/models-overview
|
|
6299
|
+
* @public exported from `@promptbook/anthropic-claude`
|
|
6220
6300
|
*/
|
|
6221
6301
|
var ANTHROPIC_CLAUDE_MODELS = [
|
|
6222
6302
|
{
|
|
@@ -6863,7 +6943,7 @@ var OPENAI_MODELS = [
|
|
|
6863
6943
|
* @param resultContent The content of the result (for embedding prompts or failed prompts pass empty string)
|
|
6864
6944
|
* @param rawResponse The raw response from OpenAI API
|
|
6865
6945
|
* @throws {PipelineExecutionError} If the usage is not defined in the response from OpenAI
|
|
6866
|
-
* @private internal
|
|
6946
|
+
* @private internal utility of `OpenAiExecutionTools`
|
|
6867
6947
|
*/
|
|
6868
6948
|
function computeOpenaiUsage(promptContent, // <- Note: Intentionally using [] to access type properties to bring jsdoc from Prompt/PromptResult to consumer
|
|
6869
6949
|
resultContent, rawResponse) {
|
|
@@ -7245,7 +7325,7 @@ function createLlmToolsFromEnv(options) {
|
|
|
7245
7325
|
* TODO: [🧠] Which name is better `createLlmToolsFromEnv` or `createLlmToolsFromEnvironment`?
|
|
7246
7326
|
* TODO: [🧠] Is there some meaningfull way how to test this util
|
|
7247
7327
|
* TODO: [🧠] Maybe pass env as argument
|
|
7248
|
-
* Note: [🟢] This code should never be published outside of `@promptbook/node`
|
|
7328
|
+
* Note: [🟢] This code should never be published outside of `@promptbook/node` and `@promptbook/cli` and `@promptbook/cli`
|
|
7249
7329
|
* TODO: [👷♂️] @@@ Manual about construction of llmTools
|
|
7250
7330
|
*/
|
|
7251
7331
|
|
|
@@ -7300,24 +7380,21 @@ var FilesStorage = /** @class */ (function () {
|
|
|
7300
7380
|
FilesStorage.prototype.getFilenameForKey = function (key) {
|
|
7301
7381
|
var name = titleToName(key);
|
|
7302
7382
|
var hash = sha256(hexEncoder.parse(name)).toString( /* hex */);
|
|
7303
|
-
return join.apply(void 0, __spreadArray(__spreadArray([this.options.cacheFolderPath], __read(nameToSubfolderPath(hash /* <- TODO: [🎎] Maybe add some SHA256 prefix */)), false), ["".concat(name.substring(0, MAX_FILENAME_LENGTH), ".json")], false));
|
|
7383
|
+
return join$1.apply(void 0, __spreadArray(__spreadArray([this.options.cacheFolderPath], __read(nameToSubfolderPath(hash /* <- TODO: [🎎] Maybe add some SHA256 prefix */)), false), ["".concat(name.substring(0, MAX_FILENAME_LENGTH), ".json")], false));
|
|
7304
7384
|
};
|
|
7305
7385
|
/**
|
|
7306
7386
|
* @@@ Returns the current value associated with the given key, or null if the given key does not exist in the list associated with the object.
|
|
7307
7387
|
*/
|
|
7308
7388
|
FilesStorage.prototype.getItem = function (key) {
|
|
7309
7389
|
return __awaiter(this, void 0, void 0, function () {
|
|
7310
|
-
var filename,
|
|
7390
|
+
var filename, fileContent, value;
|
|
7311
7391
|
return __generator(this, function (_a) {
|
|
7312
7392
|
switch (_a.label) {
|
|
7313
7393
|
case 0:
|
|
7314
7394
|
filename = this.getFilenameForKey(key);
|
|
7315
|
-
return [4 /*yield*/,
|
|
7316
|
-
.then(function (fileStat) { return fileStat.isFile(); })
|
|
7317
|
-
.catch(function () { return false; })];
|
|
7395
|
+
return [4 /*yield*/, isFileExisting(filename)];
|
|
7318
7396
|
case 1:
|
|
7319
|
-
|
|
7320
|
-
if (!isFileExisting) {
|
|
7397
|
+
if (!(_a.sent())) {
|
|
7321
7398
|
return [2 /*return*/, null];
|
|
7322
7399
|
}
|
|
7323
7400
|
return [4 /*yield*/, readFile(filename, 'utf-8')];
|
|
@@ -7376,7 +7453,7 @@ var FilesStorage = /** @class */ (function () {
|
|
|
7376
7453
|
}());
|
|
7377
7454
|
/**
|
|
7378
7455
|
* TODO: [🌗] Maybe some checkers, not all valid JSONs are desired and valid values
|
|
7379
|
-
* Note: [🟢] This code should never be published outside of `@promptbook/node`
|
|
7456
|
+
* Note: [🟢] This code should never be published outside of `@promptbook/node` and `@promptbook/cli` and `@promptbook/cli`
|
|
7380
7457
|
*/
|
|
7381
7458
|
|
|
7382
7459
|
export { FilesStorage, PROMPTBOOK_VERSION, createCollectionFromDirectory, createLlmToolsFromEnv };
|