@promptbook/openai 0.61.0-2 → 0.61.0-21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (360) hide show
  1. package/README.md +2 -2
  2. package/esm/index.es.js +181 -18
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/promptbook-collection/index.d.ts +200 -30
  5. package/esm/typings/src/_packages/core.index.d.ts +7 -2
  6. package/esm/typings/src/_packages/execute-javascript.index.d.ts +1 -1
  7. package/esm/typings/src/_packages/node.index.d.ts +2 -1
  8. package/esm/typings/src/_packages/types.index.d.ts +11 -7
  9. package/esm/typings/src/_packages/utils.index.d.ts +8 -6
  10. package/esm/typings/src/cli/cli-commands/hello.d.ts +3 -0
  11. package/esm/typings/src/cli/cli-commands/make.d.ts +3 -0
  12. package/esm/typings/src/cli/cli-commands/prettify.d.ts +3 -0
  13. package/esm/typings/src/cli/promptbookCli.d.ts +1 -0
  14. package/esm/typings/src/collection/PipelineCollection.d.ts +1 -1
  15. package/esm/typings/src/collection/SimplePipelineCollection.d.ts +10 -10
  16. package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +8 -7
  17. package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +2 -2
  18. package/esm/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +2 -3
  19. package/esm/typings/src/commands/MODEL/ModelCommand.d.ts +2 -2
  20. package/esm/typings/src/commands/PERSONA/PersonaCommand.d.ts +4 -2
  21. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -0
  22. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +42 -14
  23. package/esm/typings/src/config.d.ts +38 -1
  24. package/esm/typings/src/config.test.d.ts +4 -0
  25. package/esm/typings/src/conversion/pipelineJsonToString.d.ts +1 -1
  26. package/esm/typings/src/conversion/pipelineStringToJson.d.ts +9 -5
  27. package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +5 -3
  28. package/esm/typings/src/conversion/prettify/PrettifyOptions.d.ts +2 -2
  29. package/esm/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
  30. package/esm/typings/src/conversion/utils/renameParameter.d.ts +3 -3
  31. package/esm/typings/src/conversion/utils/stringifyPipelineJson.d.ts +13 -0
  32. package/esm/typings/src/conversion/validation/_importPipeline.d.ts +12 -3
  33. package/esm/typings/src/conversion/validation/validatePipeline.d.ts +10 -1
  34. package/esm/typings/src/errors/EnvironmentMismatchError.d.ts +7 -0
  35. package/esm/typings/src/errors/LimitReachedError.d.ts +7 -0
  36. package/esm/typings/src/errors/VersionMismatchError.d.ts +8 -0
  37. package/esm/typings/src/execution/CommonExecutionToolsOptions.d.ts +1 -0
  38. package/esm/typings/src/execution/LlmExecutionTools.d.ts +10 -8
  39. package/esm/typings/src/execution/PipelineExecutor.d.ts +10 -8
  40. package/esm/typings/src/execution/PromptResult.d.ts +28 -58
  41. package/esm/typings/src/execution/PromptResultUsage.d.ts +26 -0
  42. package/esm/typings/src/execution/ScriptExecutionTools.d.ts +5 -4
  43. package/esm/typings/src/execution/UncertainNumber.d.ts +18 -0
  44. package/esm/typings/src/execution/UserInterfaceTools.d.ts +5 -5
  45. package/esm/typings/src/execution/createPipelineExecutor.d.ts +20 -3
  46. package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +2 -2
  47. package/esm/typings/src/execution/utils/addUsage.d.ts +58 -2
  48. package/esm/typings/src/execution/utils/computeUsageCounts.d.ts +1 -1
  49. package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -1
  50. package/esm/typings/src/execution/utils/uncertainNumber.d.ts +1 -1
  51. package/esm/typings/src/execution/utils/usageToWorktime.d.ts +2 -2
  52. package/esm/typings/src/formats/_common/FormatDefinition.d.ts +1 -1
  53. package/esm/typings/src/formats/csv/ListFormatDefinition.d.ts +2 -1
  54. package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +2 -1
  55. package/esm/typings/src/formats/list/ListFormatDefinition.d.ts +2 -1
  56. package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +1 -0
  57. package/esm/typings/src/knowledge/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +1 -1
  58. package/esm/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +3 -0
  59. package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +27 -0
  60. package/esm/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.d.ts +18 -0
  61. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +9 -23
  62. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts +3 -0
  63. package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +8 -14
  64. package/esm/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +30 -0
  65. package/esm/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +10 -0
  66. package/esm/typings/src/llm-providers/_common/getLlmToolsForTestingAndScriptsAndPlayground.d.ts +11 -0
  67. package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +29 -0
  68. package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +10 -0
  69. package/esm/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +16 -0
  70. package/esm/typings/src/llm-providers/_common/utils/count-total-cost/LlmExecutionToolsWithTotalCost.d.ts +11 -0
  71. package/esm/typings/src/llm-providers/_common/utils/count-total-cost/countTotalCost.d.ts +14 -0
  72. package/esm/typings/src/llm-providers/_common/utils/count-total-cost/limitTotalCost.d.ts +32 -0
  73. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +3 -2
  74. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +1 -1
  75. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +3 -3
  76. package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -0
  77. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -4
  78. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +5 -5
  79. package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +3 -0
  80. package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +3 -0
  81. package/esm/typings/src/llm-providers/langtail/LangtailExecutionToolsOptions.d.ts +1 -1
  82. package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -5
  83. package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +7 -7
  84. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +12 -8
  85. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +7 -6
  86. package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +1 -1
  87. package/esm/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
  88. package/esm/typings/src/llm-providers/openai/computeUsage.d.ts +2 -2
  89. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +3 -2
  90. package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +3 -0
  91. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +9 -7
  92. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionToolsOptions.d.ts +1 -1
  93. package/esm/typings/src/personas/preparePersona.d.ts +15 -0
  94. package/esm/typings/src/prepare/PrepareOptions.d.ts +22 -0
  95. package/esm/typings/src/prepare/isPipelinePrepared.d.ts +10 -0
  96. package/esm/typings/src/prepare/preparePipeline.d.ts +18 -0
  97. package/esm/typings/src/prepare/unpreparePipeline.d.ts +9 -0
  98. package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +1 -1
  99. package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  100. package/esm/typings/src/scripting/javascript/utils/unknownToString.d.ts +2 -1
  101. package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +25 -0
  102. package/esm/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
  103. package/esm/typings/src/storage/files-storage/FilesStorage.d.ts +30 -0
  104. package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +13 -0
  105. package/esm/typings/src/storage/files-storage/utils/nameToSubfolderPath.d.ts +7 -0
  106. package/esm/typings/src/storage/files-storage/utils/nameToSubfolderPath.test.d.ts +1 -0
  107. package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +9 -0
  108. package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +9 -0
  109. package/esm/typings/src/storage/memory/MemoryStorage.d.ts +34 -0
  110. package/esm/typings/src/storage/utils/PrefixStorage.d.ts +26 -0
  111. package/esm/typings/src/storage/utils/makePromptbookStorageFromWebStorage.d.ts +11 -0
  112. package/esm/typings/src/types/ModelRequirements.d.ts +71 -11
  113. package/esm/typings/src/types/ModelVariant.d.ts +14 -0
  114. package/esm/typings/src/types/PipelineJson/Expectations.d.ts +6 -2
  115. package/esm/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +67 -0
  116. package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +24 -0
  117. package/esm/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +9 -1
  118. package/esm/typings/src/types/PipelineJson/PersonaJson.d.ts +38 -0
  119. package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +29 -4
  120. package/esm/typings/src/types/PipelineJson/PreparationJson.d.ts +21 -0
  121. package/esm/typings/src/types/PipelineJson/PromptDialogJson.d.ts +5 -0
  122. package/esm/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +5 -1
  123. package/esm/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +13 -4
  124. package/esm/typings/src/types/PipelineJson/PromptTemplateParameterJson.d.ts +11 -2
  125. package/esm/typings/src/types/PipelineJson/ScriptJson.d.ts +2 -0
  126. package/esm/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +2 -0
  127. package/esm/typings/src/types/PipelineString.d.ts +1 -1
  128. package/esm/typings/src/types/Prompt.d.ts +54 -10
  129. package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +4 -4
  130. package/esm/typings/src/types/execution-report/ExecutionReportStringOptions.d.ts +3 -3
  131. package/esm/typings/src/types/execution-report/countWorkingDuration.d.ts +1 -1
  132. package/esm/typings/src/types/typeAliases.d.ts +114 -15
  133. package/esm/typings/src/utils/FromtoItems.d.ts +3 -3
  134. package/esm/typings/src/utils/currentDate.d.ts +7 -0
  135. package/esm/typings/src/utils/deepClone.d.ts +9 -0
  136. package/esm/typings/src/utils/deepFreeze.d.ts +22 -0
  137. package/esm/typings/src/utils/emojis.d.ts +2 -2
  138. package/esm/typings/src/utils/extractParameters.d.ts +2 -2
  139. package/esm/typings/src/utils/formatNumber.d.ts +1 -1
  140. package/esm/typings/src/utils/isRunningInWhatever.d.ts +3 -0
  141. package/esm/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +3 -3
  142. package/esm/typings/src/utils/markdown/createMarkdownChart.d.ts +7 -10
  143. package/esm/typings/src/utils/markdown/createMarkdownTable.d.ts +1 -1
  144. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
  145. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +9 -2
  146. package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +1 -1
  147. package/esm/typings/src/utils/markdown/parseMarkdownSection.d.ts +3 -3
  148. package/esm/typings/src/utils/normalization/parseKeywords.d.ts +2 -1
  149. package/esm/typings/src/utils/organization/TODO_USE.d.ts +12 -0
  150. package/esm/typings/src/utils/organization/TODO_any.d.ts +6 -0
  151. package/esm/typings/src/utils/organization/TODO_object.d.ts +6 -0
  152. package/esm/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
  153. package/esm/typings/src/utils/organization/___.d.ts +6 -0
  154. package/esm/typings/src/utils/{just.d.ts → organization/just.d.ts} +5 -1
  155. package/esm/typings/src/utils/organization/keepUnused.d.ts +16 -0
  156. package/esm/typings/src/utils/organization/really_any.d.ts +6 -0
  157. package/esm/typings/src/utils/organization/really_unknown.d.ts +6 -0
  158. package/esm/typings/src/utils/random/randomSeed.d.ts +7 -0
  159. package/{umd/typings/src/execution → esm/typings/src}/utils/replaceParameters.d.ts +2 -4
  160. package/esm/typings/src/utils/replaceParameters.test.d.ts +1 -0
  161. package/esm/typings/src/utils/sets/difference.d.ts +3 -0
  162. package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +2 -1
  163. package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -1
  164. package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -1
  165. package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +2 -1
  166. package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +2 -1
  167. package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +2 -1
  168. package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +2 -1
  169. package/esm/typings/src/utils/validators/uuid/isValidUuid.d.ts +2 -1
  170. package/package.json +2 -2
  171. package/umd/index.umd.js +181 -18
  172. package/umd/index.umd.js.map +1 -1
  173. package/umd/typings/promptbook-collection/index.d.ts +200 -30
  174. package/umd/typings/src/_packages/core.index.d.ts +7 -2
  175. package/umd/typings/src/_packages/execute-javascript.index.d.ts +1 -1
  176. package/umd/typings/src/_packages/node.index.d.ts +2 -1
  177. package/umd/typings/src/_packages/types.index.d.ts +11 -7
  178. package/umd/typings/src/_packages/utils.index.d.ts +8 -6
  179. package/umd/typings/src/cli/cli-commands/hello.d.ts +3 -0
  180. package/umd/typings/src/cli/cli-commands/make.d.ts +3 -0
  181. package/umd/typings/src/cli/cli-commands/prettify.d.ts +3 -0
  182. package/umd/typings/src/cli/promptbookCli.d.ts +1 -0
  183. package/umd/typings/src/collection/PipelineCollection.d.ts +1 -1
  184. package/umd/typings/src/collection/SimplePipelineCollection.d.ts +10 -10
  185. package/umd/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +8 -7
  186. package/umd/typings/src/collection/constructors/createCollectionFromUrl.d.ts +2 -2
  187. package/umd/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +2 -3
  188. package/umd/typings/src/commands/MODEL/ModelCommand.d.ts +2 -2
  189. package/umd/typings/src/commands/PERSONA/PersonaCommand.d.ts +4 -2
  190. package/umd/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -0
  191. package/umd/typings/src/commands/_common/types/CommandParser.d.ts +42 -14
  192. package/umd/typings/src/config.d.ts +38 -1
  193. package/umd/typings/src/config.test.d.ts +4 -0
  194. package/umd/typings/src/conversion/pipelineJsonToString.d.ts +1 -1
  195. package/umd/typings/src/conversion/pipelineStringToJson.d.ts +9 -5
  196. package/umd/typings/src/conversion/pipelineStringToJsonSync.d.ts +5 -3
  197. package/umd/typings/src/conversion/prettify/PrettifyOptions.d.ts +2 -2
  198. package/umd/typings/src/conversion/utils/extractParametersFromPromptTemplate.d.ts +2 -2
  199. package/umd/typings/src/conversion/utils/renameParameter.d.ts +3 -3
  200. package/umd/typings/src/conversion/utils/stringifyPipelineJson.d.ts +13 -0
  201. package/umd/typings/src/conversion/utils/stringifyPipelineJson.test.d.ts +1 -0
  202. package/umd/typings/src/conversion/validation/_importPipeline.d.ts +12 -3
  203. package/umd/typings/src/conversion/validation/validatePipeline.d.ts +10 -1
  204. package/umd/typings/src/errors/EnvironmentMismatchError.d.ts +7 -0
  205. package/umd/typings/src/errors/LimitReachedError.d.ts +7 -0
  206. package/umd/typings/src/errors/VersionMismatchError.d.ts +8 -0
  207. package/umd/typings/src/execution/CommonExecutionToolsOptions.d.ts +1 -0
  208. package/umd/typings/src/execution/LlmExecutionTools.d.ts +10 -8
  209. package/umd/typings/src/execution/PipelineExecutor.d.ts +10 -8
  210. package/umd/typings/src/execution/PromptResult.d.ts +28 -58
  211. package/umd/typings/src/execution/PromptResultUsage.d.ts +26 -0
  212. package/umd/typings/src/execution/ScriptExecutionTools.d.ts +5 -4
  213. package/umd/typings/src/execution/UncertainNumber.d.ts +18 -0
  214. package/umd/typings/src/execution/UserInterfaceTools.d.ts +5 -5
  215. package/umd/typings/src/execution/createPipelineExecutor.d.ts +20 -3
  216. package/umd/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +2 -2
  217. package/umd/typings/src/execution/utils/addUsage.d.ts +58 -2
  218. package/umd/typings/src/execution/utils/computeUsageCounts.d.ts +1 -1
  219. package/umd/typings/src/execution/utils/forEachAsync.d.ts +1 -1
  220. package/umd/typings/src/execution/utils/uncertainNumber.d.ts +1 -1
  221. package/umd/typings/src/execution/utils/usageToWorktime.d.ts +2 -2
  222. package/umd/typings/src/formats/_common/FormatDefinition.d.ts +1 -1
  223. package/umd/typings/src/formats/csv/ListFormatDefinition.d.ts +2 -1
  224. package/umd/typings/src/formats/json/JsonFormatDefinition.d.ts +2 -1
  225. package/umd/typings/src/formats/list/ListFormatDefinition.d.ts +2 -1
  226. package/umd/typings/src/formats/xml/XmlFormatDefinition.d.ts +1 -0
  227. package/umd/typings/src/knowledge/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +1 -1
  228. package/umd/typings/src/knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +3 -0
  229. package/umd/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +27 -0
  230. package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.d.ts +18 -0
  231. package/umd/typings/src/knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts +1 -0
  232. package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +9 -23
  233. package/umd/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts +3 -0
  234. package/umd/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +8 -14
  235. package/umd/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +30 -0
  236. package/umd/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +10 -0
  237. package/umd/typings/src/llm-providers/_common/getLlmToolsForTestingAndScriptsAndPlayground.d.ts +11 -0
  238. package/umd/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +29 -0
  239. package/umd/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +10 -0
  240. package/umd/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +16 -0
  241. package/umd/typings/src/llm-providers/_common/utils/count-total-cost/LlmExecutionToolsWithTotalCost.d.ts +11 -0
  242. package/umd/typings/src/llm-providers/_common/utils/count-total-cost/countTotalCost.d.ts +14 -0
  243. package/umd/typings/src/llm-providers/_common/utils/count-total-cost/limitTotalCost.d.ts +32 -0
  244. package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +3 -2
  245. package/umd/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +1 -1
  246. package/umd/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +3 -3
  247. package/umd/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -0
  248. package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +5 -4
  249. package/umd/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +5 -5
  250. package/umd/typings/src/llm-providers/azure-openai/playground/playground.d.ts +3 -0
  251. package/umd/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +3 -0
  252. package/umd/typings/src/llm-providers/langtail/LangtailExecutionToolsOptions.d.ts +1 -1
  253. package/umd/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -5
  254. package/umd/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +7 -7
  255. package/umd/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +12 -8
  256. package/umd/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +7 -6
  257. package/umd/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +1 -1
  258. package/umd/typings/src/llm-providers/openai/computeOpenaiUsage.d.ts +1 -1
  259. package/umd/typings/src/llm-providers/openai/computeUsage.d.ts +2 -2
  260. package/umd/typings/src/llm-providers/openai/openai-models.d.ts +3 -2
  261. package/umd/typings/src/llm-providers/openai/playground/playground.d.ts +3 -0
  262. package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +9 -7
  263. package/umd/typings/src/llm-providers/remote/RemoteLlmExecutionToolsOptions.d.ts +1 -1
  264. package/umd/typings/src/personas/preparePersona.d.ts +15 -0
  265. package/umd/typings/src/personas/preparePersona.test.d.ts +1 -0
  266. package/umd/typings/src/prepare/PrepareOptions.d.ts +22 -0
  267. package/umd/typings/src/prepare/isPipelinePrepared.d.ts +10 -0
  268. package/umd/typings/src/prepare/isPipelinePrepared.test.d.ts +1 -0
  269. package/umd/typings/src/prepare/preparePipeline.d.ts +18 -0
  270. package/umd/typings/src/prepare/unpreparePipeline.d.ts +9 -0
  271. package/umd/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +1 -1
  272. package/umd/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  273. package/umd/typings/src/scripting/javascript/utils/unknownToString.d.ts +2 -1
  274. package/umd/typings/src/storage/_common/PromptbookStorage.d.ts +25 -0
  275. package/umd/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
  276. package/umd/typings/src/storage/files-storage/FilesStorage.d.ts +30 -0
  277. package/umd/typings/src/storage/files-storage/FilesStorageOptions.d.ts +13 -0
  278. package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.d.ts +7 -0
  279. package/umd/typings/src/storage/files-storage/utils/nameToSubfolderPath.test.d.ts +1 -0
  280. package/umd/typings/src/storage/local-storage/getLocalStorage.d.ts +9 -0
  281. package/umd/typings/src/storage/local-storage/getSessionStorage.d.ts +9 -0
  282. package/umd/typings/src/storage/memory/MemoryStorage.d.ts +34 -0
  283. package/umd/typings/src/storage/utils/PrefixStorage.d.ts +26 -0
  284. package/umd/typings/src/storage/utils/makePromptbookStorageFromWebStorage.d.ts +11 -0
  285. package/umd/typings/src/types/ModelRequirements.d.ts +71 -11
  286. package/umd/typings/src/types/ModelVariant.d.ts +14 -0
  287. package/umd/typings/src/types/PipelineJson/Expectations.d.ts +6 -2
  288. package/umd/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +67 -0
  289. package/umd/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +24 -0
  290. package/umd/typings/src/types/PipelineJson/LlmTemplateJson.d.ts +9 -1
  291. package/umd/typings/src/types/PipelineJson/PersonaJson.d.ts +38 -0
  292. package/umd/typings/src/types/PipelineJson/PipelineJson.d.ts +29 -4
  293. package/umd/typings/src/types/PipelineJson/PreparationJson.d.ts +21 -0
  294. package/umd/typings/src/types/PipelineJson/PromptDialogJson.d.ts +5 -0
  295. package/umd/typings/src/types/PipelineJson/PromptTemplateJson.d.ts +5 -1
  296. package/umd/typings/src/types/PipelineJson/PromptTemplateJsonCommon.d.ts +13 -4
  297. package/umd/typings/src/types/PipelineJson/PromptTemplateParameterJson.d.ts +11 -2
  298. package/umd/typings/src/types/PipelineJson/ScriptJson.d.ts +2 -0
  299. package/umd/typings/src/types/PipelineJson/SimpleTemplateJson.d.ts +2 -0
  300. package/umd/typings/src/types/PipelineString.d.ts +1 -1
  301. package/umd/typings/src/types/Prompt.d.ts +54 -10
  302. package/umd/typings/src/types/execution-report/ExecutionReportJson.d.ts +4 -4
  303. package/umd/typings/src/types/execution-report/ExecutionReportStringOptions.d.ts +3 -3
  304. package/umd/typings/src/types/execution-report/countWorkingDuration.d.ts +1 -1
  305. package/umd/typings/src/types/typeAliases.d.ts +114 -15
  306. package/umd/typings/src/utils/FromtoItems.d.ts +3 -3
  307. package/umd/typings/src/utils/currentDate.d.ts +7 -0
  308. package/umd/typings/src/utils/deepClone.d.ts +9 -0
  309. package/umd/typings/src/utils/deepFreeze.d.ts +22 -0
  310. package/umd/typings/src/utils/emojis.d.ts +2 -2
  311. package/umd/typings/src/utils/extractParameters.d.ts +2 -2
  312. package/umd/typings/src/utils/formatNumber.d.ts +1 -1
  313. package/umd/typings/src/utils/isRunningInWhatever.d.ts +3 -0
  314. package/umd/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +3 -3
  315. package/umd/typings/src/utils/markdown/createMarkdownChart.d.ts +7 -10
  316. package/umd/typings/src/utils/markdown/createMarkdownTable.d.ts +1 -1
  317. package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
  318. package/umd/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +9 -2
  319. package/umd/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +1 -1
  320. package/umd/typings/src/utils/markdown/parseMarkdownSection.d.ts +3 -3
  321. package/umd/typings/src/utils/normalization/parseKeywords.d.ts +2 -1
  322. package/umd/typings/src/utils/organization/TODO_USE.d.ts +12 -0
  323. package/umd/typings/src/utils/organization/TODO_any.d.ts +6 -0
  324. package/umd/typings/src/utils/organization/TODO_object.d.ts +6 -0
  325. package/umd/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
  326. package/umd/typings/src/utils/organization/___.d.ts +6 -0
  327. package/umd/typings/src/utils/{just.d.ts → organization/just.d.ts} +5 -1
  328. package/umd/typings/src/utils/organization/keepUnused.d.ts +16 -0
  329. package/umd/typings/src/utils/organization/really_any.d.ts +6 -0
  330. package/umd/typings/src/utils/organization/really_unknown.d.ts +6 -0
  331. package/umd/typings/src/utils/random/randomSeed.d.ts +7 -0
  332. package/{esm/typings/src/execution → umd/typings/src}/utils/replaceParameters.d.ts +2 -4
  333. package/umd/typings/src/utils/replaceParameters.test.d.ts +1 -0
  334. package/umd/typings/src/utils/sets/difference.d.ts +3 -0
  335. package/umd/typings/src/utils/validators/email/isValidEmail.d.ts +2 -1
  336. package/umd/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -1
  337. package/umd/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +2 -1
  338. package/umd/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +2 -1
  339. package/umd/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +2 -1
  340. package/umd/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +2 -1
  341. package/umd/typings/src/utils/validators/url/isValidUrl.d.ts +2 -1
  342. package/umd/typings/src/utils/validators/uuid/isValidUuid.d.ts +2 -1
  343. package/esm/typings/src/collection/constructors/justTestFsImport.d.ts +0 -7
  344. package/esm/typings/src/personas/personaToModelRequirements.d.ts +0 -6
  345. package/esm/typings/src/types/Parameters.d.ts +0 -14
  346. package/esm/typings/src/types/PipelineJson/KnowledgeJson.d.ts +0 -6
  347. package/esm/typings/src/types/PipelineJson/MaterialKnowledgePieceJson.d.ts +0 -28
  348. package/umd/typings/src/collection/constructors/justTestFsImport.d.ts +0 -7
  349. package/umd/typings/src/personas/personaToModelRequirements.d.ts +0 -6
  350. package/umd/typings/src/types/Parameters.d.ts +0 -14
  351. package/umd/typings/src/types/PipelineJson/KnowledgeJson.d.ts +0 -6
  352. package/umd/typings/src/types/PipelineJson/MaterialKnowledgePieceJson.d.ts +0 -28
  353. /package/esm/typings/src/_packages/{markdown-utils.d.ts → markdown-utils.index.d.ts} +0 -0
  354. /package/esm/typings/src/{execution/addPromptResultUsage.test.d.ts → conversion/utils/stringifyPipelineJson.test.d.ts} +0 -0
  355. /package/esm/typings/src/{execution/utils/replaceParameters.test.d.ts → knowledge/prepare-knowledge/_common/prepareKnowledgePieces.test.d.ts} +0 -0
  356. /package/{umd/typings/src/execution/addPromptResultUsage.test.d.ts → esm/typings/src/personas/preparePersona.test.d.ts} +0 -0
  357. /package/esm/typings/src/{utils/postprocessing → postprocessing/utils}/extractBlock.d.ts +0 -0
  358. /package/{umd/typings/src/execution/utils/replaceParameters.test.d.ts → esm/typings/src/prepare/isPipelinePrepared.test.d.ts} +0 -0
  359. /package/umd/typings/src/_packages/{markdown-utils.d.ts → markdown-utils.index.d.ts} +0 -0
  360. /package/umd/typings/src/{utils/postprocessing → postprocessing/utils}/extractBlock.d.ts +0 -0
@@ -0,0 +1,18 @@
1
+ import type { number_positive } from '../types/typeAliases';
2
+ import type { number_usd } from '../types/typeAliases';
3
+ /**
4
+ * Number which can be uncertain
5
+ *
6
+ * Note: If the value is completelly unknown, the value 0 and isUncertain is true
7
+ * Note: Not using NaN or null because it looses the value which is better to be uncertain then not to be at all
8
+ */
9
+ export type UncertainNumber = {
10
+ /**
11
+ * The numeric value
12
+ */
13
+ readonly value: number_usd & (number_positive | 0);
14
+ /**
15
+ * Is the value uncertain
16
+ */
17
+ readonly isUncertain?: true;
18
+ };
@@ -21,26 +21,26 @@ export type UserInterfaceToolsPromptDialogOptions = {
21
21
  * Note: This is not a prompt to language model but a prompt to the user
22
22
  * @example "Your name"
23
23
  */
24
- promptTitle: string;
24
+ readonly promptTitle: string;
25
25
  /**
26
26
  * Prompt message
27
27
  *
28
28
  * Note: This is not a prompt to language model but a prompt to the user
29
29
  * @example "Please enter your name, including your last name, title, etc."
30
30
  */
31
- promptMessage: string;
31
+ readonly promptMessage: string;
32
32
  /**
33
33
  * Default value for the input/textarea
34
34
  */
35
- defaultValue: string | null;
35
+ readonly defaultValue: string | null;
36
36
  /**
37
37
  * Placeholder for the input/textarea
38
38
  */
39
- placeholder?: string;
39
+ readonly placeholder?: string;
40
40
  /**
41
41
  * Priority of the prompt
42
42
  *
43
43
  * Note: This would be reflected for example into the UI z-index of the prompt modal
44
44
  */
45
- priority: number_integer & number_positive;
45
+ readonly priority: number_integer & number_positive;
46
46
  };
@@ -5,12 +5,24 @@ type CreatePipelineExecutorSettings = {
5
5
  /**
6
6
  * When executor does not satisfy expectations it will be retried this amount of times
7
7
  *
8
- * @default 3
8
+ * @default MAX_EXECUTION_ATTEMPTS
9
9
  */
10
- readonly maxExecutionAttempts: number;
10
+ readonly maxExecutionAttempts?: number;
11
+ /**
12
+ * Maximum number of tasks running in parallel
13
+ *
14
+ * @default MAX_PARALLEL_COUNT
15
+ */
16
+ readonly maxParallelCount?: number;
17
+ /**
18
+ * If true, the preparation logs additional information
19
+ *
20
+ * @default false
21
+ */
22
+ readonly isVerbose?: boolean;
11
23
  };
12
24
  /**
13
- * Options for creating a pipeline executor
25
+ * Options for `createPipelineExecutor`
14
26
  */
15
27
  interface CreatePipelineExecutorOptions {
16
28
  /**
@@ -35,8 +47,13 @@ interface CreatePipelineExecutorOptions {
35
47
  export declare function createPipelineExecutor(options: CreatePipelineExecutorOptions): PipelineExecutor;
36
48
  export {};
37
49
  /**
50
+ * TODO: Use isVerbose here (not only pass to `preparePipeline`)
51
+ * TODO: [🪂] Use maxParallelCount here (not only pass to `preparePipeline`)
52
+ * TODO: [♈] Probbably move expectations from templates to parameters
38
53
  * TODO: [🧠] When not meet expectations in PROMPT_DIALOG, make some way to tell the user
39
54
  * TODO: [👧] Strongly type the executors to avoid need of remove nullables whtn noUncheckedIndexedAccess in tsconfig.json
40
55
  * Note: CreatePipelineExecutorOptions are just connected to PipelineExecutor so do not extract to types folder
41
56
  * TODO: [🧠][3] transparent = (report intermediate parameters) / opaque execution = (report only output parameters) progress reporting mode
57
+ * TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
58
+ * TODO: [💷] !!!! `assertsExecutionSuccessful` should be the method of `PipelineExecutor` result
42
59
  */
@@ -1,4 +1,4 @@
1
1
  export type TranslatorOptions = {
2
- from?: string;
3
- to: string;
2
+ readonly from?: string;
3
+ readonly to: string;
4
4
  };
@@ -1,7 +1,63 @@
1
- import type { PromptResultUsage } from '../PromptResult';
1
+ import type { PromptResultUsage } from '../PromptResultUsage';
2
+ /**
3
+ * @@@
4
+ *
5
+ * TODO: [🔼] Export with addUsage
6
+ */
7
+ export declare const ZERO_USAGE: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
8
+ readonly price: {
9
+ readonly value: 0;
10
+ };
11
+ readonly input: {
12
+ readonly tokensCount: {
13
+ readonly value: 0;
14
+ };
15
+ readonly charactersCount: {
16
+ readonly value: 0;
17
+ };
18
+ readonly wordsCount: {
19
+ readonly value: 0;
20
+ };
21
+ readonly sentencesCount: {
22
+ readonly value: 0;
23
+ };
24
+ readonly linesCount: {
25
+ readonly value: 0;
26
+ };
27
+ readonly paragraphsCount: {
28
+ readonly value: 0;
29
+ };
30
+ readonly pagesCount: {
31
+ readonly value: 0;
32
+ };
33
+ };
34
+ readonly output: {
35
+ readonly tokensCount: {
36
+ readonly value: 0;
37
+ };
38
+ readonly charactersCount: {
39
+ readonly value: 0;
40
+ };
41
+ readonly wordsCount: {
42
+ readonly value: 0;
43
+ };
44
+ readonly sentencesCount: {
45
+ readonly value: 0;
46
+ };
47
+ readonly linesCount: {
48
+ readonly value: 0;
49
+ };
50
+ readonly paragraphsCount: {
51
+ readonly value: 0;
52
+ };
53
+ readonly pagesCount: {
54
+ readonly value: 0;
55
+ };
56
+ };
57
+ }>;
2
58
  /**
3
59
  * Function `addUsage` will add multiple usages into one
4
60
  *
5
- * Note: If you provide 0 values, it returns void usage
61
+ * Note: If you provide 0 values, it returns ZERO_USAGE
6
62
  */
7
63
  export declare function addUsage(...usageItems: Array<PromptResultUsage>): PromptResultUsage;
@@ -1,4 +1,4 @@
1
- import type { PromptResultUsageCounts } from '../PromptResult';
1
+ import type { PromptResultUsageCounts } from '../PromptResultUsage';
2
2
  /**
3
3
  * Helper of usage compute
4
4
  *
@@ -5,7 +5,7 @@ type ForEachAsyncOptions = {
5
5
  *
6
6
  * @default Infinity
7
7
  */
8
- inParallelCount?: number;
8
+ readonly maxParallelCount?: number;
9
9
  };
10
10
  /**
11
11
  * Async version of Array.forEach
@@ -1,4 +1,4 @@
1
- import type { UncertainNumber } from '../PromptResult';
1
+ import type { UncertainNumber } from '../UncertainNumber';
2
2
  /**
3
3
  * Make UncertainNumber
4
4
  *
@@ -1,5 +1,5 @@
1
- import type { PromptResultUsage } from '../PromptResult';
2
- import type { UncertainNumber } from '../PromptResult';
1
+ import type { PromptResultUsage } from '../PromptResultUsage';
2
+ import type { UncertainNumber } from '../UncertainNumber';
3
3
  /**
4
4
  * Function usageToWorktime will take usage and estimate saved worktime in hours of reading / writing
5
5
  *
@@ -65,5 +65,5 @@ export type FormatDefinition<TValue extends TPartialValue, TPartialValue extends
65
65
  * TODO: [🍓][👨‍⚖️] Compute TPartialValue dynamically - PartialString<TValue>
66
66
  * TODO: [🍓][🧠] Should execution tools be aviable to heal, canBeValid and isValid?
67
67
  * TODO: [🍓][🧠] llm Provider Bindings
68
- * TODO: [🍓]Export via some package
68
+ * TODO: [🍓][🔼] Export via some package
69
69
  */
@@ -8,4 +8,5 @@ export declare const CsvFormatDefinition: FormatDefinition<string, string, objec
8
8
  * TODO: [🍓] In `CsvFormatDefinition` implement partial `canBeValid`
9
9
  * TODO: [🍓] In `CsvFormatDefinition` implement `heal
10
10
  * TODO: [🍓] In `CsvFormatDefinition` implement `extractValues`
11
- */
11
+ * TODO: [🏢] Allow to expect something inside CSV objects and other formats
12
+ */
@@ -12,4 +12,5 @@ export declare const JsonFormatDefinition: FormatDefinition<string, string, obje
12
12
  * TODO: [🍓] In `JsonFormatDefinition` implement partial `canBeValid`
13
13
  * TODO: [🍓] In `JsonFormatDefinition` implement `heal
14
14
  * TODO: [🍓] In `JsonFormatDefinition` implement `extractValues`
15
- */
15
+ * TODO: [🏢] Allow to expect something inside JSON objects and other formats
16
+ */
@@ -10,4 +10,5 @@ export declare const ListFormatDefinition: FormatDefinition<string, string, obje
10
10
  * TODO: [🍓] In `ListFormatDefinition` implement partial `canBeValid`
11
11
  * TODO: [🍓] In `ListFormatDefinition` implement `heal
12
12
  * TODO: [🍓] In `ListFormatDefinition` implement `extractValues`
13
- */
13
+ * TODO: [🏢] Allow to expect something inside each item of list and other formats
14
+ */
@@ -12,4 +12,5 @@ export declare const XmlFormatDefinition: FormatDefinition<string, string, objec
12
12
  * TODO: [🍓] In `XmlFormatDefinition` implement partial `canBeValid`
13
13
  * TODO: [🍓] In `XmlFormatDefinition` implement `heal
14
14
  * TODO: [🍓] In `XmlFormatDefinition` implement `extractValues`
15
+ * TODO: [🏢] Allow to expect something inside XML and other formats
15
16
  */
@@ -2,7 +2,7 @@ import type { Promisable } from 'type-fest';
2
2
  import type { CommonExecutionToolsOptions } from '../../../execution/CommonExecutionToolsOptions';
3
3
  import type { UserInterfaceToolsPromptDialogOptions } from '../../../execution/UserInterfaceTools';
4
4
  /**
5
- * Options for CallbackInterfaceTools
5
+ * Options for `CallbackInterfaceTools`
6
6
  */
7
7
  export type CallbackInterfaceToolsOptions = CommonExecutionToolsOptions & {
8
8
  /**
@@ -15,3 +15,6 @@ export declare class SimplePromptInterfaceTools implements UserInterfaceTools {
15
15
  */
16
16
  promptDialog(options: UserInterfaceToolsPromptDialogOptions): Promise<string>;
17
17
  }
18
+ /**
19
+ * Note: [🔵] This code should never be published outside of `@promptbook/browser`
20
+ */
@@ -0,0 +1,27 @@
1
+ import type { Promisable } from 'type-fest';
2
+ import type { string_file_path } from '../../../types/typeAliases';
3
+ import type { string_knowledge_source_link } from '../../../types/typeAliases';
4
+ import type { string_markdown } from '../../../types/typeAliases';
5
+ import type { string_markdown_text } from '../../../types/typeAliases';
6
+ import type { string_mime_type } from '../../../types/typeAliases';
7
+ import type { string_mime_type_with_wildcard } from '../../../types/typeAliases';
8
+ import type { string_promptbook_documentation_url } from '../../../types/typeAliases';
9
+ import type { really_unknown } from '../../../utils/organization/really_unknown';
10
+ export type Scraper = {
11
+ readonly description: string_markdown_text;
12
+ readonly documentationUrl: string_promptbook_documentation_url;
13
+ readonly examples: Array<string_file_path>;
14
+ readonly mimeTypes: Array<string_mime_type_with_wildcard>;
15
+ scrape(source: ScraperSourceOptions): Promisable<string_markdown>;
16
+ };
17
+ export type ScraperSourceOptions = {
18
+ readonly source: string_knowledge_source_link;
19
+ readonly mimeType: string_mime_type;
20
+ asJson(): Promise<really_unknown>;
21
+ asText(): Promise<really_unknown>;
22
+ asBlob(): Promise<really_unknown>;
23
+ };
24
+ /**
25
+ * TODO: [🐝] @@@ Annotate all
26
+ * TODO: [🔼] Export via types
27
+ */
@@ -0,0 +1,18 @@
1
+ import type { PrepareOptions } from '../../../prepare/PrepareOptions';
2
+ import type { KnowledgePiecePreparedJson } from '../../../types/PipelineJson/KnowledgePieceJson';
3
+ import type { KnowledgeSourceJson } from '../../../types/PipelineJson/KnowledgeSourceJson';
4
+ /**
5
+ * Prepares the knowle
6
+ *
7
+ * @see https://github.com/webgptorg/promptbook/discussions/41
8
+ */
9
+ export declare function prepareKnowledgePieces(knowledgeSources: Array<KnowledgeSourceJson>, options: PrepareOptions): Promise<Array<Omit<KnowledgePiecePreparedJson, 'preparationIds'>>>;
10
+ /**
11
+ * TODO: [🐝][🔼] !!! Export via `@promptbook/core`
12
+ * TODO: [🧊] In future one preparation can take data from previous preparation and save tokens and time
13
+ * Put `knowledgePieces` into `PrepareKnowledgeOptions`
14
+ * TODO: [🪂] More than max things can run in parallel by acident [1,[2a,2b,_],[3a,3b,_]]
15
+ * TODO: [🧠][❎] Do here propper M:N mapping
16
+ * [x] One source can make multiple pieces
17
+ * [ ] One piece can have multiple sources
18
+ */
@@ -1,26 +1,12 @@
1
- import type { LlmExecutionTools } from '../../../execution/LlmExecutionTools';
2
- import type { KnowledgeJson } from '../../../types/PipelineJson/KnowledgeJson';
1
+ import type { PrepareOptions } from '../../../prepare/PrepareOptions';
2
+ import type { KnowledgePiecePreparedJson } from '../../../types/PipelineJson/KnowledgePieceJson';
3
3
  import type { string_markdown } from '../../../types/typeAliases';
4
- type PrepareKnowledgeFromMarkdownOptions = {
5
- /**
6
- * The source of the knowledge in markdown format
7
- */
8
- content: string_markdown;
9
- /**
10
- * The LLM tools to use for the conversion and extraction of knowledge
11
- *
12
- * Note: If you want to use multiple LLMs, you can use `joinLlmExecutionTools` to join them first
13
- */
14
- llmTools: LlmExecutionTools;
15
- /**
16
- * If true, the preaparation of knowledge logs additional information
17
- *
18
- * @default false
19
- */
20
- isVerbose?: boolean;
21
- };
22
- export declare function prepareKnowledgeFromMarkdown(options: PrepareKnowledgeFromMarkdownOptions): Promise<KnowledgeJson>;
23
- export {};
24
4
  /**
25
- * 11:11
5
+ * @@@
6
+ */
7
+ export declare function prepareKnowledgeFromMarkdown(content: string_markdown, options: PrepareOptions): Promise<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>>>;
8
+ /**
9
+ * TODO: [🐝][🔼] !!! Export via `@promptbook/markdown`
10
+ * TODO: [🪂] Do it in parallel 11:11
11
+ * Note: No need to aggregate usage here, it is done by intercepting the llmTools
26
12
  */
@@ -1 +1,4 @@
1
1
  export {};
2
+ /**
3
+ * TODO: [📓] Maybe test all file in samples (not just 10-simple.md)
4
+ */
@@ -1,19 +1,13 @@
1
- import type { LlmExecutionTools } from '../../../execution/LlmExecutionTools';
2
- import type { KnowledgeJson } from '../../../types/PipelineJson/KnowledgeJson';
1
+ import type { PrepareOptions } from '../../../prepare/PrepareOptions';
2
+ import type { KnowledgePiecePreparedJson } from '../../../types/PipelineJson/KnowledgePieceJson';
3
3
  import type { string_base64 } from '../../../types/typeAliases';
4
- type PrepareKnowledgeFromPdfOptions = {
5
- /**
6
- * The source of the knowledge in PDF format
7
- */
8
- content: string_base64;
9
- /**
10
- * The LLM tools to use for the conversion and extraction of knowledge
11
- */
12
- llmTools: LlmExecutionTools;
13
- };
14
- export declare function prepareKnowledgeFromPdf(options: PrepareKnowledgeFromPdfOptions): Promise<KnowledgeJson>;
15
- export {};
16
4
  /**
5
+ * @@@
6
+ */
7
+ export declare function prepareKnowledgeFromPdf(content: string_base64, options: PrepareOptions): Promise<Array<Omit<KnowledgePiecePreparedJson, 'sources' | 'preparationIds'>>>;
8
+ /**
9
+ * TODO: [🐝][🔼] !!! Export via `@promptbook/pdf`
17
10
  * TODO: [🧺] In future, content can be alse File or Blob BUT for now for wider compatibility its only base64
18
11
  * @see https://stackoverflow.com/questions/14653349/node-js-cant-create-blobs
12
+ * TODO: [🪂] Do it in parallel
19
13
  */
@@ -0,0 +1,30 @@
1
+ import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
2
+ export type CreateLlmToolsFromEnvOptions = {
3
+ /**
4
+ * This will will be passed to the created `LlmExecutionTools`
5
+ *
6
+ * @default false
7
+ */
8
+ isVerbose?: boolean;
9
+ };
10
+ /**
11
+ * @@@
12
+ *
13
+ * Note: This function is not cached, every call creates new instance of `LlmExecutionTools`
14
+ *
15
+ * It looks for environment variables:
16
+ * - `process.env.OPENAI_API_KEY`
17
+ * - `process.env.ANTHROPIC_CLAUDE_API_KEY`
18
+ *
19
+ * @returns @@@
20
+ */
21
+ export declare function createLlmToolsFromEnv(options?: CreateLlmToolsFromEnvOptions): LlmExecutionTools;
22
+ /**
23
+ * TODO: [🔼] !!! Export via `@promptbook/node`
24
+ * TODO: @@@ write discussion about this - wizzard
25
+ * TODO: Add Azure
26
+ * TODO: [🧠] Which name is better `createLlmToolsFromEnv` or `createLlmToolsFromEnvironment`?
27
+ * TODO: [🧠] Is there some meaningfull way how to test this util
28
+ * TODO: [🧠] Maybe pass env as argument
29
+ * Note: [🟢] This code should never be published outside of `@promptbook/node`
30
+ */
@@ -0,0 +1,10 @@
1
+ import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
2
+ /**
3
+ * Returns LLM tools for CLI
4
+ *
5
+ * @private within the repository - for CLI utils
6
+ */
7
+ export declare function getLlmToolsForCli(): LlmExecutionTools;
8
+ /**
9
+ * Note: [🟡] This code should never be published outside of `@promptbook/cli`
10
+ */
@@ -0,0 +1,11 @@
1
+ import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
2
+ import type { CreateLlmToolsFromEnvOptions } from './createLlmToolsFromEnv';
3
+ /**
4
+ * Returns LLM tools for testing purposes
5
+ *
6
+ * @private within the repository - JUST FOR TESTS, SCRIPTS AND PLAYGROUND
7
+ */
8
+ export declare function getLlmToolsForTestingAndScriptsAndPlayground(options?: CreateLlmToolsFromEnvOptions): LlmExecutionTools;
9
+ /**
10
+ * Note: [⚪] This should never be in any released package
11
+ */
@@ -0,0 +1,29 @@
1
+ import type { PromptResult } from '../../../../execution/PromptResult';
2
+ import type { Prompt } from '../../../../types/Prompt';
3
+ import type { string_date_iso8601 } from '../../../../types/typeAliases';
4
+ import type { string_promptbook_version } from '../../../../version';
5
+ /**
6
+ * @@@
7
+ */
8
+ export type CacheItem = {
9
+ /**
10
+ * @@@
11
+ */
12
+ date: string_date_iso8601;
13
+ /**
14
+ * @@@
15
+ */
16
+ promptbookVersion: string_promptbook_version;
17
+ /**
18
+ * @@@
19
+ */
20
+ prompt: Prompt;
21
+ /**
22
+ * @@@
23
+ */
24
+ promptResult: PromptResult;
25
+ };
26
+ /**
27
+ * TODO: [🧠] Should be this exported alongsite `cacheLlmTools` through `@promptbook/utils` OR through `@promptbook/types`
28
+ * TODO: [🛫] `prompt` is NOT fully serializable as JSON, it contains functions which are not serializable, fix it
29
+ */
@@ -0,0 +1,10 @@
1
+ import type { PromptbookStorage } from '../../../../storage/_common/PromptbookStorage';
2
+ import type { CacheItem } from './CacheItem';
3
+ export type CacheLlmToolsOptions = {
4
+ /**
5
+ * Total cost of the execution
6
+ *
7
+ * @default MemoryStorage
8
+ */
9
+ storage: PromptbookStorage<CacheItem>;
10
+ };
@@ -0,0 +1,16 @@
1
+ import type { LlmExecutionTools } from '../../../../execution/LlmExecutionTools';
2
+ import type { CacheLlmToolsOptions } from './CacheLlmToolsOptions';
3
+ /**
4
+ * Intercepts LLM tools and counts total usage of the tools
5
+ *
6
+ * @param llmTools LLM tools to be intercepted with usage counting
7
+ * @returns LLM tools with same functionality with added total cost counting
8
+ */
9
+ export declare function cacheLlmTools(llmTools: LlmExecutionTools, options?: Partial<CacheLlmToolsOptions>): LlmExecutionTools;
10
+ /**
11
+ * TODO: [🔼] !!! Export via `@promptbook/core`
12
+ * TODO: @@@ write discussion about this and storages
13
+ * write how to combine multiple interceptors
14
+ * TODO: [🧠][💸] Maybe make some common abstraction `interceptLlmTools` and use here (or use javascript Proxy?)
15
+ * TODO: [🧠] Is there some meaningfull way how to test this util
16
+ */
@@ -0,0 +1,11 @@
1
+ import type { LlmExecutionTools } from '../../../../execution/LlmExecutionTools';
2
+ import type { PromptResultUsage } from '../../../../execution/PromptResultUsage';
3
+ /**
4
+ * LLM tools with option to get total cost of the execution
5
+ */
6
+ export type LlmExecutionToolsWithTotalCost = LlmExecutionTools & {
7
+ /**
8
+ * Total cost of the execution
9
+ */
10
+ totalUsage: PromptResultUsage;
11
+ };
@@ -0,0 +1,14 @@
1
+ import type { LlmExecutionTools } from '../../../../execution/LlmExecutionTools';
2
+ import type { LlmExecutionToolsWithTotalCost } from './LlmExecutionToolsWithTotalCost';
3
+ /**
4
+ * Intercepts LLM tools and counts total usage of the tools
5
+ *
6
+ * @param llmTools LLM tools to be intercepted with usage counting
7
+ * @returns LLM tools with same functionality with added total cost counting
8
+ */
9
+ export declare function countTotalUsage(llmTools: LlmExecutionTools): LlmExecutionToolsWithTotalCost;
10
+ /**
11
+ * TODO: [🔼] !!! Export via `@promptbookcore/`
12
+ * TODO: [🧠][💸] Maybe make some common abstraction `interceptLlmTools` and use here (or use javascript Proxy?)
13
+ * TODO: [🧠] Is there some meaningfull way how to test this util
14
+ */
@@ -0,0 +1,32 @@
1
+ import type { LlmExecutionTools } from '../../../../execution/LlmExecutionTools';
2
+ import type { PromptResultUsage } from '../../../../execution/PromptResultUsage';
3
+ import type { PromptbookStorage } from '../../../../storage/_common/PromptbookStorage';
4
+ import type { TODO_any } from '../../../../utils/organization/TODO_any';
5
+ import type { LlmExecutionToolsWithTotalCost } from './LlmExecutionToolsWithTotalCost';
6
+ /**
7
+ * Options for `limitTotalCost`
8
+ */
9
+ type LimitTotalCostOptions = {
10
+ /**
11
+ * @@@
12
+ *
13
+ * @default ZERO_USAGE
14
+ */
15
+ maxTotalCost: PromptResultUsage;
16
+ /**
17
+ * @@@
18
+ *
19
+ * @default MemoryStorage
20
+ */
21
+ storage: PromptbookStorage<TODO_any>;
22
+ };
23
+ /**
24
+ * @@@
25
+ */
26
+ export declare function limitTotalCost(llmTools: LlmExecutionTools, options?: Partial<LimitTotalCostOptions>): LlmExecutionToolsWithTotalCost;
27
+ export {};
28
+ /**
29
+ * TODO: [🔼] !!! Export via `@promptbookcore/`
30
+ * TODO: [🧠][💸] Maybe make some common abstraction `interceptLlmTools` and use here (or use javascript Proxy?)
31
+ * TODO: [🧠] Is there some meaningfull way how to test this util
32
+ */
@@ -1,6 +1,6 @@
1
1
  import type { AvailableModel } from '../../execution/LlmExecutionTools';
2
2
  import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
3
- import type { PromptChatResult } from '../../execution/PromptResult';
3
+ import type { ChatPromptResult } from '../../execution/PromptResult';
4
4
  import type { Prompt } from '../../types/Prompt';
5
5
  import type { string_markdown } from '../../types/typeAliases';
6
6
  import type { string_markdown_text } from '../../types/typeAliases';
@@ -26,7 +26,7 @@ export declare class AnthropicClaudeExecutionTools implements LlmExecutionTools
26
26
  /**
27
27
  * Calls Anthropic Claude API to use a chat model.
28
28
  */
29
- callChatModel(prompt: Pick<Prompt, 'content' | 'modelRequirements'>): Promise<PromptChatResult>;
29
+ callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<ChatPromptResult>;
30
30
  /**
31
31
  * Get the model that should be used as default
32
32
  */
@@ -45,4 +45,5 @@ export declare class AnthropicClaudeExecutionTools implements LlmExecutionTools
45
45
  * TODO: [🧠] Maybe handle errors via transformAnthropicError (like transformAzureError)
46
46
  * TODO: Maybe Create some common util for callChatModel and callCompletionModel
47
47
  * TODO: Maybe make custom OpenaiError
48
+ * TODO: [🧠][🈁] Maybe use `isDeterministic` from options
48
49
  */
@@ -1,7 +1,7 @@
1
1
  import type { ClientOptions } from '@anthropic-ai/sdk';
2
2
  import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutionToolsOptions';
3
3
  /**
4
- * Options for AnthropicClaudeExecutionTools
4
+ * Options for `AnthropicClaudeExecutionTools`
5
5
  *
6
6
  * This extends Anthropic's `ClientOptions` with are directly passed to the Anthropic client.
7
7
  */
@@ -9,13 +9,13 @@ import type { number_usd } from '../../types/typeAliases';
9
9
  */
10
10
  export declare const ANTHROPIC_CLAUDE_MODELS: Array<AvailableModel & {
11
11
  pricing?: {
12
- prompt: number_usd;
13
- output: number_usd;
12
+ readonly prompt: number_usd;
13
+ readonly output: number_usd;
14
14
  };
15
15
  }>;
16
16
  /**
17
17
  * Note: [🤖] Add models of new variant
18
- * TODO: !!!! Add embedding models OR Anthropic has only chat+completion models?
18
+ * TODO: [🧠] !!! Add embedding models OR Anthropic has only chat+completion models?
19
19
  * TODO: [🧠] Some mechanism to propagate unsureness
20
20
  * TODO: [🧠][👮‍♀️] Put here more info like description, isVision, trainingDateCutoff, languages, strengths ( Top-level performance, intelligence, fluency, and understanding), contextWindow,...
21
21
  * TODO: [🕚] Make this list dynamic - dynamically can be listed modelNames but not modelVariant, legacy status, context length and pricing
@@ -1,2 +1,5 @@
1
1
  #!/usr/bin/env ts-node
2
2
  export {};
3
+ /**
4
+ * TODO: !!! Test here that `systemMessage`, `temperature` and `seed` are working correctly
5
+ */
@@ -1,7 +1,7 @@
1
1
  import type { AvailableModel } from '../../execution/LlmExecutionTools';
2
2
  import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
3
- import type { PromptChatResult } from '../../execution/PromptResult';
4
- import type { PromptCompletionResult } from '../../execution/PromptResult';
3
+ import type { ChatPromptResult } from '../../execution/PromptResult';
4
+ import type { CompletionPromptResult } from '../../execution/PromptResult';
5
5
  import type { Prompt } from '../../types/Prompt';
6
6
  import type { string_markdown } from '../../types/typeAliases';
7
7
  import type { string_markdown_text } from '../../types/typeAliases';
@@ -27,11 +27,11 @@ export declare class AzureOpenAiExecutionTools implements LlmExecutionTools {
27
27
  /**
28
28
  * Calls OpenAI API to use a chat model.
29
29
  */
30
- callChatModel(prompt: Pick<Prompt, 'content' | 'modelRequirements'>): Promise<PromptChatResult>;
30
+ callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<ChatPromptResult>;
31
31
  /**
32
32
  * Calls Azure OpenAI API to use a complete model.
33
33
  */
34
- callCompletionModel(prompt: Pick<Prompt, 'content' | 'modelRequirements'>): Promise<PromptCompletionResult>;
34
+ callCompletionModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<CompletionPromptResult>;
35
35
  /**
36
36
  * Changes Azure error (which is not propper Error but object) to propper Error
37
37
  */
@@ -44,4 +44,5 @@ export declare class AzureOpenAiExecutionTools implements LlmExecutionTools {
44
44
  /**
45
45
  * TODO: Maybe Create some common util for callChatModel and callCompletionModel
46
46
  * TODO: Maybe make custom AzureOpenaiError
47
+ * TODO: [🧠][🈁] Maybe use `isDeterministic` from options
47
48
  */