@promptbook/azure-openai
Version:
Promptbook: Run AI apps in plain human language across multiple models and platforms
31 lines (30 loc) • 1.71 kB
TypeScript
import type { PipelineJson } from '../pipeline/PipelineJson/PipelineJson';
import type { PipelineString } from '../pipeline/PipelineString';
/**
* Compile pipeline from string (markdown) format to JSON format synchronously
*
* Note: There are 3 similar functions:
* - `compilePipeline` **(preferred)** - which properly compiles the promptbook and uses embedding for external knowledge
* - `parsePipeline` - use only if you need to compile promptbook synchronously and it contains NO external knowledge
* - `preparePipeline` - just one step in the compilation process
*
* Note: This function does not validate logic of the pipeline only the parsing
* Note: This function acts as compilation process
*
* @param pipelineString {Promptbook} in string markdown format (.book.md)
* @returns {Promptbook} compiled in JSON format (.bookc)
* @throws {ParseError} if the promptbook string is not valid
* @public exported from `@promptbook/core`
*/
export declare function parsePipeline(pipelineString: PipelineString): PipelineJson;
/**
* TODO: [🧠] Maybe more things here can be refactored as high-level abstractions
* TODO: [main] !!4 Warn if used only sync version
* TODO: [🚞] Report here line/column of error
* TODO: Use spaceTrim more effectively
* TODO: [🧠] Parameter flags - isInput, isOutput, isInternal
* TODO: [🥞] Not optimal parsing because `splitMarkdownIntoSections` is executed twice with same string, once through `flattenMarkdown` and second directly here
* TODO: [♈] Probably move expectations from tasks to parameters
* TODO: [🛠] Actions, instruments (and maybe knowledge) => Functions and tools
* TODO: [🍙] Make some standard order of json properties
*/