@promptbook/core 0.92.0-32 β†’ 0.92.0-33

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/esm/index.es.js CHANGED
@@ -27,7 +27,7 @@ const BOOK_LANGUAGE_VERSION = '1.0.0';
27
27
  * @generated
28
28
  * @see https://github.com/webgptorg/promptbook
29
29
  */
30
- const PROMPTBOOK_ENGINE_VERSION = '0.92.0-32';
30
+ const PROMPTBOOK_ENGINE_VERSION = '0.92.0-33';
31
31
  /**
32
32
  * TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
33
33
  * Note: [πŸ’ž] Ignore a discrepancy between file name and entity name
@@ -2368,6 +2368,7 @@ function assertsTaskSuccessful(executionResult) {
2368
2368
  */
2369
2369
  function createTask(options) {
2370
2370
  const { taskType, taskProcessCallback } = options;
2371
+ let { title } = options;
2371
2372
  // TODO: [πŸ™] DRY
2372
2373
  const taskId = `${taskType.toLowerCase().substring(0, 4)}-${$randomToken(8 /* <- TODO: To global config + Use Base58 to avoid simmilar char conflicts */)}`;
2373
2374
  let status = 'RUNNING';
@@ -2379,6 +2380,10 @@ function createTask(options) {
2379
2380
  const partialResultSubject = new Subject();
2380
2381
  // <- Note: Not using `BehaviorSubject` because on error we can't access the last value
2381
2382
  const finalResultPromise = /* not await */ taskProcessCallback((newOngoingResult) => {
2383
+ if (newOngoingResult.title) {
2384
+ title = newOngoingResult.title;
2385
+ }
2386
+ updatedAt = new Date();
2382
2387
  Object.assign(currentValue, newOngoingResult);
2383
2388
  // <- TODO: assign deep
2384
2389
  partialResultSubject.next(newOngoingResult);
@@ -2424,17 +2429,24 @@ function createTask(options) {
2424
2429
  return {
2425
2430
  taskType,
2426
2431
  taskId,
2432
+ get promptbookVersion() {
2433
+ return PROMPTBOOK_ENGINE_VERSION;
2434
+ },
2435
+ get title() {
2436
+ return title;
2437
+ // <- Note: [1] Theese must be getters to allow changing the value in the future
2438
+ },
2427
2439
  get status() {
2428
2440
  return status;
2429
- // <- Note: [1] Theese must be getters to allow changing the value in the future
2441
+ // <- Note: [1] --||--
2430
2442
  },
2431
2443
  get createdAt() {
2432
2444
  return createdAt;
2433
- // <- Note: [1]
2445
+ // <- Note: [1] --||--
2434
2446
  },
2435
2447
  get updatedAt() {
2436
2448
  return updatedAt;
2437
- // <- Note: [1]
2449
+ // <- Note: [1] --||--
2438
2450
  },
2439
2451
  asPromise,
2440
2452
  asObservable() {
@@ -2442,15 +2454,15 @@ function createTask(options) {
2442
2454
  },
2443
2455
  get errors() {
2444
2456
  return errors;
2445
- // <- Note: [1]
2457
+ // <- Note: [1] --||--
2446
2458
  },
2447
2459
  get warnings() {
2448
2460
  return warnings;
2449
- // <- Note: [1]
2461
+ // <- Note: [1] --||--
2450
2462
  },
2451
2463
  get currentValue() {
2452
2464
  return currentValue;
2453
- // <- Note: [1]
2465
+ // <- Note: [1] --||--
2454
2466
  },
2455
2467
  };
2456
2468
  }
@@ -4584,7 +4596,7 @@ async function getKnowledgeForTask(options) {
4584
4596
  });
4585
4597
  const knowledgePiecesSorted = knowledgePiecesWithRelevance.sort((a, b) => a.relevance - b.relevance);
4586
4598
  const knowledgePiecesLimited = knowledgePiecesSorted.slice(0, 5);
4587
- console.log('!!! Embedding', {
4599
+ console.log('!!! `getKnowledgeForTask` Embedding', {
4588
4600
  task,
4589
4601
  taskEmbeddingPrompt,
4590
4602
  taskEmbeddingResult,
@@ -4620,6 +4632,7 @@ async function getKnowledgeForTask(options) {
4620
4632
  */
4621
4633
  async function getReservedParametersForTask(options) {
4622
4634
  const { tools, preparedPipeline, task, parameters, pipelineIdentification } = options;
4635
+ console.log('!!! getReservedParametersForTask', options);
4623
4636
  const context = await getContextForTask(); // <- [🏍]
4624
4637
  const knowledge = await getKnowledgeForTask({ tools, preparedPipeline, task, parameters });
4625
4638
  const examples = await getExamplesForTask();
@@ -4656,6 +4669,7 @@ async function getReservedParametersForTask(options) {
4656
4669
  */
4657
4670
  async function executeTask(options) {
4658
4671
  const { currentTask, preparedPipeline, parametersToPass, tools, onProgress, $executionReport, pipelineIdentification, maxExecutionAttempts, maxParallelCount, csvSettings, isVerbose, rootDirname, cacheDirname, intermediateFilesStrategy, isAutoInstalled, isNotPreparedWarningSupressed, } = options;
4672
+ console.log('!!! executeTask', options);
4659
4673
  const priority = preparedPipeline.tasks.length - preparedPipeline.tasks.indexOf(currentTask);
4660
4674
  // Note: Check consistency of used and dependent parameters which was also done in `validatePipeline`, but it’s good to doublecheck
4661
4675
  const usedParameterNames = extractParameterNamesFromTask(currentTask);
@@ -4679,14 +4693,15 @@ async function executeTask(options) {
4679
4693
 
4680
4694
  `));
4681
4695
  }
4696
+ const reservedParameters = await getReservedParametersForTask({
4697
+ tools,
4698
+ preparedPipeline,
4699
+ task: currentTask,
4700
+ pipelineIdentification,
4701
+ parameters: parametersToPass,
4702
+ });
4682
4703
  const definedParameters = Object.freeze({
4683
- ...(await getReservedParametersForTask({
4684
- tools,
4685
- preparedPipeline,
4686
- task: currentTask,
4687
- pipelineIdentification,
4688
- parameters: parametersToPass,
4689
- })),
4704
+ ...reservedParameters,
4690
4705
  ...parametersToPass,
4691
4706
  });
4692
4707
  const definedParameterNames = new Set(Object.keys(definedParameters));
@@ -5133,6 +5148,7 @@ function createPipelineExecutor(options) {
5133
5148
  };
5134
5149
  const pipelineExecutor = (inputParameters) => createTask({
5135
5150
  taskType: 'EXECUTION',
5151
+ title: pipeline.title,
5136
5152
  taskProcessCallback(updateOngoingResult) {
5137
5153
  return pipelineExecutorWithCallback(inputParameters, async (newOngoingResult) => {
5138
5154
  updateOngoingResult(newOngoingResult);
@@ -10864,6 +10880,7 @@ const _AnthropicClaudeMetadataRegistration = $llmToolsMetadataRegister.register(
10864
10880
  apiKey: 'sk-ant-api03-',
10865
10881
  isProxied: true,
10866
10882
  remoteServerUrl: DEFAULT_REMOTE_SERVER_URL,
10883
+ maxRequestsPerMinute: DEFAULT_MAX_REQUESTS_PER_MINUTE,
10867
10884
  },
10868
10885
  };
10869
10886
  },
@@ -10899,7 +10916,7 @@ const _AzureOpenAiMetadataRegistration = $llmToolsMetadataRegister.register({
10899
10916
  title: 'Azure Open AI',
10900
10917
  packageName: '@promptbook/azure-openai',
10901
10918
  className: 'AzureOpenAiExecutionTools',
10902
- envVariables: ['AZUREOPENAI_RESOURCE_NAME', 'AZUREOPENAI_DEPLOYMENT_NAME', 'AZUREOPENAI_API_KEY'],
10919
+ envVariables: ['AZUREOPENAI_API_KEY', 'AZUREOPENAI_RESOURCE_NAME', 'AZUREOPENAI_DEPLOYMENT_NAME'],
10903
10920
  trustLevel: 'CLOSED_BUSINESS',
10904
10921
  order: MODEL_ORDERS.NORMAL,
10905
10922
  getBoilerplateConfiguration() {
@@ -10909,6 +10926,9 @@ const _AzureOpenAiMetadataRegistration = $llmToolsMetadataRegister.register({
10909
10926
  className: 'AzureOpenAiExecutionTools',
10910
10927
  options: {
10911
10928
  apiKey: 'sk-',
10929
+ resourceName: 'my-resource-name',
10930
+ deploymentName: 'my-deployment-name',
10931
+ maxRequestsPerMinute: DEFAULT_MAX_REQUESTS_PER_MINUTE,
10912
10932
  },
10913
10933
  };
10914
10934
  },
@@ -10922,15 +10942,15 @@ const _AzureOpenAiMetadataRegistration = $llmToolsMetadataRegister.register({
10922
10942
  packageName: '@promptbook/azure-openai',
10923
10943
  className: 'AzureOpenAiExecutionTools',
10924
10944
  options: {
10945
+ apiKey: env.AZUREOPENAI_API_KEY,
10925
10946
  resourceName: env.AZUREOPENAI_RESOURCE_NAME,
10926
10947
  deploymentName: env.AZUREOPENAI_DEPLOYMENT_NAME,
10927
- apiKey: env.AZUREOPENAI_API_KEY,
10928
10948
  },
10929
10949
  };
10930
10950
  }
10931
- else if (typeof env.AZUREOPENAI_RESOURCE_NAME === 'string' ||
10932
- typeof env.AZUREOPENAI_DEPLOYMENT_NAME === 'string' ||
10933
- typeof env.AZUREOPENAI_API_KEY === 'string') {
10951
+ else if (typeof env.AZUREOPENAI_API_KEY === 'string' ||
10952
+ typeof env.AZUREOPENAI_RESOURCE_NAME === 'string' ||
10953
+ typeof env.AZUREOPENAI_DEPLOYMENT_NAME === 'string') {
10934
10954
  return null;
10935
10955
  /*
10936
10956
  Note: [πŸ—¨] Partial configuration is handled more gracefully elsewhere
@@ -11143,6 +11163,7 @@ const _OpenAiAssistantMetadataRegistration = $llmToolsMetadataRegister.register(
11143
11163
  options: {
11144
11164
  apiKey: 'sk-',
11145
11165
  assistantId: 'asst_',
11166
+ maxRequestsPerMinute: DEFAULT_MAX_REQUESTS_PER_MINUTE,
11146
11167
  },
11147
11168
  };
11148
11169
  },