@promptbook/browser 0.72.0-1 → 0.72.0-10
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 +10 -0
- package/esm/index.es.js +50 -6
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/browser.index.d.ts +3 -1
- package/esm/typings/src/_packages/cli.index.d.ts +20 -0
- package/esm/typings/src/_packages/core.index.d.ts +36 -14
- package/esm/typings/src/_packages/documents.index.d.ts +8 -0
- package/esm/typings/src/_packages/legacy-documents.index.d.ts +8 -0
- package/esm/typings/src/_packages/markdown-utils.index.d.ts +6 -0
- package/esm/typings/src/_packages/node.index.d.ts +16 -6
- package/esm/typings/src/_packages/pdf.index.d.ts +8 -0
- package/esm/typings/src/_packages/types.index.d.ts +49 -27
- package/esm/typings/src/_packages/website-crawler.index.d.ts +8 -0
- package/esm/typings/src/cli/cli-commands/about.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/hello.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/make.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +2 -1
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +13 -0
- package/esm/typings/src/cli/main.d.ts +1 -1
- package/esm/typings/src/cli/promptbookCli.d.ts +1 -1
- package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +11 -6
- package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +1 -1
- package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +5 -1
- package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/FORMAT/formatCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.d.ts +11 -0
- package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.test.d.ts +4 -0
- package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/TEMPLATE/templateCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/URL/urlCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +1 -1
- package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -1
- package/esm/typings/src/config.d.ts +16 -0
- package/esm/typings/src/conversion/pipelineStringToJson.d.ts +4 -15
- package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +1 -1
- package/esm/typings/src/conversion/validation/_importPipeline.d.ts +1 -1
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +5 -5
- package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceTools.d.ts +2 -2
- package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceToolsOptions.d.ts +3 -3
- package/esm/typings/src/{knowledge/dialogs → dialogs}/simple-prompt/SimplePromptInterfaceTools.d.ts +6 -6
- package/esm/typings/src/errors/AbstractFormatError.d.ts +11 -0
- package/esm/typings/src/errors/KnowledgeScrapeError.d.ts +9 -0
- package/esm/typings/src/errors/MissingToolsError.d.ts +9 -0
- package/esm/typings/src/execution/{CommonExecutionToolsOptions.d.ts → CommonToolsOptions.d.ts} +1 -1
- package/esm/typings/src/execution/ExecutionTools.d.ts +29 -9
- package/esm/typings/src/execution/FilesystemTools.d.ts +9 -0
- package/esm/typings/src/execution/PipelineExecutor.d.ts +1 -0
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +5 -2
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +2 -13
- package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +3 -0
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +4 -1
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +4 -6
- package/esm/typings/src/execution/createPipelineExecutor/{30-executeFormatCells.d.ts → 30-executeFormatSubvalues.d.ts} +2 -6
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +1 -6
- package/esm/typings/src/execution/embeddingVectorToString.d.ts +1 -1
- package/esm/typings/src/execution/translation/automatic-translate/translateMessages.d.ts +4 -0
- package/esm/typings/src/execution/utils/$provideExecutionToolsForNode.d.ts +13 -0
- package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -0
- package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +2 -1
- package/esm/typings/src/formats/csv/CsvFormatError.d.ts +10 -0
- package/esm/typings/src/llm-providers/_common/{$llmToolsMetadataRegister.d.ts → register/$llmToolsMetadataRegister.d.ts} +4 -1
- package/esm/typings/src/llm-providers/_common/{$llmToolsRegister.d.ts → register/$llmToolsRegister.d.ts} +5 -2
- package/esm/typings/src/llm-providers/_common/{createLlmToolsFromConfigurationFromEnv.d.ts → register/$provideLlmToolsConfigurationFromEnv.d.ts} +3 -3
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForCli.d.ts +15 -0
- package/esm/typings/src/llm-providers/_common/{getLlmToolsForTestingAndScriptsAndPlayground.d.ts → register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts} +4 -3
- package/esm/typings/src/llm-providers/_common/{createLlmToolsFromEnv.d.ts → register/$provideLlmToolsFromEnv.d.ts} +6 -5
- package/esm/typings/src/llm-providers/_common/{$registeredLlmToolsMessage.d.ts → register/$registeredLlmToolsMessage.d.ts} +5 -2
- package/esm/typings/src/llm-providers/_common/{LlmToolsConfiguration.d.ts → register/LlmToolsConfiguration.d.ts} +5 -4
- package/esm/typings/src/llm-providers/_common/{LlmToolsMetadata.d.ts → register/LlmToolsMetadata.d.ts} +5 -4
- package/esm/typings/src/llm-providers/_common/{LlmToolsOptions.d.ts → register/LlmToolsOptions.d.ts} +4 -1
- package/esm/typings/src/llm-providers/_common/{createLlmToolsFromConfiguration.d.ts → register/createLlmToolsFromConfiguration.d.ts} +5 -4
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +5 -5
- package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -2
- package/esm/typings/src/llm-providers/anthropic-claude/register-configuration.d.ts +4 -3
- package/esm/typings/src/llm-providers/anthropic-claude/register-constructor.d.ts +4 -3
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +6 -0
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +4 -3
- package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +1 -0
- package/esm/typings/src/llm-providers/azure-openai/register-configuration.d.ts +4 -3
- package/esm/typings/src/llm-providers/azure-openai/register-constructor.d.ts +4 -3
- package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/langtail/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +3 -3
- package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +3 -3
- package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +1 -0
- package/esm/typings/src/llm-providers/multiple/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +4 -4
- package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +2 -1
- package/esm/typings/src/llm-providers/openai/register-configuration.d.ts +5 -4
- package/esm/typings/src/llm-providers/openai/register-constructor.d.ts +5 -4
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +3 -3
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Request.d.ts +16 -7
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Response.d.ts +2 -2
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Request.d.ts +7 -13
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Response.d.ts +1 -1
- package/esm/typings/src/llm-providers/remote/interfaces/RemoteLlmExecutionToolsOptions.d.ts +11 -16
- package/esm/typings/src/llm-providers/remote/interfaces/RemoteServerOptions.d.ts +23 -9
- package/esm/typings/src/llm-providers/remote/playground/playground.d.ts +3 -0
- package/esm/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -1
- package/esm/typings/src/personas/preparePersona.d.ts +3 -2
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +68 -0
- package/esm/typings/src/prepare/preparePipeline.d.ts +3 -2
- package/esm/typings/src/prepare/prepareTemplates.d.ts +3 -2
- package/esm/typings/src/scrapers/_common/Converter.d.ts +22 -0
- package/esm/typings/src/scrapers/_common/Scraper.d.ts +66 -0
- package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +11 -0
- package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.d.ts +5 -4
- package/esm/typings/src/scrapers/_common/register/$provideFilesystemForNode.d.ts +11 -0
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +12 -0
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +15 -0
- package/esm/typings/src/scrapers/_common/register/$registeredScrapersMessage.d.ts +12 -0
- package/esm/typings/src/scrapers/_common/register/$scrapersMetadataRegister.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/$scrapersRegister.d.ts +13 -0
- package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +41 -0
- package/esm/typings/src/scrapers/_common/register/ScraperConstructor.d.ts +12 -0
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +34 -0
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.test.d.ts +4 -0
- package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +11 -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 +13 -0
- package/esm/typings/src/scrapers/document/register-metadata.d.ts +24 -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 +20 -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 +13 -0
- package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +24 -0
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +29 -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 +13 -0
- package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +24 -0
- package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +40 -0
- package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +20 -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 +13 -0
- package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +24 -0
- package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +47 -0
- package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +20 -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 +13 -0
- package/esm/typings/src/scrapers/website/register-metadata.d.ts +24 -0
- package/esm/typings/src/scrapers/website/utils/markdownConverter.d.ts +12 -0
- package/esm/typings/src/scripting/javascript/JavascriptExecutionToolsOptions.d.ts +2 -2
- package/esm/typings/src/scripting/python/PythonExecutionTools.d.ts +3 -3
- package/esm/typings/src/scripting/typescript/TypescriptExecutionTools.d.ts +3 -3
- package/esm/typings/src/storage/{files-storage/FilesStorage.d.ts → file-cache-storage/FileCacheStorage.d.ts} +7 -5
- package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +10 -0
- package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.d.ts +1 -1
- package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +1 -1
- package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +1 -1
- package/esm/typings/src/storage/{utils → memory/utils}/PrefixStorage.d.ts +1 -1
- package/esm/typings/src/storage/{utils → memory/utils}/makePromptbookStorageFromWebStorage.d.ts +1 -1
- package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +9 -2
- package/esm/typings/src/types/PipelineJson/ParameterJson.d.ts +1 -1
- package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +2 -2
- package/esm/typings/src/types/Prompt.d.ts +1 -0
- package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +0 -3
- package/esm/typings/src/types/execution-report/executionReportJsonToString.d.ts +2 -1
- package/esm/typings/src/types/typeAliases.d.ts +27 -20
- package/esm/typings/src/utils/$Register.d.ts +19 -6
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +14 -0
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +17 -0
- package/esm/typings/src/utils/execCommand/IExecCommandOptions.d.ts +23 -0
- package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.d.ts +10 -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/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/validators/filePath/isValidFilePath.d.ts +2 -2
- package/package.json +2 -2
- package/umd/index.umd.js +50 -5
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +0 -37
- package/esm/typings/src/knowledge/prepare-knowledge/markdown/playground/markdown-knowledge-playground.d.ts +0 -2
- package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +0 -14
- package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +0 -15
- package/esm/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +0 -22
- package/esm/typings/src/prepare/PrepareOptions.d.ts +0 -22
- package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +0 -10
- package/esm/typings/src/utils/files/$isDirectoryExisting.d.ts +0 -15
- package/esm/typings/src/utils/files/$isFileExisting.d.ts +0 -14
- package/esm/typings/src/utils/files/$listAllFiles.d.ts +0 -17
- /package/esm/typings/src/{knowledge/dialogs → dialogs}/user-interface-execution-tools.test.d.ts +0 -0
- /package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.test.d.ts +0 -0
- /package/esm/typings/src/{knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts → scrapers/markdown/MarkdownScraper.test.d.ts} +0 -0
- /package/esm/typings/src/{knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.test.d.ts → scrapers/website/WebsiteScraper.test.d.ts} +0 -0
- /package/esm/typings/src/{storage/files-storage/utils/nameToSubfolderPath.test.d.ts → scrapers/website/utils/markdownConverter.test.d.ts} +0 -0
- /package/esm/typings/src/{utils/files/$isDirectoryExisting.test.d.ts → storage/file-cache-storage/utils/nameToSubfolderPath.test.d.ts} +0 -0
- /package/esm/typings/src/utils/{files/$isFileExisting.test.d.ts → execCommand/execCommand.test.d.ts} +0 -0
- /package/esm/typings/src/utils/{files/$listAllFiles.test.d.ts → execCommand/execCommandNormalizeOptions.test.d.ts} +0 -0
package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ClientOptions } from '@anthropic-ai/sdk';
|
|
2
|
-
import type {
|
|
2
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
3
3
|
import type { RemoteLlmExecutionToolsOptions } from '../remote/interfaces/RemoteLlmExecutionToolsOptions';
|
|
4
4
|
/**
|
|
5
5
|
* Options for `AnthropicClaudeExecutionTools`
|
|
@@ -14,7 +14,7 @@ export type AnthropicClaudeExecutionToolsOptions = AnthropicClaudeExecutionTools
|
|
|
14
14
|
* This extends Anthropic's `ClientOptions` with are directly passed to the Anthropic client.
|
|
15
15
|
* @public exported from `@promptbook/anthropic-claude`
|
|
16
16
|
*/
|
|
17
|
-
export type AnthropicClaudeExecutionToolsDirectOptions =
|
|
17
|
+
export type AnthropicClaudeExecutionToolsDirectOptions = CommonToolsOptions & ClientOptions & {
|
|
18
18
|
isProxied?: false;
|
|
19
19
|
};
|
|
20
20
|
/**
|
|
@@ -23,9 +23,9 @@ export type AnthropicClaudeExecutionToolsDirectOptions = CommonExecutionToolsOpt
|
|
|
23
23
|
* This extends Anthropic's `ClientOptions` with are directly passed to the Anthropic client.
|
|
24
24
|
* @public exported from `@promptbook/anthropic-claude`
|
|
25
25
|
*/
|
|
26
|
-
export type AnthropicClaudeExecutionToolsProxiedOptions =
|
|
26
|
+
export type AnthropicClaudeExecutionToolsProxiedOptions = CommonToolsOptions & ClientOptions & {
|
|
27
27
|
isProxied: true;
|
|
28
|
-
} & Pick<RemoteLlmExecutionToolsOptions
|
|
28
|
+
} & Pick<RemoteLlmExecutionToolsOptions<undefined>, 'remoteUrl' | 'path'>;
|
|
29
29
|
/**
|
|
30
|
-
* TODO: [🧠][🤺]
|
|
30
|
+
* TODO: [🧠][🤺] Pass `userId`
|
|
31
31
|
*/
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env ts-node
|
|
2
2
|
export {};
|
|
3
3
|
/**
|
|
4
|
-
* TODO:[main] !!! Playground with WebGPT / Promptbook.studio anonymous server
|
|
5
|
-
* TODO:[main] !!! Test here that `systemMessage`, `temperature` and `seed` are working correctly
|
|
4
|
+
* TODO: [main] !!! Playground with WebGPT / Promptbook.studio anonymous server
|
|
5
|
+
* TODO: [main] !!! Test here that `systemMessage`, `temperature` and `seed` are working correctly
|
|
6
|
+
* Note: [⚫] Code in this file should never be published in any package
|
|
6
7
|
*/
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import type { Registration } from '../../utils/$Register';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
+
* Registration of LLM provider metadata
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
+
* Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
|
|
5
6
|
*
|
|
6
7
|
* @public exported from `@promptbook/core`
|
|
7
8
|
* @public exported from `@promptbook/cli`
|
|
8
9
|
*/
|
|
9
|
-
export declare const _AnthropicClaudeMetadataRegistration:
|
|
10
|
+
export declare const _AnthropicClaudeMetadataRegistration: Registration;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
import type { Registration } from '../../utils/$Register';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
+
* Registration of LLM provider
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
+
* Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
|
|
5
6
|
*
|
|
6
7
|
* @public exported from `@promptbook/anthropic-claude`
|
|
7
8
|
* @public exported from `@promptbook/cli`
|
|
8
9
|
*/
|
|
9
|
-
export declare const _AnthropicClaudeRegistration:
|
|
10
|
+
export declare const _AnthropicClaudeRegistration: Registration;
|
|
10
11
|
/**
|
|
11
12
|
* TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
|
|
12
13
|
*/
|
|
@@ -44,6 +44,12 @@ export declare class AzureOpenAiExecutionTools implements LlmExecutionTools {
|
|
|
44
44
|
* Calls Azure OpenAI API to use a complete model.
|
|
45
45
|
*/
|
|
46
46
|
callCompletionModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<CompletionPromptResult>;
|
|
47
|
+
/**
|
|
48
|
+
* Library `@azure/openai` has bug/weird behavior that it does not throw error but hangs forever
|
|
49
|
+
*
|
|
50
|
+
* This method wraps the promise with timeout
|
|
51
|
+
*/
|
|
52
|
+
private withTimeout;
|
|
47
53
|
/**
|
|
48
54
|
* Changes Azure error (which is not propper Error but object) to propper Error
|
|
49
55
|
*/
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
2
2
|
import type { string_name } from '../../types/typeAliases';
|
|
3
3
|
import type { string_token } from '../../types/typeAliases';
|
|
4
|
+
import type { string_user_id } from '../../types/typeAliases';
|
|
4
5
|
/**
|
|
5
6
|
* Options for `AzureOpenAiExecutionTools`
|
|
6
7
|
*
|
|
7
8
|
* @see https://oai.azure.com/portal/
|
|
8
9
|
* @public exported from `@promptbook/azure-openai`
|
|
9
10
|
*/
|
|
10
|
-
export type AzureOpenAiExecutionToolsOptions =
|
|
11
|
+
export type AzureOpenAiExecutionToolsOptions = CommonToolsOptions & {
|
|
11
12
|
/**
|
|
12
13
|
* The resource name of the Azure OpenAI resource
|
|
13
14
|
*
|
|
@@ -32,5 +33,5 @@ export type AzureOpenAiExecutionToolsOptions = CommonExecutionToolsOptions & {
|
|
|
32
33
|
*
|
|
33
34
|
* @see https://platform.openai.com/docs/guides/safety-best-practices/end-user-ids (document from OpenAI not Azure, but same concept)
|
|
34
35
|
*/
|
|
35
|
-
readonly
|
|
36
|
+
readonly userId: string_user_id | null;
|
|
36
37
|
};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import type { Registration } from '../../utils/$Register';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
+
* Registration of LLM provider metadata
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
+
* Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
|
|
5
6
|
*
|
|
6
7
|
* @public exported from `@promptbook/core`
|
|
7
8
|
* @public exported from `@promptbook/cli`
|
|
8
9
|
*/
|
|
9
|
-
export declare const _AzureOpenAiMetadataRegistration:
|
|
10
|
+
export declare const _AzureOpenAiMetadataRegistration: Registration;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
import type { Registration } from '../../utils/$Register';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
+
* Registration of LLM provider
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
+
* Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
|
|
5
6
|
*
|
|
6
7
|
* @public exported from `@promptbook/azure-openai`
|
|
7
8
|
* @public exported from `@promptbook/cli`
|
|
8
9
|
*/
|
|
9
|
-
export declare const _AzureOpenAiRegistration:
|
|
10
|
+
export declare const _AzureOpenAiRegistration: Registration;
|
|
10
11
|
/**
|
|
11
12
|
* TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
|
|
12
13
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AvailableModel } from '../../execution/AvailableModel';
|
|
2
|
-
import type {
|
|
2
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
3
3
|
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
4
4
|
import type { ChatPromptResult } from '../../execution/PromptResult';
|
|
5
5
|
import type { CompletionPromptResult } from '../../execution/PromptResult';
|
|
@@ -13,8 +13,8 @@ import type { string_title } from '../../types/typeAliases';
|
|
|
13
13
|
* @public exported from `@promptbook/fake-llm`
|
|
14
14
|
*/
|
|
15
15
|
export declare class MockedEchoLlmExecutionTools implements LlmExecutionTools {
|
|
16
|
-
protected readonly options:
|
|
17
|
-
constructor(options?:
|
|
16
|
+
protected readonly options: CommonToolsOptions;
|
|
17
|
+
constructor(options?: CommonToolsOptions);
|
|
18
18
|
get title(): string_title & string_markdown_text;
|
|
19
19
|
get description(): string_markdown;
|
|
20
20
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AvailableModel } from '../../execution/AvailableModel';
|
|
2
|
-
import type {
|
|
2
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
3
3
|
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
4
4
|
import type { ChatPromptResult } from '../../execution/PromptResult';
|
|
5
5
|
import type { CompletionPromptResult } from '../../execution/PromptResult';
|
|
@@ -14,8 +14,8 @@ import type { string_title } from '../../types/typeAliases';
|
|
|
14
14
|
* @public exported from `@promptbook/fake-llm`
|
|
15
15
|
*/
|
|
16
16
|
export declare class MockedFackedLlmExecutionTools implements LlmExecutionTools {
|
|
17
|
-
protected readonly options:
|
|
18
|
-
constructor(options?:
|
|
17
|
+
protected readonly options: CommonToolsOptions;
|
|
18
|
+
constructor(options?: CommonToolsOptions);
|
|
19
19
|
get title(): string_title & string_markdown_text;
|
|
20
20
|
get description(): string_markdown;
|
|
21
21
|
/**
|
|
@@ -16,6 +16,7 @@ import type { string_title } from '../../types/typeAliases';
|
|
|
16
16
|
*
|
|
17
17
|
* Note: Internal utility of `joinLlmExecutionTools` but exposed type
|
|
18
18
|
* @public exported from `@promptbook/types`
|
|
19
|
+
* TODO: !!!!!! Export as runtime class not just type
|
|
19
20
|
*/
|
|
20
21
|
export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
|
|
21
22
|
/**
|
|
@@ -14,7 +14,7 @@ import { OpenAiExecutionTools } from './OpenAiExecutionTools';
|
|
|
14
14
|
* @public exported from `@promptbook/openai`
|
|
15
15
|
*/
|
|
16
16
|
export declare class OpenAiAssistantExecutionTools extends OpenAiExecutionTools implements LlmExecutionTools {
|
|
17
|
-
private readonly assistantId
|
|
17
|
+
private readonly assistantId;
|
|
18
18
|
/**
|
|
19
19
|
* Creates OpenAI Execution Tools.
|
|
20
20
|
*
|
|
@@ -27,7 +27,7 @@ export declare class OpenAiExecutionTools implements LlmExecutionTools {
|
|
|
27
27
|
*
|
|
28
28
|
* @param options which are relevant are directly passed to the OpenAI client
|
|
29
29
|
*/
|
|
30
|
-
constructor(options
|
|
30
|
+
constructor(options: OpenAiExecutionToolsOptions);
|
|
31
31
|
get title(): string_title & string_markdown_text;
|
|
32
32
|
get description(): string_markdown;
|
|
33
33
|
getClient(): Promise<OpenAI>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ClientOptions } from 'openai';
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
2
|
+
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
3
|
+
import type { string_user_id } from '../../types/typeAliases';
|
|
4
4
|
/**
|
|
5
5
|
* Options for `OpenAiExecutionTools`
|
|
6
6
|
*
|
|
@@ -9,12 +9,12 @@ import type { string_token } from '../../types/typeAliases';
|
|
|
9
9
|
*
|
|
10
10
|
* @public exported from `@promptbook/openai`
|
|
11
11
|
*/
|
|
12
|
-
export type OpenAiExecutionToolsOptions =
|
|
12
|
+
export type OpenAiExecutionToolsOptions = CommonToolsOptions & ClientOptions & {
|
|
13
13
|
/**
|
|
14
14
|
* A unique identifier representing your end-user, which can help OpenAI to monitor
|
|
15
15
|
* and detect abuse.
|
|
16
16
|
*
|
|
17
17
|
* @see https://platform.openai.com/docs/guides/safety-best-practices/end-user-ids
|
|
18
18
|
*/
|
|
19
|
-
|
|
19
|
+
userId: string_user_id | null;
|
|
20
20
|
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env ts-node
|
|
2
2
|
export {};
|
|
3
3
|
/**
|
|
4
|
-
* TODO:[main] !!! Test here that `systemMessage`, `temperature` and `seed` are working correctly
|
|
4
|
+
* TODO: [main] !!! Test here that `systemMessage`, `temperature` and `seed` are working correctly
|
|
5
|
+
* Note: [⚫] Code in this file should never be published in any package
|
|
5
6
|
*/
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
import type { Registration } from '../../utils/$Register';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
+
* Registration of LLM provider metadata
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
+
* Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
|
|
5
6
|
*
|
|
6
7
|
* @public exported from `@promptbook/core`
|
|
7
8
|
* @public exported from `@promptbook/cli`
|
|
8
9
|
*/
|
|
9
|
-
export declare const _OpenAiMetadataRegistration:
|
|
10
|
+
export declare const _OpenAiMetadataRegistration: Registration;
|
|
10
11
|
/**
|
|
11
12
|
* @@@ registration1 of default configuration for Open AI
|
|
12
13
|
*
|
|
@@ -15,4 +16,4 @@ export declare const _OpenAiMetadataRegistration: void;
|
|
|
15
16
|
* @public exported from `@promptbook/core`
|
|
16
17
|
* @public exported from `@promptbook/cli`
|
|
17
18
|
*/
|
|
18
|
-
export declare const _OpenAiAssistantMetadataRegistration:
|
|
19
|
+
export declare const _OpenAiAssistantMetadataRegistration: Registration;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
import type { Registration } from '../../utils/$Register';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
+
* Registration of LLM provider
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
+
* Warning: This is not useful for the end user, it is just a side effect of the mechanism that handles all available LLM tools
|
|
5
6
|
*
|
|
6
7
|
* @public exported from `@promptbook/openai`
|
|
7
8
|
* @public exported from `@promptbook/cli`
|
|
8
9
|
*/
|
|
9
|
-
export declare const _OpenAiRegistration:
|
|
10
|
+
export declare const _OpenAiRegistration: Registration;
|
|
10
11
|
/**
|
|
11
12
|
* @@@ registration2
|
|
12
13
|
*
|
|
@@ -15,7 +16,7 @@ export declare const _OpenAiRegistration: void;
|
|
|
15
16
|
* @public exported from `@promptbook/openai`
|
|
16
17
|
* @public exported from `@promptbook/cli`
|
|
17
18
|
*/
|
|
18
|
-
export declare const _OpenAiAssistantRegistration:
|
|
19
|
+
export declare const _OpenAiAssistantRegistration: Registration;
|
|
19
20
|
/**
|
|
20
21
|
* TODO: [🎶] Naming "constructor" vs "creator" vs "factory"
|
|
21
22
|
*/
|
|
@@ -19,9 +19,9 @@ import type { RemoteLlmExecutionToolsOptions } from './interfaces/RemoteLlmExecu
|
|
|
19
19
|
* @see https://github.com/webgptorg/promptbook#remote-server
|
|
20
20
|
* @public exported from `@promptbook/remote-client`
|
|
21
21
|
*/
|
|
22
|
-
export declare class RemoteLlmExecutionTools implements LlmExecutionTools {
|
|
23
|
-
protected readonly options: RemoteLlmExecutionToolsOptions
|
|
24
|
-
constructor(options: RemoteLlmExecutionToolsOptions);
|
|
22
|
+
export declare class RemoteLlmExecutionTools<TCustomOptions = undefined> implements LlmExecutionTools {
|
|
23
|
+
protected readonly options: RemoteLlmExecutionToolsOptions<TCustomOptions>;
|
|
24
|
+
constructor(options: RemoteLlmExecutionToolsOptions<TCustomOptions>);
|
|
25
25
|
get title(): string_title & string_markdown_text;
|
|
26
26
|
get description(): string_markdown;
|
|
27
27
|
/**
|
package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Request.d.ts
CHANGED
|
@@ -1,21 +1,30 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { string_user_id } from '../../../types/typeAliases';
|
|
2
|
+
import type { LlmToolsConfiguration } from '../../_common/register/LlmToolsConfiguration';
|
|
3
|
+
import type { CollectionRemoteServerClientOptions } from './RemoteServerOptions';
|
|
2
4
|
/**
|
|
3
5
|
* Socket.io progress for remote text generation
|
|
4
6
|
*
|
|
5
7
|
* This is a request from client to server
|
|
6
8
|
*/
|
|
7
|
-
export type PromptbookServer_ListModels_Request = PromptbookServer_ListModels_CollectionRequest | PromptbookServer_ListModels_AnonymousRequest;
|
|
8
|
-
export type PromptbookServer_ListModels_CollectionRequest = {
|
|
9
|
+
export type PromptbookServer_ListModels_Request<TCustomOptions> = PromptbookServer_ListModels_CollectionRequest<TCustomOptions> | PromptbookServer_ListModels_AnonymousRequest;
|
|
10
|
+
export type PromptbookServer_ListModels_CollectionRequest<TCustomOptions> = CollectionRemoteServerClientOptions<TCustomOptions> & {
|
|
9
11
|
/**
|
|
10
|
-
*
|
|
12
|
+
* Application mode
|
|
11
13
|
*/
|
|
12
|
-
isAnonymous: false;
|
|
14
|
+
readonly isAnonymous: false;
|
|
13
15
|
};
|
|
14
16
|
export type PromptbookServer_ListModels_AnonymousRequest = {
|
|
15
17
|
/**
|
|
16
18
|
* Anonymous mode
|
|
17
19
|
*/
|
|
18
|
-
isAnonymous: true;
|
|
20
|
+
readonly isAnonymous: true;
|
|
21
|
+
/**
|
|
22
|
+
* Identifier of the end user
|
|
23
|
+
*
|
|
24
|
+
* Note: this is passed to the certain model providers to identify misuse
|
|
25
|
+
* Note: In anonymous mode, there is no need to identify yourself, nor does it change the actual configuration of LLM Tools (unlike in application mode)
|
|
26
|
+
*/
|
|
27
|
+
readonly userId: string_user_id | null;
|
|
19
28
|
/**
|
|
20
29
|
* Configuration for the LLM tools
|
|
21
30
|
*/
|
|
@@ -24,6 +33,6 @@ export type PromptbookServer_ListModels_AnonymousRequest = {
|
|
|
24
33
|
/**
|
|
25
34
|
* TODO: [👡] DRY `PromptbookServer_Prompt_Request` and `PromptbookServer_ListModels_Request`
|
|
26
35
|
* TODO: [🧠][🛍] Maybe not `isAnonymous: boolean` BUT `mode: 'ANONYMOUS'|'COLLECTION'`
|
|
27
|
-
* TODO: [🧠][🤺] Pass `userId` in `PromptbookServer_ListModels_Request`
|
|
36
|
+
* TODO: [🧠][🤺] Maybe allow overriding of `userId` for each prompt - Pass `userId` in `PromptbookServer_ListModels_Request`
|
|
28
37
|
* TODO: [👒] Listing models (and checking configuration) probbably should go through REST API not Socket.io
|
|
29
38
|
*/
|
package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Response.d.ts
CHANGED
|
@@ -8,8 +8,8 @@ export interface PromptbookServer_ListModels_Response {
|
|
|
8
8
|
/**
|
|
9
9
|
* Available models that can be used
|
|
10
10
|
*/
|
|
11
|
-
models: Array<AvailableModel>;
|
|
11
|
+
readonly models: Array<AvailableModel>;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* TODO: [👒] Listing models (and checking configuration) probbably should go through REST API not Socket.io
|
|
15
|
-
*/
|
|
15
|
+
*/
|
package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Request.d.ts
CHANGED
|
@@ -1,24 +1,18 @@
|
|
|
1
1
|
import type { Prompt } from '../../../types/Prompt';
|
|
2
2
|
import type { string_user_id } from '../../../types/typeAliases';
|
|
3
|
-
import type { LlmToolsConfiguration } from '../../_common/LlmToolsConfiguration';
|
|
3
|
+
import type { LlmToolsConfiguration } from '../../_common/register/LlmToolsConfiguration';
|
|
4
|
+
import type { CollectionRemoteServerClientOptions } from './RemoteServerOptions';
|
|
4
5
|
/**
|
|
5
6
|
* Socket.io progress for remote text generation
|
|
6
7
|
*
|
|
7
8
|
* This is a request from client to server
|
|
8
9
|
*/
|
|
9
|
-
export type PromptbookServer_Prompt_Request = PromptbookServer_Prompt_CollectionRequest | PromptbookServer_Prompt_AnonymousRequest;
|
|
10
|
-
export type PromptbookServer_Prompt_CollectionRequest = {
|
|
10
|
+
export type PromptbookServer_Prompt_Request<TCustomOptions> = PromptbookServer_Prompt_CollectionRequest<TCustomOptions> | PromptbookServer_Prompt_AnonymousRequest;
|
|
11
|
+
export type PromptbookServer_Prompt_CollectionRequest<TCustomOptions> = CollectionRemoteServerClientOptions<TCustomOptions> & {
|
|
11
12
|
/**
|
|
12
|
-
*
|
|
13
|
+
* Application mode
|
|
13
14
|
*/
|
|
14
15
|
readonly isAnonymous: false;
|
|
15
|
-
/**
|
|
16
|
-
* Identifier of the end user
|
|
17
|
-
*
|
|
18
|
-
* Note: this is passed to the certain model providers to identify misuse
|
|
19
|
-
* Note: In anonymous mode it is not required to identify
|
|
20
|
-
*/
|
|
21
|
-
readonly userId: string_user_id;
|
|
22
16
|
/**
|
|
23
17
|
* The Prompt to execute
|
|
24
18
|
*/
|
|
@@ -33,9 +27,9 @@ export type PromptbookServer_Prompt_AnonymousRequest = {
|
|
|
33
27
|
* Identifier of the end user
|
|
34
28
|
*
|
|
35
29
|
* Note: this is passed to the certain model providers to identify misuse
|
|
36
|
-
* Note: In anonymous mode
|
|
30
|
+
* Note: In anonymous mode, there is no need to identify yourself, nor does it change the actual configuration of LLM Tools (unlike in application mode)
|
|
37
31
|
*/
|
|
38
|
-
readonly userId
|
|
32
|
+
readonly userId: string_user_id | null;
|
|
39
33
|
/**
|
|
40
34
|
* Configuration for the LLM tools
|
|
41
35
|
*/
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CommonToolsOptions } from '../../../execution/CommonToolsOptions';
|
|
2
2
|
import type { string_base_url } from '../../../types/typeAliases';
|
|
3
3
|
import type { string_uri } from '../../../types/typeAliases';
|
|
4
4
|
import type { string_user_id } from '../../../types/typeAliases';
|
|
5
|
-
import type { LlmToolsConfiguration } from '../../_common/LlmToolsConfiguration';
|
|
5
|
+
import type { LlmToolsConfiguration } from '../../_common/register/LlmToolsConfiguration';
|
|
6
|
+
import type { CollectionRemoteServerClientOptions } from './RemoteServerOptions';
|
|
6
7
|
/**
|
|
7
8
|
* Options for `RemoteLlmExecutionTools`
|
|
8
9
|
*
|
|
9
10
|
* @public exported from `@promptbook/remote-client`
|
|
10
11
|
*/
|
|
11
|
-
export type RemoteLlmExecutionToolsOptions =
|
|
12
|
+
export type RemoteLlmExecutionToolsOptions<TCustomOptions> = CommonToolsOptions & {
|
|
12
13
|
/**
|
|
13
14
|
* URL of the remote PROMPTBOOK server
|
|
14
15
|
* On this server will be connected to the socket.io server
|
|
@@ -29,7 +30,7 @@ export type RemoteLlmExecutionToolsOptions = CommonExecutionToolsOptions & {
|
|
|
29
30
|
/**
|
|
30
31
|
* Use anonymous server with anonymous mode
|
|
31
32
|
*/
|
|
32
|
-
isAnonymous: true;
|
|
33
|
+
readonly isAnonymous: true;
|
|
33
34
|
/**
|
|
34
35
|
* Configuration for the LLM tools
|
|
35
36
|
*/
|
|
@@ -37,22 +38,16 @@ export type RemoteLlmExecutionToolsOptions = CommonExecutionToolsOptions & {
|
|
|
37
38
|
/**
|
|
38
39
|
* Identifier of the end user
|
|
39
40
|
*
|
|
40
|
-
* Note:
|
|
41
|
-
* Note: In anonymous mode
|
|
41
|
+
* Note: This is passed to the certain model providers to identify misuse
|
|
42
|
+
* Note: In anonymous mode, there is no need to identify yourself, nor does it change the actual configuration of LLM Tools (unlike in application mode).
|
|
42
43
|
*/
|
|
43
|
-
readonly userId
|
|
44
|
-
} | {
|
|
44
|
+
readonly userId: string_user_id | null;
|
|
45
|
+
} | ({
|
|
45
46
|
/**
|
|
46
47
|
* Use anonymous server with client identification and fixed collection
|
|
47
48
|
*/
|
|
48
|
-
isAnonymous: false;
|
|
49
|
-
|
|
50
|
-
* Identifier of the end user
|
|
51
|
-
*
|
|
52
|
-
* Note: this is passed to the certain model providers to identify misuse
|
|
53
|
-
*/
|
|
54
|
-
readonly userId: string_user_id;
|
|
55
|
-
});
|
|
49
|
+
readonly isAnonymous: false;
|
|
50
|
+
} & CollectionRemoteServerClientOptions<TCustomOptions>));
|
|
56
51
|
/**
|
|
57
52
|
* TODO: [🧠][🛍] Maybe not `isAnonymous: boolean` BUT `mode: 'ANONYMOUS'|'COLLECTION'`
|
|
58
53
|
* TODO: [🧠][🧜♂️] Maybe join remoteUrl and path into single value
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { PipelineCollection } from '../../../collection/PipelineCollection';
|
|
2
|
-
import type {
|
|
2
|
+
import type { CommonToolsOptions } from '../../../execution/CommonToolsOptions';
|
|
3
3
|
import type { LlmExecutionTools } from '../../../execution/LlmExecutionTools';
|
|
4
|
+
import type { string_app_id } from '../../../types/typeAliases';
|
|
4
5
|
import type { string_uri } from '../../../types/typeAliases';
|
|
5
6
|
import type { string_user_id } from '../../../types/typeAliases';
|
|
6
7
|
/**
|
|
@@ -8,7 +9,7 @@ import type { string_user_id } from '../../../types/typeAliases';
|
|
|
8
9
|
*
|
|
9
10
|
* There are two modes of remote server:
|
|
10
11
|
*
|
|
11
|
-
* 1) **
|
|
12
|
+
* 1) **Application mode** Server will recieve `collection` and execute prompts only from this collection
|
|
12
13
|
* 2) **Anonymous mode** Server will recieve full `LlmToolsConfiguration` (with api keys) and just acts as a proxy
|
|
13
14
|
* In anonymous mode, `collection` will be ignored and any prompt will be executed
|
|
14
15
|
*
|
|
@@ -17,7 +18,7 @@ import type { string_user_id } from '../../../types/typeAliases';
|
|
|
17
18
|
* @public exported from `@promptbook/remote-client`
|
|
18
19
|
* @public exported from `@promptbook/remote-server`
|
|
19
20
|
*/
|
|
20
|
-
export type RemoteServerOptions =
|
|
21
|
+
export type RemoteServerOptions<TCustomOptions> = CommonToolsOptions & {
|
|
21
22
|
/**
|
|
22
23
|
* Port on which the server will listen
|
|
23
24
|
*/
|
|
@@ -29,18 +30,18 @@ export type RemoteServerOptions = CommonExecutionToolsOptions & {
|
|
|
29
30
|
* @example '/promptbook/socket.io'
|
|
30
31
|
*/
|
|
31
32
|
readonly path: string_uri;
|
|
32
|
-
} & (AnonymousRemoteServerOptions | CollectionRemoteServerOptions | (AnonymousRemoteServerOptions & CollectionRemoteServerOptions));
|
|
33
|
+
} & (AnonymousRemoteServerOptions | CollectionRemoteServerOptions<TCustomOptions> | (AnonymousRemoteServerOptions & CollectionRemoteServerOptions<TCustomOptions>));
|
|
33
34
|
export type AnonymousRemoteServerOptions = {
|
|
34
35
|
/**
|
|
35
36
|
* Enable anonymous mode
|
|
36
37
|
*/
|
|
37
38
|
readonly isAnonymousModeAllowed: true;
|
|
38
39
|
};
|
|
39
|
-
export type CollectionRemoteServerOptions = {
|
|
40
|
+
export type CollectionRemoteServerOptions<TCustomOptions> = {
|
|
40
41
|
/**
|
|
41
|
-
* Enable
|
|
42
|
+
* Enable application mode
|
|
42
43
|
*/
|
|
43
|
-
readonly
|
|
44
|
+
readonly isApplicationModeAllowed: true;
|
|
44
45
|
/**
|
|
45
46
|
* Promptbook collection to use
|
|
46
47
|
*
|
|
@@ -50,9 +51,22 @@ export type CollectionRemoteServerOptions = {
|
|
|
50
51
|
/**
|
|
51
52
|
* Creates llm execution tools for each client
|
|
52
53
|
*/
|
|
53
|
-
createLlmExecutionTools(
|
|
54
|
+
createLlmExecutionTools(options: CollectionRemoteServerClientOptions<TCustomOptions>): LlmExecutionTools;
|
|
55
|
+
};
|
|
56
|
+
export type CollectionRemoteServerClientOptions<TCustomOptions> = {
|
|
57
|
+
/**
|
|
58
|
+
* @@@
|
|
59
|
+
*/
|
|
60
|
+
readonly appId: string_app_id | null;
|
|
61
|
+
/**
|
|
62
|
+
* @@@
|
|
63
|
+
*/
|
|
64
|
+
readonly userId: string_user_id | null;
|
|
65
|
+
/**
|
|
66
|
+
* @@@
|
|
67
|
+
*/
|
|
68
|
+
readonly customOptions?: TCustomOptions;
|
|
54
69
|
};
|
|
55
70
|
/**
|
|
56
71
|
* TODO: Constrain anonymous mode for specific models / providers
|
|
57
|
-
* TODO: [🧠][🤺] Remove `createLlmExecutionTools`, pass just `llmExecutionTools`
|
|
58
72
|
*/
|
|
@@ -9,7 +9,7 @@ import type { RemoteServerOptions } from './interfaces/RemoteServerOptions';
|
|
|
9
9
|
* @see https://github.com/webgptorg/promptbook#remote-server
|
|
10
10
|
* @public exported from `@promptbook/remote-server`
|
|
11
11
|
*/
|
|
12
|
-
export declare function startRemoteServer(options: RemoteServerOptions): IDestroyable;
|
|
12
|
+
export declare function startRemoteServer<TCustomOptions = undefined>(options: RemoteServerOptions<TCustomOptions>): IDestroyable;
|
|
13
13
|
/**
|
|
14
14
|
* TODO: Maybe use `$asDeeplyFrozenSerializableJson`
|
|
15
15
|
* TODO: [🧠][🛍] Maybe not `isAnonymous: boolean` BUT `mode: 'ANONYMOUS'|'COLLECTION'`
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ExecutionTools } from '../execution/ExecutionTools';
|
|
2
|
+
import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
|
|
2
3
|
import type { PersonaPreparedJson } from '../types/PipelineJson/PersonaJson';
|
|
3
4
|
import type { string_persona_description } from '../types/typeAliases';
|
|
4
5
|
/**
|
|
@@ -7,7 +8,7 @@ import type { string_persona_description } from '../types/typeAliases';
|
|
|
7
8
|
* @see https://github.com/webgptorg/promptbook/discussions/22
|
|
8
9
|
* @public exported from `@promptbook/core`
|
|
9
10
|
*/
|
|
10
|
-
export declare function preparePersona(personaDescription: string_persona_description, options:
|
|
11
|
+
export declare function preparePersona(personaDescription: string_persona_description, tools: Pick<ExecutionTools, 'llm'>, options: PrepareAndScrapeOptions): Promise<PersonaPreparedJson['modelRequirements']>;
|
|
11
12
|
/**
|
|
12
13
|
* TODO: [🔃][main] !!!!! If the persona was prepared with different version or different set of models, prepare it once again
|
|
13
14
|
* TODO: [🏢] !! Check validity of `modelName` in pipeline
|