UNPKG

@langchain/core

Version:
1 lines 4.83 kB
{"version":3,"file":"pipeline.d.cts","names":["InputValues","PartialValues","SerializedBasePromptTemplate","BasePromptTemplate","BasePromptTemplateInput","PipelinePromptParams","PromptTemplateType","PipelinePromptTemplateInput","Omit","PipelinePromptTemplate","Promise"],"sources":["../../src/prompts/pipeline.d.ts"],"sourcesContent":["import type { InputValues, PartialValues } from \"../utils/types/index.js\";\nimport type { SerializedBasePromptTemplate } from \"./serde.js\";\nimport { BasePromptTemplate, type BasePromptTemplateInput } from \"./base.js\";\n/**\n * Type that includes the name of the prompt and the prompt itself.\n */\nexport type PipelinePromptParams<PromptTemplateType extends BasePromptTemplate> = {\n name: string;\n prompt: PromptTemplateType;\n};\n/**\n * Type that extends the BasePromptTemplateInput type, excluding the\n * inputVariables property. It includes an array of pipelinePrompts and a\n * finalPrompt.\n */\nexport type PipelinePromptTemplateInput<PromptTemplateType extends BasePromptTemplate> = Omit<BasePromptTemplateInput, \"inputVariables\"> & {\n pipelinePrompts: PipelinePromptParams<PromptTemplateType>[];\n finalPrompt: PromptTemplateType;\n};\n/**\n * Class that handles a sequence of prompts, each of which may require\n * different input variables. Includes methods for formatting these\n * prompts, extracting required input values, and handling partial\n * prompts.\n * @example\n * ```typescript\n * const composedPrompt = new PipelinePromptTemplate({\n * pipelinePrompts: [\n * {\n * name: \"introduction\",\n * prompt: PromptTemplate.fromTemplate(`You are impersonating {person}.`),\n * },\n * {\n * name: \"example\",\n * prompt: PromptTemplate.fromTemplate(\n * `Here's an example of an interaction:\n * Q: {example_q}\n * A: {example_a}`,\n * ),\n * },\n * {\n * name: \"start\",\n * prompt: PromptTemplate.fromTemplate(\n * `Now, do this for real!\n * Q: {input}\n * A:`,\n * ),\n * },\n * ],\n * finalPrompt: PromptTemplate.fromTemplate(\n * `{introduction}\n * {example}\n * {start}`,\n * ),\n * });\n *\n * const formattedPrompt = await composedPrompt.format({\n * person: \"Elon Musk\",\n * example_q: `What's your favorite car?`,\n * example_a: \"Tesla\",\n * input: `What's your favorite social media site?`,\n * });\n * ```\n */\nexport declare class PipelinePromptTemplate<PromptTemplateType extends BasePromptTemplate> extends BasePromptTemplate {\n static lc_name(): string;\n pipelinePrompts: PipelinePromptParams<PromptTemplateType>[];\n finalPrompt: PromptTemplateType;\n constructor(input: PipelinePromptTemplateInput<PromptTemplateType>);\n /**\n * Computes the input values required by the pipeline prompts.\n * @returns Array of input values required by the pipeline prompts.\n */\n protected computeInputValues(): string[];\n protected static extractRequiredInputValues(allValues: InputValues, requiredValueNames: string[]): InputValues;\n /**\n * Formats the pipeline prompts based on the provided input values.\n * @param values Input values to format the pipeline prompts.\n * @returns Promise that resolves with the formatted input values.\n */\n protected formatPipelinePrompts(values: InputValues): Promise<InputValues>;\n /**\n * Formats the final prompt value based on the provided input values.\n * @param values Input values to format the final prompt value.\n * @returns Promise that resolves with the formatted final prompt value.\n */\n formatPromptValue(values: InputValues): Promise<PromptTemplateType[\"PromptValueReturnType\"]>;\n format(values: InputValues): Promise<string>;\n /**\n * Handles partial prompts, which are prompts that have been partially\n * filled with input values.\n * @param values Partial input values.\n * @returns Promise that resolves with a new PipelinePromptTemplate instance with updated input variables.\n */\n partial(values: PartialValues): Promise<PipelinePromptTemplate<PromptTemplateType>>;\n serialize(): SerializedBasePromptTemplate;\n _getPromptType(): string;\n}\n"],"mappings":";;;;;;;;AAMA;AAAgC,KAApBK,oBAAoB,CAAA,2BAA4BF,kBAA5B,CAAA,GAAA;EAAA,IAA4BA,EAAAA,MAAAA;EAAkB,MAElEG,EAAAA,kBAAAA;AAAkB,CAAA;AAO9B;;;;;AAC0CA,KAD9BC,2BAC8BD,CAAAA,2BADyBH,kBACzBG,CAAAA,GAD+CE,IAC/CF,CADoDF,uBACpDE,EAAAA,gBAAAA,CAAAA,GAAAA;EAAkB,eAAvCD,EAAAA,oBAAAA,CAAqBC,kBAArBD,CAAAA,EAAAA;EAAoB,WACxBC,EAAAA,kBAAAA;AAAkB,CAAA;AA+CnC;;;;;;;;;;;;;;;;;;;;;;;;AAAqH;;;;;;;;;;;;;;;;;;;;;cAAhGG,kDAAkDN,4BAA4BA,kBAAAA;;mBAE9EE,qBAAqBC;eACzBA;qBACMC,4BAA4BD;;;;;;yDAMQN,4CAA4CA;;;;;;0CAM3DA,cAAcU,QAAQV;;;;;;4BAMpCA,cAAcU,QAAQJ;iBACjCN,cAAcU;;;;;;;kBAObT,gBAAgBS,QAAQD,uBAAuBH;eAClDJ"}