TemplateSection class
A template section that will be rendered as a message.
- Extends
Remarks
This section type is used to render a template as a message. The template can contain parameters that will be replaced with values from memory or call functions to generate dynamic content.
Template syntax:
{{$memoryKey}}
- Renders the value of the specified memory key.{{functionName}}
- Calls the specified function and renders the result.{{functionName arg1 arg2 ...}}
- Calls the specified function with the provided list of arguments.
Function arguments are optional and separated by spaces. They can be quoted using '
, "
, or ``` delimiters.
Constructors
Template |
Creates a new 'TemplateSection' instance. |
Properties
role | |
template |
Inherited Properties
required | If true the section is mandatory otherwise it can be safely dropped. |
separator | |
text |
|
tokens | The requested token budget for this section.
|
Inherited Methods
get |
Returns the content of a message as a string. |
render |
Renders the prompt section as a string of text. |
Constructor Details
TemplateSection(string, string, number, boolean, string, string)
Creates a new 'TemplateSection' instance.
new TemplateSection(template: string, role: string, tokens?: number, required?: boolean, separator?: string, textPrefix?: string)
Parameters
- template
-
string
Template to use for this section.
- role
-
string
Message role to use for this section.
- tokens
-
number
Optional. Sizing strategy for this section. Defaults to auto
.
- required
-
boolean
Optional. Indicates if this section is required. Defaults to true
.
- separator
-
string
Optional. Separator to use between sections when rendering as text. Defaults to \n
.
- textPrefix
-
string
Optional. Prefix to use for text output. Defaults to undefined
.
Property Details
role
role: string
Property Value
string
template
template: string
Property Value
string
Inherited Property Details
required
If true the section is mandatory otherwise it can be safely dropped.
required: boolean
Property Value
boolean
Inherited From PromptSectionBase.required
separator
textPrefix
tokens
The requested token budget for this section.
- Values between 0.0 and 1.0 represent a percentage of the total budget and the section will be layed out proportionally to all other sections.
- Values greater than 1.0 represent the max number of tokens the section should be allowed to consume.
tokens: number
Property Value
number
Inherited From PromptSectionBase.tokens
Inherited Method Details
getMessageText(Message<string>)
Returns the content of a message as a string.
static function getMessageText(message: Message<string>): string
Parameters
- message
-
Message<string>
Message to get the text of.
Returns
string
The message content as a string.
Inherited From PromptSectionBase.getMessageText
renderAsText(TurnContext, Memory, PromptFunctions, Tokenizer, number)
Renders the prompt section as a string of text.
function renderAsText(context: TurnContext, memory: Memory, functions: PromptFunctions, tokenizer: Tokenizer, maxTokens: number): Promise<RenderedPromptSection<string>>
Parameters
- context
-
TurnContext
Context for the current turn of conversation.
- memory
- Memory
Interface for accessing state variables.
- functions
- PromptFunctions
Functions for rendering prompts.
- tokenizer
- Tokenizer
Tokenizer to use for encoding/decoding text.
- maxTokens
-
number
Maximum number of tokens allowed for the rendered prompt.
Returns
Promise<RenderedPromptSection<string>>
The rendered prompt section.
Inherited From PromptSectionBase.renderAsText