@promptbook/openai 0.70.0-1 → 0.71.0-12

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.
Files changed (237) hide show
  1. package/README.md +87 -121
  2. package/esm/index.es.js +203 -16
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/promptbook-collection/index.d.ts +0 -3
  5. package/esm/typings/src/_packages/browser.index.d.ts +3 -1
  6. package/esm/typings/src/_packages/cli.index.d.ts +20 -0
  7. package/esm/typings/src/_packages/core.index.d.ts +45 -15
  8. package/esm/typings/src/_packages/documents.index.d.ts +8 -0
  9. package/esm/typings/src/_packages/legacy-documents.index.d.ts +8 -0
  10. package/esm/typings/src/_packages/markdown-utils.index.d.ts +6 -0
  11. package/esm/typings/src/_packages/node.index.d.ts +14 -6
  12. package/esm/typings/src/_packages/pdf.index.d.ts +8 -0
  13. package/esm/typings/src/_packages/types.index.d.ts +53 -25
  14. package/esm/typings/src/_packages/utils.index.d.ts +4 -4
  15. package/esm/typings/src/_packages/website-crawler.index.d.ts +8 -0
  16. package/esm/typings/src/cli/cli-commands/about.d.ts +1 -1
  17. package/esm/typings/src/cli/cli-commands/hello.d.ts +2 -1
  18. package/esm/typings/src/cli/cli-commands/make.d.ts +2 -2
  19. package/esm/typings/src/cli/cli-commands/prettify.d.ts +2 -1
  20. package/esm/typings/src/cli/cli-commands/test-command.d.ts +13 -0
  21. package/esm/typings/src/cli/main.d.ts +1 -1
  22. package/esm/typings/src/cli/promptbookCli.d.ts +1 -1
  23. package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +11 -6
  24. package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +1 -1
  25. package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +1 -1
  26. package/esm/typings/src/commands/FOREACH/ForeachCommand.d.ts +3 -7
  27. package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +27 -0
  28. package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +2 -3
  29. package/esm/typings/src/commands/FORMAT/formatCommandParser.d.ts +1 -1
  30. package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +1 -1
  31. package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +1 -1
  32. package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.d.ts +11 -0
  33. package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.test.d.ts +4 -0
  34. package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +1 -1
  35. package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +1 -1
  36. package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +1 -1
  37. package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +1 -1
  38. package/esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +1 -1
  39. package/esm/typings/src/commands/TEMPLATE/templateCommandParser.d.ts +1 -1
  40. package/esm/typings/src/commands/URL/urlCommandParser.d.ts +1 -1
  41. package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +1 -1
  42. package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +1 -1
  43. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -1
  44. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +4 -4
  45. package/esm/typings/src/config.d.ts +32 -3
  46. package/esm/typings/src/conversion/pipelineStringToJson.d.ts +4 -15
  47. package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +1 -1
  48. package/esm/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +3 -0
  49. package/esm/typings/src/conversion/utils/extractParameterNamesFromTemplate.d.ts +2 -1
  50. package/esm/typings/src/conversion/validation/_importPipeline.d.ts +1 -1
  51. package/esm/typings/src/conversion/validation/validatePipeline.d.ts +10 -5
  52. package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceTools.d.ts +2 -2
  53. package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceToolsOptions.d.ts +3 -3
  54. package/esm/typings/src/{knowledge/dialogs → dialogs}/simple-prompt/SimplePromptInterfaceTools.d.ts +5 -5
  55. package/esm/typings/src/errors/AbstractFormatError.d.ts +11 -0
  56. package/esm/typings/src/errors/KnowledgeScrapeError.d.ts +9 -0
  57. package/esm/typings/src/errors/MissingToolsError.d.ts +9 -0
  58. package/esm/typings/src/execution/{CommonExecutionToolsOptions.d.ts → CommonToolsOptions.d.ts} +1 -1
  59. package/esm/typings/src/execution/ExecutionTools.d.ts +20 -8
  60. package/esm/typings/src/execution/PipelineExecutor.d.ts +1 -0
  61. package/esm/typings/src/execution/PipelineExecutorResult.d.ts +9 -8
  62. package/esm/typings/src/execution/createPipelineExecutor/$OngoingTemplateResult.d.ts +45 -0
  63. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +23 -0
  64. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +29 -0
  65. package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +13 -0
  66. package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +58 -0
  67. package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +60 -0
  68. package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +15 -0
  69. package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +69 -0
  70. package/esm/typings/src/execution/createPipelineExecutor/filterJustOutputParameters.d.ts +34 -0
  71. package/esm/typings/src/execution/createPipelineExecutor/getContextForTemplate.d.ts +10 -0
  72. package/esm/typings/src/execution/createPipelineExecutor/getKnowledgeForTemplate.d.ts +27 -0
  73. package/esm/typings/src/execution/createPipelineExecutor/getReservedParametersForTemplate.d.ts +30 -0
  74. package/esm/typings/src/execution/createPipelineExecutor/getSamplesForTemplate.d.ts +10 -0
  75. package/esm/typings/src/execution/embeddingVectorToString.d.ts +1 -1
  76. package/esm/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +3 -0
  77. package/esm/typings/src/execution/utils/$provideExecutionToolsForNode.d.ts +13 -0
  78. package/esm/typings/src/execution/utils/checkExpectations.d.ts +2 -0
  79. package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -0
  80. package/esm/typings/src/execution/utils/usageToHuman.d.ts +3 -4
  81. package/esm/typings/src/formats/_common/FormatDefinition.d.ts +14 -15
  82. package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +31 -0
  83. package/esm/typings/src/formats/csv/{ListFormatDefinition.d.ts → CsvFormatDefinition.d.ts} +6 -3
  84. package/esm/typings/src/formats/csv/CsvFormatError.d.ts +10 -0
  85. package/esm/typings/src/formats/csv/CsvSettings.d.ts +13 -0
  86. package/esm/typings/src/formats/index.d.ts +1 -1
  87. package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +4 -3
  88. package/esm/typings/src/formats/text/TextFormatDefinition.d.ts +19 -0
  89. package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +4 -3
  90. package/esm/typings/src/llm-providers/_common/{$llmToolsMetadataRegister.d.ts → register/$llmToolsMetadataRegister.d.ts} +4 -1
  91. package/esm/typings/src/llm-providers/_common/{$llmToolsRegister.d.ts → register/$llmToolsRegister.d.ts} +5 -2
  92. package/esm/typings/src/llm-providers/_common/{createLlmToolsFromConfigurationFromEnv.d.ts → register/$provideLlmToolsConfigurationFromEnv.d.ts} +3 -3
  93. package/esm/typings/src/llm-providers/_common/{getLlmToolsForCli.d.ts → register/$provideLlmToolsForCli.d.ts} +4 -3
  94. package/esm/typings/src/llm-providers/_common/{getLlmToolsForTestingAndScriptsAndPlayground.d.ts → register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts} +4 -3
  95. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsFromEnv.d.ts +27 -0
  96. package/esm/typings/src/llm-providers/_common/{$registeredLlmToolsMessage.d.ts → register/$registeredLlmToolsMessage.d.ts} +5 -2
  97. package/esm/typings/src/llm-providers/_common/{LlmToolsConfiguration.d.ts → register/LlmToolsConfiguration.d.ts} +5 -4
  98. package/esm/typings/src/llm-providers/_common/{LlmToolsMetadata.d.ts → register/LlmToolsMetadata.d.ts} +5 -4
  99. package/esm/typings/src/llm-providers/_common/{LlmToolsOptions.d.ts → register/LlmToolsOptions.d.ts} +4 -1
  100. package/esm/typings/src/llm-providers/_common/{createLlmToolsFromConfiguration.d.ts → register/createLlmToolsFromConfiguration.d.ts} +5 -4
  101. package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +1 -1
  102. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +2 -1
  103. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +3 -3
  104. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  105. package/esm/typings/src/llm-providers/anthropic-claude/createAnthropicClaudeExecutionTools.d.ts +2 -2
  106. package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -2
  107. package/esm/typings/src/llm-providers/anthropic-claude/register-configuration.d.ts +4 -3
  108. package/esm/typings/src/llm-providers/anthropic-claude/register-constructor.d.ts +4 -3
  109. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +8 -1
  110. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +2 -2
  111. package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +1 -0
  112. package/esm/typings/src/llm-providers/azure-openai/register-configuration.d.ts +4 -3
  113. package/esm/typings/src/llm-providers/azure-openai/register-constructor.d.ts +4 -3
  114. package/esm/typings/src/llm-providers/langtail/playground/playground.d.ts +3 -0
  115. package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +2 -2
  116. package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +2 -2
  117. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +1 -0
  118. package/esm/typings/src/llm-providers/multiple/playground/playground.d.ts +3 -0
  119. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +2 -1
  120. package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +2 -2
  121. package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +2 -1
  122. package/esm/typings/src/llm-providers/openai/register-configuration.d.ts +4 -3
  123. package/esm/typings/src/llm-providers/openai/register-constructor.d.ts +4 -3
  124. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Request.d.ts +1 -1
  125. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Request.d.ts +1 -1
  126. package/esm/typings/src/llm-providers/remote/interfaces/RemoteLlmExecutionToolsOptions.d.ts +3 -3
  127. package/esm/typings/src/llm-providers/remote/interfaces/RemoteServerOptions.d.ts +2 -2
  128. package/esm/typings/src/llm-providers/remote/playground/playground.d.ts +3 -0
  129. package/esm/typings/src/personas/preparePersona.d.ts +4 -3
  130. package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +68 -0
  131. package/esm/typings/src/prepare/isPipelinePrepared.d.ts +1 -1
  132. package/esm/typings/src/prepare/preparePipeline.d.ts +3 -2
  133. package/esm/typings/src/prepare/prepareTemplates.d.ts +4 -3
  134. package/esm/typings/src/scrapers/_common/Converter.d.ts +22 -0
  135. package/esm/typings/src/scrapers/_common/Scraper.d.ts +66 -0
  136. package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +11 -0
  137. package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.d.ts +5 -4
  138. package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +12 -0
  139. package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +15 -0
  140. package/esm/typings/src/scrapers/_common/register/$registeredScrapersMessage.d.ts +12 -0
  141. package/esm/typings/src/scrapers/_common/register/$scrapersMetadataRegister.d.ts +13 -0
  142. package/esm/typings/src/scrapers/_common/register/$scrapersRegister.d.ts +13 -0
  143. package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +41 -0
  144. package/esm/typings/src/scrapers/_common/register/ScraperConstructor.d.ts +12 -0
  145. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +33 -0
  146. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.test.d.ts +4 -0
  147. package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +13 -0
  148. package/esm/typings/src/scrapers/document/DocumentScraper.d.ts +43 -0
  149. package/esm/typings/src/scrapers/document/DocumentScraper.test.d.ts +4 -0
  150. package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +20 -0
  151. package/esm/typings/src/scrapers/document/playground/document-scraper-playground.d.ts +5 -0
  152. package/esm/typings/src/scrapers/document/register-constructor.d.ts +13 -0
  153. package/esm/typings/src/scrapers/document/register-metadata.d.ts +24 -0
  154. package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.d.ts +43 -0
  155. package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.test.d.ts +4 -0
  156. package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +20 -0
  157. package/esm/typings/src/scrapers/document-legacy/playground/legacy-document-scraper-playground.d.ts +5 -0
  158. package/esm/typings/src/scrapers/document-legacy/register-constructor.d.ts +13 -0
  159. package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +24 -0
  160. package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +29 -0
  161. package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +20 -0
  162. package/esm/typings/src/scrapers/markdown/playground/markdown-scraper-playground.d.ts +5 -0
  163. package/esm/typings/src/scrapers/markdown/register-constructor.d.ts +13 -0
  164. package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +24 -0
  165. package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +40 -0
  166. package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +20 -0
  167. package/esm/typings/src/scrapers/pdf/playground/pdf-scraper-playground.d.ts +5 -0
  168. package/esm/typings/src/scrapers/pdf/register-constructor.d.ts +13 -0
  169. package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +24 -0
  170. package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +47 -0
  171. package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +20 -0
  172. package/esm/typings/src/scrapers/website/playground/website-scraper-playground.d.ts +5 -0
  173. package/esm/typings/src/scrapers/website/register-constructor.d.ts +13 -0
  174. package/esm/typings/src/scrapers/website/register-metadata.d.ts +24 -0
  175. package/esm/typings/src/scrapers/website/utils/markdownConverter.d.ts +12 -0
  176. package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +2 -2
  177. package/esm/typings/src/scripting/python/PythonExecutionTools.d.ts +2 -2
  178. package/esm/typings/src/scripting/typescript/TypescriptExecutionTools.d.ts +2 -2
  179. package/esm/typings/src/storage/{files-storage/FilesStorage.d.ts → file-cache-storage/FileCacheStorage.d.ts} +4 -4
  180. package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +10 -0
  181. package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.d.ts +1 -1
  182. package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +1 -1
  183. package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +1 -1
  184. package/esm/typings/src/storage/{utils → memory/utils}/PrefixStorage.d.ts +1 -1
  185. package/esm/typings/src/storage/{utils → memory/utils}/makePromptbookStorageFromWebStorage.d.ts +1 -1
  186. package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +9 -2
  187. package/esm/typings/src/types/PipelineJson/ParameterJson.d.ts +1 -0
  188. package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +3 -3
  189. package/esm/typings/src/types/PipelineJson/TemplateJsonCommon.d.ts +5 -0
  190. package/esm/typings/src/types/execution-report/executionReportJsonToString.d.ts +2 -1
  191. package/esm/typings/src/types/typeAliases.d.ts +16 -12
  192. package/esm/typings/src/utils/$Register.d.ts +19 -6
  193. package/esm/typings/src/utils/execCommand/$execCommand.d.ts +14 -0
  194. package/esm/typings/src/utils/execCommand/$execCommands.d.ts +17 -0
  195. package/esm/typings/src/utils/execCommand/IExecCommandOptions.d.ts +23 -0
  196. package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.d.ts +10 -0
  197. package/esm/typings/src/utils/expectation-counters/index.d.ts +3 -0
  198. package/esm/typings/src/utils/files/$isDirectoryExisting.d.ts +3 -3
  199. package/esm/typings/src/utils/files/$isFileExisting.d.ts +3 -3
  200. package/esm/typings/src/utils/files/$listAllFiles.d.ts +5 -4
  201. package/esm/typings/src/utils/files/extensionToMimeType.d.ts +8 -0
  202. package/esm/typings/src/utils/files/getFileExtension.d.ts +8 -0
  203. package/esm/typings/src/utils/files/getFileExtension.test.d.ts +1 -0
  204. package/esm/typings/src/utils/organization/{f.d.ts → empty_object.d.ts} +5 -1
  205. package/esm/typings/src/utils/organization/just_empty_object.d.ts +12 -0
  206. package/esm/typings/src/utils/{extractParameterNames.d.ts → parameters/extractParameterNames.d.ts} +2 -2
  207. package/esm/typings/src/utils/parameters/extractParameterNames.test.d.ts +1 -0
  208. package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.d.ts +27 -0
  209. package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.test.d.ts +1 -0
  210. package/esm/typings/src/utils/{replaceParameters.d.ts → parameters/replaceParameters.d.ts} +2 -2
  211. package/esm/typings/src/utils/parameters/replaceParameters.test.d.ts +1 -0
  212. package/esm/typings/src/utils/serialization/checkSerializableAsJson.d.ts +1 -1
  213. package/esm/typings/src/utils/serialization/isSerializableAsJson.d.ts +1 -1
  214. package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -2
  215. package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +10 -0
  216. package/esm/typings/src/utils/validators/parameterName/validateParameterName.test.d.ts +1 -0
  217. package/package.json +17 -13
  218. package/umd/index.umd.js +203 -16
  219. package/umd/index.umd.js.map +1 -1
  220. package/esm/typings/src/execution/createPipelineExecutor.d.ts +0 -72
  221. package/esm/typings/src/formats/list/ListFormatDefinition.d.ts +0 -16
  222. package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +0 -37
  223. package/esm/typings/src/knowledge/prepare-knowledge/markdown/playground/markdown-knowledge-playground.d.ts +0 -2
  224. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +0 -14
  225. package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +0 -15
  226. package/esm/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +0 -25
  227. package/esm/typings/src/prepare/PrepareOptions.d.ts +0 -22
  228. package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +0 -10
  229. /package/esm/typings/src/{knowledge/dialogs → dialogs}/user-interface-execution-tools.test.d.ts +0 -0
  230. /package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.test.d.ts +0 -0
  231. /package/esm/typings/src/{knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts → scrapers/markdown/MarkdownScraper.test.d.ts} +0 -0
  232. /package/esm/typings/src/{execution/utils/usageToHuman.test.d.ts → scrapers/website/WebsiteScraper.test.d.ts} +0 -0
  233. /package/esm/typings/src/{knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.test.d.ts → scrapers/website/utils/markdownConverter.test.d.ts} +0 -0
  234. /package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.test.d.ts +0 -0
  235. /package/esm/typings/src/{personas/preparePersona.test.d.ts → utils/execCommand/execCommand.test.d.ts} +0 -0
  236. /package/esm/typings/src/utils/{extractParameterNames.test.d.ts → execCommand/execCommandNormalizeOptions.test.d.ts} +0 -0
  237. /package/esm/typings/src/utils/{replaceParameters.test.d.ts → files/extensionToMimeType.test.d.ts} +0 -0
@@ -3,7 +3,7 @@ import type { ExpectCommand } from './ExpectCommand';
3
3
  /**
4
4
  * Parses the expect command
5
5
  *
6
- * @see ./EXPECT-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const expectCommandParser: PipelineTemplateCommandParser<ExpectCommand>;
@@ -1,14 +1,10 @@
1
- import type { string_parameter_name } from '../../types/typeAliases';
2
- import type { TODO_string } from '../../utils/organization/TODO_string';
1
+ import type { ForeachJson } from './ForeachJson';
3
2
  /**
4
- * Parsed FOREACH command <- Write [🍭] !!!!!!
3
+ * Parsed FOREACH command which is used to iterate over a table of values
5
4
  *
6
5
  * @see ./foreachCommandParser.ts for more details
7
6
  * @private within the commands folder
8
7
  */
9
8
  export type ForeachCommand = {
10
9
  readonly type: 'FOREACH';
11
- formatName: TODO_string;
12
- cellName: TODO_string;
13
- parameterName: string_parameter_name;
14
- };
10
+ } & ForeachJson;
@@ -0,0 +1,27 @@
1
+ import type { string_parameter_name } from '../../types/typeAliases';
2
+ import type { TODO_string } from '../../utils/organization/TODO_string';
3
+ /**
4
+ * @@@
5
+ */
6
+ export type ForeachJson = {
7
+ /**
8
+ * @@@
9
+ */
10
+ readonly formatName: TODO_string;
11
+ /**
12
+ * @@@
13
+ */
14
+ readonly subformatName: TODO_string;
15
+ /**
16
+ * @@@
17
+ */
18
+ readonly parameterName: string_parameter_name;
19
+ /**
20
+ * @@@
21
+ */
22
+ readonly inputSubparameterNames: Array<string_parameter_name>;
23
+ /**
24
+ * @@@
25
+ */
26
+ readonly outputSubparameterName: string_parameter_name;
27
+ };
@@ -5,11 +5,10 @@ import type { ForeachCommand } from './ForeachCommand';
5
5
  *
6
6
  * Note: @@@ This command is used as foreach for new commands - it should NOT be used in any `.ptbk.md` file
7
7
  *
8
- * @see ./FOREACH-README.md for more details <- TODO: @@@ Write theese README files OR remove this link + add annotation here (to all commands)
8
+ * @see `documentationUrl` for more details
9
9
  * @private within the commands folder
10
10
  */
11
11
  export declare const foreachCommandParser: PipelineTemplateCommandParser<ForeachCommand>;
12
12
  /**
13
- * TODO: !!!!!! Comment console logs
14
- * TODO: [🍭] !!!!!! Make .ptbk.md file with examples of the FOREACH command and also with wrong parsing and logic
13
+ * TODO: [🍭] Make .ptbk.md file with examples of the FOREACH with wrong parsing and logic
15
14
  */
@@ -3,7 +3,7 @@ import type { FormatCommand } from './FormatCommand';
3
3
  /**
4
4
  * Parses the format command
5
5
  *
6
- * @see ./FORMAT-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const formatCommandParser: PipelineTemplateCommandParser<FormatCommand>;
@@ -3,7 +3,7 @@ import type { JokerCommand } from './JokerCommand';
3
3
  /**
4
4
  * Parses the joker command
5
5
  *
6
- * @see ./JOKER-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const jokerCommandParser: PipelineTemplateCommandParser<JokerCommand>;
@@ -3,7 +3,7 @@ import type { KnowledgeCommand } from './KnowledgeCommand';
3
3
  /**
4
4
  * Parses the knowledge command
5
5
  *
6
- * @see ./KNOWLEDGE-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const knowledgeCommandParser: PipelineHeadCommandParser<KnowledgeCommand>;
@@ -0,0 +1,11 @@
1
+ import type { string_knowledge_source_content } from '../../../types/typeAliases';
2
+ import type { string_name } from '../../../types/typeAliases';
3
+ /**
4
+ * Creates unique name for the source
5
+ *
6
+ * @private within the repository
7
+ */
8
+ export declare function sourceContentToName(sourceContent: string_knowledge_source_content): string_name;
9
+ /**
10
+ * TODO: [🐱‍🐉][🧠] Make some smart crop NOT source-i-m-pavol-a-develop-... BUT source-i-m-pavol-a-developer-...
11
+ */
@@ -0,0 +1,4 @@
1
+ export {};
2
+ /**
3
+ * TODO: [🐱‍🐉][🧠] Make some smart crop NOT source-i-m-pavol-a-develop-... BUT source-i-m-pavol-a-developer-...
4
+ */
@@ -3,7 +3,7 @@ import type { ModelCommand } from './ModelCommand';
3
3
  /**
4
4
  * Parses the model command
5
5
  *
6
- * @see ./MODEL-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const modelCommandParser: PipelineBothCommandParser<ModelCommand>;
@@ -3,7 +3,7 @@ import type { ParameterCommand } from './ParameterCommand';
3
3
  /**
4
4
  * Parses the parameter command
5
5
  *
6
- * @see ./PARAMETER-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const parameterCommandParser: PipelineBothCommandParser<ParameterCommand>;
@@ -3,7 +3,7 @@ import type { PersonaCommand } from './PersonaCommand';
3
3
  /**
4
4
  * Parses the persona command
5
5
  *
6
- * @see ./PERSONA-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const personaCommandParser: PipelineBothCommandParser<PersonaCommand>;
@@ -3,7 +3,7 @@ import type { PostprocessCommand } from './PostprocessCommand';
3
3
  /**
4
4
  * Parses the postprocess command
5
5
  *
6
- * @see ./POSTPROCESS-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const postprocessCommandParser: PipelineTemplateCommandParser<PostprocessCommand>;
@@ -3,7 +3,7 @@ import type { PromptbookVersionCommand } from './PromptbookVersionCommand';
3
3
  /**
4
4
  * Parses the PROMPTBOOK_VERSION command
5
5
  *
6
- * @see ./PROMPTBOOK_VERSION-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const promptbookVersionCommandParser: PipelineHeadCommandParser<PromptbookVersionCommand>;
@@ -3,7 +3,7 @@ import type { TemplateCommand } from './TemplateCommand';
3
3
  /**
4
4
  * Parses the template command
5
5
  *
6
- * @see ./TEMPLATE-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const templateCommandParser: PipelineTemplateCommandParser<TemplateCommand>;
@@ -3,7 +3,7 @@ import type { UrlCommand } from './UrlCommand';
3
3
  /**
4
4
  * Parses the url command
5
5
  *
6
- * @see ./URL-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const urlCommandParser: PipelineHeadCommandParser<UrlCommand>;
@@ -3,7 +3,7 @@ import type { ActionCommand } from './ActionCommand';
3
3
  /**
4
4
  * Parses the action command
5
5
  *
6
- * @see ./ACTION-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const actionCommandParser: PipelineHeadCommandParser<ActionCommand>;
@@ -3,7 +3,7 @@ import type { InstrumentCommand } from './InstrumentCommand';
3
3
  /**
4
4
  * Parses the instrument command
5
5
  *
6
- * @see ./INSTRUMENT-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const instrumentCommandParser: PipelineHeadCommandParser<InstrumentCommand>;
@@ -5,7 +5,7 @@ import type { BoilerplateCommand } from './BoilerplateCommand';
5
5
  *
6
6
  * Note: @@@ This command is used as boilerplate for new commands - it should NOT be used in any `.ptbk.md` file
7
7
  *
8
- * @see ./BOILERPLATE-README.md for more details <- TODO: @@@ Write theese README files OR remove this link + add annotation here (to all commands)
8
+ * @see `documentationUrl` for more details
9
9
  * @private within the commands folder
10
10
  */
11
11
  export declare const boilerplateCommandParser: PipelineBothCommandParser<BoilerplateCommand>;
@@ -156,28 +156,28 @@ export type CommandParserInput = {
156
156
  * @@@
157
157
  *
158
158
  * @example 'promptbook version 0.62.0'
159
- * @example 'FOREACH List Line -> `{customer}`'
159
+ * @example 'FOREACH Text Line `{customers}` -> `{customer}`'
160
160
  */
161
161
  readonly raw: string_markdown_text;
162
162
  /**
163
163
  * @@@
164
164
  *
165
165
  * @example '0.62.0'
166
- * @example 'List Line -> `{customer}`'
166
+ * @example 'List Line `{customers}` -> `{customer}`'
167
167
  */
168
168
  readonly rawArgs: string_markdown_text;
169
169
  /**
170
170
  * @@@
171
171
  *
172
172
  * @example 'PROMPTBOOK_VERSION_0_62_0'
173
- * @example 'FOREACH_LIST_LINE_CUSTOMER'
173
+ * @example 'FOREACH_LIST_LINE_CUSTOMERS_CUSTOMER'
174
174
  */
175
175
  readonly normalized: string_name & string_SCREAMING_CASE;
176
176
  /**
177
177
  * @@@
178
178
  *
179
179
  * @example [ '0.62.0' ]
180
- * @example [ 'List', 'Line', '', '{customer}' ]
180
+ * @example [ 'List', 'Line', '{customers}', '', '{customer}' ]
181
181
  */
182
182
  readonly args: Array<string_name>;
183
183
  };
@@ -1,3 +1,4 @@
1
+ import type { CsvSettings } from './formats/csv/CsvSettings';
1
2
  /**
2
3
  * Warning message for the generated sections and files files
3
4
  *
@@ -68,14 +69,14 @@ export declare const MAX_EXECUTION_ATTEMPTS = 3;
68
69
  export declare const MAX_FILENAME_LENGTH = 30;
69
70
  /**
70
71
  * @@@
71
- * TODO: [🐝] !!! Use
72
+ * TODO: [🐝][main] !!! Use
72
73
  *
73
74
  * @public exported from `@promptbook/core`
74
75
  */
75
76
  export declare const MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH = 3;
76
77
  /**
77
78
  * @@@
78
- * TODO: [🐝] !!! Use
79
+ * TODO: [🐝][main] !!! Use
79
80
  *
80
81
  * @public exported from `@promptbook/core`
81
82
  */
@@ -83,9 +84,19 @@ export declare const MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL = 200;
83
84
  /**
84
85
  * Where to store the cache of executions for promptbook CLI
85
86
  *
87
+ * Note: When the folder does not exist, it is created recursively
88
+ *
86
89
  * @public exported from `@promptbook/core`
87
90
  */
88
91
  export declare const EXECUTIONS_CACHE_DIRNAME = "/.promptbook/executions-cache";
92
+ /**
93
+ * Where to store the scrape cache
94
+ *
95
+ * Note: When the folder does not exist, it is created recursively
96
+ *
97
+ * @public exported from `@promptbook/core`
98
+ */
99
+ export declare const SCRAPE_CACHE_DIRNAME = "/.promptbook/scrape-cache";
89
100
  /**
90
101
  * The name of the builded pipeline collection made by CLI `ptbk make` and for lookup in `createCollectionFromDirectory`
91
102
  *
@@ -137,18 +148,36 @@ export declare const DEFAULT_REMOTE_URL = "https://api.pavolhejny.com/";
137
148
  * @public exported from `@promptbook/core`
138
149
  */
139
150
  export declare const DEFAULT_REMOTE_URL_PATH = "/promptbook/socket.io";
151
+ /**
152
+ * @@@
153
+ *
154
+ * @public exported from `@promptbook/core`
155
+ */
156
+ export declare const DEFAULT_CSV_SETTINGS: CsvSettings;
140
157
  /**
141
158
  * @@@
142
159
  *
143
160
  * @public exported from `@promptbook/core`
144
161
  */
145
162
  export declare const IS_VERBOSE = false;
163
+ /**
164
+ * @@@
165
+ *
166
+ * @public exported from `@promptbook/core`
167
+ */
168
+ export declare const IS_AUTO_INSTALLED = false;
169
+ /**
170
+ * @@@
171
+ *
172
+ * @private within the repository
173
+ */
174
+ export declare const IS_PIPELINE_LOGIC_VALIDATED: boolean;
146
175
  /**
147
176
  * @@@
148
177
  *
149
178
  * @private within the repository
150
179
  */
151
- export declare const DEBUG_ALLOW_PAYED_TESTING: boolean;
180
+ export declare const IS_COST_PREVENTED: boolean;
152
181
  /**
153
182
  * TODO: [🧠][🧜‍♂️] Maybe join remoteUrl and path into single value
154
183
  */
@@ -1,19 +1,7 @@
1
- import type { LlmExecutionTools } from '../execution/LlmExecutionTools';
1
+ import type { ExecutionTools } from '../execution/ExecutionTools';
2
+ import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
2
3
  import type { PipelineJson } from '../types/PipelineJson/PipelineJson';
3
4
  import type { PipelineString } from '../types/PipelineString';
4
- /**
5
- * Options for `pipelineStringToJson`
6
- *
7
- * @public exported from `@promptbook/core`
8
- */
9
- export type PipelineStringToJsonOptions = {
10
- /**
11
- * Tools for processing required for preparation of knowledge *(not for actual execution)*
12
- *
13
- * Note: If you provide `null`, the knowledge will not be prepared
14
- */
15
- readonly llmTools: LlmExecutionTools | null;
16
- };
17
5
  /**
18
6
  * Compile pipeline from string (markdown) format to JSON format
19
7
  *
@@ -26,12 +14,13 @@ export type PipelineStringToJsonOptions = {
26
14
  * Note: This function acts as compilation process
27
15
  *
28
16
  * @param pipelineString {Promptbook} in string markdown format (.ptbk.md)
17
+ * @param tools - Tools for the preparation and scraping - if not provided together with `llm`, the preparation will be skipped
29
18
  * @param options - Options and tools for the compilation
30
19
  * @returns {Promptbook} compiled in JSON format (.ptbk.json)
31
20
  * @throws {ParseError} if the promptbook string is not valid
32
21
  * @public exported from `@promptbook/core`
33
22
  */
34
- export declare function pipelineStringToJson(pipelineString: PipelineString, options?: PipelineStringToJsonOptions): Promise<PipelineJson>;
23
+ export declare function pipelineStringToJson(pipelineString: PipelineString, tools?: Pick<ExecutionTools, 'llm' | 'scrapers'>, options?: PrepareAndScrapeOptions): Promise<PipelineJson>;
35
24
  /**
36
25
  * TODO: [🏏] Leverage the batch API and build queues @see https://platform.openai.com/docs/guides/batch
37
26
  * TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
@@ -18,7 +18,7 @@ import type { PipelineString } from '../types/PipelineString';
18
18
  */
19
19
  export declare function pipelineStringToJsonSync(pipelineString: PipelineString): PipelineJson;
20
20
  /**
21
- * TODO: !!!! Warn if used only sync version
21
+ * TODO: [main] !!!! Warn if used only sync version
22
22
  * TODO: [🚞] Report here line/column of error
23
23
  * TODO: Use spaceTrim more effectively
24
24
  * TODO: [🧠] Parameter flags - isInput, isOutput, isInternal
@@ -22,6 +22,9 @@ export type renderPipelineMermaidOptions = {
22
22
  */
23
23
  export declare function renderPromptbookMermaid(pipelineJson: PipelineJson, options?: renderPipelineMermaidOptions): string;
24
24
  /**
25
+ * TODO: !!!!! FOREACH in mermaid graph
26
+ * TODO: !!!!! Knowledge in mermaid graph
27
+ * TODO: !!!!! Personas in mermaid graph
25
28
  * TODO: Maybe use some Mermaid package instead of string templating
26
29
  * TODO: [🕌] When more than 2 functionalities, split into separate functions
27
30
  */
@@ -1,3 +1,4 @@
1
+ import type { ReadonlyDeep } from 'type-fest';
1
2
  import type { TemplateJson } from '../../types/PipelineJson/TemplateJson';
2
3
  import type { string_parameter_name } from '../../types/typeAliases';
3
4
  /**
@@ -8,7 +9,7 @@ import type { string_parameter_name } from '../../types/typeAliases';
8
9
  * @throws {ParseError} if the script is invalid
9
10
  * @public exported from `@promptbook/utils`
10
11
  */
11
- export declare function extractParameterNamesFromTemplate(template: Pick<TemplateJson, 'title' | 'description' | 'templateType' | 'content' | 'preparedContent' | 'jokerParameterNames'>): Set<string_parameter_name>;
12
+ export declare function extractParameterNamesFromTemplate(template: ReadonlyDeep<Pick<TemplateJson, 'title' | 'description' | 'templateType' | 'content' | 'preparedContent' | 'jokerParameterNames' | 'foreach'>>): Set<string_parameter_name>;
12
13
  /**
13
14
  * TODO: [🔣] If script require contentLanguage
14
15
  */
@@ -25,5 +25,5 @@ export declare function importPipelineJson(path: `${string}.ptbk.json`): Pipelin
25
25
  */
26
26
  export declare function importPipelineJsonAsString(path: `${string}.ptbk.json`): string_json<PipelineJson>;
27
27
  /**
28
- * TODO: [🥯] This should be part of scripting + testing utilities set which are not builded into packages
28
+ * Note: [] Code in this file should never be published in any package
29
29
  */
@@ -16,6 +16,11 @@ import type { PipelineJson } from '../../types/PipelineJson/PipelineJson';
16
16
  */
17
17
  export declare function validatePipeline(pipeline: PipelineJson): PipelineJson;
18
18
  /**
19
+ * @private internal function for `validatePipeline`
20
+ */
21
+ export declare function validatePipelineCore(pipeline: PipelineJson): void;
22
+ /**
23
+ * TODO: !!!!! [🧞‍♀️] Do not allow joker + foreach
19
24
  * TODO: [🧠] Work with promptbookVersion
20
25
  * TODO: Use here some json-schema, Zod or something similar and change it to:
21
26
  * > /**
@@ -27,11 +32,11 @@ export declare function validatePipeline(pipeline: PipelineJson): PipelineJson;
27
32
  * > ex port function validatePipeline(promptbook: really_unknown): asserts promptbook is PipelineJson {
28
33
  */
29
34
  /**
30
- * TODO: [🐣] !!!! Validate that all samples match expectations
31
- * TODO: [🐣][🐝] !!!! Validate that knowledge is valid (non-void)
32
- * TODO: [🐣] !!!! Validate that persona can be used only with CHAT variant
33
- * TODO: [🐣] !!!! Validate that parameter with reserved name not used RESERVED_PARAMETER_NAMES
34
- * TODO: [🐣] !!!! Validate that reserved parameter is not used as joker
35
+ * TODO: [🧳][main] !!!! Validate that all samples match expectations
36
+ * TODO: [🧳][🐝][main] !!!! Validate that knowledge is valid (non-void)
37
+ * TODO: [🧳][main] !!!! Validate that persona can be used only with CHAT variant
38
+ * TODO: [🧳][main] !!!! Validate that parameter with reserved name not used RESERVED_PARAMETER_NAMES
39
+ * TODO: [🧳][main] !!!! Validate that reserved parameter is not used as joker
35
40
  * TODO: [🧠] Validation not only logic itself but imports around - files and websites and rerefenced pipelines exists
36
41
  * TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
37
42
  */
@@ -1,5 +1,5 @@
1
- import type { UserInterfaceTools } from '../../../execution/UserInterfaceTools';
2
- import type { UserInterfaceToolsPromptDialogOptions } from '../../../execution/UserInterfaceTools';
1
+ import type { UserInterfaceTools } from '../../execution/UserInterfaceTools';
2
+ import type { UserInterfaceToolsPromptDialogOptions } from '../../execution/UserInterfaceTools';
3
3
  import type { CallbackInterfaceToolsOptions } from './CallbackInterfaceToolsOptions';
4
4
  /**
5
5
  * Delagates the user interaction to a async callback function
@@ -1,12 +1,12 @@
1
1
  import type { Promisable } from 'type-fest';
2
- import type { CommonExecutionToolsOptions } from '../../../execution/CommonExecutionToolsOptions';
3
- import type { UserInterfaceToolsPromptDialogOptions } from '../../../execution/UserInterfaceTools';
2
+ import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
3
+ import type { UserInterfaceToolsPromptDialogOptions } from '../../execution/UserInterfaceTools';
4
4
  /**
5
5
  * Options for `CallbackInterfaceTools`
6
6
  *
7
7
  * @public exported from `@promptbook/core`
8
8
  */
9
- export type CallbackInterfaceToolsOptions = CommonExecutionToolsOptions & {
9
+ export type CallbackInterfaceToolsOptions = CommonToolsOptions & {
10
10
  /**
11
11
  * The callback function to be called when promptDialog is called
12
12
  */
@@ -1,6 +1,6 @@
1
- import type { CommonExecutionToolsOptions } from '../../../execution/CommonExecutionToolsOptions';
2
- import type { UserInterfaceTools } from '../../../execution/UserInterfaceTools';
3
- import type { UserInterfaceToolsPromptDialogOptions } from '../../../execution/UserInterfaceTools';
1
+ import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
2
+ import type { UserInterfaceTools } from '../../execution/UserInterfaceTools';
3
+ import type { UserInterfaceToolsPromptDialogOptions } from '../../execution/UserInterfaceTools';
4
4
  /**
5
5
  * Wrapper around `window.prompt` synchronous function that interacts with the user via browser prompt
6
6
  *
@@ -11,12 +11,12 @@ import type { UserInterfaceToolsPromptDialogOptions } from '../../../execution/U
11
11
  */
12
12
  export declare class SimplePromptInterfaceTools implements UserInterfaceTools {
13
13
  private readonly options;
14
- constructor(options?: CommonExecutionToolsOptions);
14
+ constructor(options?: CommonToolsOptions);
15
15
  /**
16
16
  * Trigger window.DIALOG TEMPLATE
17
17
  */
18
18
  promptDialog(options: UserInterfaceToolsPromptDialogOptions): Promise<string>;
19
19
  }
20
20
  /**
21
- * Note: [🔵] This code should never be published outside of `@promptbook/browser`
21
+ * Note: [🔵] Code in this file should never be published outside of `@promptbook/browser`
22
22
  */
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This error indicates problems parsing the format value
3
+ *
4
+ * For example, when the format value is not a valid JSON or CSV
5
+ * This is not thrown directly but in extended classes
6
+ *
7
+ * @public exported from `@promptbook/core`
8
+ */
9
+ export declare class AbstractFormatError extends Error {
10
+ constructor(message: string);
11
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This error indicates that the promptbook can not retrieve knowledge from external sources
3
+ *
4
+ * @public exported from `@promptbook/core`
5
+ */
6
+ export declare class KnowledgeScrapeError extends Error {
7
+ readonly name = "KnowledgeScrapeError";
8
+ constructor(message: string);
9
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This error type indicates that some tools are missing for pipeline execution or preparation
3
+ *
4
+ * @public exported from `@promptbook/core`
5
+ */
6
+ export declare class MissingToolsError extends Error {
7
+ readonly name = "MissingToolsError";
8
+ constructor(message: string);
9
+ }
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Note: Keep it public to allow people to make their own execution tools
5
5
  */
6
- export type CommonExecutionToolsOptions = {
6
+ export type CommonToolsOptions = {
7
7
  /**
8
8
  * If true, the internal executions will be logged
9
9
  */
@@ -1,3 +1,4 @@
1
+ import type { Scraper } from '../scrapers/_common/Scraper';
1
2
  import type { Arrayable } from '../types/Arrayable';
2
3
  import type { LlmExecutionTools } from './LlmExecutionTools';
3
4
  import type { ScriptExecutionTools } from './ScriptExecutionTools';
@@ -9,12 +10,21 @@ import type { UserInterfaceTools } from './UserInterfaceTools';
9
10
  */
10
11
  export type ExecutionTools = {
11
12
  /**
12
- * Tools for executing prompts to large language models like GPT-4
13
+ * Tools for executing prompts in large language models
13
14
  *
14
- * Tip: Use `createLlmToolsFromEnv()` to use all available LLM providers you configured
15
- * @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#llm-execution-tools
15
+ * Tip: Use `$provideLlmToolsFromEnv()` to use all available LLM providers you configured
16
+ *
17
+ * @default [] - If not provided, no LLM execution will be possible - it does not make sense in most cases
16
18
  */
17
- llm?: Arrayable<LlmExecutionTools>;
19
+ readonly llm?: Arrayable<LlmExecutionTools>;
20
+ /**
21
+ * Scrapers for extracting knowledge from external sources
22
+ *
23
+ * Tip: Use `$provideScrapersForNode` OR `$provideScrapersForBrowser` to use all available scrapers
24
+ *
25
+ * @default [] - If not provided, no external knowledge extraction will be possible
26
+ */
27
+ readonly scrapers?: Arrayable<Scraper>;
18
28
  /**
19
29
  * Tools for executing scripts
20
30
  *
@@ -22,15 +32,17 @@ export type ExecutionTools = {
22
32
  * If none of them supports the script, an error is thrown
23
33
  * Tip: Use here `new JavascriptExecutionTools()`
24
34
  *
25
- * @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#script-execution-tools
26
35
  * @default [] - If not provided, no script execution will be possible
27
36
  */
28
- script?: Arrayable<ScriptExecutionTools>;
37
+ readonly script?: Arrayable<ScriptExecutionTools>;
29
38
  /**
30
39
  * Tools for interacting with the user
31
40
  *
32
41
  * Note: When undefined, the user interface is disabled and promptbook which requires user interaction will fail
33
- * @see https://github.com/webgptorg/promptbook/?tab=readme-ov-file#user-interface-tools
34
42
  */
35
- userInterface?: UserInterfaceTools;
43
+ readonly userInterface?: UserInterfaceTools;
36
44
  };
45
+ /**
46
+ * TODO: [🍂] Maybe make llm = $provideLlmToolsFromEnv() without problem with bundle contaminated by only `@promptbook/node` and `@promptbook/cli` stuff
47
+ * TODO: [🍂] Same with scrapers
48
+ */
@@ -14,5 +14,6 @@ export type PipelineExecutor = {
14
14
  (inputParameters: Parameters, onProgress?: (taskProgress: TaskProgress) => Promisable<void>): Promise<PipelineExecutorResult>;
15
15
  };
16
16
  /**
17
+ * TODO: [🐚] Change onProgress to object that represents the running execution, can be subscribed via RxJS to and also awaited
17
18
  * TODO: [🧠] Should this file be in /execution or /types folder?
18
19
  */