@promptbook/remote-server 0.72.0-9 â 0.73.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 +36 -252
- package/esm/index.es.js +76 -69
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/core.index.d.ts +24 -18
- package/esm/typings/src/_packages/node.index.d.ts +2 -0
- package/esm/typings/src/_packages/types.index.d.ts +18 -12
- package/esm/typings/src/_packages/utils.index.d.ts +2 -2
- package/esm/typings/src/collection/PipelineCollection.d.ts +1 -1
- package/esm/typings/src/collection/SimplePipelineCollection.d.ts +2 -2
- package/esm/typings/src/collection/collectionToJson.d.ts +1 -1
- package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +1 -1
- package/esm/typings/src/collection/constructors/createCollectionFromPromise.d.ts +1 -1
- package/esm/typings/src/commands/TEMPLATE/TemplateTypes.d.ts +1 -1
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +5 -5
- package/esm/typings/src/config.d.ts +22 -15
- package/esm/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +3 -3
- package/esm/typings/src/conversion/utils/stringifyPipelineJson.d.ts +1 -1
- package/esm/typings/src/conversion/validation/_importPipeline.d.ts +1 -1
- package/esm/typings/src/conversion/validation/validatePipeline.d.ts +2 -2
- package/esm/typings/src/executables/$provideExecutablesForNode.d.ts +12 -0
- package/esm/typings/src/executables/apps/locateLibreoffice.d.ts +11 -0
- package/esm/typings/src/executables/apps/locatePandoc.d.ts +11 -0
- package/esm/typings/src/executables/locateApp.d.ts +33 -0
- package/esm/typings/src/executables/locateApp.test.d.ts +1 -0
- package/esm/typings/src/executables/platforms/locateAppOnLinux.d.ts +12 -0
- package/esm/typings/src/executables/platforms/locateAppOnMacOs.d.ts +12 -0
- package/esm/typings/src/executables/platforms/locateAppOnWindows.d.ts +12 -0
- package/esm/typings/src/execution/EmbeddingVector.d.ts +1 -1
- package/esm/typings/src/execution/Executables.d.ts +18 -0
- package/esm/typings/src/execution/ExecutionTools.d.ts +9 -3
- package/esm/typings/src/execution/FilesystemTools.d.ts +1 -1
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +2 -2
- package/esm/typings/src/execution/PipelineExecutorResult.d.ts +2 -2
- package/esm/typings/src/execution/assertsExecutionSuccessful.d.ts +3 -2
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +29 -6
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +2 -11
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +4 -13
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +9 -14
- package/esm/typings/src/execution/createPipelineExecutor/{getSamplesForTemplate.d.ts â getExamplesForTemplate.d.ts} +1 -1
- package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +11 -3
- package/esm/typings/src/execution/utils/addUsage.d.ts +1 -1
- package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -1
- package/esm/typings/src/formats/_common/FormatDefinition.d.ts +4 -4
- package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +3 -3
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForCli.d.ts +2 -2
- package/esm/typings/src/llm-providers/_common/register/LlmToolsConfiguration.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.d.ts +7 -0
- package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +4 -1
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +2 -2
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +2 -1
- package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/mocked/$fakeTextToExpectations.d.ts +1 -1
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +4 -5
- package/esm/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +0 -1
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +2 -2
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +2 -2
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +4 -4
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Request.d.ts +15 -6
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Response.d.ts +4 -4
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Request.d.ts +6 -12
- package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Response.d.ts +3 -3
- package/esm/typings/src/llm-providers/remote/interfaces/RemoteLlmExecutionToolsOptions.d.ts +9 -14
- package/esm/typings/src/llm-providers/remote/interfaces/RemoteServerOptions.d.ts +23 -8
- package/esm/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -1
- package/esm/typings/src/personas/preparePersona.d.ts +1 -1
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +4 -23
- package/esm/typings/src/prepare/isPipelinePrepared.d.ts +2 -2
- package/esm/typings/src/prepare/prepareTemplates.d.ts +2 -2
- package/esm/typings/src/scrapers/_common/Scraper.d.ts +2 -9
- package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.d.ts +1 -1
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +2 -2
- package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +2 -2
- package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +2 -2
- package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +2 -2
- package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +1 -1
- package/esm/typings/src/scrapers/document/DocumentScraper.d.ts +2 -2
- package/esm/typings/src/scrapers/document/DocumentScraper.test.d.ts +1 -1
- package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/document/register-metadata.d.ts +1 -1
- package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.d.ts +3 -3
- package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.test.d.ts +1 -1
- package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +1 -1
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.test.d.ts +1 -1
- package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +1 -1
- package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +2 -2
- package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +1 -1
- package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +6 -3
- package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +1 -1
- package/esm/typings/src/scrapers/website/register-metadata.d.ts +1 -1
- package/esm/typings/src/scrapers/website/utils/createShowdownConverter.d.ts +7 -0
- package/esm/typings/src/scrapers/website/utils/createShowdownConverter.test.d.ts +1 -0
- package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
- package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.d.ts +1 -1
- package/esm/typings/src/types/Arrayable.d.ts +1 -1
- package/esm/typings/src/types/IntermediateFilesStrategy.d.ts +7 -0
- package/esm/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +4 -4
- package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +1 -1
- package/esm/typings/src/types/PipelineJson/ParameterJson.d.ts +2 -2
- package/esm/typings/src/types/PipelineJson/PersonaJson.d.ts +1 -1
- package/esm/typings/src/types/PipelineJson/PreparationJson.d.ts +1 -1
- package/esm/typings/src/types/PipelineJson/TemplateJsonCommon.d.ts +2 -2
- package/esm/typings/src/types/Prompt.d.ts +2 -1
- package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +1 -1
- package/esm/typings/src/types/typeAliases.d.ts +11 -8
- package/esm/typings/src/utils/$Register.d.ts +1 -1
- package/esm/typings/src/utils/FromtoItems.d.ts +1 -1
- package/esm/typings/src/utils/arrayableToArray.d.ts +1 -1
- package/esm/typings/src/utils/emojis.d.ts +1 -1
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +4 -2
- package/esm/typings/src/utils/execCommand/$execCommandNormalizeOptions.d.ts +12 -0
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +1 -0
- package/esm/typings/src/utils/execCommand/ExecCommandOptions.d.ts +45 -0
- package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
- package/esm/typings/src/utils/files/isExecutable.d.ts +11 -0
- package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +1 -1
- package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +1 -1
- package/esm/typings/src/utils/normalization/IKeywords.d.ts +2 -2
- package/esm/typings/src/utils/normalization/parseKeywords.d.ts +2 -2
- package/esm/typings/src/utils/normalization/parseKeywordsFromString.d.ts +2 -2
- package/esm/typings/src/utils/normalization/searchKeywords.d.ts +2 -2
- package/esm/typings/src/utils/organization/TODO_USE.d.ts +1 -1
- package/esm/typings/src/utils/organization/keepUnused.d.ts +1 -1
- package/esm/typings/src/utils/random/$randomSeed.d.ts +1 -1
- package/esm/typings/src/utils/sets/intersection.d.ts +1 -1
- package/esm/typings/src/utils/sets/union.d.ts +1 -1
- package/esm/typings/src/utils/unwrapResult.d.ts +4 -4
- package/package.json +6 -4
- package/umd/index.umd.js +76 -69
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +0 -29
- package/esm/typings/src/scrapers/website/utils/markdownConverter.d.ts +0 -12
- package/esm/typings/src/utils/execCommand/IExecCommandOptions.d.ts +0 -23
- package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.d.ts +0 -10
- /package/esm/typings/src/{scrapers/website/WebsiteScraper.test.d.ts â executables/apps/locateLibreoffice.test.d.ts} +0 -0
- /package/esm/typings/src/{scrapers/website/utils/markdownConverter.test.d.ts â executables/apps/locatePandoc.test.d.ts} +0 -0
|
@@ -15,17 +15,17 @@ export type FormatDefinition<TValue extends TPartialValue, TPartialValue extends
|
|
|
15
15
|
/**
|
|
16
16
|
* The name of the format used in .ptbk.md files
|
|
17
17
|
*
|
|
18
|
-
* @
|
|
18
|
+
* @example "JSON"
|
|
19
19
|
*/
|
|
20
20
|
readonly formatName: string_name & string_SCREAMING_CASE;
|
|
21
21
|
/**
|
|
22
22
|
* Aliases for the `formatName`
|
|
23
23
|
*/
|
|
24
|
-
readonly aliases?:
|
|
24
|
+
readonly aliases?: ReadonlyArray<string_name & string_SCREAMING_CASE>;
|
|
25
25
|
/**
|
|
26
26
|
* The mime type of the format (if any)
|
|
27
27
|
*
|
|
28
|
-
* @
|
|
28
|
+
* @example "application/json"
|
|
29
29
|
*/
|
|
30
30
|
readonly mimeType?: string_mime_type;
|
|
31
31
|
/**
|
|
@@ -58,7 +58,7 @@ export type FormatDefinition<TValue extends TPartialValue, TPartialValue extends
|
|
|
58
58
|
/**
|
|
59
59
|
* @@@
|
|
60
60
|
*/
|
|
61
|
-
readonly subvalueDefinitions:
|
|
61
|
+
readonly subvalueDefinitions: ReadonlyArray<FormatSubvalueDefinition<TValue, TSettings>>;
|
|
62
62
|
};
|
|
63
63
|
/**
|
|
64
64
|
* TODO: [â] Add some prepare hook to modify prompt according to the format
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Promisable } from 'type-fest';
|
|
2
2
|
import type { Parameters } from '../../types/typeAliases';
|
|
3
|
-
import type { string_parameter_name } from '../../types/typeAliases';
|
|
4
3
|
import type { string_name } from '../../types/typeAliases';
|
|
4
|
+
import type { string_parameter_name } from '../../types/typeAliases';
|
|
5
5
|
import type { string_SCREAMING_CASE } from '../../utils/normalization/normalizeTo_SCREAMING_CASE';
|
|
6
6
|
import type { empty_object } from '../../utils/organization/empty_object';
|
|
7
7
|
/**
|
|
@@ -11,13 +11,13 @@ export type FormatSubvalueDefinition<TValue extends string, TSettings extends em
|
|
|
11
11
|
/**
|
|
12
12
|
* The name of the format used in .ptbk.md files
|
|
13
13
|
*
|
|
14
|
-
* @
|
|
14
|
+
* @example "CELL"
|
|
15
15
|
*/
|
|
16
16
|
readonly subvalueName: string_name & string_SCREAMING_CASE;
|
|
17
17
|
/**
|
|
18
18
|
* Aliases for the `subvalueName`
|
|
19
19
|
*/
|
|
20
|
-
readonly aliases?:
|
|
20
|
+
readonly aliases?: ReadonlyArray<string_name & string_SCREAMING_CASE>;
|
|
21
21
|
/**
|
|
22
22
|
* Maps values
|
|
23
23
|
*
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CacheLlmToolsOptions } from '../utils/cache/CacheLlmToolsOptions';
|
|
2
2
|
import type { LlmExecutionToolsWithTotalUsage } from '../utils/count-total-usage/LlmExecutionToolsWithTotalUsage';
|
|
3
3
|
/**
|
|
4
4
|
* Returns LLM tools for CLI
|
|
5
5
|
*
|
|
6
6
|
* @private within the repository - for CLI utils
|
|
7
7
|
*/
|
|
8
|
-
export declare function $provideLlmToolsForCli(options?: Pick<
|
|
8
|
+
export declare function $provideLlmToolsForCli(options?: Pick<CacheLlmToolsOptions, 'isCacheReloaded'>): LlmExecutionToolsWithTotalUsage;
|
|
9
9
|
/**
|
|
10
10
|
* Note: [ðĄ] Code in this file should never be published outside of `@promptbook/cli`
|
|
11
11
|
* TODO: [ð·ââïļ] @@@ Manual about construction of llmTools
|
|
@@ -6,7 +6,7 @@ import type { LlmToolsOptions } from './LlmToolsOptions';
|
|
|
6
6
|
*
|
|
7
7
|
* @@@ `LlmToolsMetadata` vs `LlmToolsConfiguration` vs `LlmToolsOptions` (vs `Registered`)
|
|
8
8
|
*/
|
|
9
|
-
export type LlmToolsConfiguration =
|
|
9
|
+
export type LlmToolsConfiguration = ReadonlyArray<Registered & {
|
|
10
10
|
/**
|
|
11
11
|
* @@@
|
|
12
12
|
*/
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { string_user_id } from '../../../types/typeAliases';
|
|
1
2
|
import { MultipleLlmExecutionTools } from '../../multiple/MultipleLlmExecutionTools';
|
|
2
3
|
import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
|
|
3
4
|
/**
|
|
@@ -12,6 +13,12 @@ export type CreateLlmToolsFromConfigurationOptions = {
|
|
|
12
13
|
* @default false
|
|
13
14
|
*/
|
|
14
15
|
isVerbose?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Identifier of the end user
|
|
18
|
+
*
|
|
19
|
+
* Note: This is passed to the LLM tools providers to identify misuse
|
|
20
|
+
*/
|
|
21
|
+
readonly userId?: string_user_id | null;
|
|
15
22
|
};
|
|
16
23
|
/**
|
|
17
24
|
* @@@
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import type { PromptbookStorage } from '../../../../storage/_common/PromptbookStorage';
|
|
2
2
|
import type { CacheItem } from './CacheItem';
|
|
3
|
+
/**
|
|
4
|
+
* @@@
|
|
5
|
+
*/
|
|
3
6
|
export type CacheLlmToolsOptions = {
|
|
4
7
|
/**
|
|
5
8
|
* @@@
|
|
@@ -12,5 +15,5 @@ export type CacheLlmToolsOptions = {
|
|
|
12
15
|
*
|
|
13
16
|
* @default false
|
|
14
17
|
*/
|
|
15
|
-
|
|
18
|
+
isCacheReloaded?: boolean;
|
|
16
19
|
};
|
|
@@ -35,7 +35,7 @@ export declare class AnthropicClaudeExecutionTools implements LlmExecutionTools
|
|
|
35
35
|
/**
|
|
36
36
|
* List all available Anthropic Claude models that can be used
|
|
37
37
|
*/
|
|
38
|
-
listModels():
|
|
38
|
+
listModels(): ReadonlyArray<AvailableModel>;
|
|
39
39
|
/**
|
|
40
40
|
* Calls Anthropic Claude API to use a chat model.
|
|
41
41
|
*/
|
package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts
CHANGED
|
@@ -25,7 +25,7 @@ export type AnthropicClaudeExecutionToolsDirectOptions = CommonToolsOptions & Cl
|
|
|
25
25
|
*/
|
|
26
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
|
*/
|
|
@@ -8,7 +8,7 @@ import type { number_usd } from '../../types/typeAliases';
|
|
|
8
8
|
* @see https://docs.anthropic.com/en/docs/models-overview
|
|
9
9
|
* @public exported from `@promptbook/anthropic-claude`
|
|
10
10
|
*/
|
|
11
|
-
export declare const ANTHROPIC_CLAUDE_MODELS:
|
|
11
|
+
export declare const ANTHROPIC_CLAUDE_MODELS: ReadonlyArray<AvailableModel & {
|
|
12
12
|
pricing?: {
|
|
13
13
|
readonly prompt: number_usd;
|
|
14
14
|
readonly output: number_usd;
|
|
@@ -35,7 +35,7 @@ export declare class AzureOpenAiExecutionTools implements LlmExecutionTools {
|
|
|
35
35
|
/**
|
|
36
36
|
* List all available Azure OpenAI models that can be used
|
|
37
37
|
*/
|
|
38
|
-
listModels(): Promise<
|
|
38
|
+
listModels(): Promise<ReadonlyArray<AvailableModel>>;
|
|
39
39
|
/**
|
|
40
40
|
* Calls OpenAI API to use a chat model.
|
|
41
41
|
*/
|
|
@@ -1,6 +1,7 @@
|
|
|
1
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
|
*
|
|
@@ -32,5 +33,5 @@ export type AzureOpenAiExecutionToolsOptions = CommonToolsOptions & {
|
|
|
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
|
};
|
|
@@ -9,7 +9,7 @@ import type { string_postprocessing_function_name } from '../../types/typeAliase
|
|
|
9
9
|
*
|
|
10
10
|
* @private internal utility for MockedFackedLlmExecutionTools
|
|
11
11
|
*/
|
|
12
|
-
export declare function $fakeTextToExpectations(expectations: Expectations, postprocessingFunctionNames?:
|
|
12
|
+
export declare function $fakeTextToExpectations(expectations: Expectations, postprocessingFunctionNames?: ReadonlyArray<string_postprocessing_function_name>): Promise<string>;
|
|
13
13
|
/**
|
|
14
14
|
* TODO: [ð] Unite object for expecting amount and format - use here also a format
|
|
15
15
|
*/
|
|
@@ -24,7 +24,7 @@ export declare class MockedEchoLlmExecutionTools implements LlmExecutionTools {
|
|
|
24
24
|
/**
|
|
25
25
|
* List all available mocked-models that can be used
|
|
26
26
|
*/
|
|
27
|
-
listModels():
|
|
27
|
+
listModels(): ReadonlyArray<AvailableModel>;
|
|
28
28
|
/**
|
|
29
29
|
* Mocks chat model
|
|
30
30
|
*/
|
|
@@ -25,7 +25,7 @@ export declare class MockedFackedLlmExecutionTools implements LlmExecutionTools
|
|
|
25
25
|
/**
|
|
26
26
|
* List all available fake-models that can be used
|
|
27
27
|
*/
|
|
28
|
-
listModels():
|
|
28
|
+
listModels(): ReadonlyArray<AvailableModel>;
|
|
29
29
|
/**
|
|
30
30
|
* Fakes chat model
|
|
31
31
|
*/
|
|
@@ -15,18 +15,17 @@ import type { string_title } from '../../types/typeAliases';
|
|
|
15
15
|
* Multiple LLM Execution Tools is a proxy server that uses multiple execution tools internally and exposes the executor interface externally.
|
|
16
16
|
*
|
|
17
17
|
* Note: Internal utility of `joinLlmExecutionTools` but exposed type
|
|
18
|
-
* @public exported from `@promptbook/
|
|
19
|
-
* TODO: !!!!!! Export as runtime class not just type
|
|
18
|
+
* @public exported from `@promptbook/core`
|
|
20
19
|
*/
|
|
21
20
|
export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
|
|
22
21
|
/**
|
|
23
22
|
* Array of execution tools in order of priority
|
|
24
23
|
*/
|
|
25
|
-
readonly llmExecutionTools:
|
|
24
|
+
readonly llmExecutionTools: ReadonlyArray<LlmExecutionTools>;
|
|
26
25
|
/**
|
|
27
26
|
* Gets array of execution tools in order of priority
|
|
28
27
|
*/
|
|
29
|
-
constructor(...llmExecutionTools:
|
|
28
|
+
constructor(...llmExecutionTools: ReadonlyArray<LlmExecutionTools>);
|
|
30
29
|
get title(): string_title & string_markdown_text;
|
|
31
30
|
get description(): string_markdown;
|
|
32
31
|
/**
|
|
@@ -37,7 +36,7 @@ export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
|
|
|
37
36
|
* List all available models that can be used
|
|
38
37
|
* This lists is a combination of all available models from all execution tools
|
|
39
38
|
*/
|
|
40
|
-
listModels(): Promise<
|
|
39
|
+
listModels(): Promise<ReadonlyArray<AvailableModel>>;
|
|
41
40
|
/**
|
|
42
41
|
* Calls the best available chat model
|
|
43
42
|
*/
|
|
@@ -15,7 +15,7 @@ import { MultipleLlmExecutionTools } from './MultipleLlmExecutionTools';
|
|
|
15
15
|
*
|
|
16
16
|
* @public exported from `@promptbook/core`
|
|
17
17
|
*/
|
|
18
|
-
export declare function joinLlmExecutionTools(...llmExecutionTools:
|
|
18
|
+
export declare function joinLlmExecutionTools(...llmExecutionTools: ReadonlyArray<LlmExecutionTools>): MultipleLlmExecutionTools;
|
|
19
19
|
/**
|
|
20
20
|
* TODO: [ð·ââïļ] @@@ Manual about construction of llmTools
|
|
21
21
|
*/
|
|
@@ -29,7 +29,6 @@ export declare class OpenAiAssistantExecutionTools extends OpenAiExecutionTools
|
|
|
29
29
|
callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements' | 'format'>): Promise<ChatPromptResult>;
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
|
-
* TODO: !!!!!! DO not use colors - can be used in browser
|
|
33
32
|
* TODO: [ð§ ][ð§ââïļ] Maybe there can be some wizzard for thoose who want to use just OpenAI
|
|
34
33
|
* TODO: Maybe make custom OpenAiError
|
|
35
34
|
* TODO: [ð§ ][ð] Maybe use `isDeterministic` from options
|
|
@@ -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>;
|
|
@@ -45,7 +45,7 @@ export declare class OpenAiExecutionTools implements LlmExecutionTools {
|
|
|
45
45
|
/**
|
|
46
46
|
* List all available OpenAI models that can be used
|
|
47
47
|
*/
|
|
48
|
-
listModels():
|
|
48
|
+
listModels(): ReadonlyArray<AvailableModel>;
|
|
49
49
|
/**
|
|
50
50
|
* Calls OpenAI API to use a chat model.
|
|
51
51
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ClientOptions } from 'openai';
|
|
2
2
|
import type { CommonToolsOptions } from '../../execution/CommonToolsOptions';
|
|
3
|
-
import type {
|
|
3
|
+
import type { string_user_id } from '../../types/typeAliases';
|
|
4
4
|
/**
|
|
5
5
|
* Options for `OpenAiExecutionTools`
|
|
6
6
|
*
|
|
@@ -16,5 +16,5 @@ export type OpenAiExecutionToolsOptions = CommonToolsOptions & ClientOptions & {
|
|
|
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
|
};
|
|
@@ -9,7 +9,7 @@ import type { number_usd } from '../../types/typeAliases';
|
|
|
9
9
|
* @see https://openai.com/api/pricing/
|
|
10
10
|
* @public exported from `@promptbook/openai`
|
|
11
11
|
*/
|
|
12
|
-
export declare const OPENAI_MODELS:
|
|
12
|
+
export declare const OPENAI_MODELS: ReadonlyArray<AvailableModel & {
|
|
13
13
|
pricing?: {
|
|
14
14
|
readonly prompt: number_usd;
|
|
15
15
|
readonly output: number_usd;
|
|
@@ -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
|
/**
|
|
@@ -31,7 +31,7 @@ export declare class RemoteLlmExecutionTools implements LlmExecutionTools {
|
|
|
31
31
|
/**
|
|
32
32
|
* List all available models that can be used
|
|
33
33
|
*/
|
|
34
|
-
listModels(): Promise<
|
|
34
|
+
listModels(): Promise<ReadonlyArray<AvailableModel>>;
|
|
35
35
|
/**
|
|
36
36
|
* Creates a connection to the remote proxy server.
|
|
37
37
|
*/
|
package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Request.d.ts
CHANGED
|
@@ -1,21 +1,30 @@
|
|
|
1
|
+
import type { string_user_id } from '../../../types/typeAliases';
|
|
1
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
|
@@ -4,12 +4,12 @@ import type { AvailableModel } from '../../../execution/AvailableModel';
|
|
|
4
4
|
*
|
|
5
5
|
* This is sent from server to client when models are listed
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export type PromptbookServer_ListModels_Response = {
|
|
8
8
|
/**
|
|
9
9
|
* Available models that can be used
|
|
10
10
|
*/
|
|
11
|
-
models:
|
|
12
|
-
}
|
|
11
|
+
readonly models: ReadonlyArray<AvailableModel>;
|
|
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
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
|
*/
|
package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Response.d.ts
CHANGED
|
@@ -4,9 +4,9 @@ import type { PromptResult } from '../../../execution/PromptResult';
|
|
|
4
4
|
*
|
|
5
5
|
* This is sent from server to client when the generated text is completed
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export type PromptbookServer_Prompt_Response = {
|
|
8
8
|
/**
|
|
9
9
|
* The result of the prompt
|
|
10
10
|
*/
|
|
11
|
-
promptResult: PromptResult;
|
|
12
|
-
}
|
|
11
|
+
readonly promptResult: PromptResult;
|
|
12
|
+
};
|
|
@@ -3,12 +3,13 @@ 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
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 = CommonToolsOptions & {
|
|
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 = CommonToolsOptions & {
|
|
|
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 = CommonToolsOptions & {
|
|
|
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,8 @@
|
|
|
1
|
+
import type { Promisable } from 'type-fest';
|
|
1
2
|
import type { PipelineCollection } from '../../../collection/PipelineCollection';
|
|
2
3
|
import type { CommonToolsOptions } from '../../../execution/CommonToolsOptions';
|
|
3
4
|
import type { LlmExecutionTools } from '../../../execution/LlmExecutionTools';
|
|
5
|
+
import type { string_app_id } from '../../../types/typeAliases';
|
|
4
6
|
import type { string_uri } from '../../../types/typeAliases';
|
|
5
7
|
import type { string_user_id } from '../../../types/typeAliases';
|
|
6
8
|
/**
|
|
@@ -8,7 +10,7 @@ import type { string_user_id } from '../../../types/typeAliases';
|
|
|
8
10
|
*
|
|
9
11
|
* There are two modes of remote server:
|
|
10
12
|
*
|
|
11
|
-
* 1) **
|
|
13
|
+
* 1) **Application mode** Server will recieve `collection` and execute prompts only from this collection
|
|
12
14
|
* 2) **Anonymous mode** Server will recieve full `LlmToolsConfiguration` (with api keys) and just acts as a proxy
|
|
13
15
|
* In anonymous mode, `collection` will be ignored and any prompt will be executed
|
|
14
16
|
*
|
|
@@ -17,7 +19,7 @@ import type { string_user_id } from '../../../types/typeAliases';
|
|
|
17
19
|
* @public exported from `@promptbook/remote-client`
|
|
18
20
|
* @public exported from `@promptbook/remote-server`
|
|
19
21
|
*/
|
|
20
|
-
export type RemoteServerOptions = CommonToolsOptions & {
|
|
22
|
+
export type RemoteServerOptions<TCustomOptions> = CommonToolsOptions & {
|
|
21
23
|
/**
|
|
22
24
|
* Port on which the server will listen
|
|
23
25
|
*/
|
|
@@ -29,18 +31,18 @@ export type RemoteServerOptions = CommonToolsOptions & {
|
|
|
29
31
|
* @example '/promptbook/socket.io'
|
|
30
32
|
*/
|
|
31
33
|
readonly path: string_uri;
|
|
32
|
-
} & (AnonymousRemoteServerOptions | CollectionRemoteServerOptions | (AnonymousRemoteServerOptions & CollectionRemoteServerOptions));
|
|
34
|
+
} & (AnonymousRemoteServerOptions | CollectionRemoteServerOptions<TCustomOptions> | (AnonymousRemoteServerOptions & CollectionRemoteServerOptions<TCustomOptions>));
|
|
33
35
|
export type AnonymousRemoteServerOptions = {
|
|
34
36
|
/**
|
|
35
37
|
* Enable anonymous mode
|
|
36
38
|
*/
|
|
37
39
|
readonly isAnonymousModeAllowed: true;
|
|
38
40
|
};
|
|
39
|
-
export type CollectionRemoteServerOptions = {
|
|
41
|
+
export type CollectionRemoteServerOptions<TCustomOptions> = {
|
|
40
42
|
/**
|
|
41
|
-
* Enable
|
|
43
|
+
* Enable application mode
|
|
42
44
|
*/
|
|
43
|
-
readonly
|
|
45
|
+
readonly isApplicationModeAllowed: true;
|
|
44
46
|
/**
|
|
45
47
|
* Promptbook collection to use
|
|
46
48
|
*
|
|
@@ -50,9 +52,22 @@ export type CollectionRemoteServerOptions = {
|
|
|
50
52
|
/**
|
|
51
53
|
* Creates llm execution tools for each client
|
|
52
54
|
*/
|
|
53
|
-
createLlmExecutionTools(
|
|
55
|
+
createLlmExecutionTools(options: CollectionRemoteServerClientOptions<TCustomOptions>): Promisable<LlmExecutionTools>;
|
|
56
|
+
};
|
|
57
|
+
export type CollectionRemoteServerClientOptions<TCustomOptions> = {
|
|
58
|
+
/**
|
|
59
|
+
* @@@
|
|
60
|
+
*/
|
|
61
|
+
readonly appId: string_app_id | null;
|
|
62
|
+
/**
|
|
63
|
+
* @@@
|
|
64
|
+
*/
|
|
65
|
+
readonly userId: string_user_id | null;
|
|
66
|
+
/**
|
|
67
|
+
* @@@
|
|
68
|
+
*/
|
|
69
|
+
readonly customOptions?: TCustomOptions;
|
|
54
70
|
};
|
|
55
71
|
/**
|
|
56
72
|
* TODO: Constrain anonymous mode for specific models / providers
|
|
57
|
-
* TODO: [ð§ ][ðĪš] Remove `createLlmExecutionTools`, pass just `llmExecutionTools`
|
|
58
73
|
*/
|
|
@@ -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'`
|
|
@@ -10,7 +10,7 @@ import type { string_persona_description } from '../types/typeAliases';
|
|
|
10
10
|
*/
|
|
11
11
|
export declare function preparePersona(personaDescription: string_persona_description, tools: Pick<ExecutionTools, 'llm'>, options: PrepareAndScrapeOptions): Promise<PersonaPreparedJson['modelRequirements']>;
|
|
12
12
|
/**
|
|
13
|
-
* TODO: [ð][main]
|
|
13
|
+
* TODO: [ð][main] !! If the persona was prepared with different version or different set of models, prepare it once again
|
|
14
14
|
* TODO: [ðĒ] !! Check validity of `modelName` in pipeline
|
|
15
15
|
* TODO: [ðĒ] !! Check validity of `systemMessage` in pipeline
|
|
16
16
|
* TODO: [ðĒ] !! Check validity of `temperature` in pipeline
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { IntermediateFilesStrategy } from '../types/IntermediateFilesStrategy';
|
|
1
2
|
import type { string_dirname } from '../types/typeAliases';
|
|
2
3
|
/**
|
|
3
4
|
* Options for preparation of the pipeline
|
|
@@ -21,37 +22,17 @@ export type PrepareAndScrapeOptions = {
|
|
|
21
22
|
*/
|
|
22
23
|
readonly cacheDirname?: string_dirname;
|
|
23
24
|
/**
|
|
24
|
-
*
|
|
25
|
+
* Strategy for caching the intermediate results for knowledge source
|
|
25
26
|
*
|
|
26
|
-
*
|
|
27
|
-
* @default false // <- TODO: !!!!!! Change to `cacheStrategy`/`intermediateFiles`, Put to global config, change to `true` and explicitly set to `false` in all playgrounds
|
|
27
|
+
* @default DEFAULT_INTERMEDIATE_FILES_STRATEGY
|
|
28
28
|
*/
|
|
29
|
-
readonly
|
|
29
|
+
readonly intermediateFilesStrategy?: IntermediateFilesStrategy;
|
|
30
30
|
/**
|
|
31
31
|
* Maximum number of tasks running in parallel
|
|
32
32
|
*
|
|
33
33
|
* @default MAX_PARALLEL_COUNT
|
|
34
34
|
*/
|
|
35
35
|
readonly maxParallelCount?: number;
|
|
36
|
-
/**
|
|
37
|
-
* Path to the external programs executables
|
|
38
|
-
*
|
|
39
|
-
* TODO: !!!!!! Transform to scrapers and make them Classy
|
|
40
|
-
*/
|
|
41
|
-
readonly externalProgramsPaths?: {
|
|
42
|
-
/**
|
|
43
|
-
* Path to the `pandoc` executable
|
|
44
|
-
*
|
|
45
|
-
* @example 'C:/Users/me/AppData/Local/Pandoc/pandoc.exe'
|
|
46
|
-
*/
|
|
47
|
-
readonly pandocPath?: string;
|
|
48
|
-
/**
|
|
49
|
-
* Path to the LibreOffice executable
|
|
50
|
-
*
|
|
51
|
-
* @example 'C:/Program Files/LibreOffice/program/swriter.exe'
|
|
52
|
-
*/
|
|
53
|
-
readonly libreOfficePath?: string;
|
|
54
|
-
};
|
|
55
36
|
/**
|
|
56
37
|
* If true, the missing software is automatically installed
|
|
57
38
|
*/
|