@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
@@ -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
  */
@@ -2,7 +2,7 @@ import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutio
2
2
  import type { string_name } from '../../types/typeAliases';
3
3
  import type { string_token } from '../../types/typeAliases';
4
4
  /**
5
- * Options for AzureOpenAiExecutionTools
5
+ * Options for `AzureOpenAiExecutionTools`
6
6
  *
7
7
  * @see https://oai.azure.com/portal/
8
8
  */
@@ -12,7 +12,7 @@ export type AzureOpenAiExecutionToolsOptions = CommonExecutionToolsOptions & {
12
12
  *
13
13
  * Note: Typically you have one resource and multiple deployments.
14
14
  */
15
- resourceName: string_name;
15
+ readonly resourceName: string_name;
16
16
  /**
17
17
  * The deployment name
18
18
  *
@@ -20,16 +20,16 @@ export type AzureOpenAiExecutionToolsOptions = CommonExecutionToolsOptions & {
20
20
  * Note: This is kind of a modelName in OpenAI terms
21
21
  * Note: Typically you have one resource and multiple deployments.
22
22
  */
23
- deploymentName: string_name;
23
+ readonly deploymentName: string_name;
24
24
  /**
25
25
  * The API key of the Azure OpenAI resource
26
26
  */
27
- apiKey: string_token;
27
+ readonly apiKey: string_token;
28
28
  /**
29
29
  * A unique identifier representing your end-user, which can help Azure OpenAI to monitor
30
30
  * and detect abuse.
31
31
  *
32
32
  * @see https://platform.openai.com/docs/guides/safety-best-practices/end-user-ids (document from OpenAI not Azure, but same concept)
33
33
  */
34
- user?: string_token;
34
+ readonly user?: string_token;
35
35
  };
@@ -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
+ */
@@ -10,3 +10,6 @@ export declare class LangtailExecutionTools extends OpenAiExecutionTools impleme
10
10
  get title(): string_title & string_markdown_text;
11
11
  get description(): string_markdown;
12
12
  }
13
+ /**
14
+ * TODO: [🧠][🈁] Maybe use `isDeterministic` from options
15
+ */
@@ -7,5 +7,5 @@ import type { OpenAiExecutionToolsOptions } from '../openai/OpenAiExecutionTools
7
7
  */
8
8
  export type LangtailExecutionToolsOptions = OpenAiExecutionToolsOptions;
9
9
  /**
10
- * TODO: !!! Use or remove
10
+ * TODO: !! Use or remove
11
11
  */
@@ -1,8 +1,8 @@
1
1
  import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutionToolsOptions';
2
2
  import type { AvailableModel } from '../../execution/LlmExecutionTools';
3
3
  import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
4
- import type { PromptChatResult } from '../../execution/PromptResult';
5
- import type { PromptCompletionResult } from '../../execution/PromptResult';
4
+ import type { ChatPromptResult } from '../../execution/PromptResult';
5
+ import type { CompletionPromptResult } from '../../execution/PromptResult';
6
6
  import type { Prompt } from '../../types/Prompt';
7
7
  import type { string_markdown } from '../../types/typeAliases';
8
8
  import type { string_markdown_text } from '../../types/typeAliases';
@@ -18,17 +18,17 @@ export declare class MockedEchoLlmExecutionTools implements LlmExecutionTools {
18
18
  /**
19
19
  * Mocks chat model
20
20
  */
21
- callChatModel(prompt: Pick<Prompt, 'content' | 'modelRequirements'>): Promise<PromptChatResult>;
21
+ callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<ChatPromptResult>;
22
22
  /**
23
23
  * Mocks completion model
24
24
  */
25
- callCompletionModel(prompt: Pick<Prompt, 'content' | 'modelRequirements'>): Promise<PromptCompletionResult>;
25
+ callCompletionModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<CompletionPromptResult>;
26
26
  /**
27
27
  * List all available mocked-models that can be used
28
28
  */
29
29
  listModels(): Array<AvailableModel>;
30
30
  }
31
31
  /**
32
- * TODO: [🕵️‍♀️] Maybe just remove
32
+ * TODO: [🧠][🈁] Maybe use `isDeterministic` from options
33
33
  * TODO: Allow in spaceTrim: nesting with > ${block(prompt.request)}, same as replace params
34
34
  */
@@ -1,9 +1,9 @@
1
1
  import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutionToolsOptions';
2
2
  import type { AvailableModel } from '../../execution/LlmExecutionTools';
3
3
  import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
4
- import type { PromptChatResult } from '../../execution/PromptResult';
5
- import type { PromptCompletionResult } from '../../execution/PromptResult';
6
- import type { PromptEmbeddingResult } from '../../execution/PromptResult';
4
+ import type { ChatPromptResult } from '../../execution/PromptResult';
5
+ import type { CompletionPromptResult } from '../../execution/PromptResult';
6
+ import type { EmbeddingPromptResult } from '../../execution/PromptResult';
7
7
  import type { Prompt } from '../../types/Prompt';
8
8
  import type { string_markdown } from '../../types/typeAliases';
9
9
  import type { string_markdown_text } from '../../types/typeAliases';
@@ -19,20 +19,20 @@ export declare class MockedFackedLlmExecutionTools implements LlmExecutionTools
19
19
  /**
20
20
  * Fakes chat model
21
21
  */
22
- callChatModel(prompt: Pick<Prompt, 'content' | 'modelRequirements' | 'expectations' | 'postprocessing'>): Promise<PromptChatResult & PromptCompletionResult>;
22
+ callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements' | 'expectations' | 'postprocessing'>): Promise<ChatPromptResult & CompletionPromptResult>;
23
23
  /**
24
24
  * Fakes completion model
25
25
  */
26
- callCompletionModel(prompt: Pick<Prompt, 'content' | 'modelRequirements' | 'expectations' | 'postprocessing'>): Promise<PromptCompletionResult>;
26
+ callCompletionModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements' | 'expectations' | 'postprocessing'>): Promise<CompletionPromptResult>;
27
27
  /**
28
28
  * Fakes embedding model
29
29
  */
30
- callEmbeddingModel(prompt: Pick<Prompt, 'content' | 'modelRequirements' | 'expectations' | 'postprocessing'>): Promise<PromptEmbeddingResult>;
30
+ callEmbeddingModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements' | 'expectations' | 'postprocessing'>): Promise<EmbeddingPromptResult>;
31
31
  /**
32
32
  * List all available fake-models that can be used
33
33
  */
34
34
  listModels(): Array<AvailableModel>;
35
35
  }
36
36
  /**
37
- * TODO: [🕵️‍♀️] Maybe just remove
37
+ * TODO: [🧠][🈁] Maybe use `isDeterministic` from options
38
38
  */
@@ -1,9 +1,11 @@
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';
5
- import type { PromptEmbeddingResult } from '../../execution/PromptResult';
6
- import type { Prompt } from '../../types/Prompt';
3
+ import type { ChatPromptResult } from '../../execution/PromptResult';
4
+ import type { CompletionPromptResult } from '../../execution/PromptResult';
5
+ import type { EmbeddingPromptResult } from '../../execution/PromptResult';
6
+ import type { ChatPrompt } from '../../types/Prompt';
7
+ import type { CompletionPrompt } from '../../types/Prompt';
8
+ import type { EmbeddingPrompt } from '../../types/Prompt';
7
9
  import type { string_markdown } from '../../types/typeAliases';
8
10
  import type { string_markdown_text } from '../../types/typeAliases';
9
11
  import type { string_title } from '../../types/typeAliases';
@@ -26,25 +28,27 @@ export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
26
28
  /**
27
29
  * Calls the best available chat model
28
30
  */
29
- callChatModel(prompt: Prompt): Promise<PromptChatResult>;
31
+ callChatModel(prompt: ChatPrompt): Promise<ChatPromptResult>;
30
32
  /**
31
33
  * Calls the best available completion model
32
34
  */
33
- callCompletionModel(prompt: Prompt): Promise<PromptCompletionResult>;
35
+ callCompletionModel(prompt: CompletionPrompt): Promise<CompletionPromptResult>;
34
36
  /**
35
37
  * Calls the best available embedding model
36
38
  */
37
- callEmbeddingModel(prompt: Prompt): Promise<PromptEmbeddingResult>;
39
+ callEmbeddingModel(prompt: EmbeddingPrompt): Promise<EmbeddingPromptResult>;
38
40
  /**
39
41
  * Calls the best available model
40
42
  */
41
43
  private callModelCommon;
42
44
  /**
43
45
  * List all available models that can be used
44
- * This liost is a combination of all available models from all execution tools
46
+ * This lists is a combination of all available models from all execution tools
45
47
  */
46
48
  listModels(): Promise<Array<AvailableModel>>;
47
49
  }
48
50
  /**
49
51
  * TODO: [🧠][🎛] Aggregating multiple models - have result not only from one first aviable model BUT all of them
52
+ * TODO: [🏖] If no llmTools have for example not defined `callCompletionModel` this will still return object with defined `callCompletionModel` which just throws `PipelineExecutionError`, make it undefined instead
53
+ * Look how `countTotalUsage` (and `cacheLlmTools`) implements it
50
54
  */
@@ -1,8 +1,8 @@
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';
5
- import type { PromptEmbeddingResult } from '../../execution/PromptResult';
3
+ import type { ChatPromptResult } from '../../execution/PromptResult';
4
+ import type { CompletionPromptResult } from '../../execution/PromptResult';
5
+ import type { EmbeddingPromptResult } from '../../execution/PromptResult';
6
6
  import type { Prompt } from '../../types/Prompt';
7
7
  import type { string_markdown } from '../../types/typeAliases';
8
8
  import type { string_markdown_text } from '../../types/typeAliases';
@@ -28,15 +28,15 @@ export declare class OpenAiExecutionTools implements LlmExecutionTools {
28
28
  /**
29
29
  * Calls OpenAI API to use a chat model.
30
30
  */
31
- callChatModel(prompt: Pick<Prompt, 'content' | 'modelRequirements' | 'expectFormat'>): Promise<PromptChatResult>;
31
+ callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements' | 'expectFormat'>): Promise<ChatPromptResult>;
32
32
  /**
33
33
  * Calls OpenAI API to use a complete model.
34
34
  */
35
- callCompletionModel(prompt: Pick<Prompt, 'content' | 'modelRequirements'>): Promise<PromptCompletionResult>;
35
+ callCompletionModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<CompletionPromptResult>;
36
36
  /**
37
37
  * Calls OpenAI API to use a embedding model
38
38
  */
39
- callEmbeddingModel(prompt: Pick<Prompt, 'content' | 'modelRequirements'>): Promise<PromptEmbeddingResult>;
39
+ callEmbeddingModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<EmbeddingPromptResult>;
40
40
  /**
41
41
  * Get the model that should be used as default
42
42
  */
@@ -62,4 +62,5 @@ export declare class OpenAiExecutionTools implements LlmExecutionTools {
62
62
  * TODO: [🧠][🧙‍♂️] Maybe there can be some wizzard for thoose who want to use just OpenAI
63
63
  * TODO: Maybe Create some common util for callChatModel and callCompletionModel
64
64
  * TODO: Maybe make custom OpenaiError
65
+ * TODO: [🧠][🈁] Maybe use `isDeterministic` from options
65
66
  */
@@ -2,7 +2,7 @@ import type { ClientOptions } from 'openai';
2
2
  import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutionToolsOptions';
3
3
  import type { string_token } from '../../types/typeAliases';
4
4
  /**
5
- * Options for OpenAiExecutionTools
5
+ * Options for `OpenAiExecutionTools`
6
6
  *
7
7
  * This extends OpenAI's `ClientOptions` with are directly passed to the OpenAI client.
8
8
  * Rest is used by the `OpenAiExecutionTools`.
@@ -1,5 +1,5 @@
1
1
  import type OpenAI from 'openai';
2
- import type { PromptResultUsage } from '../../execution/PromptResult';
2
+ import type { PromptResultUsage } from '../../execution/PromptResultUsage';
3
3
  import type { Prompt } from '../../types/Prompt';
4
4
  /**
5
5
  * Computes the usage of the OpenAI API based on the response from OpenAI
@@ -4,13 +4,13 @@
4
4
  * @see https://openai.com/api/pricing/
5
5
  * @see https://docs.anthropic.com/en/docs/models-overview
6
6
  *
7
- * @private within the package, used only as internal helper for `OPENAI_MODELS` and `computeUsage`
7
+ * @private within the repository, used only as internal helper for `OPENAI_MODELS` and `computeUsage`
8
8
  */
9
9
  type string_model_price = `$${number}.${number} / ${number}M tokens`;
10
10
  /**
11
11
  * Function computeUsage will create price per one token based on the string value found on openai page
12
12
  *
13
- * @private within the package, used only as internal helper for `OPENAI_MODELS`
13
+ * @private within the repository, used only as internal helper for `OPENAI_MODELS`
14
14
  */
15
15
  export declare function computeUsage(value: string_model_price): number;
16
16
  export {};
@@ -10,8 +10,8 @@ import type { number_usd } from '../../types/typeAliases';
10
10
  */
11
11
  export declare const OPENAI_MODELS: Array<AvailableModel & {
12
12
  pricing?: {
13
- prompt: number_usd;
14
- output: number_usd;
13
+ readonly prompt: number_usd;
14
+ readonly output: number_usd;
15
15
  };
16
16
  }>;
17
17
  /**
@@ -24,4 +24,5 @@ export declare const OPENAI_MODELS: Array<AvailableModel & {
24
24
  * @see /other/playground/playground.ts
25
25
  * TODO: [🍓] Make better
26
26
  * TODO: Change model titles to human eg: "gpt-4-turbo-2024-04-09" -> "GPT-4 Turbo (2024-04-09)"
27
+ * TODO: [🚸] Not all models are compatible with JSON mode, add this information here and use it
27
28
  */
@@ -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,9 +1,11 @@
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';
5
- import type { PromptEmbeddingResult } from '../../execution/PromptResult';
6
- import type { Prompt } from '../../types/Prompt';
3
+ import type { ChatPromptResult } from '../../execution/PromptResult';
4
+ import type { CompletionPromptResult } from '../../execution/PromptResult';
5
+ import type { EmbeddingPromptResult } from '../../execution/PromptResult';
6
+ import type { ChatPrompt } from '../../types/Prompt';
7
+ import type { CompletionPrompt } from '../../types/Prompt';
8
+ import type { EmbeddingPrompt } from '../../types/Prompt';
7
9
  import type { string_markdown } from '../../types/typeAliases';
8
10
  import type { string_markdown_text } from '../../types/typeAliases';
9
11
  import type { string_title } from '../../types/typeAliases';
@@ -28,15 +30,15 @@ export declare class RemoteLlmExecutionTools implements LlmExecutionTools {
28
30
  /**
29
31
  * Calls remote proxy server to use a chat model
30
32
  */
31
- callChatModel(prompt: Prompt): Promise<PromptChatResult>;
33
+ callChatModel(prompt: ChatPrompt): Promise<ChatPromptResult>;
32
34
  /**
33
35
  * Calls remote proxy server to use a completion model
34
36
  */
35
- callCompletionModel(prompt: Prompt): Promise<PromptCompletionResult>;
37
+ callCompletionModel(prompt: CompletionPrompt): Promise<CompletionPromptResult>;
36
38
  /**
37
39
  * Calls remote proxy server to use a embedding model
38
40
  */
39
- callEmbeddingModel(prompt: Prompt): Promise<PromptEmbeddingResult>;
41
+ callEmbeddingModel(prompt: EmbeddingPrompt): Promise<EmbeddingPromptResult>;
40
42
  /**
41
43
  * Calls remote proxy server to use both completion or chat model
42
44
  */
@@ -2,7 +2,7 @@ import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutio
2
2
  import type { client_id } from '../../types/typeAliases';
3
3
  import type { string_uri } from '../../types/typeAliases';
4
4
  /**
5
- * Options for RemoteLlmExecutionTools
5
+ * Options for `RemoteLlmExecutionTools`
6
6
  */
7
7
  export type RemoteLlmExecutionToolsOptions = CommonExecutionToolsOptions & {
8
8
  /**
@@ -0,0 +1,15 @@
1
+ import type { PrepareOptions } from '../prepare/PrepareOptions';
2
+ import type { PersonaPreparedJson } from '../types/PipelineJson/PersonaJson';
3
+ import type { string_persona_description } from '../types/typeAliases';
4
+ /**
5
+ * Prepares the persona for the pipeline
6
+ *
7
+ * @see https://github.com/webgptorg/promptbook/discussions/22
8
+ */
9
+ export declare function preparePersona(personaDescription: string_persona_description, options: PrepareOptions): Promise<PersonaPreparedJson['modelRequirements']>;
10
+ /**
11
+ * TODO: [🔼] !!! Export via `@promptbook/core`
12
+ * TODO: [🏢] !! Check validity of `modelName` in pipeline
13
+ * TODO: [🏢] !! Check validity of `systemMessage` in pipeline
14
+ * TODO: [🏢] !! Check validity of `temperature` in pipeline
15
+ */
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,22 @@
1
+ import type { LlmExecutionTools } from '../execution/LlmExecutionTools';
2
+ /**
3
+ * Options for preparation of the pipeline
4
+ */
5
+ export type PrepareOptions = {
6
+ /**
7
+ * LLM tools
8
+ */
9
+ readonly llmTools: LlmExecutionTools;
10
+ /**
11
+ * Maximum number of tasks running in parallel
12
+ *
13
+ * @default MAX_PARALLEL_COUNT
14
+ */
15
+ readonly maxParallelCount?: number;
16
+ /**
17
+ * If true, the preparation logs additional information
18
+ *
19
+ * @default false
20
+ */
21
+ readonly isVerbose?: boolean;
22
+ };
@@ -0,0 +1,10 @@
1
+ import type { PipelineJson } from '../types/PipelineJson/PipelineJson';
2
+ /**
3
+ * Determine if the pipeline is fully prepared
4
+ */
5
+ export declare function isPipelinePrepared(pipeline: PipelineJson): boolean;
6
+ /**
7
+ * TODO: [🐠] Maybe base this on `makeValidator`
8
+ * TODO: [🔼] Export via core or utils
9
+ * TODO: [🧊] Pipeline can be partially prepared, this should return true ONLY if fully prepared
10
+ */
@@ -0,0 +1,18 @@
1
+ import type { PipelineJson } from '../types/PipelineJson/PipelineJson';
2
+ import type { PrepareOptions } from './PrepareOptions';
3
+ /**
4
+ * Prepare pipeline from string (markdown) format to JSON format
5
+ *
6
+ * Note: This function does not validate logic of the pipeline
7
+ * Note: This function acts as part of compilation process
8
+ */
9
+ export declare function preparePipeline(pipeline: PipelineJson, options: PrepareOptions): Promise<PipelineJson>;
10
+ /**
11
+ * TODO: !!!!! Index the samples and maybe templates
12
+ * TODO: [🔼] !!! Export via `@promptbook/core`
13
+ * TODO: Write tests for `preparePipeline`
14
+ * TODO: [🏏] Leverage the batch API and build queues @see https://platform.openai.com/docs/guides/batch
15
+ * TODO: [🧊] In future one preparation can take data from previous preparation and save tokens and time
16
+ * TODO: [🎐] !!!! Use here countTotalUsage
17
+ * TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
18
+ */
@@ -0,0 +1,9 @@
1
+ import type { PipelineJson } from '../types/PipelineJson/PipelineJson';
2
+ /**
3
+ * Unprepare just strips the preparation data of the pipeline
4
+ */
5
+ export declare function unpreparePipeline(pipeline: PipelineJson): PipelineJson;
6
+ /**
7
+ * TODO: [🔼] !!! Export via `@promptbook/core`
8
+ * TODO: Write tests for `preparePipeline`
9
+ */
@@ -2,7 +2,7 @@ import type { Promisable } from 'type-fest';
2
2
  import type { CommonExecutionToolsOptions } from '../../execution/CommonExecutionToolsOptions';
3
3
  import type { string_javascript_name } from '../../types/typeAliases';
4
4
  /**
5
- * Options for javascript execution
5
+ * Options for `JavascriptExecutionTools`
6
6
  */
7
7
  export type JavascriptExecutionToolsOptions = CommonExecutionToolsOptions & {
8
8
  /**
@@ -1,4 +1,4 @@
1
- import type { really_any } from '../../../types/typeAliases';
1
+ import type { really_any } from '../../../utils/organization/really_any';
2
2
  /**
3
3
  * Does nothing, but preserves the function in the bundle
4
4
  * Compiler is tricked into thinking the function is used
@@ -1,7 +1,8 @@
1
+ import type { really_unknown } from '../../../utils/organization/really_unknown';
1
2
  /**
2
3
  * Converts anything to string that can be used for debugging and logging
3
4
  *
4
5
  * @param value String value for logging
5
6
  * @private Internal util
6
7
  */
7
- export declare function unknownToString(value: unknown): string;
8
+ export declare function unknownToString(value: really_unknown): string;
@@ -0,0 +1,25 @@
1
+ import { Promisable } from 'type-fest';
2
+ /**
3
+ * Storage of objects with asynchronous API
4
+ *
5
+ * Note: Naming `PromptbookStorage` not `Storage` to avoid name collision with global `Storage` interface.
6
+ * Note: This is simmilar to Web Storage API interface but everything is asynchronous and can store JSON objects.
7
+ */
8
+ export type PromptbookStorage<TItem> = {
9
+ /**
10
+ * Returns the current value associated with the given key, or null if the given key does not exist in the list associated with the object
11
+ */
12
+ getItem(key: string): Promisable<TItem | null>;
13
+ /**
14
+ * Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously
15
+ */
16
+ setItem(key: string, value: TItem): Promisable<void>;
17
+ /**
18
+ * Removes the key/value pair with the given key from the list associated with the object, if a key/value pair with the given key exists
19
+ */
20
+ removeItem(key: string): Promisable<void>;
21
+ };
22
+ /**
23
+ * TODO: [🔼] !!! Export via `@promptbook/types`
24
+ * TODO: [🧠][🛫] Constrain `TItem` to JSON-serializable objects only
25
+ */
@@ -0,0 +1,5 @@
1
+ export {};
2
+ /**
3
+ * Note: [⚪] This should never be in any released package
4
+ * TODO: Is this a good pattern to do type testing?
5
+ */
@@ -0,0 +1,30 @@
1
+ import type { PromptbookStorage } from '../_common/PromptbookStorage';
2
+ import type { FilesStorageOptions } from './FilesStorageOptions';
3
+ /**
4
+ * @@@
5
+ */
6
+ export declare class FilesStorage<TItem> implements PromptbookStorage<TItem> {
7
+ private readonly options;
8
+ constructor(options: FilesStorageOptions);
9
+ /**
10
+ * @@@
11
+ */
12
+ private getFilenameForKey;
13
+ /**
14
+ * @@@ Returns the current value associated with the given key, or null if the given key does not exist in the list associated with the object.
15
+ */
16
+ getItem(key: string): Promise<TItem | null>;
17
+ /**
18
+ * @@@ Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously.
19
+ */
20
+ setItem(key: string, value: TItem): Promise<void>;
21
+ /**
22
+ * @@@ Removes the key/value pair with the given key from the list associated with the object, if a key/value pair with the given key exists.
23
+ */
24
+ removeItem(key: string): Promise<void>;
25
+ }
26
+ /**
27
+ * TODO: [🔼] !!! Export via `@promptbook/node`
28
+ * TODO: [🌗] Maybe some checkers, not all valid JSONs are desired and valid values
29
+ * Note: [🟢] This code should never be published outside of `@promptbook/node`
30
+ */
@@ -0,0 +1,13 @@
1
+ import type { string_folder_path } from '../../types/typeAliases';
2
+ /**
3
+ * @@@
4
+ */
5
+ export type FilesStorageOptions = {
6
+ /**
7
+ * @@@
8
+ */
9
+ cacheFolderPath: string_folder_path;
10
+ };
11
+ /**
12
+ * TODO: [🔼] !!! Export via `@promptbook/types`
13
+ */
@@ -0,0 +1,7 @@
1
+ import type { string_name } from '../../../types/typeAliases';
2
+ /**
3
+ * @@@
4
+ *
5
+ * @private for `FilesStorage`
6
+ */
7
+ export declare function nameToSubfolderPath(name: string_name): Array<string>;
@@ -0,0 +1,9 @@
1
+ import type { PromptbookStorage } from '../_common/PromptbookStorage';
2
+ /**
3
+ * Gets wrapper around `localStorage` object which can be used as `PromptbookStorage`
4
+ */
5
+ export declare function getLocalStorage<TItem>(): PromptbookStorage<TItem>;
6
+ /**
7
+ * TODO: [🔼] !!! Export via `@promptbook/browser`
8
+ * Note: [🔵] This code should never be published outside of `@promptbook/browser`
9
+ */
@@ -0,0 +1,9 @@
1
+ import type { PromptbookStorage } from '../_common/PromptbookStorage';
2
+ /**
3
+ * Gets wrapper around `sessionStorage` object which can be used as `PromptbookStorage`
4
+ */
5
+ export declare function getSessionStorage<TItem>(): PromptbookStorage<TItem>;
6
+ /**
7
+ * TODO: [🔼] !!! Export via `@promptbook/browser`
8
+ * Note: [🔵] This code should never be published outside of `@promptbook/browser`
9
+ */
@@ -0,0 +1,34 @@
1
+ import type { PromptbookStorage } from '../_common/PromptbookStorage';
2
+ /**
3
+ * Stores
4
+ */
5
+ export declare class MemoryStorage<TItem> implements PromptbookStorage<TItem> {
6
+ private storage;
7
+ /**
8
+ * Returns the number of key/value pairs currently present in the list associated with the object.
9
+ */
10
+ get length(): number;
11
+ /**
12
+ * Empties the list associated with the object of all key/value pairs, if there are any.
13
+ */
14
+ clear(): void;
15
+ /**
16
+ * Returns the current value associated with the given key, or null if the given key does not exist in the list associated with the object.
17
+ */
18
+ getItem(key: string): TItem | null;
19
+ /**
20
+ * Returns the name of the nth key in the list, or null if n is greater than or equal to the number of key/value pairs in the object.
21
+ */
22
+ key(index: number): string | null;
23
+ /**
24
+ * Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously.
25
+ */
26
+ setItem(key: string, value: TItem): void;
27
+ /**
28
+ * Removes the key/value pair with the given key from the list associated with the object, if a key/value pair with the given key exists.
29
+ */
30
+ removeItem(key: string): void;
31
+ }
32
+ /**
33
+ * TODO: [🔼] !!! Export via `@promptbook/core`
34
+ */