@promptbook/ollama 0.103.0-8 → 0.103.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 +59 -39
- package/esm/index.es.js +324 -142
- package/esm/index.es.js.map +1 -1
- package/esm/typings/books/index.d.ts +0 -81
- package/esm/typings/servers.d.ts +9 -7
- package/esm/typings/src/_packages/browser.index.d.ts +6 -0
- package/esm/typings/src/_packages/cli.index.d.ts +4 -0
- package/esm/typings/src/_packages/components.index.d.ts +22 -8
- package/esm/typings/src/_packages/core.index.d.ts +58 -18
- package/esm/typings/src/_packages/node.index.d.ts +2 -2
- package/esm/typings/src/_packages/remote-server.index.d.ts +2 -0
- package/esm/typings/src/_packages/types.index.d.ts +70 -8
- package/esm/typings/src/_packages/utils.index.d.ts +6 -0
- package/esm/typings/src/_packages/wizard.index.d.ts +4 -0
- package/esm/typings/src/book-2.0/agent-source/AgentBasicInformation.d.ts +20 -5
- package/esm/typings/src/book-2.0/agent-source/AgentModelRequirements.d.ts +17 -1
- package/esm/typings/src/book-2.0/agent-source/AgentSourceParseResult.d.ts +3 -2
- package/esm/typings/src/book-2.0/agent-source/computeAgentHash.d.ts +8 -0
- package/esm/typings/src/book-2.0/agent-source/createCommitmentRegex.d.ts +3 -3
- package/esm/typings/src/book-2.0/agent-source/createDefaultAgentName.d.ts +8 -0
- package/esm/typings/src/book-2.0/agent-source/normalizeAgentName.d.ts +9 -0
- package/esm/typings/src/book-2.0/agent-source/padBook.d.ts +18 -0
- package/esm/typings/src/book-2.0/agent-source/parseAgentSourceWithCommitments.d.ts +1 -1
- package/esm/typings/src/book-2.0/agent-source/string_book.d.ts +3 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.d.ts +6 -1
- package/esm/typings/src/book-components/BookEditor/BookEditor.d.ts +85 -14
- package/esm/typings/src/book-components/BookEditor/BookEditorActionbar.d.ts +18 -0
- package/esm/typings/src/book-components/BookEditor/BookEditorMonaco.d.ts +5 -0
- package/esm/typings/src/book-components/Chat/AgentChat/AgentChat.d.ts +17 -0
- package/esm/typings/src/book-components/Chat/AgentChat/AgentChatProps.d.ts +13 -0
- package/esm/typings/src/book-components/Chat/Chat/ChatProps.d.ts +16 -0
- package/esm/typings/src/book-components/Chat/LlmChat/LlmChatProps.d.ts +5 -0
- package/esm/typings/src/book-components/Chat/MarkdownContent/MarkdownContent.d.ts +15 -0
- package/esm/typings/src/book-components/Chat/MockedChat/MockedChat.d.ts +5 -0
- package/esm/typings/src/book-components/Chat/save/_common/ChatSaveFormatDefinition.d.ts +1 -1
- package/esm/typings/src/book-components/Chat/save/html/htmlSaveFormatDefinition.d.ts +1 -0
- package/esm/typings/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.d.ts +4 -0
- package/esm/typings/src/book-components/Chat/types/ChatParticipant.d.ts +1 -1
- package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentIntegration.d.ts +52 -0
- package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentSeamlessIntegration.d.ts +14 -0
- package/esm/typings/src/book-components/Qr/BrandedQrCode.d.ts +18 -0
- package/esm/typings/src/book-components/Qr/GenericQrCode.d.ts +10 -0
- package/esm/typings/src/book-components/Qr/PromptbookQrCode.d.ts +18 -0
- package/esm/typings/src/book-components/Qr/useQrCode.d.ts +15 -0
- package/esm/typings/src/book-components/_common/Dropdown/Dropdown.d.ts +15 -0
- package/esm/typings/src/book-components/_common/HamburgerMenu/HamburgerMenu.d.ts +12 -0
- package/esm/typings/src/book-components/_common/Modal/Modal.d.ts +2 -2
- package/esm/typings/src/book-components/_common/Tooltip/Tooltip.d.ts +47 -0
- package/esm/typings/src/book-components/icons/AboutIcon.d.ts +9 -0
- package/esm/typings/src/book-components/icons/CameraIcon.d.ts +11 -0
- package/esm/typings/src/book-components/icons/CloseIcon.d.ts +4 -8
- package/esm/typings/src/book-components/icons/DownloadIcon.d.ts +9 -0
- package/esm/typings/src/book-components/icons/ExitFullscreenIcon.d.ts +7 -0
- package/esm/typings/src/book-components/icons/FullscreenIcon.d.ts +7 -0
- package/esm/typings/src/book-components/icons/MenuIcon.d.ts +12 -0
- package/esm/typings/src/book-components/icons/MicIcon.d.ts +8 -0
- package/esm/typings/src/book-components/icons/SendIcon.d.ts +3 -0
- package/esm/typings/src/cli/cli-commands/_boilerplate.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/about.d.ts +3 -1
- package/esm/typings/src/cli/cli-commands/hello.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/list-models.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/list-scrapers.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/login.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/make.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/run.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/{start-server.d.ts → start-agents-server.d.ts} +3 -2
- package/esm/typings/src/cli/cli-commands/start-pipelines-server.d.ts +15 -0
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +2 -1
- package/esm/typings/src/cli/common/$addGlobalOptionsToCommand.d.ts +2 -1
- package/esm/typings/src/collection/agent-collection/AgentCollection.d.ts +12 -0
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabase.d.ts +75 -0
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabaseOptions.d.ts +10 -0
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentsDatabaseSchema.d.ts +154 -0
- package/esm/typings/src/collection/{PipelineCollection.d.ts → pipeline-collection/PipelineCollection.d.ts} +7 -3
- package/esm/typings/src/collection/{SimplePipelineCollection.d.ts → pipeline-collection/SimplePipelineCollection.d.ts} +5 -5
- package/esm/typings/src/collection/{constructors/createCollectionFromDirectory.d.ts → pipeline-collection/constructors/createPipelineCollectionFromDirectory.d.ts} +8 -11
- package/esm/typings/src/collection/pipeline-collection/constructors/createPipelineCollectionFromJson.d.ts +13 -0
- package/esm/typings/src/collection/{constructors/createCollectionFromPromise.d.ts → pipeline-collection/constructors/createPipelineCollectionFromPromise.d.ts} +6 -5
- package/esm/typings/src/collection/pipeline-collection/constructors/createPipelineCollectionFromPromise.test.d.ts +1 -0
- package/esm/typings/src/collection/{constructors/createCollectionFromUrl.d.ts → pipeline-collection/constructors/createPipelineCollectionFromUrl.d.ts} +3 -3
- package/esm/typings/src/collection/{constructors/createSubcollection.d.ts → pipeline-collection/constructors/createPipelineSubcollection.d.ts} +3 -3
- package/esm/typings/src/collection/pipeline-collection/pipelineCollectionToJson.d.ts +13 -0
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +4 -5
- package/esm/typings/src/{book-2.0/commitments → commitments}/ACTION/ACTION.d.ts +5 -1
- package/esm/typings/src/commitments/CLOSED/CLOSED.d.ts +39 -0
- package/esm/typings/src/commitments/CLOSED/CLOSED.test.d.ts +4 -0
- package/esm/typings/src/commitments/COMPONENT/COMPONENT.d.ts +28 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/DELETE/DELETE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/FORMAT/FORMAT.d.ts +5 -1
- package/esm/typings/src/commitments/FROM/FROM.d.ts +34 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/GOAL/GOAL.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/KNOWLEDGE/KNOWLEDGE.d.ts +5 -5
- package/esm/typings/src/commitments/LANGUAGE/LANGUAGE.d.ts +35 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/MEMORY/MEMORY.d.ts +5 -1
- package/esm/typings/src/commitments/MESSAGE/AgentMessageCommitmentDefinition.d.ts +32 -0
- package/esm/typings/src/commitments/MESSAGE/InitialMessageCommitmentDefinition.d.ts +32 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/MESSAGE/MESSAGE.d.ts +5 -1
- package/esm/typings/src/commitments/MESSAGE/UserMessageCommitmentDefinition.d.ts +32 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/META/META.d.ts +5 -1
- package/esm/typings/src/commitments/META_COLOR/META_COLOR.d.ts +48 -0
- package/esm/typings/src/commitments/META_FONT/META_FONT.d.ts +42 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/META_IMAGE/META_IMAGE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/META_LINK/META_LINK.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/MODEL/MODEL.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/NOTE/NOTE.d.ts +5 -1
- package/esm/typings/src/commitments/OPEN/OPEN.d.ts +35 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/PERSONA/PERSONA.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/RULE/RULE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/SAMPLE/SAMPLE.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/SCENARIO/SCENARIO.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/STYLE/STYLE.d.ts +5 -1
- package/esm/typings/src/commitments/USE/USE.d.ts +53 -0
- package/esm/typings/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +42 -0
- package/esm/typings/src/commitments/USE_BROWSER/USE_BROWSER.test.d.ts +1 -0
- package/esm/typings/src/commitments/USE_MCP/USE_MCP.d.ts +37 -0
- package/esm/typings/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +38 -0
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/BaseCommitmentDefinition.d.ts +14 -2
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/CommitmentDefinition.d.ts +6 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/NotYetImplementedCommitmentDefinition.d.ts +5 -1
- package/esm/typings/src/{book-2.0/commitments → commitments}/_base/createEmptyAgentModelRequirements.d.ts +1 -1
- package/esm/typings/src/commitments/index.d.ts +93 -0
- package/esm/typings/src/config.d.ts +24 -3
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +2 -0
- package/esm/typings/src/errors/0-index.d.ts +6 -0
- package/esm/typings/src/errors/DatabaseError.d.ts +12 -0
- package/esm/typings/src/errors/NotAllowed.d.ts +9 -0
- package/esm/typings/src/errors/WrappedError.d.ts +2 -2
- package/esm/typings/src/execution/AvailableModel.d.ts +1 -0
- package/esm/typings/src/execution/Executables.d.ts +3 -0
- package/esm/typings/src/execution/ExecutionTask.d.ts +12 -3
- package/esm/typings/src/execution/ExecutionTools.d.ts +5 -0
- package/esm/typings/src/execution/FilesystemTools.d.ts +1 -1
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +26 -2
- package/esm/typings/src/execution/PromptResult.d.ts +7 -1
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +5 -0
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTask.d.ts +5 -0
- package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +5 -0
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +5 -0
- package/esm/typings/src/execution/utils/usage-constants.d.ts +4 -124
- package/esm/typings/src/execution/utils/validatePromptResult.d.ts +2 -0
- package/esm/typings/src/high-level-abstractions/_common/HighLevelAbstraction.d.ts +2 -1
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizardOrCli.d.ts +2 -2
- package/esm/typings/src/llm-providers/_common/register/$registeredLlmToolsMessage.d.ts +2 -1
- package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/utils/assertUniqueModels.d.ts +12 -0
- package/esm/typings/src/llm-providers/_multiple/getSingleLlmExecutionTools.d.ts +1 -0
- package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +1 -0
- package/esm/typings/src/llm-providers/agent/Agent.d.ts +72 -0
- package/esm/typings/src/llm-providers/agent/AgentLlmExecutionTools.d.ts +26 -4
- package/esm/typings/src/llm-providers/agent/AgentOptions.d.ts +19 -0
- package/esm/typings/src/llm-providers/agent/CreateAgentLlmExecutionToolsOptions.d.ts +17 -0
- package/esm/typings/src/llm-providers/agent/RemoteAgent.d.ts +50 -0
- package/esm/typings/src/llm-providers/agent/RemoteAgentOptions.d.ts +11 -0
- package/esm/typings/src/llm-providers/agent/createAgentLlmExecutionTools.d.ts +1 -19
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/google/google-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/ollama/OllamaExecutionTools.d.ts +4 -0
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +60 -2
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionToolsOptions.d.ts +7 -1
- package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +13 -1
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +4 -0
- package/esm/typings/src/llm-providers/openai/createOpenAiCompatibleExecutionTools.d.ts +6 -6
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/openai-models.test.d.ts +4 -0
- package/esm/typings/src/other/templates/getTemplatesPipelineCollection.d.ts +1 -1
- package/esm/typings/src/pipeline/validatePipelineString.d.ts +2 -0
- package/esm/typings/src/playground/permanent/_boilerplate.d.ts +5 -0
- package/esm/typings/src/playground/permanent/agent-with-browser-playground.d.ts +5 -0
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +1 -0
- package/esm/typings/src/remote-server/startAgentServer.d.ts +26 -0
- package/esm/typings/src/remote-server/startRemoteServer.d.ts +4 -1
- package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +3 -8
- package/esm/typings/src/scrapers/_boilerplate/createBoilerplateScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/_boilerplate/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/document/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/markitdown/createMarkitdownScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/markitdown/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +1 -9
- package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +1 -12
- package/esm/typings/src/scrapers/website/register-metadata.d.ts +1 -9
- package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +1 -0
- package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +2 -1
- package/esm/typings/src/transpilers/_common/BookTranspiler.d.ts +33 -0
- package/esm/typings/src/transpilers/_common/BookTranspilerOptions.d.ts +18 -0
- package/esm/typings/src/transpilers/_common/register/$bookTranspilersRegister.d.ts +15 -0
- package/esm/typings/src/transpilers/formatted-book-in-markdown/FormattedBookInMarkdownTranspiler.d.ts +16 -0
- package/esm/typings/src/transpilers/formatted-book-in-markdown/register.d.ts +15 -0
- package/esm/typings/src/transpilers/openai-sdk/OpenAiSdkTranspiler.d.ts +16 -0
- package/esm/typings/src/transpilers/openai-sdk/OpenAiSdkTranspiler.test.d.ts +1 -0
- package/esm/typings/src/transpilers/openai-sdk/playground/playground.d.ts +5 -0
- package/esm/typings/src/transpilers/openai-sdk/register.d.ts +15 -0
- package/esm/typings/src/types/LlmCall.d.ts +20 -0
- package/esm/typings/src/types/ModelRequirements.d.ts +13 -1
- package/esm/typings/src/types/ModelVariant.d.ts +1 -1
- package/esm/typings/src/types/Prompt.d.ts +13 -1
- package/esm/typings/src/types/Updatable.d.ts +19 -0
- package/esm/typings/src/types/typeAliases.d.ts +38 -2
- package/esm/typings/src/utils/color/$randomColor.d.ts +1 -0
- package/esm/typings/src/utils/color/Color.d.ts +16 -1
- package/esm/typings/src/utils/color/Color.test.d.ts +1 -0
- package/esm/typings/src/utils/color/css-colors.d.ts +1 -0
- package/esm/typings/src/utils/color/internal-utils/checkChannelValue.d.ts +0 -3
- package/esm/typings/src/utils/color/operators/darken.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/grayscale.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/lighten.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/mixWithColor.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/saturate.d.ts +1 -1
- package/esm/typings/src/utils/environment/$detectRuntimeEnvironment.d.ts +16 -0
- package/esm/typings/src/utils/environment/$getGlobalScope.d.ts +2 -2
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +2 -1
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +2 -1
- package/esm/typings/src/utils/files/$induceBookDownload.d.ts +13 -0
- package/esm/typings/src/utils/files/$induceFileDownload.d.ts +13 -0
- package/esm/typings/src/utils/files/ObjectUrl.d.ts +46 -0
- package/esm/typings/src/utils/files/listAllFiles.d.ts +2 -3
- package/esm/typings/src/utils/misc/aboutPromptbookInformation.d.ts +27 -0
- package/esm/typings/src/utils/misc/computeHash.d.ts +11 -0
- package/esm/typings/src/utils/misc/computeHash.test.d.ts +1 -0
- package/esm/typings/src/utils/misc/injectCssModuleIntoShadowRoot.d.ts +1 -0
- package/esm/typings/src/utils/misc/xAboutPromptbookInformation.d.ts +13 -0
- package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +2 -0
- package/esm/typings/src/utils/normalization/normalizeMessageText.d.ts +9 -0
- package/esm/typings/src/utils/normalization/normalizeMessageText.test.d.ts +1 -0
- package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +3 -0
- package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +2 -0
- package/esm/typings/src/utils/normalization/titleToName.d.ts +2 -0
- package/esm/typings/src/utils/organization/$sideEffect.d.ts +2 -2
- package/esm/typings/src/utils/organization/$side_effect.d.ts +7 -0
- package/esm/typings/src/utils/organization/TODO_USE.d.ts +2 -2
- package/esm/typings/src/utils/organization/keepUnused.d.ts +2 -2
- package/esm/typings/src/utils/organization/preserve.d.ts +3 -3
- package/esm/typings/src/utils/organization/really_any.d.ts +7 -0
- package/esm/typings/src/utils/random/$generateBookBoilerplate.d.ts +31 -0
- package/esm/typings/src/utils/random/$randomAgentPersona.d.ts +9 -0
- package/esm/typings/src/utils/random/$randomFullnameWithColor.d.ts +13 -0
- package/esm/typings/src/utils/random/$randomItem.d.ts +9 -0
- package/esm/typings/src/utils/random/$randomSeed.d.ts +3 -0
- package/esm/typings/src/utils/random/$randomToken.d.ts +2 -0
- package/esm/typings/src/utils/random/CzechNamePool.d.ts +7 -0
- package/esm/typings/src/utils/random/EnglishNamePool.d.ts +7 -0
- package/esm/typings/src/utils/random/NamePool.d.ts +17 -0
- package/esm/typings/src/utils/random/getNamePool.d.ts +10 -0
- package/esm/typings/src/utils/serialization/$deepFreeze.d.ts +2 -1
- package/esm/typings/src/utils/serialization/asSerializable.d.ts +2 -2
- package/esm/typings/src/utils/serialization/serializeToPromptbookJavascript.d.ts +2 -2
- package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +2 -0
- package/esm/typings/src/version.d.ts +1 -1
- package/esm/typings/src/wizard/$getCompiledBook.d.ts +1 -2
- package/package.json +6 -6
- package/umd/index.umd.js +323 -141
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/book-2.0/commitments/index.d.ts +0 -60
- package/esm/typings/src/book-components/BookEditor/BookEditorInner.d.ts +0 -5
- package/esm/typings/src/book-components/BookEditor/BookEditorWrapper.d.ts +0 -9
- package/esm/typings/src/book-components/BookEditor/config.d.ts +0 -10
- package/esm/typings/src/book-components/Chat/utils/renderMarkdown.d.ts +0 -21
- package/esm/typings/src/collection/collectionToJson.d.ts +0 -13
- package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +0 -13
- /package/esm/typings/src/{book-components/Chat/utils/renderMarkdown.test.d.ts → book-2.0/agent-source/computeAgentHash.test.d.ts} +0 -0
- /package/esm/typings/src/{collection/constructors/createCollectionFromDirectory.test.d.ts → book-2.0/agent-source/normalizeAgentName.test.d.ts} +0 -0
- /package/esm/typings/src/{collection/constructors/createCollectionFromJson.test.d.ts → book-components/Chat/AgentChat/AgentChat.test.d.ts} +0 -0
- /package/esm/typings/src/collection/{constructors/createCollectionFromPromise.test.d.ts → pipeline-collection/constructors/createPipelineCollectionFromDirectory.test.d.ts} +0 -0
- /package/esm/typings/src/{commands/_common/parseCommand.test.d.ts → collection/pipeline-collection/constructors/createPipelineCollectionFromJson.test.d.ts} +0 -0
- /package/esm/typings/src/collection/{collectionToJson.test.d.ts → pipeline-collection/pipelineCollectionToJson.test.d.ts} +0 -0
- /package/esm/typings/src/{book-2.0/commitments → commitments}/_base/BookCommitment.d.ts +0 -0
- /package/esm/typings/src/{book-2.0/commitments → commitments}/_base/ParsedCommitment.d.ts +0 -0
package/umd/index.umd.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('spacetrim'), require('crypto'), require('bottleneck'), require('colors'), require('openai')) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define(['exports', 'spacetrim', 'crypto', 'bottleneck', 'colors', 'openai'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["promptbook-ollama"] = {}, global.spaceTrim, global.crypto, global.Bottleneck, global.colors, global.OpenAI));
|
|
5
|
-
})(this, (function (exports, spaceTrim, crypto, Bottleneck, colors, OpenAI) { 'use strict';
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["promptbook-ollama"] = {}, global.spaceTrim$1, global.crypto, global.Bottleneck, global.colors, global.OpenAI));
|
|
5
|
+
})(this, (function (exports, spaceTrim$1, crypto, Bottleneck, colors, OpenAI) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
8
|
|
|
9
|
-
var spaceTrim__default = /*#__PURE__*/_interopDefaultLegacy(spaceTrim);
|
|
9
|
+
var spaceTrim__default = /*#__PURE__*/_interopDefaultLegacy(spaceTrim$1);
|
|
10
10
|
var Bottleneck__default = /*#__PURE__*/_interopDefaultLegacy(Bottleneck);
|
|
11
11
|
var colors__default = /*#__PURE__*/_interopDefaultLegacy(colors);
|
|
12
12
|
var OpenAI__default = /*#__PURE__*/_interopDefaultLegacy(OpenAI);
|
|
@@ -18,14 +18,14 @@
|
|
|
18
18
|
* @generated
|
|
19
19
|
* @see https://github.com/webgptorg/book
|
|
20
20
|
*/
|
|
21
|
-
const BOOK_LANGUAGE_VERSION = '
|
|
21
|
+
const BOOK_LANGUAGE_VERSION = '2.0.0';
|
|
22
22
|
/**
|
|
23
23
|
* The version of the Promptbook engine
|
|
24
24
|
*
|
|
25
25
|
* @generated
|
|
26
26
|
* @see https://github.com/webgptorg/promptbook
|
|
27
27
|
*/
|
|
28
|
-
const PROMPTBOOK_ENGINE_VERSION = '0.103.0
|
|
28
|
+
const PROMPTBOOK_ENGINE_VERSION = '0.103.0';
|
|
29
29
|
/**
|
|
30
30
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
31
31
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -181,6 +181,17 @@
|
|
|
181
181
|
return orderedValue;
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
/**
|
|
185
|
+
* Trims string from all 4 sides
|
|
186
|
+
*
|
|
187
|
+
* Note: This is a re-exported function from the `spacetrim` package which is
|
|
188
|
+
* Developed by same author @hejny as this package
|
|
189
|
+
*
|
|
190
|
+
* @public exported from `@promptbook/utils`
|
|
191
|
+
* @see https://github.com/hejny/spacetrim#usage
|
|
192
|
+
*/
|
|
193
|
+
const spaceTrim = spaceTrim$1.spaceTrim;
|
|
194
|
+
|
|
184
195
|
/**
|
|
185
196
|
* @private util of `@promptbook/color`
|
|
186
197
|
* @de
|
|
@@ -229,6 +240,7 @@
|
|
|
229
240
|
* @public exported from `@promptbook/color`
|
|
230
241
|
*/
|
|
231
242
|
const CSS_COLORS = {
|
|
243
|
+
promptbook: '#79EAFD',
|
|
232
244
|
transparent: 'rgba(0,0,0,0)',
|
|
233
245
|
aliceblue: '#f0f8ff',
|
|
234
246
|
antiquewhite: '#faebd7',
|
|
@@ -410,9 +422,6 @@
|
|
|
410
422
|
throw new Error(`${channelName} channel is greater than 255, it is ${value}`);
|
|
411
423
|
}
|
|
412
424
|
}
|
|
413
|
-
/**
|
|
414
|
-
* TODO: [🧠][🚓] Is/which combination it better to use asserts/check, validate or is utility function?
|
|
415
|
-
*/
|
|
416
425
|
|
|
417
426
|
/**
|
|
418
427
|
* Color object represents an RGB color with alpha channel
|
|
@@ -432,21 +441,61 @@
|
|
|
432
441
|
* @param color
|
|
433
442
|
* @returns Color object
|
|
434
443
|
*/
|
|
435
|
-
static from(color) {
|
|
436
|
-
if (color
|
|
444
|
+
static from(color, _isSingleValue = false) {
|
|
445
|
+
if (color === '') {
|
|
446
|
+
throw new Error(`Can not create color from empty string`);
|
|
447
|
+
}
|
|
448
|
+
else if (color instanceof Color) {
|
|
437
449
|
return take(color);
|
|
438
450
|
}
|
|
439
451
|
else if (Color.isColor(color)) {
|
|
440
452
|
return take(color);
|
|
441
453
|
}
|
|
442
454
|
else if (typeof color === 'string') {
|
|
443
|
-
|
|
455
|
+
try {
|
|
456
|
+
return Color.fromString(color);
|
|
457
|
+
}
|
|
458
|
+
catch (error) {
|
|
459
|
+
// <- Note: Can not use `assertsError(error)` here because it causes circular dependency
|
|
460
|
+
if (_isSingleValue) {
|
|
461
|
+
throw error;
|
|
462
|
+
}
|
|
463
|
+
const parts = color.split(/[\s+,;|]/);
|
|
464
|
+
if (parts.length > 0) {
|
|
465
|
+
return Color.from(parts[0].trim(), true);
|
|
466
|
+
}
|
|
467
|
+
else {
|
|
468
|
+
throw new Error(`Can not create color from given string "${color}"`);
|
|
469
|
+
}
|
|
470
|
+
}
|
|
444
471
|
}
|
|
445
472
|
else {
|
|
446
473
|
console.error({ color });
|
|
447
474
|
throw new Error(`Can not create color from given object`);
|
|
448
475
|
}
|
|
449
476
|
}
|
|
477
|
+
/**
|
|
478
|
+
* Creates a new Color instance from miscellaneous formats
|
|
479
|
+
* It just does not throw error when it fails, it returns PROMPTBOOK_COLOR instead
|
|
480
|
+
*
|
|
481
|
+
* @param color
|
|
482
|
+
* @returns Color object
|
|
483
|
+
*/
|
|
484
|
+
static fromSafe(color) {
|
|
485
|
+
try {
|
|
486
|
+
return Color.from(color);
|
|
487
|
+
}
|
|
488
|
+
catch (error) {
|
|
489
|
+
// <- Note: Can not use `assertsError(error)` here because it causes circular dependency
|
|
490
|
+
console.warn(spaceTrim((block) => `
|
|
491
|
+
Color.fromSafe error:
|
|
492
|
+
${block(error.message)}
|
|
493
|
+
|
|
494
|
+
Returning default PROMPTBOOK_COLOR.
|
|
495
|
+
`));
|
|
496
|
+
return Color.fromString('promptbook');
|
|
497
|
+
}
|
|
498
|
+
}
|
|
450
499
|
/**
|
|
451
500
|
* Creates a new Color instance from miscellaneous string formats
|
|
452
501
|
*
|
|
@@ -514,6 +563,9 @@
|
|
|
514
563
|
if (hex.length === 3) {
|
|
515
564
|
return Color.fromHex3(hex);
|
|
516
565
|
}
|
|
566
|
+
if (hex.length === 4) {
|
|
567
|
+
return Color.fromHex4(hex);
|
|
568
|
+
}
|
|
517
569
|
if (hex.length === 6) {
|
|
518
570
|
return Color.fromHex6(hex);
|
|
519
571
|
}
|
|
@@ -534,6 +586,19 @@
|
|
|
534
586
|
const b = parseInt(hex.substr(2, 1), 16) * 16;
|
|
535
587
|
return take(new Color(r, g, b));
|
|
536
588
|
}
|
|
589
|
+
/**
|
|
590
|
+
* Creates a new Color instance from color in hex format with 4 digits (with alpha channel)
|
|
591
|
+
*
|
|
592
|
+
* @param color in hex for example `09df`
|
|
593
|
+
* @returns Color object
|
|
594
|
+
*/
|
|
595
|
+
static fromHex4(hex) {
|
|
596
|
+
const r = parseInt(hex.substr(0, 1), 16) * 16;
|
|
597
|
+
const g = parseInt(hex.substr(1, 1), 16) * 16;
|
|
598
|
+
const b = parseInt(hex.substr(2, 1), 16) * 16;
|
|
599
|
+
const a = parseInt(hex.substr(3, 1), 16) * 16;
|
|
600
|
+
return take(new Color(r, g, b, a));
|
|
601
|
+
}
|
|
537
602
|
/**
|
|
538
603
|
* Creates a new Color instance from color in hex format with 6 color digits (without alpha channel)
|
|
539
604
|
*
|
|
@@ -724,7 +789,8 @@
|
|
|
724
789
|
* @returns true if the value is a valid hex color string (e.g., `#009edd`, `#fff`, etc.)
|
|
725
790
|
*/
|
|
726
791
|
static isHexColorString(value) {
|
|
727
|
-
return typeof value === 'string' &&
|
|
792
|
+
return (typeof value === 'string' &&
|
|
793
|
+
/^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/.test(value));
|
|
728
794
|
}
|
|
729
795
|
/**
|
|
730
796
|
* Creates new Color object
|
|
@@ -839,6 +905,23 @@
|
|
|
839
905
|
* TODO: Maybe connect with textures
|
|
840
906
|
*/
|
|
841
907
|
|
|
908
|
+
/**
|
|
909
|
+
* Makes color transformer which returns a grayscale version of the color
|
|
910
|
+
*
|
|
911
|
+
* @param amount from 0 to 1
|
|
912
|
+
*
|
|
913
|
+
* @public exported from `@promptbook/color`
|
|
914
|
+
*/
|
|
915
|
+
function grayscale(amount) {
|
|
916
|
+
return ({ red, green, blue, alpha }) => {
|
|
917
|
+
const average = (red + green + blue) / 3;
|
|
918
|
+
red = Math.round(average * amount + red * (1 - amount));
|
|
919
|
+
green = Math.round(average * amount + green * (1 - amount));
|
|
920
|
+
blue = Math.round(average * amount + blue * (1 - amount));
|
|
921
|
+
return Color.fromValues(red, green, blue, alpha);
|
|
922
|
+
};
|
|
923
|
+
}
|
|
924
|
+
|
|
842
925
|
/**
|
|
843
926
|
* Converts HSL values to RGB values
|
|
844
927
|
*
|
|
@@ -954,102 +1037,6 @@
|
|
|
954
1037
|
* TODO: Maybe implement by mix+hsl
|
|
955
1038
|
*/
|
|
956
1039
|
|
|
957
|
-
/**
|
|
958
|
-
* Calculates distance between two colors
|
|
959
|
-
*
|
|
960
|
-
* @param color1 first color
|
|
961
|
-
* @param color2 second color
|
|
962
|
-
*
|
|
963
|
-
* Note: This function is inefficient. Use colorDistanceSquared instead if possible.
|
|
964
|
-
*
|
|
965
|
-
* @public exported from `@promptbook/color`
|
|
966
|
-
*/
|
|
967
|
-
/**
|
|
968
|
-
* Calculates distance between two colors without square root
|
|
969
|
-
*
|
|
970
|
-
* @param color1 first color
|
|
971
|
-
* @param color2 second color
|
|
972
|
-
*
|
|
973
|
-
* @public exported from `@promptbook/color`
|
|
974
|
-
*/
|
|
975
|
-
function colorDistanceSquared(color1, color2) {
|
|
976
|
-
const rmean = (color1.red + color2.red) / 2;
|
|
977
|
-
const r = color1.red - color2.red;
|
|
978
|
-
const g = color1.green - color2.green;
|
|
979
|
-
const b = color1.blue - color2.blue;
|
|
980
|
-
const weightR = 2 + rmean / 256;
|
|
981
|
-
const weightG = 4.0;
|
|
982
|
-
const weightB = 2 + (255 - rmean) / 256;
|
|
983
|
-
const distance = weightR * r * r + weightG * g * g + weightB * b * b;
|
|
984
|
-
return distance;
|
|
985
|
-
}
|
|
986
|
-
|
|
987
|
-
/**
|
|
988
|
-
* Makes color transformer which finds the nearest color from the given list
|
|
989
|
-
*
|
|
990
|
-
* @param colors array of colors to choose from
|
|
991
|
-
*
|
|
992
|
-
* @public exported from `@promptbook/color`
|
|
993
|
-
*/
|
|
994
|
-
function nearest(...colors) {
|
|
995
|
-
return (color) => {
|
|
996
|
-
const distances = colors.map((c) => colorDistanceSquared(c, color));
|
|
997
|
-
const minDistance = Math.min(...distances);
|
|
998
|
-
const minIndex = distances.indexOf(minDistance);
|
|
999
|
-
const nearestColor = colors[minIndex];
|
|
1000
|
-
return nearestColor;
|
|
1001
|
-
};
|
|
1002
|
-
}
|
|
1003
|
-
|
|
1004
|
-
/**
|
|
1005
|
-
* Color transformer which returns the negative color
|
|
1006
|
-
*
|
|
1007
|
-
* @public exported from `@promptbook/color`
|
|
1008
|
-
*/
|
|
1009
|
-
function negative(color) {
|
|
1010
|
-
const r = 255 - color.red;
|
|
1011
|
-
const g = 255 - color.green;
|
|
1012
|
-
const b = 255 - color.blue;
|
|
1013
|
-
return Color.fromValues(r, g, b, color.alpha);
|
|
1014
|
-
}
|
|
1015
|
-
|
|
1016
|
-
/**
|
|
1017
|
-
* Makes color transformer which finds the furthest color from the given list
|
|
1018
|
-
*
|
|
1019
|
-
* @param colors array of colors to choose from
|
|
1020
|
-
*
|
|
1021
|
-
* @public exported from `@promptbook/color`
|
|
1022
|
-
*/
|
|
1023
|
-
function furthest(...colors) {
|
|
1024
|
-
return (color) => {
|
|
1025
|
-
const furthestColor = negative(nearest(...colors.map(negative))(color));
|
|
1026
|
-
return furthestColor;
|
|
1027
|
-
};
|
|
1028
|
-
}
|
|
1029
|
-
/**
|
|
1030
|
-
* Makes color transformer which finds the best text color (black or white) for the given background color
|
|
1031
|
-
*
|
|
1032
|
-
* @public exported from `@promptbook/color`
|
|
1033
|
-
*/
|
|
1034
|
-
furthest(Color.get('white'), Color.from('black'));
|
|
1035
|
-
|
|
1036
|
-
/**
|
|
1037
|
-
* Makes color transformer which returns a grayscale version of the color
|
|
1038
|
-
*
|
|
1039
|
-
* @param amount from 0 to 1
|
|
1040
|
-
*
|
|
1041
|
-
* @public exported from `@promptbook/color`
|
|
1042
|
-
*/
|
|
1043
|
-
function grayscale(amount) {
|
|
1044
|
-
return ({ red, green, blue, alpha }) => {
|
|
1045
|
-
const average = (red + green + blue) / 3;
|
|
1046
|
-
red = Math.round(average * amount + red * (1 - amount));
|
|
1047
|
-
green = Math.round(average * amount + green * (1 - amount));
|
|
1048
|
-
blue = Math.round(average * amount + blue * (1 - amount));
|
|
1049
|
-
return Color.fromValues(red, green, blue, alpha);
|
|
1050
|
-
};
|
|
1051
|
-
}
|
|
1052
|
-
|
|
1053
1040
|
/**
|
|
1054
1041
|
* Makes color transformer which saturate the given color
|
|
1055
1042
|
*
|
|
@@ -1098,16 +1085,32 @@
|
|
|
1098
1085
|
*
|
|
1099
1086
|
* @public exported from `@promptbook/core`
|
|
1100
1087
|
*/
|
|
1101
|
-
const PROMPTBOOK_COLOR = Color.
|
|
1102
|
-
// <- TODO: [🧠] Using `Color` here increases the package size approx 3kb, maybe remove it
|
|
1088
|
+
const PROMPTBOOK_COLOR = Color.fromString('promptbook');
|
|
1089
|
+
// <- TODO: [🧠][🈵] Using `Color` here increases the package size approx 3kb, maybe remove it
|
|
1090
|
+
/**
|
|
1091
|
+
* Colors for syntax highlighting in the `<BookEditor/>`
|
|
1092
|
+
*
|
|
1093
|
+
* TODO: [🗽] Unite branding and make single place for it
|
|
1094
|
+
*
|
|
1095
|
+
* @public exported from `@promptbook/core`
|
|
1096
|
+
*/
|
|
1097
|
+
({
|
|
1098
|
+
TITLE: Color.fromHex('#244EA8'),
|
|
1099
|
+
LINE: Color.fromHex('#eeeeee'),
|
|
1100
|
+
SEPARATOR: Color.fromHex('#cccccc'),
|
|
1101
|
+
COMMITMENT: Color.fromHex('#DA0F78'),
|
|
1102
|
+
PARAMETER: Color.fromHex('#8e44ad'),
|
|
1103
|
+
});
|
|
1104
|
+
// <- TODO: [🧠][🈵] Using `Color` here increases the package size approx 3kb, maybe remove it
|
|
1103
1105
|
/**
|
|
1104
|
-
*
|
|
1106
|
+
* Chat color of the Promptbook (in chat)
|
|
1105
1107
|
*
|
|
1106
1108
|
* TODO: [🗽] Unite branding and make single place for it
|
|
1107
1109
|
*
|
|
1108
1110
|
* @public exported from `@promptbook/core`
|
|
1109
1111
|
*/
|
|
1110
1112
|
PROMPTBOOK_COLOR.then(lighten(0.1)).then(saturate(0.9)).then(grayscale(0.9));
|
|
1113
|
+
// <- TODO: [🧠][🈵] Using `Color` and `lighten`, `saturate`,... here increases the package size approx 3kb, maybe remove it
|
|
1111
1114
|
/**
|
|
1112
1115
|
* Color of the user (in chat)
|
|
1113
1116
|
*
|
|
@@ -1234,7 +1237,7 @@
|
|
|
1234
1237
|
*/
|
|
1235
1238
|
class UnexpectedError extends Error {
|
|
1236
1239
|
constructor(message) {
|
|
1237
|
-
super(spaceTrim.spaceTrim((block) => `
|
|
1240
|
+
super(spaceTrim$1.spaceTrim((block) => `
|
|
1238
1241
|
${block(message)}
|
|
1239
1242
|
|
|
1240
1243
|
Note: This error should not happen.
|
|
@@ -1260,7 +1263,7 @@
|
|
|
1260
1263
|
constructor(whatWasThrown) {
|
|
1261
1264
|
const tag = `[🤮]`;
|
|
1262
1265
|
console.error(tag, whatWasThrown);
|
|
1263
|
-
super(spaceTrim.spaceTrim(`
|
|
1266
|
+
super(spaceTrim$1.spaceTrim(`
|
|
1264
1267
|
Non-Error object was thrown
|
|
1265
1268
|
|
|
1266
1269
|
Note: Look for ${tag} in the console for more details
|
|
@@ -1453,7 +1456,7 @@
|
|
|
1453
1456
|
TODO: [🧠] Is there a better implementation?
|
|
1454
1457
|
> const propertyNames = Object.getOwnPropertyNames(objectValue);
|
|
1455
1458
|
> for (const propertyName of propertyNames) {
|
|
1456
|
-
> const value = (objectValue as
|
|
1459
|
+
> const value = (objectValue as chococake)[propertyName];
|
|
1457
1460
|
> if (value && typeof value === 'object') {
|
|
1458
1461
|
> deepClone(value);
|
|
1459
1462
|
> }
|
|
@@ -1550,6 +1553,7 @@
|
|
|
1550
1553
|
/**
|
|
1551
1554
|
* Generates random token
|
|
1552
1555
|
*
|
|
1556
|
+
* Note: `$` is used to indicate that this function is not a pure function - it is not deterministic
|
|
1553
1557
|
* Note: This function is cryptographically secure (it uses crypto.randomBytes internally)
|
|
1554
1558
|
*
|
|
1555
1559
|
* @private internal helper function
|
|
@@ -1559,6 +1563,7 @@
|
|
|
1559
1563
|
return crypto.randomBytes(randomness).toString('hex');
|
|
1560
1564
|
}
|
|
1561
1565
|
/**
|
|
1566
|
+
* TODO: [🤶] Maybe export through `@promptbook/utils` or `@promptbook/random` package
|
|
1562
1567
|
* TODO: Maybe use nanoid instead https://github.com/ai/nanoid
|
|
1563
1568
|
*/
|
|
1564
1569
|
|
|
@@ -1625,10 +1630,13 @@
|
|
|
1625
1630
|
* @public exported from `@promptbook/utils`
|
|
1626
1631
|
*/
|
|
1627
1632
|
function countLines(text) {
|
|
1633
|
+
if (text === '') {
|
|
1634
|
+
return 0;
|
|
1635
|
+
}
|
|
1628
1636
|
text = text.replace('\r\n', '\n');
|
|
1629
1637
|
text = text.replace('\r', '\n');
|
|
1630
1638
|
const lines = text.split('\n');
|
|
1631
|
-
return lines.reduce((count, line) => count + Math.ceil(line.length / CHARACTERS_PER_STANDARD_LINE), 0);
|
|
1639
|
+
return lines.reduce((count, line) => count + Math.max(Math.ceil(line.length / CHARACTERS_PER_STANDARD_LINE), 1), 0);
|
|
1632
1640
|
}
|
|
1633
1641
|
/**
|
|
1634
1642
|
* TODO: [🥴] Implement counting in formats - like JSON, CSV, XML,...
|
|
@@ -2015,7 +2023,7 @@
|
|
|
2015
2023
|
/**
|
|
2016
2024
|
* List of available OpenAI models with pricing
|
|
2017
2025
|
*
|
|
2018
|
-
* Note: Synced with official API docs at 2025-
|
|
2026
|
+
* Note: Synced with official API docs at 2025-11-19
|
|
2019
2027
|
*
|
|
2020
2028
|
* @see https://platform.openai.com/docs/models/
|
|
2021
2029
|
* @see https://openai.com/api/pricing/
|
|
@@ -2025,11 +2033,21 @@
|
|
|
2025
2033
|
name: 'OPENAI_MODELS',
|
|
2026
2034
|
value: [
|
|
2027
2035
|
/**/
|
|
2036
|
+
{
|
|
2037
|
+
modelVariant: 'CHAT',
|
|
2038
|
+
modelTitle: 'gpt-5.1',
|
|
2039
|
+
modelName: 'gpt-5.1',
|
|
2040
|
+
modelDescription: 'The best model for coding and agentic tasks with configurable reasoning effort.',
|
|
2041
|
+
pricing: {
|
|
2042
|
+
prompt: pricing(`$1.25 / 1M tokens`),
|
|
2043
|
+
output: pricing(`$10.00 / 1M tokens`),
|
|
2044
|
+
},
|
|
2045
|
+
},
|
|
2028
2046
|
{
|
|
2029
2047
|
modelVariant: 'CHAT',
|
|
2030
2048
|
modelTitle: 'gpt-5',
|
|
2031
2049
|
modelName: 'gpt-5',
|
|
2032
|
-
modelDescription: "OpenAI's most advanced language model with unprecedented reasoning capabilities and 200K context window. Features revolutionary improvements in complex problem-solving, scientific reasoning, and creative tasks. Demonstrates human-level performance across diverse domains with enhanced safety measures and alignment. Represents the next generation of AI with superior understanding, nuanced responses, and advanced multimodal capabilities.",
|
|
2050
|
+
modelDescription: "OpenAI's most advanced language model with unprecedented reasoning capabilities and 200K context window. Features revolutionary improvements in complex problem-solving, scientific reasoning, and creative tasks. Demonstrates human-level performance across diverse domains with enhanced safety measures and alignment. Represents the next generation of AI with superior understanding, nuanced responses, and advanced multimodal capabilities. DEPRECATED: Use gpt-5.1 instead.",
|
|
2033
2051
|
pricing: {
|
|
2034
2052
|
prompt: pricing(`$1.25 / 1M tokens`),
|
|
2035
2053
|
output: pricing(`$10.00 / 1M tokens`),
|
|
@@ -2156,12 +2174,18 @@
|
|
|
2156
2174
|
},
|
|
2157
2175
|
},
|
|
2158
2176
|
/**/
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
|
|
2177
|
+
/**/
|
|
2178
|
+
{
|
|
2179
|
+
modelVariant: 'IMAGE_GENERATION',
|
|
2180
|
+
modelTitle: 'dall-e-3',
|
|
2181
|
+
modelName: 'dall-e-3',
|
|
2182
|
+
modelDescription: 'DALL·E 3 is the latest version of the DALL·E art generation model. It understands significantly more nuance and detail than our previous systems, allowing you to easily translate your ideas into exceptionally accurate images.',
|
|
2183
|
+
pricing: {
|
|
2184
|
+
prompt: 0,
|
|
2185
|
+
output: 0.04,
|
|
2186
|
+
},
|
|
2187
|
+
},
|
|
2188
|
+
/**/
|
|
2165
2189
|
/*/
|
|
2166
2190
|
{
|
|
2167
2191
|
modelTitle: 'whisper-1',
|
|
@@ -2180,12 +2204,18 @@
|
|
|
2180
2204
|
},
|
|
2181
2205
|
},
|
|
2182
2206
|
/**/
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2207
|
+
/**/
|
|
2208
|
+
{
|
|
2209
|
+
modelVariant: 'IMAGE_GENERATION',
|
|
2210
|
+
modelTitle: 'dall-e-2',
|
|
2211
|
+
modelName: 'dall-e-2',
|
|
2212
|
+
modelDescription: 'DALL·E 2 is an AI system that can create realistic images and art from a description in natural language.',
|
|
2213
|
+
pricing: {
|
|
2214
|
+
prompt: 0,
|
|
2215
|
+
output: 0.02,
|
|
2216
|
+
},
|
|
2217
|
+
},
|
|
2218
|
+
/**/
|
|
2189
2219
|
/**/
|
|
2190
2220
|
{
|
|
2191
2221
|
modelVariant: 'CHAT',
|
|
@@ -2199,17 +2229,17 @@
|
|
|
2199
2229
|
},
|
|
2200
2230
|
/**/
|
|
2201
2231
|
/*/
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2232
|
+
{
|
|
2233
|
+
modelTitle: 'tts-1-hd-1106',
|
|
2234
|
+
modelName: 'tts-1-hd-1106',
|
|
2235
|
+
},
|
|
2236
|
+
/**/
|
|
2207
2237
|
/*/
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2238
|
+
{
|
|
2239
|
+
modelTitle: 'tts-1-hd',
|
|
2240
|
+
modelName: 'tts-1-hd',
|
|
2241
|
+
},
|
|
2242
|
+
/**/
|
|
2213
2243
|
/**/
|
|
2214
2244
|
{
|
|
2215
2245
|
modelVariant: 'CHAT',
|
|
@@ -3396,6 +3426,151 @@
|
|
|
3396
3426
|
return this.callEmbeddingModelWithRetry(prompt, modifiedModelRequirements, attemptStack, retriedUnsupportedParameters);
|
|
3397
3427
|
}
|
|
3398
3428
|
}
|
|
3429
|
+
/**
|
|
3430
|
+
* Calls OpenAI compatible API to use a image generation model
|
|
3431
|
+
*/
|
|
3432
|
+
async callImageGenerationModel(prompt) {
|
|
3433
|
+
// Deep clone prompt and modelRequirements to avoid mutation across calls
|
|
3434
|
+
const clonedPrompt = JSON.parse(JSON.stringify(prompt));
|
|
3435
|
+
const retriedUnsupportedParameters = new Set();
|
|
3436
|
+
return this.callImageGenerationModelWithRetry(clonedPrompt, clonedPrompt.modelRequirements, [], retriedUnsupportedParameters);
|
|
3437
|
+
}
|
|
3438
|
+
/**
|
|
3439
|
+
* Internal method that handles parameter retry for image generation model calls
|
|
3440
|
+
*/
|
|
3441
|
+
async callImageGenerationModelWithRetry(prompt, currentModelRequirements, attemptStack = [], retriedUnsupportedParameters = new Set()) {
|
|
3442
|
+
var _a, _b;
|
|
3443
|
+
if (this.options.isVerbose) {
|
|
3444
|
+
console.info(`🎨 ${this.title} callImageGenerationModel call`, { prompt, currentModelRequirements });
|
|
3445
|
+
}
|
|
3446
|
+
const { content, parameters } = prompt;
|
|
3447
|
+
const client = await this.getClient();
|
|
3448
|
+
// TODO: [☂] Use here more modelRequirements
|
|
3449
|
+
if (currentModelRequirements.modelVariant !== 'IMAGE_GENERATION') {
|
|
3450
|
+
throw new PipelineExecutionError('Use callImageGenerationModel only for IMAGE_GENERATION variant');
|
|
3451
|
+
}
|
|
3452
|
+
const modelName = currentModelRequirements.modelName || this.getDefaultImageGenerationModel().modelName;
|
|
3453
|
+
const modelSettings = {
|
|
3454
|
+
model: modelName,
|
|
3455
|
+
// size: currentModelRequirements.size,
|
|
3456
|
+
// quality: currentModelRequirements.quality,
|
|
3457
|
+
// style: currentModelRequirements.style,
|
|
3458
|
+
};
|
|
3459
|
+
const rawPromptContent = templateParameters(content, { ...parameters, modelName });
|
|
3460
|
+
const rawRequest = {
|
|
3461
|
+
...modelSettings,
|
|
3462
|
+
prompt: rawPromptContent,
|
|
3463
|
+
user: (_a = this.options.userId) === null || _a === void 0 ? void 0 : _a.toString(),
|
|
3464
|
+
response_format: 'url', // TODO: [🧠] Maybe allow b64_json
|
|
3465
|
+
};
|
|
3466
|
+
const start = $getCurrentDate();
|
|
3467
|
+
if (this.options.isVerbose) {
|
|
3468
|
+
console.info(colors__default["default"].bgWhite('rawRequest'), JSON.stringify(rawRequest, null, 4));
|
|
3469
|
+
}
|
|
3470
|
+
try {
|
|
3471
|
+
const rawResponse = await this.limiter
|
|
3472
|
+
.schedule(() => this.makeRequestWithNetworkRetry(() => client.images.generate(rawRequest)))
|
|
3473
|
+
.catch((error) => {
|
|
3474
|
+
assertsError(error);
|
|
3475
|
+
if (this.options.isVerbose) {
|
|
3476
|
+
console.info(colors__default["default"].bgRed('error'), error);
|
|
3477
|
+
}
|
|
3478
|
+
throw error;
|
|
3479
|
+
});
|
|
3480
|
+
if (this.options.isVerbose) {
|
|
3481
|
+
console.info(colors__default["default"].bgWhite('rawResponse'), JSON.stringify(rawResponse, null, 4));
|
|
3482
|
+
}
|
|
3483
|
+
const complete = $getCurrentDate();
|
|
3484
|
+
if (!rawResponse.data[0]) {
|
|
3485
|
+
throw new PipelineExecutionError(`No choises from ${this.title}`);
|
|
3486
|
+
}
|
|
3487
|
+
if (rawResponse.data.length > 1) {
|
|
3488
|
+
throw new PipelineExecutionError(`More than one choise from ${this.title}`);
|
|
3489
|
+
}
|
|
3490
|
+
const resultContent = rawResponse.data[0].url;
|
|
3491
|
+
const modelInfo = this.HARDCODED_MODELS.find((model) => model.modelName === modelName);
|
|
3492
|
+
const price = ((_b = modelInfo === null || modelInfo === void 0 ? void 0 : modelInfo.pricing) === null || _b === void 0 ? void 0 : _b.output) ? uncertainNumber(modelInfo.pricing.output) : uncertainNumber();
|
|
3493
|
+
return exportJson({
|
|
3494
|
+
name: 'promptResult',
|
|
3495
|
+
message: `Result of \`OpenAiCompatibleExecutionTools.callImageGenerationModel\``,
|
|
3496
|
+
order: [],
|
|
3497
|
+
value: {
|
|
3498
|
+
content: resultContent,
|
|
3499
|
+
modelName: modelName,
|
|
3500
|
+
timing: {
|
|
3501
|
+
start,
|
|
3502
|
+
complete,
|
|
3503
|
+
},
|
|
3504
|
+
usage: {
|
|
3505
|
+
price,
|
|
3506
|
+
input: {
|
|
3507
|
+
tokensCount: uncertainNumber(0),
|
|
3508
|
+
...computeUsageCounts(rawPromptContent),
|
|
3509
|
+
},
|
|
3510
|
+
output: {
|
|
3511
|
+
tokensCount: uncertainNumber(0),
|
|
3512
|
+
...computeUsageCounts(''),
|
|
3513
|
+
},
|
|
3514
|
+
},
|
|
3515
|
+
rawPromptContent,
|
|
3516
|
+
rawRequest,
|
|
3517
|
+
rawResponse,
|
|
3518
|
+
},
|
|
3519
|
+
});
|
|
3520
|
+
}
|
|
3521
|
+
catch (error) {
|
|
3522
|
+
assertsError(error);
|
|
3523
|
+
if (!isUnsupportedParameterError(error)) {
|
|
3524
|
+
if (attemptStack.length > 0) {
|
|
3525
|
+
throw new PipelineExecutionError(`All attempts failed. Attempt history:\n` +
|
|
3526
|
+
attemptStack
|
|
3527
|
+
.map((a, i) => ` ${i + 1}. Model: ${a.modelName}` +
|
|
3528
|
+
(a.unsupportedParameter ? `, Stripped: ${a.unsupportedParameter}` : '') +
|
|
3529
|
+
`, Error: ${a.errorMessage}` +
|
|
3530
|
+
(a.stripped ? ' (stripped and retried)' : ''))
|
|
3531
|
+
.join('\n') +
|
|
3532
|
+
`\nFinal error: ${error.message}`);
|
|
3533
|
+
}
|
|
3534
|
+
throw error;
|
|
3535
|
+
}
|
|
3536
|
+
const unsupportedParameter = parseUnsupportedParameterError(error.message);
|
|
3537
|
+
if (!unsupportedParameter) {
|
|
3538
|
+
if (this.options.isVerbose) {
|
|
3539
|
+
console.warn(colors__default["default"].bgYellow('Warning'), 'Could not parse unsupported parameter from error:', error.message);
|
|
3540
|
+
}
|
|
3541
|
+
throw error;
|
|
3542
|
+
}
|
|
3543
|
+
const retryKey = `${modelName}-${unsupportedParameter}`;
|
|
3544
|
+
if (retriedUnsupportedParameters.has(retryKey)) {
|
|
3545
|
+
attemptStack.push({
|
|
3546
|
+
modelName,
|
|
3547
|
+
unsupportedParameter,
|
|
3548
|
+
errorMessage: error.message,
|
|
3549
|
+
stripped: true,
|
|
3550
|
+
});
|
|
3551
|
+
throw new PipelineExecutionError(`All attempts failed. Attempt history:\n` +
|
|
3552
|
+
attemptStack
|
|
3553
|
+
.map((a, i) => ` ${i + 1}. Model: ${a.modelName}` +
|
|
3554
|
+
(a.unsupportedParameter ? `, Stripped: ${a.unsupportedParameter}` : '') +
|
|
3555
|
+
`, Error: ${a.errorMessage}` +
|
|
3556
|
+
(a.stripped ? ' (stripped and retried)' : ''))
|
|
3557
|
+
.join('\n') +
|
|
3558
|
+
`\nFinal error: ${error.message}`);
|
|
3559
|
+
}
|
|
3560
|
+
retriedUnsupportedParameters.add(retryKey);
|
|
3561
|
+
if (this.options.isVerbose) {
|
|
3562
|
+
console.warn(colors__default["default"].bgYellow('Warning'), `Removing unsupported parameter '${unsupportedParameter}' for model '${modelName}' and retrying request`);
|
|
3563
|
+
}
|
|
3564
|
+
attemptStack.push({
|
|
3565
|
+
modelName,
|
|
3566
|
+
unsupportedParameter,
|
|
3567
|
+
errorMessage: error.message,
|
|
3568
|
+
stripped: true,
|
|
3569
|
+
});
|
|
3570
|
+
const modifiedModelRequirements = removeUnsupportedModelRequirement(currentModelRequirements, unsupportedParameter);
|
|
3571
|
+
return this.callImageGenerationModelWithRetry(prompt, modifiedModelRequirements, attemptStack, retriedUnsupportedParameters);
|
|
3572
|
+
}
|
|
3573
|
+
}
|
|
3399
3574
|
// <- Note: [🤖] callXxxModel
|
|
3400
3575
|
/**
|
|
3401
3576
|
* Get the model that should be used as default
|
|
@@ -3776,7 +3951,7 @@
|
|
|
3776
3951
|
...ollamaOptions,
|
|
3777
3952
|
apiKey: 'ollama',
|
|
3778
3953
|
isProxied: false, // <- Note: Ollama is always local
|
|
3779
|
-
};
|
|
3954
|
+
}; /* <- Note: [🤛] */
|
|
3780
3955
|
super(openAiCompatibleOptions);
|
|
3781
3956
|
}
|
|
3782
3957
|
get title() {
|
|
@@ -3826,6 +4001,13 @@
|
|
|
3826
4001
|
return this.getDefaultModel('text-embedding-3-large'); // <- TODO: [🧠] Pick the best default model
|
|
3827
4002
|
// <- TODO: [🛄]
|
|
3828
4003
|
}
|
|
4004
|
+
/**
|
|
4005
|
+
* Default model for image generation variant.
|
|
4006
|
+
*/
|
|
4007
|
+
getDefaultImageGenerationModel() {
|
|
4008
|
+
return this.getDefaultModel('!!!'); // <- TODO: [🧠] Pick the best default model
|
|
4009
|
+
// <- TODO: [🛄]
|
|
4010
|
+
}
|
|
3829
4011
|
}
|
|
3830
4012
|
/**
|
|
3831
4013
|
* TODO: [🛄] Some way how to re-wrap the errors from `OpenAiCompatibleExecutionTools`
|
|
@@ -3853,7 +4035,7 @@
|
|
|
3853
4035
|
*/
|
|
3854
4036
|
class NotYetImplementedError extends Error {
|
|
3855
4037
|
constructor(message) {
|
|
3856
|
-
super(spaceTrim.spaceTrim((block) => `
|
|
4038
|
+
super(spaceTrim$1.spaceTrim((block) => `
|
|
3857
4039
|
${block(message)}
|
|
3858
4040
|
|
|
3859
4041
|
Note: This feature is not implemented yet but it will be soon.
|