UNPKG

@promptbook/azure-openai

Version:

Promptbook: Run AI apps in plain human language across multiple models and platforms

52 lines (51 loc) 2.13 kB
import type { PartialDeep, Promisable, ReadonlyDeep, WritableDeep } from 'type-fest'; import type { PipelineJson } from '../../pipeline/PipelineJson/PipelineJson'; import type { TaskJson } from '../../pipeline/PipelineJson/TaskJson'; import type { Parameters } from '../../types/typeAliases'; import type { ExecutionReportJson } from '../execution-report/ExecutionReportJson'; import type { PipelineExecutorResult } from '../PipelineExecutorResult'; import type { CreatePipelineExecutorOptions } from './00-CreatePipelineExecutorOptions'; /** * Options for executing a single pipeline task, including task details, pipeline context, parameters, and callbacks. * * @private internal type of `executeTask` */ type executeSingleTaskOptions = Required<CreatePipelineExecutorOptions> & { /** * The task to be executed. */ readonly currentTask: ReadonlyDeep<TaskJson>; /** * The pipeline in which the task resides, fully prepared and validated. */ readonly preparedPipeline: ReadonlyDeep<PipelineJson>; /** * The parameters to pass to the task execution. */ readonly parametersToPass: Readonly<Parameters>; /** * Callback invoked with partial results as the execution progresses. */ onProgress(newOngoingResult: PartialDeep<PipelineExecutorResult>): Promisable<void>; /** * Mutable execution report object for tracking execution details. */ readonly $executionReport: WritableDeep<ExecutionReportJson>; /** * String identifier for the pipeline, used in error messages and reporting. */ readonly pipelineIdentification: string; }; /** * Executes a single task within a pipeline, handling parameter validation, error checking, and progress reporting. * * @param options - Options for execution, including the task, pipeline, parameters, and callbacks. * @returns The output parameters produced by the task. * * @private internal utility of `createPipelineExecutor` */ export declare function executeTask(options: executeSingleTaskOptions): Promise<Readonly<Parameters>>; export {}; /** * TODO: [🤹‍♂️] */