@promptbook/wizard 0.95.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +482 -0
- package/esm/index.es.js +16649 -0
- package/esm/index.es.js.map +1 -0
- package/esm/typings/books/index.d.ts +131 -0
- package/esm/typings/servers.d.ts +40 -0
- package/esm/typings/src/_packages/anthropic-claude.index.d.ts +16 -0
- package/esm/typings/src/_packages/azure-openai.index.d.ts +10 -0
- package/esm/typings/src/_packages/browser.index.d.ts +12 -0
- package/esm/typings/src/_packages/cli.index.d.ts +60 -0
- package/esm/typings/src/_packages/core.index.d.ts +296 -0
- package/esm/typings/src/_packages/deepseek.index.d.ts +10 -0
- package/esm/typings/src/_packages/documents.index.d.ts +8 -0
- package/esm/typings/src/_packages/editable.index.d.ts +90 -0
- package/esm/typings/src/_packages/fake-llm.index.d.ts +6 -0
- package/esm/typings/src/_packages/google.index.d.ts +12 -0
- package/esm/typings/src/_packages/javascript.index.d.ts +10 -0
- package/esm/typings/src/_packages/legacy-documents.index.d.ts +8 -0
- package/esm/typings/src/_packages/markdown-utils.index.d.ts +48 -0
- package/esm/typings/src/_packages/markitdown.index.d.ts +8 -0
- package/esm/typings/src/_packages/node.index.d.ts +24 -0
- package/esm/typings/src/_packages/ollama.index.d.ts +14 -0
- package/esm/typings/src/_packages/openai.index.d.ts +22 -0
- package/esm/typings/src/_packages/pdf.index.d.ts +14 -0
- package/esm/typings/src/_packages/remote-client.index.d.ts +16 -0
- package/esm/typings/src/_packages/remote-server.index.d.ts +12 -0
- package/esm/typings/src/_packages/templates.index.d.ts +4 -0
- package/esm/typings/src/_packages/types.index.d.ts +598 -0
- package/esm/typings/src/_packages/utils.index.d.ts +170 -0
- package/esm/typings/src/_packages/vercel.index.d.ts +6 -0
- package/esm/typings/src/_packages/website-crawler.index.d.ts +8 -0
- package/esm/typings/src/_packages/wizard.index.d.ts +60 -0
- package/esm/typings/src/cli/cli-commands/_boilerplate.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/about.d.ts +14 -0
- package/esm/typings/src/cli/cli-commands/common/handleActionErrors.d.ts +11 -0
- package/esm/typings/src/cli/cli-commands/hello.d.ts +14 -0
- package/esm/typings/src/cli/cli-commands/list-models.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/list-scrapers.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/login.d.ts +14 -0
- package/esm/typings/src/cli/cli-commands/make.d.ts +16 -0
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +15 -0
- package/esm/typings/src/cli/cli-commands/run.d.ts +17 -0
- package/esm/typings/src/cli/cli-commands/runInteractiveChatbot.d.ts +32 -0
- package/esm/typings/src/cli/cli-commands/start-server.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +16 -0
- package/esm/typings/src/cli/common/$addGlobalOptionsToCommand.d.ts +7 -0
- package/esm/typings/src/cli/common/$provideLlmToolsForCli.d.ts +28 -0
- package/esm/typings/src/cli/main.d.ts +16 -0
- package/esm/typings/src/cli/promptbookCli.d.ts +13 -0
- package/esm/typings/src/cli/test/ptbk.d.ts +5 -0
- package/esm/typings/src/cli/test/ptbk.test.d.ts +1 -0
- package/esm/typings/src/collection/PipelineCollection.d.ts +25 -0
- package/esm/typings/src/collection/SimplePipelineCollection.d.ts +37 -0
- package/esm/typings/src/collection/collectionToJson.d.ts +13 -0
- package/esm/typings/src/collection/collectionToJson.test.d.ts +7 -0
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +65 -0
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.test.d.ts +1 -0
- package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +13 -0
- package/esm/typings/src/collection/constructors/createCollectionFromJson.test.d.ts +1 -0
- package/esm/typings/src/collection/constructors/createCollectionFromPromise.d.ts +23 -0
- package/esm/typings/src/collection/constructors/createCollectionFromPromise.test.d.ts +1 -0
- package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +29 -0
- package/esm/typings/src/collection/constructors/createSubcollection.d.ts +13 -0
- package/esm/typings/src/commands/BOOK_VERSION/BookVersionCommand.d.ts +11 -0
- package/esm/typings/src/commands/BOOK_VERSION/bookVersionCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/BOOK_VERSION/bookVersionCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/EXPECT/ExpectCommand.d.ts +17 -0
- package/esm/typings/src/commands/EXPECT/expectCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +11 -0
- package/esm/typings/src/commands/FOREACH/ForeachCommand.d.ts +10 -0
- package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +27 -0
- package/esm/typings/src/commands/FOREACH/foreachCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +12 -0
- package/esm/typings/src/commands/FORMAT/FormatCommand.d.ts +9 -0
- package/esm/typings/src/commands/FORMAT/formatCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/FORMAT/formatCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/FORMFACTOR/FormfactorCommand.d.ts +11 -0
- package/esm/typings/src/commands/FORMFACTOR/formfactorCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/FORMFACTOR/formfactorCommandParser.d.ts +11 -0
- package/esm/typings/src/commands/JOKER/JokerCommand.d.ts +11 -0
- package/esm/typings/src/commands/JOKER/jokerCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/KNOWLEDGE/KnowledgeCommand.d.ts +11 -0
- package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +12 -0
- package/esm/typings/src/commands/KNOWLEDGE/utils/knowledgeSourceContentToName.d.ts +11 -0
- package/esm/typings/src/commands/KNOWLEDGE/utils/knowledgeSourceContentToName.test.d.ts +4 -0
- package/esm/typings/src/commands/MODEL/ModelCommand.d.ts +14 -0
- package/esm/typings/src/commands/MODEL/modelCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +10 -0
- package/esm/typings/src/commands/PARAMETER/ParameterCommand.d.ts +15 -0
- package/esm/typings/src/commands/PARAMETER/parameterCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/PERSONA/PersonaCommand.d.ts +13 -0
- package/esm/typings/src/commands/PERSONA/personaCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/POSTPROCESS/PostprocessCommand.d.ts +11 -0
- package/esm/typings/src/commands/POSTPROCESS/postprocessCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/SECTION/SectionCommand.d.ts +11 -0
- package/esm/typings/src/commands/SECTION/sectionCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/SECTION/sectionCommandParser.d.ts +20 -0
- package/esm/typings/src/commands/URL/UrlCommand.d.ts +10 -0
- package/esm/typings/src/commands/URL/urlCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/URL/urlCommandParser.d.ts +9 -0
- package/esm/typings/src/commands/X_ACTION/ActionCommand.d.ts +9 -0
- package/esm/typings/src/commands/X_ACTION/actionCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +12 -0
- package/esm/typings/src/commands/X_INSTRUMENT/InstrumentCommand.d.ts +9 -0
- package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +12 -0
- package/esm/typings/src/commands/_BOILERPLATE/BoilerplateCommand.d.ts +10 -0
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +11 -0
- package/esm/typings/src/commands/_common/getParserForCommand.d.ts +11 -0
- package/esm/typings/src/commands/_common/getParserForCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/_common/parseCommand.d.ts +12 -0
- package/esm/typings/src/commands/_common/parseCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/_common/stringifyCommand.d.ts +12 -0
- package/esm/typings/src/commands/_common/stringifyCommand.test.d.ts +1 -0
- package/esm/typings/src/commands/_common/types/Command.d.ts +6 -0
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +205 -0
- package/esm/typings/src/commands/_common/types/CommandType.d.ts +17 -0
- package/esm/typings/src/commands/_common/types/CommandUsagePlaces.d.ts +13 -0
- package/esm/typings/src/commands/index.d.ts +9 -0
- package/esm/typings/src/config.d.ts +313 -0
- package/esm/typings/src/config.test.d.ts +4 -0
- package/esm/typings/src/constants.d.ts +76 -0
- package/esm/typings/src/conversion/archive/loadArchive.d.ts +16 -0
- package/esm/typings/src/conversion/archive/saveArchive.d.ts +18 -0
- package/esm/typings/src/conversion/compilePipeline.d.ts +25 -0
- package/esm/typings/src/conversion/compilePipeline.test.d.ts +1 -0
- package/esm/typings/src/conversion/compilePipelineOnRemoteServer.d.ts +21 -0
- package/esm/typings/src/conversion/parsePipeline.d.ts +30 -0
- package/esm/typings/src/conversion/parsePipeline.test.d.ts +1 -0
- package/esm/typings/src/conversion/pipelineJsonToString.d.ts +18 -0
- package/esm/typings/src/conversion/prettify/PrettifyOptions.d.ts +13 -0
- package/esm/typings/src/conversion/prettify/prettifyPipelineString.d.ts +12 -0
- package/esm/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +30 -0
- package/esm/typings/src/conversion/utils/extractParameterNamesFromTask.d.ts +15 -0
- package/esm/typings/src/conversion/utils/extractParameterNamesFromTask.test.d.ts +1 -0
- package/esm/typings/src/conversion/validation/_importPipeline.d.ts +23 -0
- package/esm/typings/src/conversion/validation/pipelineStringToJson-parseErrors.test.d.ts +4 -0
- package/esm/typings/src/conversion/validation/validatePipeline-logicErrors.test.d.ts +4 -0
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +42 -0
- package/esm/typings/src/conversion/validation/validatePipeline.test.d.ts +4 -0
- package/esm/typings/src/dialogs/callback/CallbackInterfaceTools.d.ts +17 -0
- package/esm/typings/src/dialogs/callback/CallbackInterfaceToolsOptions.d.ts +14 -0
- package/esm/typings/src/dialogs/simple-prompt/SimplePromptInterfaceTools.d.ts +22 -0
- package/esm/typings/src/dialogs/user-interface-execution-tools.test.d.ts +1 -0
- package/esm/typings/src/errors/0-BoilerplateError.d.ts +12 -0
- package/esm/typings/src/errors/0-index.d.ts +94 -0
- package/esm/typings/src/errors/AbstractFormatError.d.ts +11 -0
- package/esm/typings/src/errors/AuthenticationError.d.ts +9 -0
- package/esm/typings/src/errors/CollectionError.d.ts +9 -0
- package/esm/typings/src/errors/EnvironmentMismatchError.d.ts +9 -0
- package/esm/typings/src/errors/ExpectError.d.ts +12 -0
- package/esm/typings/src/errors/KnowledgeScrapeError.d.ts +9 -0
- package/esm/typings/src/errors/LimitReachedError.d.ts +9 -0
- package/esm/typings/src/errors/MissingToolsError.d.ts +9 -0
- package/esm/typings/src/errors/NotFoundError.d.ts +9 -0
- package/esm/typings/src/errors/NotYetImplementedError.d.ts +9 -0
- package/esm/typings/src/errors/ParseError.d.ts +12 -0
- package/esm/typings/src/errors/PipelineExecutionError.d.ts +14 -0
- package/esm/typings/src/errors/PipelineLogicError.d.ts +9 -0
- package/esm/typings/src/errors/PipelineUrlError.d.ts +9 -0
- package/esm/typings/src/errors/PromptbookFetchError.d.ts +9 -0
- package/esm/typings/src/errors/UnexpectedError.d.ts +9 -0
- package/esm/typings/src/errors/WrappedError.d.ts +10 -0
- package/esm/typings/src/errors/assertsError.d.ts +11 -0
- package/esm/typings/src/errors/utils/ErrorJson.d.ts +25 -0
- package/esm/typings/src/errors/utils/deserializeError.d.ts +7 -0
- package/esm/typings/src/errors/utils/deserializeError.test.d.ts +1 -0
- package/esm/typings/src/errors/utils/getErrorReportUrl.d.ts +6 -0
- package/esm/typings/src/errors/utils/serializeError.d.ts +7 -0
- package/esm/typings/src/errors/utils/serializeError.test.d.ts +1 -0
- package/esm/typings/src/executables/$provideExecutablesForNode.d.ts +12 -0
- package/esm/typings/src/executables/apps/locateLibreoffice.d.ts +12 -0
- package/esm/typings/src/executables/apps/locateLibreoffice.test.d.ts +1 -0
- package/esm/typings/src/executables/apps/locatePandoc.d.ts +12 -0
- package/esm/typings/src/executables/apps/locatePandoc.test.d.ts +1 -0
- package/esm/typings/src/executables/locateApp.d.ts +33 -0
- package/esm/typings/src/executables/locateApp.test.d.ts +1 -0
- package/esm/typings/src/executables/platforms/locateAppOnLinux.d.ts +13 -0
- package/esm/typings/src/executables/platforms/locateAppOnMacOs.d.ts +13 -0
- package/esm/typings/src/executables/platforms/locateAppOnWindows.d.ts +13 -0
- package/esm/typings/src/execution/AbstractTaskResult.d.ts +25 -0
- package/esm/typings/src/execution/AvailableModel.d.ts +46 -0
- package/esm/typings/src/execution/CommonToolsOptions.d.ts +28 -0
- package/esm/typings/src/execution/EmbeddingVector.d.ts +8 -0
- package/esm/typings/src/execution/Executables.d.ts +18 -0
- package/esm/typings/src/execution/ExecutionTask.d.ts +119 -0
- package/esm/typings/src/execution/ExecutionTools.d.ts +69 -0
- package/esm/typings/src/execution/FilesystemTools.d.ts +9 -0
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +61 -0
- package/esm/typings/src/execution/LlmExecutionToolsConstructor.d.ts +11 -0
- package/esm/typings/src/execution/PipelineExecutor.d.ts +16 -0
- package/esm/typings/src/execution/PipelineExecutorResult.d.ts +39 -0
- package/esm/typings/src/execution/PromptResult.d.ts +101 -0
- package/esm/typings/src/execution/PromptbookFetch.d.ts +12 -0
- package/esm/typings/src/execution/PromptbookFetch.test-type.d.ts +5 -0
- package/esm/typings/src/execution/ScriptExecutionTools.d.ts +39 -0
- package/esm/typings/src/execution/UncertainNumber.d.ts +19 -0
- package/esm/typings/src/execution/Usage.d.ts +33 -0
- package/esm/typings/src/execution/UserInterfaceTools.d.ts +46 -0
- package/esm/typings/src/execution/assertsTaskSuccessful.d.ts +14 -0
- package/esm/typings/src/execution/createPipelineExecutor/$OngoingTaskResult.d.ts +48 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +46 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +10 -0
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +48 -0
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTask.d.ts +51 -0
- package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +27 -0
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +70 -0
- package/esm/typings/src/execution/createPipelineExecutor/computeCosineSimilarity.d.ts +13 -0
- package/esm/typings/src/execution/createPipelineExecutor/filterJustOutputParameters.d.ts +35 -0
- package/esm/typings/src/execution/createPipelineExecutor/getContextForTask.d.ts +14 -0
- package/esm/typings/src/execution/createPipelineExecutor/getExamplesForTask.d.ts +10 -0
- package/esm/typings/src/execution/createPipelineExecutor/getKnowledgeForTask.d.ts +42 -0
- package/esm/typings/src/execution/createPipelineExecutor/getReservedParametersForTask.d.ts +48 -0
- package/esm/typings/src/execution/createPipelineExecutor/knowledgePiecesToString.d.ts +9 -0
- package/esm/typings/src/execution/embeddingVectorToString.d.ts +7 -0
- package/esm/typings/src/execution/execution-report/ExecutionPromptReportJson.d.ts +24 -0
- package/esm/typings/src/execution/execution-report/ExecutionReportJson.d.ts +41 -0
- package/esm/typings/src/execution/execution-report/ExecutionReportString.d.ts +16 -0
- package/esm/typings/src/execution/execution-report/ExecutionReportStringOptions.d.ts +25 -0
- package/esm/typings/src/execution/execution-report/countWorkingDuration.d.ts +7 -0
- package/esm/typings/src/execution/execution-report/countWorkingDuration.test.d.ts +1 -0
- package/esm/typings/src/execution/execution-report/executionReportJsonToString.d.ts +15 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/AutomaticTranslator.d.ts +7 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/DebugAutomaticTranslator.d.ts +11 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/FakeAutomaticTranslator.d.ts +8 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +22 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/TranslatorOptions.d.ts +7 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.d.ts +8 -0
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/utils/extractMultiplicatedOccurrence.test.d.ts +1 -0
- package/esm/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +12 -0
- package/esm/typings/src/execution/utils/$provideExecutionToolsForNode.d.ts +13 -0
- package/esm/typings/src/execution/utils/addUsage.d.ts +9 -0
- package/esm/typings/src/execution/utils/addUsage.test.d.ts +1 -0
- package/esm/typings/src/execution/utils/checkExpectations.d.ts +29 -0
- package/esm/typings/src/execution/utils/checkExpectations.test.d.ts +1 -0
- package/esm/typings/src/execution/utils/computeUsageCounts.d.ts +10 -0
- package/esm/typings/src/execution/utils/forEachAsync.d.ts +20 -0
- package/esm/typings/src/execution/utils/uncertainNumber.d.ts +10 -0
- package/esm/typings/src/execution/utils/usage-constants.d.ts +147 -0
- package/esm/typings/src/execution/utils/usageToHuman.d.ts +26 -0
- package/esm/typings/src/execution/utils/usageToWorktime.d.ts +20 -0
- package/esm/typings/src/execution/utils/usageToWorktime.test.d.ts +1 -0
- package/esm/typings/src/expectations/drafts/isDomainNameFree.d.ts +10 -0
- package/esm/typings/src/expectations/drafts/isGithubNameFree.d.ts +10 -0
- package/esm/typings/src/formats/_common/FormatParser.d.ts +72 -0
- package/esm/typings/src/formats/_common/FormatSubvalueParser.d.ts +66 -0
- package/esm/typings/src/formats/csv/CsvFormatError.d.ts +10 -0
- package/esm/typings/src/formats/csv/CsvFormatParser.d.ts +17 -0
- package/esm/typings/src/formats/csv/CsvSettings.d.ts +13 -0
- package/esm/typings/src/formats/csv/utils/csvParse.d.ts +12 -0
- package/esm/typings/src/formats/csv/utils/isValidCsvString.d.ts +9 -0
- package/esm/typings/src/formats/csv/utils/isValidCsvString.test.d.ts +1 -0
- package/esm/typings/src/formats/index.d.ts +9 -0
- package/esm/typings/src/formats/json/JsonFormatParser.d.ts +19 -0
- package/esm/typings/src/formats/json/utils/isValidJsonString.d.ts +9 -0
- package/esm/typings/src/formats/json/utils/isValidJsonString.test.d.ts +1 -0
- package/esm/typings/src/formats/json/utils/jsonParse.d.ts +8 -0
- package/esm/typings/src/formats/text/TextFormatParser.d.ts +19 -0
- package/esm/typings/src/formats/xml/XmlFormatParser.d.ts +19 -0
- package/esm/typings/src/formats/xml/utils/isValidXmlString.d.ts +9 -0
- package/esm/typings/src/formats/xml/utils/isValidXmlString.test.d.ts +1 -0
- package/esm/typings/src/formfactors/_boilerplate/BoilerplateFormfactorDefinition.d.ts +15 -0
- package/esm/typings/src/formfactors/_common/AbstractFormfactorDefinition.d.ts +49 -0
- package/esm/typings/src/formfactors/_common/FormfactorDefinition.d.ts +10 -0
- package/esm/typings/src/formfactors/_common/string_formfactor_name.d.ts +6 -0
- package/esm/typings/src/formfactors/chatbot/ChatbotFormfactorDefinition.d.ts +45 -0
- package/esm/typings/src/formfactors/completion/CompletionFormfactorDefinition.d.ts +29 -0
- package/esm/typings/src/formfactors/generator/GeneratorFormfactorDefinition.d.ts +25 -0
- package/esm/typings/src/formfactors/generic/GenericFormfactorDefinition.d.ts +14 -0
- package/esm/typings/src/formfactors/image-generator/ImageGeneratorFormfactorDefinition.d.ts +24 -0
- package/esm/typings/src/formfactors/index.d.ts +170 -0
- package/esm/typings/src/formfactors/matcher/MatcherFormfactorDefinition.d.ts +21 -0
- package/esm/typings/src/formfactors/sheets/SheetsFormfactorDefinition.d.ts +26 -0
- package/esm/typings/src/formfactors/translator/TranslatorFormfactorDefinition.d.ts +25 -0
- package/esm/typings/src/high-level-abstractions/_common/HighLevelAbstraction.d.ts +20 -0
- package/esm/typings/src/high-level-abstractions/implicit-formfactor/ImplicitFormfactorHla.d.ts +10 -0
- package/esm/typings/src/high-level-abstractions/index.d.ts +54 -0
- package/esm/typings/src/high-level-abstractions/quick-chatbot/QuickChatbotHla.d.ts +13 -0
- package/esm/typings/src/llm-providers/_common/filterModels.d.ts +15 -0
- package/esm/typings/src/llm-providers/_common/register/$llmToolsMetadataRegister.d.ts +13 -0
- package/esm/typings/src/llm-providers/_common/register/$llmToolsRegister.d.ts +13 -0
- package/esm/typings/src/llm-providers/_common/register/$provideEnvFilename.d.ts +12 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsConfigurationFromEnv.d.ts +19 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts +27 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizardOrCli.d.ts +59 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsFromEnv.d.ts +41 -0
- package/esm/typings/src/llm-providers/_common/register/$registeredLlmToolsMessage.d.ts +22 -0
- package/esm/typings/src/llm-providers/_common/register/LlmToolsConfiguration.d.ts +30 -0
- package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +58 -0
- package/esm/typings/src/llm-providers/_common/register/LlmToolsOptions.d.ts +17 -0
- package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.d.ts +49 -0
- package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +33 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +27 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/cacheLlmTools.d.ts +19 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/LlmExecutionToolsWithTotalUsage.d.ts +22 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/countUsage.d.ts +17 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.d.ts +36 -0
- package/esm/typings/src/llm-providers/_common/utils/pricing.d.ts +16 -0
- package/esm/typings/src/llm-providers/_common/utils/pricing.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/_multiple/MultipleLlmExecutionTools.d.ts +63 -0
- package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +21 -0
- package/esm/typings/src/llm-providers/_multiple/playground/playground.d.ts +5 -0
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +66 -0
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +31 -0
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +24 -0
- package/esm/typings/src/llm-providers/anthropic-claude/computeAnthropicClaudeUsage.d.ts +18 -0
- package/esm/typings/src/llm-providers/anthropic-claude/computeAnthropicClaudeUsage.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/anthropic-claude/createAnthropicClaudeExecutionTools.d.ts +19 -0
- package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +7 -0
- package/esm/typings/src/llm-providers/anthropic-claude/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/anthropic-claude/register-constructor.d.ts +16 -0
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +67 -0
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +37 -0
- package/esm/typings/src/llm-providers/azure-openai/createAzureOpenAiExecutionTools.d.ts +15 -0
- package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +6 -0
- package/esm/typings/src/llm-providers/azure-openai/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/azure-openai/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/deepseek/DeepseekExecutionToolsOptions.d.ts +9 -0
- package/esm/typings/src/llm-providers/deepseek/createDeepseekExecutionTools.d.ts +14 -0
- package/esm/typings/src/llm-providers/deepseek/deepseek-models.d.ts +23 -0
- package/esm/typings/src/llm-providers/deepseek/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/deepseek/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/google/GoogleExecutionToolsOptions.d.ts +9 -0
- package/esm/typings/src/llm-providers/google/createGoogleExecutionTools.d.ts +14 -0
- package/esm/typings/src/llm-providers/google/google-models.d.ts +23 -0
- package/esm/typings/src/llm-providers/google/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/google/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/mocked/$fakeTextToExpectations.d.ts +15 -0
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +40 -0
- package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +44 -0
- package/esm/typings/src/llm-providers/mocked/test/fakeTextToExpectations.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/mocked/test/faked-completion.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/mocked/test/joker.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +5 -0
- package/esm/typings/src/llm-providers/mocked/test/mocked-completion.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/ollama/OllamaExecutionTools.d.ts +44 -0
- package/esm/typings/src/llm-providers/ollama/OllamaExecutionToolsOptions.d.ts +23 -0
- package/esm/typings/src/llm-providers/ollama/createOllamaExecutionTools.d.ts +11 -0
- package/esm/typings/src/llm-providers/ollama/ollama-models.d.ts +14 -0
- package/esm/typings/src/llm-providers/ollama/playground/playground.d.ts +6 -0
- package/esm/typings/src/llm-providers/ollama/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/ollama/register-constructor.d.ts +15 -0
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +36 -0
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionToolsOptions.d.ts +14 -0
- package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +91 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +38 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +11 -0
- package/esm/typings/src/llm-providers/openai/computeOpenAiUsage.d.ts +18 -0
- package/esm/typings/src/llm-providers/openai/computeOpenAiUsage.test.d.ts +4 -0
- package/esm/typings/src/llm-providers/openai/createOpenAiAssistantExecutionTools.d.ts +15 -0
- package/esm/typings/src/llm-providers/openai/createOpenAiExecutionTools.d.ts +17 -0
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +25 -0
- package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +6 -0
- package/esm/typings/src/llm-providers/openai/register-configuration.d.ts +24 -0
- package/esm/typings/src/llm-providers/openai/register-constructor.d.ts +25 -0
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +59 -0
- package/esm/typings/src/llm-providers/remote/playground/playground.d.ts +5 -0
- package/esm/typings/src/llm-providers/vercel/VercelExecutionToolsOptions.d.ts +23 -0
- package/esm/typings/src/llm-providers/vercel/VercelProvider.d.ts +13 -0
- package/esm/typings/src/llm-providers/vercel/createExecutionToolsFromVercelProvider.d.ts +8 -0
- package/esm/typings/src/llm-providers/vercel/playground/playground.d.ts +6 -0
- package/esm/typings/src/migrations/migratePipeline.d.ts +9 -0
- package/esm/typings/src/other/templates/getBookTemplates.d.ts +24 -0
- package/esm/typings/src/other/templates/getTemplatesPipelineCollection.d.ts +10 -0
- package/esm/typings/src/personas/preparePersona.d.ts +17 -0
- package/esm/typings/src/pipeline/PipelineInterface/PipelineInterface.d.ts +22 -0
- package/esm/typings/src/pipeline/PipelineInterface/constants.d.ts +14 -0
- package/esm/typings/src/pipeline/PipelineInterface/getPipelineInterface.d.ts +11 -0
- package/esm/typings/src/pipeline/PipelineInterface/isPipelineImplementingInterface.d.ts +27 -0
- package/esm/typings/src/pipeline/PipelineInterface/isPipelineInterfacesEqual.d.ts +10 -0
- package/esm/typings/src/pipeline/PipelineJson/CommonTaskJson.d.ts +103 -0
- package/esm/typings/src/pipeline/PipelineJson/DialogTaskJson.d.ts +13 -0
- package/esm/typings/src/pipeline/PipelineJson/Expectations.d.ts +40 -0
- package/esm/typings/src/pipeline/PipelineJson/KnowledgePieceJson.d.ts +73 -0
- package/esm/typings/src/pipeline/PipelineJson/KnowledgeSourceJson.d.ts +44 -0
- package/esm/typings/src/pipeline/PipelineJson/ParameterJson.d.ts +98 -0
- package/esm/typings/src/pipeline/PipelineJson/PersonaJson.d.ts +47 -0
- package/esm/typings/src/pipeline/PipelineJson/PipelineJson.d.ts +113 -0
- package/esm/typings/src/pipeline/PipelineJson/PreparationJson.d.ts +22 -0
- package/esm/typings/src/pipeline/PipelineJson/PromptTaskJson.d.ts +26 -0
- package/esm/typings/src/pipeline/PipelineJson/ScriptTaskJson.d.ts +20 -0
- package/esm/typings/src/pipeline/PipelineJson/SimpleTaskJson.d.ts +13 -0
- package/esm/typings/src/pipeline/PipelineJson/TaskJson.d.ts +11 -0
- package/esm/typings/src/pipeline/PipelineString.d.ts +11 -0
- package/esm/typings/src/pipeline/book-notation.d.ts +19 -0
- package/esm/typings/src/pipeline/isValidPipelineString.d.ts +13 -0
- package/esm/typings/src/pipeline/isValidPipelineString.test.d.ts +4 -0
- package/esm/typings/src/pipeline/prompt-notation.d.ts +31 -0
- package/esm/typings/src/pipeline/prompt-notation.test.d.ts +4 -0
- package/esm/typings/src/pipeline/validatePipelineString.d.ts +14 -0
- package/esm/typings/src/playground/playground.d.ts +5 -0
- package/esm/typings/src/postprocessing/utils/extractBlock.d.ts +16 -0
- package/esm/typings/src/postprocessing/utils/extractJsonBlock.d.ts +25 -0
- package/esm/typings/src/postprocessing/utils/extractJsonBlock.test.d.ts +1 -0
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +51 -0
- package/esm/typings/src/prepare/isPipelinePrepared.d.ts +18 -0
- package/esm/typings/src/prepare/isPipelinePrepared.test.d.ts +1 -0
- package/esm/typings/src/prepare/preparePipeline.d.ts +22 -0
- package/esm/typings/src/prepare/preparePipelineOnRemoteServer.d.ts +17 -0
- package/esm/typings/src/prepare/prepareTasks.d.ts +36 -0
- package/esm/typings/src/prepare/unpreparePipeline.d.ts +13 -0
- package/esm/typings/src/remote-server/RemoteServer.d.ts +23 -0
- package/esm/typings/src/remote-server/createRemoteClient.d.ts +10 -0
- package/esm/typings/src/remote-server/openapi-types.d.ts +626 -0
- package/esm/typings/src/remote-server/openapi.d.ts +581 -0
- package/esm/typings/src/remote-server/socket-types/_common/PromptbookServer_Error.d.ts +7 -0
- package/esm/typings/src/remote-server/socket-types/_subtypes/Identification.d.ts +59 -0
- package/esm/typings/src/remote-server/socket-types/_subtypes/identificationToPromptbookToken.d.ts +11 -0
- package/esm/typings/src/remote-server/socket-types/_subtypes/promptbookTokenToIdentification.d.ts +10 -0
- package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Request.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Response.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/prepare/PromptbookServer_PreparePipeline_Request.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/prepare/PromptbookServer_PreparePipeline_Response.d.ts +12 -0
- package/esm/typings/src/remote-server/socket-types/prompt/PromptbookServer_Prompt_Request.d.ts +17 -0
- package/esm/typings/src/remote-server/socket-types/prompt/PromptbookServer_Prompt_Response.d.ts +12 -0
- package/esm/typings/src/remote-server/startRemoteServer.d.ts +25 -0
- package/esm/typings/src/remote-server/types/RemoteClientOptions.d.ts +24 -0
- package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +164 -0
- package/esm/typings/src/scrapers/_boilerplate/BoilerplateScraper.d.ts +43 -0
- package/esm/typings/src/scrapers/_boilerplate/createBoilerplateScraper.d.ts +20 -0
- package/esm/typings/src/scrapers/_boilerplate/playground/boilerplate-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/_boilerplate/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/_boilerplate/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/_common/Converter.d.ts +25 -0
- package/esm/typings/src/scrapers/_common/Scraper.d.ts +60 -0
- package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +16 -0
- package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.d.ts +19 -0
- package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.test.d.ts +1 -0
- package/esm/typings/src/scrapers/_common/register/$provideFilesystemForNode.d.ts +12 -0
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +15 -0
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/$provideScriptingForNode.d.ts +11 -0
- package/esm/typings/src/scrapers/_common/register/$registeredScrapersMessage.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/$scrapersMetadataRegister.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/$scrapersRegister.d.ts +14 -0
- package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +46 -0
- package/esm/typings/src/scrapers/_common/register/ScraperConstructor.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +35 -0
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.test.d.ts +4 -0
- package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/utils/promptbookFetch.d.ts +10 -0
- package/esm/typings/src/scrapers/document/DocumentScraper.d.ts +43 -0
- package/esm/typings/src/scrapers/document/DocumentScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +20 -0
- package/esm/typings/src/scrapers/document/playground/document-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/document/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/document/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.d.ts +43 -0
- package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +21 -0
- package/esm/typings/src/scrapers/document-legacy/playground/legacy-document-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/document-legacy/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +29 -0
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.test.d.ts +4 -0
- package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +20 -0
- package/esm/typings/src/scrapers/markdown/playground/markdown-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/markdown/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/markitdown/MarkitdownScraper.d.ts +50 -0
- package/esm/typings/src/scrapers/markitdown/createMarkitdownScraper.d.ts +22 -0
- package/esm/typings/src/scrapers/markitdown/playground/markitdown-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/markitdown/register-constructor.d.ts +17 -0
- package/esm/typings/src/scrapers/markitdown/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +41 -0
- package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +21 -0
- package/esm/typings/src/scrapers/pdf/playground/pdf-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/pdf/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +50 -0
- package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +21 -0
- package/esm/typings/src/scrapers/website/playground/website-scraper-playground.d.ts +5 -0
- package/esm/typings/src/scrapers/website/register-constructor.d.ts +15 -0
- package/esm/typings/src/scrapers/website/register-metadata.d.ts +28 -0
- package/esm/typings/src/scrapers/website/utils/createShowdownConverter.d.ts +7 -0
- package/esm/typings/src/scrapers/website/utils/createShowdownConverter.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function-async.test.ts.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function-missing.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function-with-dependencies.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/custom-function.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/postprocessing.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/script-execution-errors.test.d.ts +1 -0
- package/esm/typings/src/scripting/_test/script-execution-tools.test.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/JavascriptEvalExecutionTools.d.ts +22 -0
- package/esm/typings/src/scripting/javascript/JavascriptEvalExecutionTools.test.d.ts +4 -0
- package/esm/typings/src/scripting/javascript/JavascriptExecutionTools.d.ts +8 -0
- package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +26 -0
- package/esm/typings/src/scripting/javascript/postprocessing-functions.d.ts +56 -0
- package/esm/typings/src/scripting/javascript/utils/extractVariablesFromJavascript.d.ts +14 -0
- package/esm/typings/src/scripting/javascript/utils/extractVariablesFromJavascript.test.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/utils/extractVariablesFromScript.test.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +14 -0
- package/esm/typings/src/scripting/python/PythonExecutionTools.d.ts +18 -0
- package/esm/typings/src/scripting/typescript/TypescriptExecutionTools.d.ts +18 -0
- package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +24 -0
- package/esm/typings/src/storage/_common/PromptbookStorage.test-type.d.ts +5 -0
- package/esm/typings/src/storage/blackhole/BlackholeStorage.d.ts +33 -0
- package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +40 -0
- package/esm/typings/src/storage/file-cache-storage/FileCacheStorage.d.ts +40 -0
- package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +12 -0
- package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.d.ts +8 -0
- package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.test.d.ts +1 -0
- package/esm/typings/src/storage/local-storage/getIndexedDbStorage.d.ts +11 -0
- package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +10 -0
- package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +10 -0
- package/esm/typings/src/storage/local-storage/utils/IndexedDbStorageOptions.d.ts +14 -0
- package/esm/typings/src/storage/local-storage/utils/makePromptbookStorageFromIndexedDb.d.ts +8 -0
- package/esm/typings/src/storage/local-storage/utils/makePromptbookStorageFromWebStorage.d.ts +12 -0
- package/esm/typings/src/storage/memory/MemoryStorage.d.ts +33 -0
- package/esm/typings/src/storage/utils/PrefixStorage.d.ts +25 -0
- package/esm/typings/src/types/Arrayable.d.ts +11 -0
- package/esm/typings/src/types/IntermediateFilesStrategy.d.ts +8 -0
- package/esm/typings/src/types/ModelRequirements.d.ts +104 -0
- package/esm/typings/src/types/ModelVariant.d.ts +15 -0
- package/esm/typings/src/types/NonEmptyArray.d.ts +8 -0
- package/esm/typings/src/types/Prompt.d.ts +111 -0
- package/esm/typings/src/types/ScriptLanguage.d.ts +13 -0
- package/esm/typings/src/types/SectionType.d.ts +21 -0
- package/esm/typings/src/types/TaskType.d.ts +15 -0
- package/esm/typings/src/types/typeAliasEmoji.d.ts +12 -0
- package/esm/typings/src/types/typeAliases.d.ts +679 -0
- package/esm/typings/src/utils/$Register.d.ts +40 -0
- package/esm/typings/src/utils/$getCurrentDate.d.ts +10 -0
- package/esm/typings/src/utils/FromtoItems.d.ts +19 -0
- package/esm/typings/src/utils/arrayableToArray.d.ts +11 -0
- package/esm/typings/src/utils/arrayableToArray.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/addPipelineCommand.d.ts +17 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/addPipelineCommand.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/deflatePipeline.d.ts +13 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/deflatePipeline.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/removePipelineCommand.d.ts +22 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/removePipelineCommand.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/types/PipelineEditableSerialized.d.ts +27 -0
- package/esm/typings/src/utils/editable/utils/isFlatPipeline.d.ts +8 -0
- package/esm/typings/src/utils/editable/utils/isFlatPipeline.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/utils/renamePipelineParameter.d.ts +29 -0
- package/esm/typings/src/utils/editable/utils/renamePipelineParameter.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/utils/stringifyPipelineJson.d.ts +16 -0
- package/esm/typings/src/utils/emojis.d.ts +24 -0
- package/esm/typings/src/utils/environment/$getGlobalScope.d.ts +10 -0
- package/esm/typings/src/utils/environment/$isRunningInBrowser.d.ts +11 -0
- package/esm/typings/src/utils/environment/$isRunningInJest.d.ts +11 -0
- package/esm/typings/src/utils/environment/$isRunningInNode.d.ts +11 -0
- package/esm/typings/src/utils/environment/$isRunningInWebWorker.d.ts +11 -0
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +16 -0
- package/esm/typings/src/utils/execCommand/$execCommandNormalizeOptions.d.ts +12 -0
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +18 -0
- package/esm/typings/src/utils/execCommand/ExecCommandOptions.d.ts +45 -0
- package/esm/typings/src/utils/execCommand/execCommand.test.d.ts +1 -0
- package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/constants.d.ts +16 -0
- package/esm/typings/src/utils/expectation-counters/countCharacters.d.ts +10 -0
- package/esm/typings/src/utils/expectation-counters/countCharacters.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countLines.d.ts +12 -0
- package/esm/typings/src/utils/expectation-counters/countLines.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countPages.d.ts +12 -0
- package/esm/typings/src/utils/expectation-counters/countPages.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countParagraphs.d.ts +10 -0
- package/esm/typings/src/utils/expectation-counters/countParagraphs.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +16 -0
- package/esm/typings/src/utils/expectation-counters/countSentences.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/countWords.d.ts +10 -0
- package/esm/typings/src/utils/expectation-counters/countWords.test.d.ts +1 -0
- package/esm/typings/src/utils/expectation-counters/index.d.ts +12 -0
- package/esm/typings/src/utils/files/extensionToMimeType.d.ts +8 -0
- package/esm/typings/src/utils/files/extensionToMimeType.test.d.ts +1 -0
- package/esm/typings/src/utils/files/getFileExtension.d.ts +8 -0
- package/esm/typings/src/utils/files/getFileExtension.test.d.ts +1 -0
- package/esm/typings/src/utils/files/isDirectoryExisting.d.ts +14 -0
- package/esm/typings/src/utils/files/isDirectoryExisting.test.d.ts +1 -0
- package/esm/typings/src/utils/files/isExecutable.d.ts +11 -0
- package/esm/typings/src/utils/files/isFileExisting.d.ts +13 -0
- package/esm/typings/src/utils/files/isFileExisting.test.d.ts +1 -0
- package/esm/typings/src/utils/files/listAllFiles.d.ts +17 -0
- package/esm/typings/src/utils/files/listAllFiles.test.d.ts +1 -0
- package/esm/typings/src/utils/files/mimeTypeToExtension.d.ts +10 -0
- package/esm/typings/src/utils/files/mimeTypeToExtension.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/addAutoGeneratedSection.d.ts +14 -0
- package/esm/typings/src/utils/markdown/addAutoGeneratedSection.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/createMarkdownChart.d.ts +38 -0
- package/esm/typings/src/utils/markdown/createMarkdownChart.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/createMarkdownTable.d.ts +11 -0
- package/esm/typings/src/utils/markdown/createMarkdownTable.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/escapeMarkdownBlock.d.ts +11 -0
- package/esm/typings/src/utils/markdown/escapeMarkdownBlock.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown-real.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +36 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractAllListItemsFromMarkdown.d.ts +15 -0
- package/esm/typings/src/utils/markdown/extractAllListItemsFromMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.d.ts +22 -0
- package/esm/typings/src/utils/markdown/extractOneBlockFromMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/flattenMarkdown.d.ts +17 -0
- package/esm/typings/src/utils/markdown/flattenMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/parseMarkdownSection.d.ts +34 -0
- package/esm/typings/src/utils/markdown/parseMarkdownSection.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/prettifyMarkdown.d.ts +9 -0
- package/esm/typings/src/utils/markdown/prettifyMarkdown.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/removeMarkdownComments.d.ts +10 -0
- package/esm/typings/src/utils/markdown/removeMarkdownComments.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/removeMarkdownFormatting.d.ts +9 -0
- package/esm/typings/src/utils/markdown/removeMarkdownFormatting.test.d.ts +1 -0
- package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +15 -0
- package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/DIACRITIC_VARIANTS_LETTERS.d.ts +12 -0
- package/esm/typings/src/utils/normalization/IKeywords.d.ts +21 -0
- package/esm/typings/src/utils/normalization/capitalize.d.ts +6 -0
- package/esm/typings/src/utils/normalization/capitalize.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/decapitalize.d.ts +6 -0
- package/esm/typings/src/utils/normalization/decapitalize.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/isValidKeyword.d.ts +10 -0
- package/esm/typings/src/utils/normalization/isValidKeyword.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/nameToUriPart.d.ts +9 -0
- package/esm/typings/src/utils/normalization/nameToUriPart.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/nameToUriParts.d.ts +9 -0
- package/esm/typings/src/utils/normalization/nameToUriParts.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +21 -0
- package/esm/typings/src/utils/normalization/normalize-to-kebab-case.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +17 -0
- package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.d.ts +26 -0
- package/esm/typings/src/utils/normalization/normalizeTo_SCREAMING_CASE.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +22 -0
- package/esm/typings/src/utils/normalization/normalizeTo_camelCase.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_snake_case.d.ts +17 -0
- package/esm/typings/src/utils/normalization/normalizeTo_snake_case.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeWhitespaces.d.ts +6 -0
- package/esm/typings/src/utils/normalization/normalizeWhitespaces.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/orderJson.d.ts +21 -0
- package/esm/typings/src/utils/normalization/orderJson.test.d.ts +4 -0
- package/esm/typings/src/utils/normalization/parseKeywords.d.ts +16 -0
- package/esm/typings/src/utils/normalization/parseKeywords.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/parseKeywordsFromString.d.ts +9 -0
- package/esm/typings/src/utils/normalization/parseKeywordsFromString.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/removeDiacritics.d.ts +11 -0
- package/esm/typings/src/utils/normalization/removeDiacritics.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/searchKeywords.d.ts +13 -0
- package/esm/typings/src/utils/normalization/searchKeywords.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/suffixUrl.d.ts +7 -0
- package/esm/typings/src/utils/normalization/suffixUrl.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/titleToName.d.ts +9 -0
- package/esm/typings/src/utils/normalization/titleToName.test.d.ts +1 -0
- package/esm/typings/src/utils/organization/$sideEffect.d.ts +9 -0
- package/esm/typings/src/utils/organization/TODO_USE.d.ts +12 -0
- package/esm/typings/src/utils/organization/TODO_any.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_narrow.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_object.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_remove_as.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_string.d.ts +6 -0
- package/esm/typings/src/utils/organization/TODO_unknown.d.ts +6 -0
- package/esm/typings/src/utils/organization/___and___.d.ts +7 -0
- package/esm/typings/src/utils/organization/___or___.d.ts +6 -0
- package/esm/typings/src/utils/organization/empty_object.d.ts +10 -0
- package/esm/typings/src/utils/organization/just.d.ts +14 -0
- package/esm/typings/src/utils/organization/just_empty_object.d.ts +12 -0
- package/esm/typings/src/utils/organization/keepTypeImported.d.ts +9 -0
- package/esm/typings/src/utils/organization/keepUnused.d.ts +16 -0
- package/esm/typings/src/utils/organization/really_any.d.ts +6 -0
- package/esm/typings/src/utils/organization/really_unknown.d.ts +6 -0
- package/esm/typings/src/utils/organization/spaceTrim.d.ts +11 -0
- package/esm/typings/src/utils/parameters/extractParameterNames.d.ts +10 -0
- package/esm/typings/src/utils/parameters/extractParameterNames.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.d.ts +27 -0
- package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/numberToString.d.ts +7 -0
- package/esm/typings/src/utils/parameters/numberToString.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/templateParameters.d.ts +16 -0
- package/esm/typings/src/utils/parameters/templateParameters.test.d.ts +1 -0
- package/esm/typings/src/utils/parameters/valueToString.d.ts +17 -0
- package/esm/typings/src/utils/parameters/valueToString.test.d.ts +1 -0
- package/esm/typings/src/utils/parseNumber.d.ts +16 -0
- package/esm/typings/src/utils/parseNumber.test.d.ts +1 -0
- package/esm/typings/src/utils/random/$randomSeed.d.ts +10 -0
- package/esm/typings/src/utils/random/$randomToken.d.ts +13 -0
- package/esm/typings/src/utils/removeEmojis.d.ts +8 -0
- package/esm/typings/src/utils/removeEmojis.test.d.ts +1 -0
- package/esm/typings/src/utils/removeQuotes.d.ts +14 -0
- package/esm/typings/src/utils/removeQuotes.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/$deepFreeze.d.ts +14 -0
- package/esm/typings/src/utils/serialization/asSerializable.d.ts +15 -0
- package/esm/typings/src/utils/serialization/asSerializable.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/checkSerializableAsJson.d.ts +45 -0
- package/esm/typings/src/utils/serialization/clonePipeline.d.ts +14 -0
- package/esm/typings/src/utils/serialization/deepClone.d.ts +14 -0
- package/esm/typings/src/utils/serialization/deepClone.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/exportJson.d.ts +29 -0
- package/esm/typings/src/utils/serialization/isSerializableAsJson.d.ts +25 -0
- package/esm/typings/src/utils/serialization/isSerializableAsJson.test.d.ts +1 -0
- package/esm/typings/src/utils/serialization/jsonStringsToJsons.d.ts +9 -0
- package/esm/typings/src/utils/serialization/jsonStringsToJsons.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/difference.d.ts +10 -0
- package/esm/typings/src/utils/sets/difference.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/intersection.d.ts +7 -0
- package/esm/typings/src/utils/sets/intersection.test.d.ts +1 -0
- package/esm/typings/src/utils/sets/union.d.ts +7 -0
- package/esm/typings/src/utils/sets/union.test.d.ts +1 -0
- package/esm/typings/src/utils/trimCodeBlock.d.ts +9 -0
- package/esm/typings/src/utils/trimCodeBlock.test.d.ts +1 -0
- package/esm/typings/src/utils/trimEndOfCodeBlock.d.ts +9 -0
- package/esm/typings/src/utils/trimEndOfCodeBlock.test.d.ts +1 -0
- package/esm/typings/src/utils/unwrapResult.d.ts +37 -0
- package/esm/typings/src/utils/unwrapResult.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/email/isValidEmail.d.ts +8 -0
- package/esm/typings/src/utils/validators/email/isValidEmail.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/filePath/isRootPath.d.ts +12 -0
- package/esm/typings/src/utils/validators/filePath/isRootPath.test.d.ts +4 -0
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +12 -0
- package/esm/typings/src/utils/validators/filePath/isValidFilePath.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.d.ts +10 -0
- package/esm/typings/src/utils/validators/javascriptName/isValidJavascriptName.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +11 -0
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.d.ts +15 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidPromptbookVersion.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.d.ts +12 -0
- package/esm/typings/src/utils/validators/semanticVersion/isValidSemanticVersion.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.d.ts +11 -0
- package/esm/typings/src/utils/validators/url/isHostnameOnPrivateNetwork.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.d.ts +13 -0
- package/esm/typings/src/utils/validators/url/isUrlOnPrivateNetwork.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isValidPipelineUrl.d.ts +15 -0
- package/esm/typings/src/utils/validators/url/isValidPipelineUrl.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/url/isValidUrl.d.ts +13 -0
- package/esm/typings/src/utils/validators/url/isValidUrl.test.d.ts +1 -0
- package/esm/typings/src/utils/validators/uuid/isValidUuid.d.ts +8 -0
- package/esm/typings/src/utils/validators/uuid/isValidUuid.test.d.ts +1 -0
- package/esm/typings/src/version.d.ts +26 -0
- package/esm/typings/src/wizard/$getCompiledBook.d.ts +16 -0
- package/esm/typings/src/wizard/wizard.d.ts +68 -0
- package/package.json +104 -0
- package/umd/index.umd.js +16694 -0
- package/umd/index.umd.js.map +1 -0
@@ -0,0 +1,41 @@
|
|
1
|
+
import { MultipleLlmExecutionTools } from '../../_multiple/MultipleLlmExecutionTools';
|
2
|
+
import type { CreateLlmToolsFromConfigurationOptions } from './createLlmToolsFromConfiguration';
|
3
|
+
/**
|
4
|
+
* Automatically configures LLM tools from environment variables in Node.js
|
5
|
+
*
|
6
|
+
* This utility function detects available LLM providers based on environment variables
|
7
|
+
* and creates properly configured LLM execution tools for each detected provider.
|
8
|
+
*
|
9
|
+
* Note: This function is not cached, every call creates new instance of `MultipleLlmExecutionTools`
|
10
|
+
*
|
11
|
+
* Supports environment variables from .env files when dotenv is configured
|
12
|
+
* Note: `$` is used to indicate that this function is not a pure function - it uses filesystem to access `.env` file
|
13
|
+
*
|
14
|
+
* It looks for environment variables:
|
15
|
+
* - `process.env.OPENAI_API_KEY`
|
16
|
+
* - `process.env.ANTHROPIC_CLAUDE_API_KEY`
|
17
|
+
* - ...
|
18
|
+
*
|
19
|
+
* @param options Configuration options for the LLM tools
|
20
|
+
* @returns A unified interface containing all detected and configured LLM tools
|
21
|
+
* @public exported from `@promptbook/node`
|
22
|
+
*/
|
23
|
+
export declare function $provideLlmToolsFromEnv(options?: CreateLlmToolsFromConfigurationOptions): Promise<MultipleLlmExecutionTools>;
|
24
|
+
/**
|
25
|
+
* TODO: The architecture for LLM tools configuration consists of three key functions:
|
26
|
+
* 1. `$provideLlmToolsFromEnv` - High-level function that detects available providers from env vars and returns ready-to-use LLM tools
|
27
|
+
* 2. `$provideLlmToolsConfigurationFromEnv` - Middle layer that extracts configuration objects from environment variables
|
28
|
+
* 3. `createLlmToolsFromConfiguration` - Low-level function that instantiates LLM tools from explicit configuration
|
29
|
+
*
|
30
|
+
* This layered approach allows flexibility in how tools are configured:
|
31
|
+
* - Use $provideLlmToolsFromEnv for automatic detection and setup in Node.js environments
|
32
|
+
* - Use $provideLlmToolsConfigurationFromEnv to extract config objects for modification before instantiation
|
33
|
+
* - Use createLlmToolsFromConfiguration for explicit control over tool configurations
|
34
|
+
*
|
35
|
+
* TODO: [ð§ ][ð] Which name is better `$provideLlmToolsFromEnv` or `$provideLlmToolsFromEnvironment`?
|
36
|
+
* TODO: [ð§ ] Is there some meaningfull way how to test this util
|
37
|
+
* Note: [ðĒ] Code in this file should never be never released in packages that could be imported into browser environment
|
38
|
+
* TODO: [ðĨ] Allow `ptbk make` without llm tools
|
39
|
+
* TODO: This should be maybe not under `_common` but under `utils`
|
40
|
+
* TODO: [ÂŪ] DRY Register logic
|
41
|
+
*/
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import type { string_filename } from '../../../types/typeAliases';
|
2
|
+
import type { string_markdown } from '../../../types/typeAliases';
|
3
|
+
/**
|
4
|
+
* Pass the `.env` file which was used to configure LLM tools
|
5
|
+
*
|
6
|
+
* Note: `$` is used to indicate that this variable is making side effect
|
7
|
+
*
|
8
|
+
* @private internal log of `$provideLlmToolsConfigurationFromEnv` and `$registeredLlmToolsMessage`
|
9
|
+
*/
|
10
|
+
export declare function $setUsedEnvFilename(filepath: string_filename): void;
|
11
|
+
/**
|
12
|
+
* Creates a message with all registered LLM tools
|
13
|
+
*
|
14
|
+
* Note: This function is used to create a (error) message when there is no constructor for some LLM provider
|
15
|
+
*
|
16
|
+
* @private internal function of `createLlmToolsFromConfiguration` and `$provideLlmToolsFromEnv`
|
17
|
+
*/
|
18
|
+
export declare function $registeredLlmToolsMessage(): string_markdown;
|
19
|
+
/**
|
20
|
+
* TODO: [ÂŪ] DRY Register logic
|
21
|
+
* TODO: [ð§ ][â] Maybe pass env as argument
|
22
|
+
*/
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import type { string_title } from '../../../types/typeAliases';
|
2
|
+
import type { Registered } from '../../../utils/$Register';
|
3
|
+
import type { LlmToolsOptions } from './LlmToolsOptions';
|
4
|
+
/**
|
5
|
+
* Configuration definition for LLM execution tools, containing provider-specific settings
|
6
|
+
* that can be passed during runtime to instantiate and configure LLM tools properly.
|
7
|
+
*
|
8
|
+
* The Promptbook LLM tools architecture involves several related types:
|
9
|
+
* - `LlmToolsMetadata`: Contains static metadata about the tool, such as name, version, and capabilities
|
10
|
+
* - `LlmToolsConfiguration`: Runtime configuration from environment variables or settings
|
11
|
+
* - `LlmToolsOptions`: Provider-specific options for instantiating tools
|
12
|
+
* - `Registered`: The record of a registered tool in the global registry
|
13
|
+
*/
|
14
|
+
export type LlmToolsConfiguration = ReadonlyArray<Registered & {
|
15
|
+
/**
|
16
|
+
* Human-readable name for this specific provider configuration
|
17
|
+
* Used in UI components and logs for identifying this particular configuration
|
18
|
+
*/
|
19
|
+
readonly title: string_title;
|
20
|
+
/**
|
21
|
+
* Provider-specific configuration options used for instantiating and configuring LLM tools
|
22
|
+
* Contains values like API keys, model preferences, endpoint URLs, and other settings
|
23
|
+
*/
|
24
|
+
readonly options: LlmToolsOptions;
|
25
|
+
}>;
|
26
|
+
/**
|
27
|
+
* TODO: [ð§ ][ð°] `title` is redundant BUT maybe allow each provider pass it's own title for tracking purposes
|
28
|
+
* TODO: Maybe instead of `LlmToolsConfiguration[number]` make `LlmToolsConfigurationItem`
|
29
|
+
* TODO: [ÂŪ] DRY Register logic
|
30
|
+
*/
|
@@ -0,0 +1,58 @@
|
|
1
|
+
import { MODEL_ORDERS } from '../../../constants';
|
2
|
+
import { MODEL_TRUST_LEVELS } from '../../../constants';
|
3
|
+
import type { string_name } from '../../../types/typeAliases';
|
4
|
+
import type { string_title } from '../../../types/typeAliases';
|
5
|
+
import type { Registered } from '../../../utils/$Register';
|
6
|
+
import type { string_SCREAMING_CASE } from '../../../utils/normalization/normalizeTo_SCREAMING_CASE';
|
7
|
+
import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
|
8
|
+
/**
|
9
|
+
* Metadata definition for LLM execution tools that provides information about a provider's capabilities,
|
10
|
+
* configuration options, and relationships within the registry system.
|
11
|
+
*
|
12
|
+
* The Promptbook LLM tools architecture involves several related types:
|
13
|
+
* - `LlmToolsMetadata`: Contains static metadata about the tool, such as name, version, and capabilities
|
14
|
+
* - `LlmToolsConfiguration`: Runtime configuration from environment variables or settings
|
15
|
+
* - `LlmToolsOptions`: Provider-specific options for instantiating tools
|
16
|
+
* - `Registered`: The record of a registered tool in the global registry
|
17
|
+
*/
|
18
|
+
export type LlmToolsMetadata = Registered & {
|
19
|
+
/**
|
20
|
+
* Human-readable display name for the LLM provider
|
21
|
+
* Used in UI components and documentation references
|
22
|
+
*/
|
23
|
+
readonly title: string_title;
|
24
|
+
/**
|
25
|
+
* How is the model is trusted?
|
26
|
+
*/
|
27
|
+
readonly trustLevel: keyof typeof MODEL_TRUST_LEVELS;
|
28
|
+
/**
|
29
|
+
* How is the model provider important and should be sorted in the list of available providers?
|
30
|
+
*/
|
31
|
+
readonly order: typeof MODEL_ORDERS[keyof typeof MODEL_ORDERS] | number;
|
32
|
+
/**
|
33
|
+
* List of environment variables that can be used to configure the provider
|
34
|
+
*
|
35
|
+
* If `[]`, empty array, it means that the provider is available automatically without any configuration
|
36
|
+
* If `null`, it means that the provider can not be configured via environment variables
|
37
|
+
*/
|
38
|
+
readonly envVariables: ReadonlyArray<string_name & string_SCREAMING_CASE> | null;
|
39
|
+
/**
|
40
|
+
* Provides a default configuration template for this LLM provider
|
41
|
+
* Used to generate example configurations or as fallback when no specific configuration is provided
|
42
|
+
* @returns A standardized configuration object for this LLM provider
|
43
|
+
*/
|
44
|
+
getBoilerplateConfiguration(): LlmToolsConfiguration[number];
|
45
|
+
/**
|
46
|
+
* Creates a provider-specific configuration object from environment variables
|
47
|
+
* Used to automatically configure LLM tools based on available environment settings
|
48
|
+
*
|
49
|
+
* @param env Dictionary of environment variables (key-value pairs)
|
50
|
+
* @returns Configuration object for this LLM provider if required variables are present, or null if configuration is not possible
|
51
|
+
*/
|
52
|
+
createConfigurationFromEnv(env: Record<string_name, string>): LlmToolsConfiguration[number] | null;
|
53
|
+
};
|
54
|
+
/**
|
55
|
+
* TODO: Add configuration schema and maybe some documentation link
|
56
|
+
* TODO: Maybe constrain LlmToolsConfiguration[number] by generic to ensure that `createConfigurationFromEnv` and `getBoilerplateConfiguration` always create same `packageName` and `className`
|
57
|
+
* TODO: [ÂŪ] DRY Register logic
|
58
|
+
*/
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import type { TODO_object } from '../../../utils/organization/TODO_object';
|
2
|
+
/**
|
3
|
+
* Options for configuring LLM (Large Language Model) tools.
|
4
|
+
*
|
5
|
+
* This type is used to pass provider-specific options to LLM execution tools.
|
6
|
+
*
|
7
|
+
*
|
8
|
+
* The Promptbook LLM tools architecture involves several related types:
|
9
|
+
* - `LlmToolsMetadata`: Contains static metadata about the tool, such as name, version, and capabilities
|
10
|
+
* - `LlmToolsConfiguration`: Runtime configuration from environment variables or settings
|
11
|
+
* - `LlmToolsOptions`: Provider-specific options for instantiating tools
|
12
|
+
* - `Registered`: The record of a registered tool in the global registry
|
13
|
+
*/
|
14
|
+
export type LlmToolsOptions = TODO_object;
|
15
|
+
/**
|
16
|
+
* TODO: [ÂŪ] DRY Register logic
|
17
|
+
*/
|
@@ -0,0 +1,49 @@
|
|
1
|
+
import type { string_user_id } from '../../../types/typeAliases';
|
2
|
+
import { MultipleLlmExecutionTools } from '../../_multiple/MultipleLlmExecutionTools';
|
3
|
+
import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
|
4
|
+
/**
|
5
|
+
* Options for `$provideLlmToolsFromEnv`
|
6
|
+
*
|
7
|
+
* @private internal type for `$provideLlmToolsFromEnv` and `$provideLlmToolsForTestingAndScriptsAndPlayground`
|
8
|
+
*/
|
9
|
+
export type CreateLlmToolsFromConfigurationOptions = {
|
10
|
+
/**
|
11
|
+
* This will will be passed to the created `LlmExecutionTools`
|
12
|
+
*
|
13
|
+
* @default false
|
14
|
+
*/
|
15
|
+
isVerbose?: boolean;
|
16
|
+
/**
|
17
|
+
* Identifier of the end user
|
18
|
+
*
|
19
|
+
* Note: This is passed to the LLM tools providers to identify misuse
|
20
|
+
*/
|
21
|
+
readonly userId?: string_user_id;
|
22
|
+
};
|
23
|
+
/**
|
24
|
+
* Creates LLM execution tools from provided configuration objects
|
25
|
+
*
|
26
|
+
* Instantiates and configures LLM tool instances for each configuration entry,
|
27
|
+
* combining them into a unified interface via MultipleLlmExecutionTools.
|
28
|
+
*
|
29
|
+
* Note: This function is not cached, every call creates new instance of `MultipleLlmExecutionTools`
|
30
|
+
*
|
31
|
+
* @param configuration Array of LLM tool configurations to instantiate
|
32
|
+
* @param options Additional options for configuring the LLM tools
|
33
|
+
* @returns A unified interface combining all successfully instantiated LLM tools
|
34
|
+
* @public exported from `@promptbook/core`
|
35
|
+
*/
|
36
|
+
export declare function createLlmToolsFromConfiguration(configuration: LlmToolsConfiguration, options?: CreateLlmToolsFromConfigurationOptions): MultipleLlmExecutionTools;
|
37
|
+
/**
|
38
|
+
* TODO: [ð] Together with `createLlmToolsFromConfiguration` + 'EXECUTION_TOOLS_CLASSES' gets to `@promptbook/core` ALL model providers, make this more efficient
|
39
|
+
* TODO: [ð§ ][ð] Dynamically install required providers
|
40
|
+
* TODO: We should implement an interactive configuration wizard that would:
|
41
|
+
* 1. Detect which LLM providers are available in the environment
|
42
|
+
* 2. Guide users through required configuration settings for each provider
|
43
|
+
* 3. Allow testing connections before completing setup
|
44
|
+
* 4. Generate appropriate configuration code for application integration
|
45
|
+
* TODO: [ð§ ][ð] Which name is better `createLlmToolsFromConfig` or `createLlmToolsFromConfiguration`?
|
46
|
+
* TODO: [ð§ ] Is there some meaningfull way how to test this util
|
47
|
+
* TODO: This should be maybe not under `_common` but under `utils`
|
48
|
+
* TODO: [ÂŪ] DRY Register logic
|
49
|
+
*/
|
package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.test.d.ts
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,33 @@
|
|
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_semantic_version } from '../../../../types/typeAliases';
|
5
|
+
import type { string_promptbook_version } from '../../../../version';
|
6
|
+
/**
|
7
|
+
* Represents a single item stored in the LLM cache.
|
8
|
+
*/
|
9
|
+
export type CacheItem = {
|
10
|
+
/**
|
11
|
+
* The date and time when the cache item was created, in ISO 8601 format.
|
12
|
+
*/
|
13
|
+
date: string_date_iso8601;
|
14
|
+
/**
|
15
|
+
* The version of the Promptbook library used when this cache item was created.
|
16
|
+
*/
|
17
|
+
promptbookVersion?: string_promptbook_version;
|
18
|
+
/**
|
19
|
+
* The version of the Book language used when this cache item was created.
|
20
|
+
*/
|
21
|
+
bookVersion?: string_semantic_version;
|
22
|
+
/**
|
23
|
+
* The prompt that was sent to the LLM.
|
24
|
+
*/
|
25
|
+
prompt: Prompt;
|
26
|
+
/**
|
27
|
+
* The response received from the LLM.
|
28
|
+
*/
|
29
|
+
promptResult: PromptResult;
|
30
|
+
};
|
31
|
+
/**
|
32
|
+
* TODO: [ð§ ] Should be this exported alongsite `cacheLlmTools` through `@promptbook/utils` OR through `@promptbook/types`
|
33
|
+
*/
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import type { PromptbookStorage } from '../../../../storage/_common/PromptbookStorage';
|
2
|
+
import type { CacheItem } from './CacheItem';
|
3
|
+
/**
|
4
|
+
* Options for configuring caching behavior for LlmExecutionTools.
|
5
|
+
*/
|
6
|
+
export type CacheLlmToolsOptions = {
|
7
|
+
/**
|
8
|
+
* The cache provider instance to use for storing and retrieving cached data.
|
9
|
+
*
|
10
|
+
* @default MemoryStorage
|
11
|
+
*/
|
12
|
+
storage: PromptbookStorage<CacheItem>;
|
13
|
+
/**
|
14
|
+
* When set to `true`, the cache will be reloaded regardless of whether the data is already present in the cache.
|
15
|
+
* This can be useful for debugging or when you want to ensure that the latest data is always fetched.
|
16
|
+
* Data will ne still saved to the cache.
|
17
|
+
*
|
18
|
+
* @default false
|
19
|
+
*/
|
20
|
+
isCacheReloaded?: boolean;
|
21
|
+
/**
|
22
|
+
* If true, the preparation logs additional information
|
23
|
+
*
|
24
|
+
* @default DEFAULT_IS_VERBOSE
|
25
|
+
*/
|
26
|
+
readonly isVerbose?: boolean;
|
27
|
+
};
|
@@ -0,0 +1,19 @@
|
|
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
|
+
* Note: It can take extended `LlmExecutionTools` and cache the
|
7
|
+
*
|
8
|
+
* @param llmTools LLM tools to be intercepted with usage counting, it can contain extra methods like `totalUsage`
|
9
|
+
* @returns LLM tools with same functionality with added total cost counting
|
10
|
+
* @public exported from `@promptbook/core`
|
11
|
+
*/
|
12
|
+
export declare function cacheLlmTools<TLlmTools extends LlmExecutionTools>(llmTools: TLlmTools, options?: Partial<CacheLlmToolsOptions>): TLlmTools;
|
13
|
+
/**
|
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
|
+
* TODO: [ð·ââïļ] Comprehensive manual about construction of llmTools
|
17
|
+
* Detailed explanation about caching strategies and appropriate storage selection for different use cases
|
18
|
+
* Examples of how to combine multiple interceptors for advanced caching, logging, and usage tracking
|
19
|
+
*/
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import type { Observable } from 'rxjs';
|
2
|
+
import type { LlmExecutionTools } from '../../../../execution/LlmExecutionTools';
|
3
|
+
import type { Usage } from '../../../../execution/Usage';
|
4
|
+
/**
|
5
|
+
* LLM tools with option to get total usage of the execution
|
6
|
+
*/
|
7
|
+
export type LlmExecutionToolsWithTotalUsage = LlmExecutionTools & {
|
8
|
+
/**
|
9
|
+
* Get total cost of the execution up to this point
|
10
|
+
*/
|
11
|
+
getTotalUsage(): Usage;
|
12
|
+
/**
|
13
|
+
* Observable of total cost of the execution up to this point
|
14
|
+
*
|
15
|
+
* Note: This does report the cost of the last prompt, not the total cost of the execution up to this point
|
16
|
+
*/
|
17
|
+
spending(): Observable<Usage>;
|
18
|
+
};
|
19
|
+
/**
|
20
|
+
* TODO: [ð·ââïļ] @@@ Manual about construction of llmTools
|
21
|
+
* Note: [ðĨŦ] Not using getter `get totalUsage` but `getTotalUsage` to allow this object to be proxied
|
22
|
+
*/
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import type { LlmExecutionTools } from '../../../../execution/LlmExecutionTools';
|
2
|
+
import type { LlmExecutionToolsWithTotalUsage } from './LlmExecutionToolsWithTotalUsage';
|
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
|
+
* @public exported from `@promptbook/core`
|
9
|
+
*/
|
10
|
+
export declare function countUsage(llmTools: LlmExecutionTools): LlmExecutionToolsWithTotalUsage;
|
11
|
+
/**
|
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
|
+
* TODO: [ð§ ][ðŊ] Maybe a way how to hide ability to `get totalUsage`
|
15
|
+
* > const [llmToolsWithUsage,getUsage] = countTotalUsage(llmTools);
|
16
|
+
* TODO: [ð·ââïļ] @@@ Manual about construction of llmTools
|
17
|
+
*/
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import type { LlmExecutionTools } from '../../../../execution/LlmExecutionTools';
|
2
|
+
import type { Usage } from '../../../../execution/Usage';
|
3
|
+
import type { PromptbookStorage } from '../../../../storage/_common/PromptbookStorage';
|
4
|
+
import type { TODO_any } from '../../../../utils/organization/TODO_any';
|
5
|
+
import type { LlmExecutionToolsWithTotalUsage } from './LlmExecutionToolsWithTotalUsage';
|
6
|
+
/**
|
7
|
+
* Options for the `limitTotalUsage` function.
|
8
|
+
*/
|
9
|
+
type LimitTotalUsageOptions = {
|
10
|
+
/**
|
11
|
+
* The usage limits to apply.
|
12
|
+
*
|
13
|
+
* @default ZERO_USAGE
|
14
|
+
*/
|
15
|
+
maxTotalUsage: Usage;
|
16
|
+
/**
|
17
|
+
* The storage mechanism to use for tracking usage across multiple executions or instances.
|
18
|
+
*
|
19
|
+
* @default MemoryStorage which will not persist when the process ends
|
20
|
+
*/
|
21
|
+
storage: PromptbookStorage<TODO_any>;
|
22
|
+
};
|
23
|
+
/**
|
24
|
+
* Wraps LlmExecutionTools to limit the total usage based on provided limits.
|
25
|
+
*
|
26
|
+
* @public exported from `@promptbook/core`
|
27
|
+
*/
|
28
|
+
export declare function limitTotalUsage(llmTools: LlmExecutionTools, options?: Partial<LimitTotalUsageOptions>): LlmExecutionToolsWithTotalUsage;
|
29
|
+
export {};
|
30
|
+
/**
|
31
|
+
* TODO: Maybe internally use `countTotalUsage`
|
32
|
+
* TODO: [ð§ ][ðļ] Maybe make some common abstraction `interceptLlmTools` and use here (or use javascript Proxy?)
|
33
|
+
* TODO: [ð§ ] Is there some meaningfull way how to test this util
|
34
|
+
* TODO: [ð§ ][ðŊ] Maybe a way how to hide ability to `get totalUsage`
|
35
|
+
* TODO: [ð·ââïļ] @@@ Manual about construction of llmTools
|
36
|
+
*/
|
@@ -0,0 +1,16 @@
|
|
1
|
+
/**
|
2
|
+
* String value found on OpenAI and Anthropic Claude page
|
3
|
+
*
|
4
|
+
* @see https://openai.com/api/pricing/
|
5
|
+
* @see https://docs.anthropic.com/en/docs/models-overview
|
6
|
+
*
|
7
|
+
* @private within the repository, used only as internal helper for `OPENAI_MODELS` and `computeUsage`
|
8
|
+
*/
|
9
|
+
type string_model_price = `$${number}.${number} / ${number}M tokens`;
|
10
|
+
/**
|
11
|
+
* Create price per one token based on the string value found on openai page
|
12
|
+
*
|
13
|
+
* @private within the repository, used only as internal helper for `OPENAI_MODELS`
|
14
|
+
*/
|
15
|
+
export declare function pricing(value: string_model_price): number;
|
16
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,63 @@
|
|
1
|
+
import type { AvailableModel } from '../../execution/AvailableModel';
|
2
|
+
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
3
|
+
import type { ChatPromptResult } from '../../execution/PromptResult';
|
4
|
+
import type { CompletionPromptResult } from '../../execution/PromptResult';
|
5
|
+
import type { EmbeddingPromptResult } from '../../execution/PromptResult';
|
6
|
+
import type { PromptResult } from '../../execution/PromptResult';
|
7
|
+
import type { ChatPrompt } from '../../types/Prompt';
|
8
|
+
import type { CompletionPrompt } from '../../types/Prompt';
|
9
|
+
import type { EmbeddingPrompt } from '../../types/Prompt';
|
10
|
+
import type { Prompt } from '../../types/Prompt';
|
11
|
+
import type { string_markdown } from '../../types/typeAliases';
|
12
|
+
import type { string_markdown_text } from '../../types/typeAliases';
|
13
|
+
import type { string_title } from '../../types/typeAliases';
|
14
|
+
/**
|
15
|
+
* Multiple LLM Execution Tools is a proxy server that uses multiple execution tools internally and exposes the executor interface externally.
|
16
|
+
*
|
17
|
+
* Note: Internal utility of `joinLlmExecutionTools` but exposed type
|
18
|
+
* @public exported from `@promptbook/core`
|
19
|
+
*/
|
20
|
+
export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
|
21
|
+
/**
|
22
|
+
* Array of execution tools in order of priority
|
23
|
+
*/
|
24
|
+
readonly llmExecutionTools: ReadonlyArray<LlmExecutionTools>;
|
25
|
+
/**
|
26
|
+
* Gets array of execution tools in order of priority
|
27
|
+
*/
|
28
|
+
constructor(...llmExecutionTools: ReadonlyArray<LlmExecutionTools>);
|
29
|
+
get title(): string_title & string_markdown_text;
|
30
|
+
get description(): string_markdown;
|
31
|
+
/**
|
32
|
+
* Check the configuration of all execution tools
|
33
|
+
*/
|
34
|
+
checkConfiguration(): Promise<void>;
|
35
|
+
/**
|
36
|
+
* List all available models that can be used
|
37
|
+
* This lists is a combination of all available models from all execution tools
|
38
|
+
*/
|
39
|
+
listModels(): Promise<ReadonlyArray<AvailableModel>>;
|
40
|
+
/**
|
41
|
+
* Calls the best available chat model
|
42
|
+
*/
|
43
|
+
callChatModel(prompt: ChatPrompt): Promise<ChatPromptResult>;
|
44
|
+
/**
|
45
|
+
* Calls the best available completion model
|
46
|
+
*/
|
47
|
+
callCompletionModel(prompt: CompletionPrompt): Promise<CompletionPromptResult>;
|
48
|
+
/**
|
49
|
+
* Calls the best available embedding model
|
50
|
+
*/
|
51
|
+
callEmbeddingModel(prompt: EmbeddingPrompt): Promise<EmbeddingPromptResult>;
|
52
|
+
/**
|
53
|
+
* Calls the best available model
|
54
|
+
*
|
55
|
+
* Note: This should be private or protected but is public to be usable with duck typing
|
56
|
+
*/
|
57
|
+
callCommonModel(prompt: Prompt): Promise<PromptResult>;
|
58
|
+
}
|
59
|
+
/**
|
60
|
+
* TODO: [ð§ ][ð] Aggregating multiple models - have result not only from one first available model BUT all of them
|
61
|
+
* 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
|
62
|
+
* Look how `countTotalUsage` (and `cacheLlmTools`) implements it
|
63
|
+
*/
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
2
|
+
import { MultipleLlmExecutionTools } from './MultipleLlmExecutionTools';
|
3
|
+
/**
|
4
|
+
* Joins multiple LLM Execution Tools into one
|
5
|
+
*
|
6
|
+
* @returns {LlmExecutionTools} Single wrapper for multiple LlmExecutionTools
|
7
|
+
*
|
8
|
+
* 0) If there is no LlmExecutionTools, it warns and returns valid but empty LlmExecutionTools
|
9
|
+
* 1) If there is only one LlmExecutionTools, it returns it wrapped in a proxy object
|
10
|
+
* 2) If there are multiple LlmExecutionTools, first will be used first, second will be used if the first hasn`t defined model variant or fails, etc.
|
11
|
+
* 3) When all LlmExecutionTools fail, it throws an error with a list of all errors merged into one
|
12
|
+
*
|
13
|
+
*
|
14
|
+
* Tip: You don't have to use this function directly, just pass an array of LlmExecutionTools to the `ExecutionTools`
|
15
|
+
*
|
16
|
+
* @public exported from `@promptbook/core`
|
17
|
+
*/
|
18
|
+
export declare function joinLlmExecutionTools(...llmExecutionTools: ReadonlyArray<LlmExecutionTools>): MultipleLlmExecutionTools;
|
19
|
+
/**
|
20
|
+
* TODO: [ð·ââïļ] @@@ Manual about construction of llmTools
|
21
|
+
*/
|
@@ -0,0 +1,66 @@
|
|
1
|
+
import Anthropic from '@anthropic-ai/sdk';
|
2
|
+
import type { AvailableModel } from '../../execution/AvailableModel';
|
3
|
+
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
4
|
+
import type { ChatPromptResult } from '../../execution/PromptResult';
|
5
|
+
import type { CompletionPromptResult } from '../../execution/PromptResult';
|
6
|
+
import type { Prompt } from '../../types/Prompt';
|
7
|
+
import type { string_markdown } from '../../types/typeAliases';
|
8
|
+
import type { string_markdown_text } from '../../types/typeAliases';
|
9
|
+
import type { string_title } from '../../types/typeAliases';
|
10
|
+
import type { AnthropicClaudeExecutionToolsDirectOptions } from './AnthropicClaudeExecutionToolsOptions';
|
11
|
+
/**
|
12
|
+
* Execution Tools for calling Anthropic Claude API.
|
13
|
+
*
|
14
|
+
* @public exported from `@promptbook/anthropic-claude`
|
15
|
+
* @deprecated use `createAnthropicClaudeExecutionTools` instead
|
16
|
+
*/
|
17
|
+
export declare class AnthropicClaudeExecutionTools implements LlmExecutionTools {
|
18
|
+
protected readonly options: AnthropicClaudeExecutionToolsDirectOptions;
|
19
|
+
/**
|
20
|
+
* Anthropic Claude API client.
|
21
|
+
*/
|
22
|
+
private client;
|
23
|
+
private limiter;
|
24
|
+
/**
|
25
|
+
* Creates Anthropic Claude Execution Tools.
|
26
|
+
*
|
27
|
+
* @param options which are relevant are directly passed to the Anthropic Claude client
|
28
|
+
*/
|
29
|
+
constructor(options?: AnthropicClaudeExecutionToolsDirectOptions);
|
30
|
+
get title(): string_title & string_markdown_text;
|
31
|
+
get description(): string_markdown;
|
32
|
+
getClient(): Promise<Anthropic>;
|
33
|
+
/**
|
34
|
+
* Check the `options` passed to `constructor`
|
35
|
+
*/
|
36
|
+
checkConfiguration(): Promise<void>;
|
37
|
+
/**
|
38
|
+
* List all available Anthropic Claude models that can be used
|
39
|
+
*/
|
40
|
+
listModels(): ReadonlyArray<AvailableModel>;
|
41
|
+
/**
|
42
|
+
* Calls Anthropic Claude API to use a chat model.
|
43
|
+
*/
|
44
|
+
callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<ChatPromptResult>;
|
45
|
+
/**
|
46
|
+
* Calls Anthropic Claude API to use a completion model.
|
47
|
+
*/
|
48
|
+
callCompletionModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<CompletionPromptResult>;
|
49
|
+
/**
|
50
|
+
* Get the model that should be used as default
|
51
|
+
*/
|
52
|
+
private getDefaultModel;
|
53
|
+
/**
|
54
|
+
* Default model for chat variant.
|
55
|
+
*/
|
56
|
+
private getDefaultChatModel;
|
57
|
+
}
|
58
|
+
/**
|
59
|
+
* TODO: [ð] JSON mode
|
60
|
+
* TODO: [ð§ ] Maybe handle errors via transformAnthropicError (like transformAzureError)
|
61
|
+
* TODO: Maybe Create some common util for callChatModel and callCompletionModel
|
62
|
+
* TODO: Maybe make custom OpenAiError
|
63
|
+
* TODO: [ð§ ][ð] Maybe use `isDeterministic` from options
|
64
|
+
* TODO: [ð§ ][ð°] Allow to pass `title` for tracking purposes
|
65
|
+
* TODO: [ð
] Maybe instead of `RemoteLlmExecutionToolsOptions` use `proxyWithAnonymousRemoteServer` (if implemented)
|
66
|
+
*/
|
package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
import type { ClientOptions } from '@anthropic-ai/sdk';
|
2
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
3
|
+
import type { RemoteClientOptions } from '../../remote-server/types/RemoteClientOptions';
|
4
|
+
/**
|
5
|
+
* Options for `createAnthropicClaudeExecutionTools` and `AnthropicClaudeExecutionTools`
|
6
|
+
*
|
7
|
+
* This extends Anthropic's `ClientOptions` with are directly passed to the Anthropic client.
|
8
|
+
* @public exported from `@promptbook/anthropic-claude`
|
9
|
+
*/
|
10
|
+
export type AnthropicClaudeExecutionToolsOptions = AnthropicClaudeExecutionToolsDirectOptions | AnthropicClaudeExecutionToolsProxiedOptions;
|
11
|
+
/**
|
12
|
+
* Options for directly used `AnthropicClaudeExecutionTools`
|
13
|
+
*
|
14
|
+
* This extends Anthropic's `ClientOptions` with are directly passed to the Anthropic client.
|
15
|
+
* @public exported from `@promptbook/anthropic-claude`
|
16
|
+
*/
|
17
|
+
export type AnthropicClaudeExecutionToolsDirectOptions = CommonToolsOptions & ClientOptions & {
|
18
|
+
isProxied?: false;
|
19
|
+
};
|
20
|
+
/**
|
21
|
+
* Options for proxied `AnthropicClaudeExecutionTools`
|
22
|
+
*
|
23
|
+
* This extends Anthropic's `ClientOptions` with are directly passed to the Anthropic client.
|
24
|
+
* @public exported from `@promptbook/anthropic-claude`
|
25
|
+
*/
|
26
|
+
export type AnthropicClaudeExecutionToolsProxiedOptions = CommonToolsOptions & ClientOptions & {
|
27
|
+
isProxied: true;
|
28
|
+
} & Pick<RemoteClientOptions<undefined>, 'remoteServerUrl'>;
|
29
|
+
/**
|
30
|
+
* TODO: [ð§ ][ðĪš] Pass `userId`
|
31
|
+
*/
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import type { AvailableModel } from '../../execution/AvailableModel';
|
2
|
+
import type { number_usd } from '../../types/typeAliases';
|
3
|
+
/**
|
4
|
+
* List of available Anthropic Claude models with pricing
|
5
|
+
*
|
6
|
+
* Note: Done at 2025-05-06
|
7
|
+
*
|
8
|
+
* @see https://docs.anthropic.com/en/docs/models-overview
|
9
|
+
* @public exported from `@promptbook/anthropic-claude`
|
10
|
+
*/
|
11
|
+
export declare const ANTHROPIC_CLAUDE_MODELS: ReadonlyArray<AvailableModel & {
|
12
|
+
pricing?: {
|
13
|
+
readonly prompt: number_usd;
|
14
|
+
readonly output: number_usd;
|
15
|
+
};
|
16
|
+
}>;
|
17
|
+
/**
|
18
|
+
* Note: [ðĪ] Add models of new variant
|
19
|
+
* TODO: [ð§ ][main] !!3 Add embedding models OR Anthropic has only chat+completion models?
|
20
|
+
* TODO: [ð§ ] Some mechanism to propagate unsureness
|
21
|
+
* TODO: [ð§ ][ðŪââïļ] Put here more info like description, isVision, trainingDateCutoff, languages, strengths ( Top-level performance, intelligence, fluency, and understanding), contextWindow,...
|
22
|
+
* TODO: [ð°] Some mechanism to auto-update available models
|
23
|
+
* Note: [ð] Ignore a discrepancy between file name and entity name
|
24
|
+
*/
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import type Anthropic from '@anthropic-ai/sdk';
|
2
|
+
import type { PartialDeep } from 'type-fest';
|
3
|
+
import type { Usage } from '../../execution/Usage';
|
4
|
+
import type { Prompt } from '../../types/Prompt';
|
5
|
+
/**
|
6
|
+
* Computes the usage of the Anthropic Claude API based on the response from Anthropic Claude
|
7
|
+
*
|
8
|
+
* @param promptContent The content of the prompt
|
9
|
+
* @param resultContent The content of the result (for embedding prompts or failed prompts pass empty string)
|
10
|
+
* @param rawResponse The raw response from Anthropic Claude API
|
11
|
+
* @throws {PipelineExecutionError} If the usage is not defined in the response from Anthropic Claude
|
12
|
+
* @private internal utility of `AnthropicClaudeExecutionTools`
|
13
|
+
*/
|
14
|
+
export declare function computeAnthropicClaudeUsage(promptContent: Prompt['content'], // <- Note: Intentionally using [] to access type properties to bring jsdoc from Prompt/PromptResult to consumer
|
15
|
+
resultContent: string, rawResponse: PartialDeep<Pick<Anthropic.Messages.Message, 'model' | 'usage'>>): Usage;
|
16
|
+
/**
|
17
|
+
* TODO: [ðĪ] DRY Maybe some common abstraction between `computeOpenAiUsage` and `computeAnthropicClaudeUsage`
|
18
|
+
*/
|