Class: JinjaTemplateChatWrapper
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:181
A chat wrapper based on a Jinja template. Useful for using the original model's Jinja template as-is without any additional conversion work to chat with a model.
If you want to create a new chat wrapper from scratch, using this chat wrapper is not recommended, and instead you better inherit from the ChatWrapper class and implement a custom chat wrapper of your own in TypeScript.
For a simpler way to create a chat wrapper, see the TemplateChatWrapper class.
Example
import {JinjaTemplateChatWrapper} from "node-llama-cpp";
const chatWrapper = new JinjaTemplateChatWrapper({
template: "<Jinja template here>",
// functionCallMessageTemplate: { // optional
// call: "[[call: {{functionName}}({{functionParams}})]]",
// result: " [[result: {{functionCallResult}}]]"
// },
// segments: {
// thoughtTemplate: "<think>{{content}}</think>",
// reopenThoughtAfterFunctionCalls: true
// }
});Extends
Constructors
Constructor
new JinjaTemplateChatWrapper(options: JinjaTemplateChatWrapperOptions): JinjaTemplateChatWrapper;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:207
Parameters
| Parameter | Type | Description |
|---|---|---|
options | JinjaTemplateChatWrapperOptions | - |
Returns
JinjaTemplateChatWrapper
Overrides
Properties
defaultSettings
static defaultSettings: ChatWrapperSettings;Defined in: ChatWrapper.ts:15
Inherited from
wrapperName
readonly wrapperName: "JinjaTemplate" = "JinjaTemplate";Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:182
Overrides
settings
readonly settings: ChatWrapperSettings;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:183
Overrides
template
readonly template: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:185
reasoning
readonly reasoning: boolean | null;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:186
modelRoleName
readonly modelRoleName: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:187
userRoleName
readonly userRoleName: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:188
systemRoleName
readonly systemRoleName: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:189
convertUnsupportedSystemMessagesToUserMessages?
readonly optional convertUnsupportedSystemMessagesToUserMessages: JinjaTemplateChatWrapperOptionsConvertMessageFormat;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:190
joinAdjacentMessagesOfTheSameType
readonly joinAdjacentMessagesOfTheSameType: boolean;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:191
trimLeadingWhitespaceInResponses
readonly trimLeadingWhitespaceInResponses: boolean;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:192
keepOnlyLastThought
readonly keepOnlyLastThought: boolean;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:193
additionalRenderParameters?
readonly optional additionalRenderParameters: Record<string, any>;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:194
Accessors
usingJinjaFunctionCallTemplate
Get Signature
get usingJinjaFunctionCallTemplate(): boolean;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:452
Whether the function call syntax settings were extracted from the given Jinja template.
The function call syntax settings can be accessed using the .settings.functions property.
Returns
boolean
Methods
generateFunctionCallsAndResults()
generateFunctionCallsAndResults(functionCalls: ChatModelFunctionCall[], useRawCall?: boolean): LlamaText;Defined in: ChatWrapper.ts:63
Parameters
| Parameter | Type | Default value |
|---|---|---|
functionCalls | ChatModelFunctionCall[] | undefined |
useRawCall | boolean | true |
Returns
Inherited from
ChatWrapper.generateFunctionCallsAndResults
generateModelResponseText()
generateModelResponseText(modelResponse: (
| string
| ChatModelFunctionCall
| ChatModelSegment)[], useRawValues?: boolean): LlamaText;Defined in: ChatWrapper.ts:158
Parameters
| Parameter | Type | Default value |
|---|---|---|
modelResponse | ( | string | ChatModelFunctionCall | ChatModelSegment)[] | undefined |
useRawValues | boolean | true |
Returns
Inherited from
ChatWrapper.generateModelResponseText
generateAvailableFunctionsSystemText()
generateAvailableFunctionsSystemText(availableFunctions: ChatModelFunctions, __namedParameters: {
documentParams?: boolean;
}): LlamaText;Defined in: ChatWrapper.ts:243
Parameters
| Parameter | Type |
|---|---|
availableFunctions | ChatModelFunctions |
__namedParameters | { documentParams?: boolean; } |
__namedParameters.documentParams? | boolean |
Returns
Inherited from
ChatWrapper.generateAvailableFunctionsSystemText
generateInitialChatHistory()
generateInitialChatHistory(__namedParameters?: ChatWrapperGenerateInitialHistoryOptions): ChatHistoryItem[];Defined in: ChatWrapper.ts:290
Parameters
| Parameter | Type |
|---|---|
__namedParameters | ChatWrapperGenerateInitialHistoryOptions |
Returns
Inherited from
ChatWrapper.generateInitialChatHistory
generateContextState()
generateContextState(__namedParameters: ChatWrapperGenerateContextStateOptions): ChatWrapperGeneratedContextState & {
transformedSystemMessagesToUserMessages: boolean;
};Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:456
Parameters
| Parameter | Type |
|---|---|
__namedParameters | ChatWrapperGenerateContextStateOptions |
Returns
ChatWrapperGeneratedContextState & { transformedSystemMessagesToUserMessages: boolean; }
Overrides
ChatWrapper.generateContextState
addAvailableFunctionsSystemMessageToHistory()
addAvailableFunctionsSystemMessageToHistory(
history: readonly ChatHistoryItem[],
availableFunctions?: ChatModelFunctions,
options?: {
documentParams?: boolean;
}): readonly ChatHistoryItem[];Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:471
Parameters
| Parameter | Type |
|---|---|
history | readonly ChatHistoryItem[] |
availableFunctions? | ChatModelFunctions |
options? | { documentParams?: boolean; } |
options.documentParams? | boolean |
Returns
readonly ChatHistoryItem[]
Overrides
ChatWrapper.addAvailableFunctionsSystemMessageToHistory
generateFunctionCall()
generateFunctionCall(name: string, params: any): LlamaText;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:482
Parameters
| Parameter | Type |
|---|---|
name | string |
params | any |
Returns
Overrides
ChatWrapper.generateFunctionCall
generateFunctionCallResult()
generateFunctionCallResult(
functionName: string,
functionParams: any,
result: any): LlamaText;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:502
Parameters
| Parameter | Type |
|---|---|
functionName | string |
functionParams | any |
result | any |