Class: JinjaTemplateChatWrapper
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:152
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:176
Parameters
| Parameter | Type | Description |
|---|---|---|
options | JinjaTemplateChatWrapperOptions | - |
Returns
JinjaTemplateChatWrapper
Overrides
Properties
defaultSettings
static defaultSettings: ChatWrapperSettings;Defined in: ChatWrapper.ts:14
Inherited from
wrapperName
readonly wrapperName: "JinjaTemplate" = "JinjaTemplate";Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:153
Overrides
settings
readonly settings: ChatWrapperSettings;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:154
Overrides
template
readonly template: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:156
modelRoleName
readonly modelRoleName: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:157
userRoleName
readonly userRoleName: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:158
systemRoleName
readonly systemRoleName: string;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:159
convertUnsupportedSystemMessagesToUserMessages?
readonly optional convertUnsupportedSystemMessagesToUserMessages: JinjaTemplateChatWrapperOptionsConvertMessageFormat;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:160
joinAdjacentMessagesOfTheSameType
readonly joinAdjacentMessagesOfTheSameType: boolean;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:161
trimLeadingWhitespaceInResponses
readonly trimLeadingWhitespaceInResponses: boolean;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:162
additionalRenderParameters?
readonly optional additionalRenderParameters: Record<string, any>;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:163
Accessors
usingJinjaFunctionCallTemplate
Get Signature
get usingJinjaFunctionCallTemplate(): boolean;Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:395
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:60
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:155
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:238
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:285
Parameters
| Parameter | Type |
|---|---|
__namedParameters | ChatWrapperGenerateInitialHistoryOptions |
Returns
Inherited from
ChatWrapper.generateInitialChatHistory
generateContextState()
generateContextState(__namedParameters: ChatWrapperGenerateContextStateOptions): ChatWrapperGeneratedContextState & {
transformedSystemMessagesToUserMessages: boolean;
};Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:399
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:414
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:425
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:445
Parameters
| Parameter | Type |
|---|---|
functionName | string |
functionParams | any |
result | any |