@promptbook/openai 0.88.0 → 0.89.0-11
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 +7 -1
- package/esm/index.es.js +51 -36
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/core.index.d.ts +18 -6
- package/esm/typings/src/_packages/remote-client.index.d.ts +6 -8
- package/esm/typings/src/_packages/remote-server.index.d.ts +6 -6
- package/esm/typings/src/_packages/types.index.d.ts +18 -10
- package/esm/typings/src/cli/cli-commands/login.d.ts +15 -0
- package/esm/typings/src/cli/common/$addGlobalOptionsToCommand.d.ts +7 -0
- package/esm/typings/src/cli/common/$provideLlmToolsForCli.d.ts +15 -0
- package/esm/typings/src/config.d.ts +15 -8
- package/esm/typings/src/errors/0-index.d.ts +6 -0
- package/esm/typings/src/errors/AuthenticationError.d.ts +9 -0
- package/esm/typings/src/errors/PromptbookFetchError.d.ts +9 -0
- package/esm/typings/src/execution/PipelineExecutorResult.d.ts +2 -2
- package/esm/typings/src/execution/PromptResult.d.ts +2 -2
- package/esm/typings/src/execution/{PromptResultUsage.d.ts → Usage.d.ts} +5 -5
- package/esm/typings/src/execution/utils/addUsage.d.ts +2 -2
- package/esm/typings/src/execution/utils/computeUsageCounts.d.ts +3 -3
- package/esm/typings/src/execution/utils/usage-constants.d.ts +77 -60
- package/esm/typings/src/execution/utils/usageToHuman.d.ts +5 -5
- package/esm/typings/src/execution/utils/usageToWorktime.d.ts +5 -5
- package/esm/typings/src/llm-providers/_common/register/$provideEnvFilename.d.ts +12 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsConfigurationFromEnv.d.ts +2 -8
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts +2 -0
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizzardOrCli.d.ts +36 -1
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsFromEnv.d.ts +1 -0
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/LlmExecutionToolsWithTotalUsage.d.ts +9 -2
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/{countTotalUsage.d.ts → countUsage.d.ts} +1 -1
- package/esm/typings/src/llm-providers/_common/utils/count-total-usage/limitTotalUsage.d.ts +2 -2
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +1 -1
- package/esm/typings/src/llm-providers/anthropic-claude/computeAnthropicClaudeUsage.d.ts +2 -2
- package/esm/typings/src/llm-providers/anthropic-claude/register-configuration.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +0 -9
- package/esm/typings/src/llm-providers/openai/computeOpenAiUsage.d.ts +2 -2
- package/esm/typings/src/pipeline/PipelineJson/PreparationJson.d.ts +2 -2
- package/esm/typings/src/playground/playground.d.ts +5 -0
- package/esm/typings/src/remote-server/RemoteServer.d.ts +23 -0
- package/esm/typings/src/remote-server/socket-types/_subtypes/{PromptbookServer_Identification.d.ts → Identification.d.ts} +5 -4
- package/esm/typings/src/remote-server/socket-types/listModels/PromptbookServer_ListModels_Request.d.ts +2 -2
- package/esm/typings/src/remote-server/socket-types/prepare/PromptbookServer_PreparePipeline_Request.d.ts +2 -2
- package/esm/typings/src/remote-server/socket-types/prompt/PromptbookServer_Prompt_Request.d.ts +2 -2
- package/esm/typings/src/remote-server/startRemoteServer.d.ts +2 -2
- package/esm/typings/src/remote-server/types/RemoteClientOptions.d.ts +4 -12
- package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +88 -6
- package/esm/typings/src/scrapers/_common/utils/{scraperFetch.d.ts → promptbookFetch.d.ts} +2 -2
- package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +37 -0
- package/esm/typings/src/types/typeAliases.d.ts +8 -2
- package/esm/typings/src/utils/organization/TODO_narrow.d.ts +6 -0
- package/package.json +2 -2
- package/umd/index.umd.js +51 -36
- package/umd/index.umd.js.map +1 -1
|
@@ -54,11 +54,11 @@ import type { PromptResult } from '../execution/PromptResult';
|
|
|
54
54
|
import type { CompletionPromptResult } from '../execution/PromptResult';
|
|
55
55
|
import type { ChatPromptResult } from '../execution/PromptResult';
|
|
56
56
|
import type { EmbeddingPromptResult } from '../execution/PromptResult';
|
|
57
|
-
import type { PromptResultUsage } from '../execution/PromptResultUsage';
|
|
58
|
-
import type { PromptResultUsageCounts } from '../execution/PromptResultUsage';
|
|
59
57
|
import type { ScriptExecutionTools } from '../execution/ScriptExecutionTools';
|
|
60
58
|
import type { ScriptExecutionToolsExecuteOptions } from '../execution/ScriptExecutionTools';
|
|
61
59
|
import type { UncertainNumber } from '../execution/UncertainNumber';
|
|
60
|
+
import type { Usage } from '../execution/Usage';
|
|
61
|
+
import type { UsageCounts } from '../execution/Usage';
|
|
62
62
|
import type { UserInterfaceTools } from '../execution/UserInterfaceTools';
|
|
63
63
|
import type { UserInterfaceToolsPromptDialogOptions } from '../execution/UserInterfaceTools';
|
|
64
64
|
import type { FormatSubvalueDefinition } from '../formats/_common/FormatSubvalueDefinition';
|
|
@@ -107,14 +107,17 @@ import type { SimpleTaskJson } from '../pipeline/PipelineJson/SimpleTaskJson';
|
|
|
107
107
|
import type { TaskJson } from '../pipeline/PipelineJson/TaskJson';
|
|
108
108
|
import type { PipelineString } from '../pipeline/PipelineString';
|
|
109
109
|
import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
|
|
110
|
-
import type {
|
|
111
|
-
import type {
|
|
112
|
-
import type {
|
|
110
|
+
import type { RemoteServer } from '../remote-server/RemoteServer';
|
|
111
|
+
import type { Identification } from '../remote-server/socket-types/_subtypes/Identification';
|
|
112
|
+
import type { ApplicationModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
|
|
113
|
+
import type { AnonymousModeIdentification } from '../remote-server/socket-types/_subtypes/Identification';
|
|
113
114
|
import type { RemoteClientOptions } from '../remote-server/types/RemoteClientOptions';
|
|
114
115
|
import type { RemoteServerOptions } from '../remote-server/types/RemoteServerOptions';
|
|
115
116
|
import type { AnonymousRemoteServerOptions } from '../remote-server/types/RemoteServerOptions';
|
|
116
117
|
import type { ApplicationRemoteServerOptions } from '../remote-server/types/RemoteServerOptions';
|
|
117
118
|
import type { ApplicationRemoteServerClientOptions } from '../remote-server/types/RemoteServerOptions';
|
|
119
|
+
import type { LoginRequest } from '../remote-server/types/RemoteServerOptions';
|
|
120
|
+
import type { LoginResponse } from '../remote-server/types/RemoteServerOptions';
|
|
118
121
|
import type { Converter } from '../scrapers/_common/Converter';
|
|
119
122
|
import type { ScraperAndConverterMetadata } from '../scrapers/_common/register/ScraperAndConverterMetadata';
|
|
120
123
|
import type { ScraperConstructor } from '../scrapers/_common/register/ScraperConstructor';
|
|
@@ -174,6 +177,7 @@ import type { string_markdown_text } from '../types/typeAliases';
|
|
|
174
177
|
import type { string_markdown_codeblock_language } from '../types/typeAliases';
|
|
175
178
|
import type { string_promptbook_documentation_url } from '../types/typeAliases';
|
|
176
179
|
import type { string_domain } from '../types/typeAliases';
|
|
180
|
+
import type { string_origin } from '../types/typeAliases';
|
|
177
181
|
import type { string_tdl } from '../types/typeAliases';
|
|
178
182
|
import type { string_css } from '../types/typeAliases';
|
|
179
183
|
import type { string_svg } from '../types/typeAliases';
|
|
@@ -337,11 +341,11 @@ export type { PromptResult };
|
|
|
337
341
|
export type { CompletionPromptResult };
|
|
338
342
|
export type { ChatPromptResult };
|
|
339
343
|
export type { EmbeddingPromptResult };
|
|
340
|
-
export type { PromptResultUsage };
|
|
341
|
-
export type { PromptResultUsageCounts };
|
|
342
344
|
export type { ScriptExecutionTools };
|
|
343
345
|
export type { ScriptExecutionToolsExecuteOptions };
|
|
344
346
|
export type { UncertainNumber };
|
|
347
|
+
export type { Usage };
|
|
348
|
+
export type { UsageCounts };
|
|
345
349
|
export type { UserInterfaceTools };
|
|
346
350
|
export type { UserInterfaceToolsPromptDialogOptions };
|
|
347
351
|
export type { FormatSubvalueDefinition };
|
|
@@ -390,14 +394,17 @@ export type { SimpleTaskJson };
|
|
|
390
394
|
export type { TaskJson };
|
|
391
395
|
export type { PipelineString };
|
|
392
396
|
export type { PrepareAndScrapeOptions };
|
|
393
|
-
export type {
|
|
394
|
-
export type {
|
|
395
|
-
export type {
|
|
397
|
+
export type { RemoteServer };
|
|
398
|
+
export type { Identification };
|
|
399
|
+
export type { ApplicationModeIdentification };
|
|
400
|
+
export type { AnonymousModeIdentification };
|
|
396
401
|
export type { RemoteClientOptions };
|
|
397
402
|
export type { RemoteServerOptions };
|
|
398
403
|
export type { AnonymousRemoteServerOptions };
|
|
399
404
|
export type { ApplicationRemoteServerOptions };
|
|
400
405
|
export type { ApplicationRemoteServerClientOptions };
|
|
406
|
+
export type { LoginRequest };
|
|
407
|
+
export type { LoginResponse };
|
|
401
408
|
export type { Converter };
|
|
402
409
|
export type { ScraperAndConverterMetadata };
|
|
403
410
|
export type { ScraperConstructor };
|
|
@@ -457,6 +464,7 @@ export type { string_markdown_text };
|
|
|
457
464
|
export type { string_markdown_codeblock_language };
|
|
458
465
|
export type { string_promptbook_documentation_url };
|
|
459
466
|
export type { string_domain };
|
|
467
|
+
export type { string_origin };
|
|
460
468
|
export type { string_tdl };
|
|
461
469
|
export type { string_css };
|
|
462
470
|
export type { string_svg };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Command as Program } from 'commander';
|
|
2
|
+
/**
|
|
3
|
+
* Initializes `login` command for Promptbook CLI utilities
|
|
4
|
+
*
|
|
5
|
+
* Note: `$` is used to indicate that this function is not a pure function - it registers a command in the CLI
|
|
6
|
+
*
|
|
7
|
+
* @private internal function of `promptbookCli`
|
|
8
|
+
*/
|
|
9
|
+
export declare function $initializeLoginCommand(program: Program): void;
|
|
10
|
+
/**
|
|
11
|
+
* TODO: Pass remote server URL (and path)
|
|
12
|
+
* TODO: Implement non-interactive login
|
|
13
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
14
|
+
* Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
|
|
15
|
+
*/
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
/**
|
|
3
|
+
* Note: `$` is used to indicate that this function is not a pure function - it registers an option in the CLI
|
|
4
|
+
*
|
|
5
|
+
* @private utility of CLI
|
|
6
|
+
*/
|
|
7
|
+
export declare function $addGlobalOptionsToCommand(command: Command): void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { CacheLlmToolsOptions } from '../../llm-providers/_common/utils/cache/CacheLlmToolsOptions';
|
|
2
|
+
import type { string_url } from '../../types/typeAliases';
|
|
3
|
+
type ProvideLlmToolsForCliOptions = Pick<CacheLlmToolsOptions, 'isCacheReloaded'> & {
|
|
4
|
+
cliOptions: {
|
|
5
|
+
verbose: boolean;
|
|
6
|
+
interactive: boolean;
|
|
7
|
+
provider: 'BYOK' | 'BRING_YOUR_OWN_KEYS' | 'REMOTE_SERVER' | 'RS' | string;
|
|
8
|
+
remoteServerUrl: string_url;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* @private utility of CLI
|
|
13
|
+
*/
|
|
14
|
+
export declare function $provideLlmToolsForCli(options: ProvideLlmToolsForCliOptions): Promise<import("../../_packages/types.index").LlmExecutionToolsWithTotalUsage>;
|
|
15
|
+
export {};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { CsvSettings } from './formats/csv/CsvSettings';
|
|
2
2
|
import type { IntermediateFilesStrategy } from './types/IntermediateFilesStrategy';
|
|
3
|
+
import type { string_app_id } from './types/typeAliases';
|
|
3
4
|
import type { string_email } from './types/typeAliases';
|
|
4
5
|
import type { string_name } from './types/typeAliases';
|
|
5
6
|
import type { string_url_image } from './types/typeAliases';
|
|
@@ -208,6 +209,18 @@ export declare const DEFAULT_EXECUTION_CACHE_DIRNAME = "./.promptbook/execution-
|
|
|
208
209
|
* @public exported from `@promptbook/core`
|
|
209
210
|
*/
|
|
210
211
|
export declare const DEFAULT_SCRAPE_CACHE_DIRNAME = "./.promptbook/scrape-cache";
|
|
212
|
+
/**
|
|
213
|
+
* Id of application for the CLI when using remote server
|
|
214
|
+
*
|
|
215
|
+
* @public exported from `@promptbook/core`
|
|
216
|
+
*/
|
|
217
|
+
export declare const CLI_APP_ID: string_app_id;
|
|
218
|
+
/**
|
|
219
|
+
* Id of application for the playground
|
|
220
|
+
*
|
|
221
|
+
* @public exported from `@promptbook/core`
|
|
222
|
+
*/
|
|
223
|
+
export declare const PLAYGROUND_APP_ID: string_app_id;
|
|
211
224
|
/**
|
|
212
225
|
* The name of the builded pipeline collection made by CLI `ptbk make` and for lookup in `createCollectionFromDirectory`
|
|
213
226
|
*
|
|
@@ -228,13 +241,7 @@ export declare const MOMENT_ARG_THRESHOLDS: {
|
|
|
228
241
|
*
|
|
229
242
|
* @public exported from `@promptbook/core`
|
|
230
243
|
*/
|
|
231
|
-
export declare const
|
|
232
|
-
/**
|
|
233
|
-
* @@@
|
|
234
|
-
*
|
|
235
|
-
* @public exported from `@promptbook/core`
|
|
236
|
-
*/
|
|
237
|
-
export declare const DEFAULT_REMOTE_URL_PATH = "/promptbook/socket.io";
|
|
244
|
+
export declare const DEFAULT_REMOTE_SERVER_URL = "https://api.pavolhejny.com/promptbook";
|
|
238
245
|
/**
|
|
239
246
|
* @@@
|
|
240
247
|
*
|
|
@@ -281,5 +288,5 @@ export declare const IS_PIPELINE_LOGIC_VALIDATED: boolean;
|
|
|
281
288
|
export declare const IS_COST_PREVENTED: boolean;
|
|
282
289
|
/**
|
|
283
290
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
284
|
-
* TODO: [🧠][🧜♂️] Maybe join
|
|
291
|
+
* TODO: [🧠][🧜♂️] Maybe join remoteServerUrl and path into single value
|
|
285
292
|
*/
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CsvFormatError } from '../formats/csv/CsvFormatError';
|
|
2
2
|
import { AbstractFormatError } from './AbstractFormatError';
|
|
3
|
+
import { AuthenticationError } from './AuthenticationError';
|
|
3
4
|
import { CollectionError } from './CollectionError';
|
|
4
5
|
import { EnvironmentMismatchError } from './EnvironmentMismatchError';
|
|
5
6
|
import { ExpectError } from './ExpectError';
|
|
@@ -12,6 +13,7 @@ import { ParseError } from './ParseError';
|
|
|
12
13
|
import { PipelineExecutionError } from './PipelineExecutionError';
|
|
13
14
|
import { PipelineLogicError } from './PipelineLogicError';
|
|
14
15
|
import { PipelineUrlError } from './PipelineUrlError';
|
|
16
|
+
import { PromptbookFetchError } from './PromptbookFetchError';
|
|
15
17
|
import { UnexpectedError } from './UnexpectedError';
|
|
16
18
|
/**
|
|
17
19
|
* Index of all custom errors
|
|
@@ -49,6 +51,8 @@ export declare const COMMON_JAVASCRIPT_ERRORS: {
|
|
|
49
51
|
readonly TypeError: TypeErrorConstructor;
|
|
50
52
|
readonly URIError: URIErrorConstructor;
|
|
51
53
|
readonly AggregateError: AggregateErrorConstructor;
|
|
54
|
+
readonly AuthenticationError: typeof AuthenticationError;
|
|
55
|
+
readonly PromptbookFetchError: typeof PromptbookFetchError;
|
|
52
56
|
};
|
|
53
57
|
/**
|
|
54
58
|
* Index of all errors
|
|
@@ -64,6 +68,8 @@ export declare const ALL_ERRORS: {
|
|
|
64
68
|
readonly TypeError: TypeErrorConstructor;
|
|
65
69
|
readonly URIError: URIErrorConstructor;
|
|
66
70
|
readonly AggregateError: AggregateErrorConstructor;
|
|
71
|
+
readonly AuthenticationError: typeof AuthenticationError;
|
|
72
|
+
readonly PromptbookFetchError: typeof PromptbookFetchError;
|
|
67
73
|
readonly AbstractFormatError: typeof AbstractFormatError;
|
|
68
74
|
readonly CsvFormatError: typeof CsvFormatError;
|
|
69
75
|
readonly CollectionError: typeof CollectionError;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AuthenticationError is thrown from login function which is dependency of remote server
|
|
3
|
+
*
|
|
4
|
+
* @public exported from `@promptbook/core`
|
|
5
|
+
*/
|
|
6
|
+
export declare class AuthenticationError extends Error {
|
|
7
|
+
readonly name = "AuthenticationError";
|
|
8
|
+
constructor(message: string);
|
|
9
|
+
}
|
|
@@ -3,7 +3,7 @@ import type { PipelineJson } from '../pipeline/PipelineJson/PipelineJson';
|
|
|
3
3
|
import type { Parameters } from '../types/typeAliases';
|
|
4
4
|
import type { AbstractTaskResult } from './AbstractTaskResult';
|
|
5
5
|
import type { ExecutionReportJson } from './execution-report/ExecutionReportJson';
|
|
6
|
-
import type {
|
|
6
|
+
import type { Usage } from './Usage';
|
|
7
7
|
/**
|
|
8
8
|
* @@@
|
|
9
9
|
*
|
|
@@ -19,7 +19,7 @@ export type PipelineExecutorResult = AbstractTaskResult & {
|
|
|
19
19
|
/**
|
|
20
20
|
* Added usage of whole execution, detailed usage is available in `executionReport`
|
|
21
21
|
*/
|
|
22
|
-
readonly usage: ReadonlyDeep<
|
|
22
|
+
readonly usage: ReadonlyDeep<Usage>;
|
|
23
23
|
/**
|
|
24
24
|
* The report of the execution with all details
|
|
25
25
|
*/
|
|
@@ -3,7 +3,7 @@ import type { string_model_name } from '../types/typeAliases';
|
|
|
3
3
|
import type { string_prompt } from '../types/typeAliases';
|
|
4
4
|
import type { TODO_object } from '../utils/organization/TODO_object';
|
|
5
5
|
import type { EmbeddingVector } from './EmbeddingVector';
|
|
6
|
-
import type {
|
|
6
|
+
import type { Usage } from './Usage';
|
|
7
7
|
/**
|
|
8
8
|
* Prompt result is the simplest concept of execution.
|
|
9
9
|
* It is the result of executing one prompt _(NOT a template)_.
|
|
@@ -71,7 +71,7 @@ export type CommonPromptResult = {
|
|
|
71
71
|
/**
|
|
72
72
|
* Usage of the prompt execution
|
|
73
73
|
*/
|
|
74
|
-
readonly usage:
|
|
74
|
+
readonly usage: Usage;
|
|
75
75
|
/**
|
|
76
76
|
* Exact text of the prompt (with all replacements)
|
|
77
77
|
*
|
|
@@ -2,11 +2,11 @@ import type { KebabCase } from 'type-fest';
|
|
|
2
2
|
import type { ExpectationUnit } from '../pipeline/PipelineJson/Expectations';
|
|
3
3
|
import type { UncertainNumber } from './UncertainNumber';
|
|
4
4
|
/**
|
|
5
|
-
* Usage statistics for one or
|
|
5
|
+
* Usage statistics for one or more prompt results
|
|
6
6
|
*
|
|
7
7
|
* Note: [🚉] This is fully serializable as JSON
|
|
8
8
|
*/
|
|
9
|
-
export type
|
|
9
|
+
export type Usage = {
|
|
10
10
|
/**
|
|
11
11
|
* Cost of the execution in USD
|
|
12
12
|
*
|
|
@@ -16,18 +16,18 @@ export type PromptResultUsage = {
|
|
|
16
16
|
/**
|
|
17
17
|
* Number of whatever used in the input aka. `prompt_tokens`
|
|
18
18
|
*/
|
|
19
|
-
readonly input:
|
|
19
|
+
readonly input: UsageCounts;
|
|
20
20
|
/**
|
|
21
21
|
* Number of tokens used in the output aka. `completion_tokens`
|
|
22
22
|
*/
|
|
23
|
-
readonly output:
|
|
23
|
+
readonly output: UsageCounts;
|
|
24
24
|
};
|
|
25
25
|
/**
|
|
26
26
|
* Record of all possible measurable units
|
|
27
27
|
*
|
|
28
28
|
* Note: [🚉] This is fully serializable as JSON
|
|
29
29
|
*/
|
|
30
|
-
export type
|
|
30
|
+
export type UsageCounts = Record<`${KebabCase<'TOKENS' | ExpectationUnit>}Count`, UncertainNumber>;
|
|
31
31
|
/**
|
|
32
32
|
* TODO: [🍙] Make some standard order of json properties
|
|
33
33
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Usage } from '../Usage';
|
|
2
2
|
/**
|
|
3
3
|
* Function `addUsage` will add multiple usages into one
|
|
4
4
|
*
|
|
@@ -6,4 +6,4 @@ import type { PromptResultUsage } from '../PromptResultUsage';
|
|
|
6
6
|
*
|
|
7
7
|
* @public exported from `@promptbook/core`
|
|
8
8
|
*/
|
|
9
|
-
export declare function addUsage(...usageItems: ReadonlyArray<
|
|
9
|
+
export declare function addUsage(...usageItems: ReadonlyArray<Usage>): Usage;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { UsageCounts } from '../Usage';
|
|
2
2
|
/**
|
|
3
3
|
* Helper of usage compute
|
|
4
4
|
*
|
|
5
5
|
* @param content the content of prompt or response
|
|
6
|
-
* @returns part of
|
|
6
|
+
* @returns part of UsageCounts
|
|
7
7
|
*
|
|
8
8
|
* @private internal utility of LlmExecutionTools
|
|
9
9
|
*/
|
|
10
|
-
export declare function computeUsageCounts(content: string): Omit<
|
|
10
|
+
export declare function computeUsageCounts(content: string): Omit<UsageCounts, 'tokensCount'>;
|
|
@@ -1,57 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents the uncertain value
|
|
3
|
+
*
|
|
4
|
+
* @public exported from `@promptbook/core`
|
|
5
|
+
*/
|
|
6
|
+
export declare const ZERO_VALUE: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
7
|
+
readonly value: 0;
|
|
8
|
+
}>;
|
|
9
|
+
/**
|
|
10
|
+
* Represents the uncertain value
|
|
11
|
+
*
|
|
12
|
+
* @public exported from `@promptbook/core`
|
|
13
|
+
*/
|
|
14
|
+
export declare const UNCERTAIN_ZERO_VALUE: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
15
|
+
readonly value: 0;
|
|
16
|
+
readonly isUncertain: true;
|
|
17
|
+
}>;
|
|
1
18
|
/**
|
|
2
19
|
* Represents the usage with no resources consumed
|
|
3
20
|
*
|
|
4
21
|
* @public exported from `@promptbook/core`
|
|
5
22
|
*/
|
|
6
23
|
export declare const ZERO_USAGE: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
7
|
-
readonly price: {
|
|
24
|
+
readonly price: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
8
25
|
readonly value: 0;
|
|
9
|
-
}
|
|
26
|
+
}>;
|
|
10
27
|
readonly input: {
|
|
11
|
-
readonly tokensCount: {
|
|
28
|
+
readonly tokensCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
12
29
|
readonly value: 0;
|
|
13
|
-
}
|
|
14
|
-
readonly charactersCount: {
|
|
30
|
+
}>;
|
|
31
|
+
readonly charactersCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
15
32
|
readonly value: 0;
|
|
16
|
-
}
|
|
17
|
-
readonly wordsCount: {
|
|
33
|
+
}>;
|
|
34
|
+
readonly wordsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
18
35
|
readonly value: 0;
|
|
19
|
-
}
|
|
20
|
-
readonly sentencesCount: {
|
|
36
|
+
}>;
|
|
37
|
+
readonly sentencesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
21
38
|
readonly value: 0;
|
|
22
|
-
}
|
|
23
|
-
readonly linesCount: {
|
|
39
|
+
}>;
|
|
40
|
+
readonly linesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
24
41
|
readonly value: 0;
|
|
25
|
-
}
|
|
26
|
-
readonly paragraphsCount: {
|
|
42
|
+
}>;
|
|
43
|
+
readonly paragraphsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
27
44
|
readonly value: 0;
|
|
28
|
-
}
|
|
29
|
-
readonly pagesCount: {
|
|
45
|
+
}>;
|
|
46
|
+
readonly pagesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
30
47
|
readonly value: 0;
|
|
31
|
-
}
|
|
48
|
+
}>;
|
|
32
49
|
};
|
|
33
50
|
readonly output: {
|
|
34
|
-
readonly tokensCount: {
|
|
51
|
+
readonly tokensCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
35
52
|
readonly value: 0;
|
|
36
|
-
}
|
|
37
|
-
readonly charactersCount: {
|
|
53
|
+
}>;
|
|
54
|
+
readonly charactersCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
38
55
|
readonly value: 0;
|
|
39
|
-
}
|
|
40
|
-
readonly wordsCount: {
|
|
56
|
+
}>;
|
|
57
|
+
readonly wordsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
41
58
|
readonly value: 0;
|
|
42
|
-
}
|
|
43
|
-
readonly sentencesCount: {
|
|
59
|
+
}>;
|
|
60
|
+
readonly sentencesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
44
61
|
readonly value: 0;
|
|
45
|
-
}
|
|
46
|
-
readonly linesCount: {
|
|
62
|
+
}>;
|
|
63
|
+
readonly linesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
47
64
|
readonly value: 0;
|
|
48
|
-
}
|
|
49
|
-
readonly paragraphsCount: {
|
|
65
|
+
}>;
|
|
66
|
+
readonly paragraphsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
50
67
|
readonly value: 0;
|
|
51
|
-
}
|
|
52
|
-
readonly pagesCount: {
|
|
68
|
+
}>;
|
|
69
|
+
readonly pagesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
53
70
|
readonly value: 0;
|
|
54
|
-
}
|
|
71
|
+
}>;
|
|
55
72
|
};
|
|
56
73
|
}>;
|
|
57
74
|
/**
|
|
@@ -60,69 +77,69 @@ export declare const ZERO_USAGE: import("type-fest/source/readonly-deep").Readon
|
|
|
60
77
|
* @public exported from `@promptbook/core`
|
|
61
78
|
*/
|
|
62
79
|
export declare const UNCERTAIN_USAGE: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
63
|
-
readonly price: {
|
|
80
|
+
readonly price: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
64
81
|
readonly value: 0;
|
|
65
82
|
readonly isUncertain: true;
|
|
66
|
-
}
|
|
83
|
+
}>;
|
|
67
84
|
readonly input: {
|
|
68
|
-
readonly tokensCount: {
|
|
85
|
+
readonly tokensCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
69
86
|
readonly value: 0;
|
|
70
87
|
readonly isUncertain: true;
|
|
71
|
-
}
|
|
72
|
-
readonly charactersCount: {
|
|
88
|
+
}>;
|
|
89
|
+
readonly charactersCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
73
90
|
readonly value: 0;
|
|
74
91
|
readonly isUncertain: true;
|
|
75
|
-
}
|
|
76
|
-
readonly wordsCount: {
|
|
92
|
+
}>;
|
|
93
|
+
readonly wordsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
77
94
|
readonly value: 0;
|
|
78
95
|
readonly isUncertain: true;
|
|
79
|
-
}
|
|
80
|
-
readonly sentencesCount: {
|
|
96
|
+
}>;
|
|
97
|
+
readonly sentencesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
81
98
|
readonly value: 0;
|
|
82
99
|
readonly isUncertain: true;
|
|
83
|
-
}
|
|
84
|
-
readonly linesCount: {
|
|
100
|
+
}>;
|
|
101
|
+
readonly linesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
85
102
|
readonly value: 0;
|
|
86
103
|
readonly isUncertain: true;
|
|
87
|
-
}
|
|
88
|
-
readonly paragraphsCount: {
|
|
104
|
+
}>;
|
|
105
|
+
readonly paragraphsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
89
106
|
readonly value: 0;
|
|
90
107
|
readonly isUncertain: true;
|
|
91
|
-
}
|
|
92
|
-
readonly pagesCount: {
|
|
108
|
+
}>;
|
|
109
|
+
readonly pagesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
93
110
|
readonly value: 0;
|
|
94
111
|
readonly isUncertain: true;
|
|
95
|
-
}
|
|
112
|
+
}>;
|
|
96
113
|
};
|
|
97
114
|
readonly output: {
|
|
98
|
-
readonly tokensCount: {
|
|
115
|
+
readonly tokensCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
99
116
|
readonly value: 0;
|
|
100
117
|
readonly isUncertain: true;
|
|
101
|
-
}
|
|
102
|
-
readonly charactersCount: {
|
|
118
|
+
}>;
|
|
119
|
+
readonly charactersCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
103
120
|
readonly value: 0;
|
|
104
121
|
readonly isUncertain: true;
|
|
105
|
-
}
|
|
106
|
-
readonly wordsCount: {
|
|
122
|
+
}>;
|
|
123
|
+
readonly wordsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
107
124
|
readonly value: 0;
|
|
108
125
|
readonly isUncertain: true;
|
|
109
|
-
}
|
|
110
|
-
readonly sentencesCount: {
|
|
126
|
+
}>;
|
|
127
|
+
readonly sentencesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
111
128
|
readonly value: 0;
|
|
112
129
|
readonly isUncertain: true;
|
|
113
|
-
}
|
|
114
|
-
readonly linesCount: {
|
|
130
|
+
}>;
|
|
131
|
+
readonly linesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
115
132
|
readonly value: 0;
|
|
116
133
|
readonly isUncertain: true;
|
|
117
|
-
}
|
|
118
|
-
readonly paragraphsCount: {
|
|
134
|
+
}>;
|
|
135
|
+
readonly paragraphsCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
119
136
|
readonly value: 0;
|
|
120
137
|
readonly isUncertain: true;
|
|
121
|
-
}
|
|
122
|
-
readonly pagesCount: {
|
|
138
|
+
}>;
|
|
139
|
+
readonly pagesCount: import("type-fest/source/readonly-deep").ReadonlyObjectDeep<{
|
|
123
140
|
readonly value: 0;
|
|
124
141
|
readonly isUncertain: true;
|
|
125
|
-
}
|
|
142
|
+
}>;
|
|
126
143
|
};
|
|
127
144
|
}>;
|
|
128
145
|
/**
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import type { string_markdown } from '../../types/typeAliases';
|
|
2
|
-
import type { PromptResultUsage } from '../PromptResultUsage';
|
|
3
2
|
import type { UncertainNumber } from '../UncertainNumber';
|
|
3
|
+
import type { Usage } from '../Usage';
|
|
4
4
|
/**
|
|
5
5
|
* Minimal usage information required to calculate worktime
|
|
6
6
|
*/
|
|
7
|
-
type
|
|
7
|
+
type PartialUsage = Partial<Usage> & {
|
|
8
8
|
price: UncertainNumber;
|
|
9
|
-
input: Pick<
|
|
10
|
-
output: Pick<
|
|
9
|
+
input: Pick<Usage['input'], 'wordsCount'>;
|
|
10
|
+
output: Pick<Usage['output'], 'wordsCount' | 'charactersCount'>;
|
|
11
11
|
};
|
|
12
12
|
/**
|
|
13
13
|
* Function `usageToHuman` will take usage and convert it to human readable report
|
|
14
14
|
*
|
|
15
15
|
* @public exported from `@promptbook/core`
|
|
16
16
|
*/
|
|
17
|
-
export declare function usageToHuman(usage:
|
|
17
|
+
export declare function usageToHuman(usage: PartialUsage): string_markdown;
|
|
18
18
|
export {};
|
|
19
19
|
/**
|
|
20
20
|
* TODO: [🍓][🧞♂️] Use "$1" not "1 USD"
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { PromptResultUsage } from '../PromptResultUsage';
|
|
2
1
|
import type { UncertainNumber } from '../UncertainNumber';
|
|
2
|
+
import type { Usage } from '../Usage';
|
|
3
3
|
/**
|
|
4
4
|
* Minimal usage information required to calculate worktime
|
|
5
5
|
*/
|
|
6
|
-
type
|
|
7
|
-
input: Pick<
|
|
8
|
-
output: Pick<
|
|
6
|
+
type PartialUsage = Pick<Usage, 'input' | 'output'> & {
|
|
7
|
+
input: Pick<Usage['input'], 'wordsCount'>;
|
|
8
|
+
output: Pick<Usage['output'], 'wordsCount'>;
|
|
9
9
|
};
|
|
10
10
|
/**
|
|
11
11
|
* Function usageToWorktime will take usage and estimate saved worktime in hours of reading / writing
|
|
@@ -16,5 +16,5 @@ type PartialPromptResultUsage = Pick<PromptResultUsage, 'input' | 'output'> & {
|
|
|
16
16
|
*
|
|
17
17
|
* @public exported from `@promptbook/core`
|
|
18
18
|
*/
|
|
19
|
-
export declare function usageToWorktime(usage:
|
|
19
|
+
export declare function usageToWorktime(usage: PartialUsage): UncertainNumber;
|
|
20
20
|
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { string_filename } from '../../../types/typeAliases';
|
|
2
|
+
/**
|
|
3
|
+
* Provides the path to the `.env` file
|
|
4
|
+
*
|
|
5
|
+
* Note: `$` is used to indicate that this function is not a pure function - it uses filesystem to access `.env` file
|
|
6
|
+
*
|
|
7
|
+
* @private within the repository - for CLI utils
|
|
8
|
+
*/
|
|
9
|
+
export declare function $provideEnvFilename(): Promise<string_filename | null>;
|
|
10
|
+
/**
|
|
11
|
+
* Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
|
|
12
|
+
*/
|
package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsConfigurationFromEnv.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
|
|
|
3
3
|
* @@@
|
|
4
4
|
*
|
|
5
5
|
* @@@ .env
|
|
6
|
+
* Note: `$` is used to indicate that this function is not a pure function - it uses filesystem to access `.env` file
|
|
6
7
|
*
|
|
7
8
|
* It looks for environment variables:
|
|
8
9
|
* - `process.env.OPENAI_API_KEY`
|
|
@@ -14,12 +15,5 @@ import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
|
|
|
14
15
|
*/
|
|
15
16
|
export declare function $provideLlmToolsConfigurationFromEnv(): Promise<LlmToolsConfiguration>;
|
|
16
17
|
/**
|
|
17
|
-
* TODO: [🧠][🪁] Maybe do allow to do auto-install if package not registered and not found
|
|
18
|
-
* TODO: Add Azure OpenAI
|
|
19
|
-
* TODO: [🧠][🍛]
|
|
20
|
-
* TODO: [🧠] Is there some meaningfull way how to test this util
|
|
21
18
|
* Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
|
|
22
|
-
|
|
23
|
-
* TODO: This should be maybe not under `_common` but under `utils`
|
|
24
|
-
* TODO: [🧠][⚛] Maybe pass env as argument
|
|
25
|
-
* TODO: [®] DRY Register logic */
|
|
19
|
+
*/
|
|
@@ -12,6 +12,8 @@ type GetLlmToolsForTestingAndScriptsAndPlaygroundOptions = CreateLlmToolsFromCon
|
|
|
12
12
|
/**
|
|
13
13
|
* Returns LLM tools for testing purposes
|
|
14
14
|
*
|
|
15
|
+
* Note: `$` is used to indicate that this function is not a pure function - it uses filesystem to access `.env` file
|
|
16
|
+
*
|
|
15
17
|
* @private within the repository - JUST FOR TESTS, SCRIPTS AND PLAYGROUND
|
|
16
18
|
*/
|
|
17
19
|
export declare function $provideLlmToolsForTestingAndScriptsAndPlayground(options?: GetLlmToolsForTestingAndScriptsAndPlaygroundOptions): Promise<LlmExecutionToolsWithTotalUsage>;
|