Class: JinjaTemplateChatWrapper
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:147
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
new JinjaTemplateChatWrapper()
new JinjaTemplateChatWrapper(options: JinjaTemplateChatWrapperOptions): JinjaTemplateChatWrapper
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:170
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:148
Overrides
settings
readonly settings: ChatWrapperSettings;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:149
Overrides
template
readonly template: string;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:151
modelRoleName
readonly modelRoleName: string;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:152
userRoleName
readonly userRoleName: string;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:153
systemRoleName
readonly systemRoleName: string;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:154
convertUnsupportedSystemMessagesToUserMessages?
readonly optional convertUnsupportedSystemMessagesToUserMessages: JinjaTemplateChatWrapperOptionsConvertMessageFormat;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:155
joinAdjacentMessagesOfTheSameType
readonly joinAdjacentMessagesOfTheSameType: boolean;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:156
trimLeadingWhitespaceInResponses
readonly trimLeadingWhitespaceInResponses: boolean;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:157
additionalRenderParameters?
readonly optional additionalRenderParameters: Record<string, any>;
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:158
Accessors
usingJinjaFunctionCallTemplate
Get Signature
get usingJinjaFunctionCallTemplate(): boolean
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:364
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:148
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:231
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:278
Parameters
Parameter | Type |
---|---|
__namedParameters | ChatWrapperGenerateInitialHistoryOptions |
Returns
Inherited from
ChatWrapper
.generateInitialChatHistory
generateContextState()
generateContextState(__namedParameters: ChatWrapperGenerateContextStateOptions): ChatWrapperGeneratedContextState & {
transformedSystemMessagesToUserMessages: boolean;
}
Defined in: chatWrappers/generic/JinjaTemplateChatWrapper.ts:368
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:383
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:394
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:414
Parameters
Parameter | Type |
---|---|
functionName | string |
functionParams | any |
result | any |