node-llama-cpp 3.0.0-beta.15 → 3.0.0-beta.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bindings/AddonTypes.d.ts +2 -0
- package/dist/bindings/Llama.d.ts +7 -0
- package/dist/bindings/Llama.js +12 -1
- package/dist/bindings/Llama.js.map +1 -1
- package/dist/bindings/getLlama.d.ts +2 -2
- package/dist/bindings/getLlama.js +1 -1
- package/dist/bindings/getLlama.js.map +1 -1
- package/dist/bindings/utils/cloneLlamaCppRepo.js +23 -23
- package/dist/bindings/utils/cloneLlamaCppRepo.js.map +1 -1
- package/dist/chatWrappers/utils/resolveChatWrapper.js +3 -1
- package/dist/chatWrappers/utils/resolveChatWrapper.js.map +1 -1
- package/dist/cli/commands/BuildCommand.js +1 -1
- package/dist/cli/commands/BuildCommand.js.map +1 -1
- package/dist/cli/commands/ChatCommand.d.ts +2 -1
- package/dist/cli/commands/ChatCommand.js +70 -75
- package/dist/cli/commands/ChatCommand.js.map +1 -1
- package/dist/cli/commands/CompleteCommand.d.ts +2 -1
- package/dist/cli/commands/CompleteCommand.js +61 -57
- package/dist/cli/commands/CompleteCommand.js.map +1 -1
- package/dist/cli/commands/DebugCommand.js +4 -4
- package/dist/cli/commands/DownloadCommand.js +3 -4
- package/dist/cli/commands/DownloadCommand.js.map +1 -1
- package/dist/cli/commands/InfillCommand.d.ts +2 -1
- package/dist/cli/commands/InfillCommand.js +63 -61
- package/dist/cli/commands/InfillCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.d.ts +2 -1
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.js +20 -7
- package/dist/cli/commands/inspect/commands/InspectGgufCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectGpuCommand.js +42 -4
- package/dist/cli/commands/inspect/commands/InspectGpuCommand.js.map +1 -1
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.d.ts +2 -1
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js +29 -27
- package/dist/cli/commands/inspect/commands/InspectMeasureCommand.js.map +1 -1
- package/dist/cli/recommendedModels.d.ts +2 -0
- package/dist/cli/recommendedModels.js +281 -0
- package/dist/cli/recommendedModels.js.map +1 -0
- package/dist/cli/utils/ConsoleInteraction.d.ts +23 -0
- package/dist/cli/utils/ConsoleInteraction.js +122 -0
- package/dist/cli/utils/ConsoleInteraction.js.map +1 -0
- package/dist/cli/utils/ConsoleTable.js +5 -5
- package/dist/cli/utils/basicChooseFromListConsoleInteraction.d.ts +13 -0
- package/dist/cli/utils/basicChooseFromListConsoleInteraction.js +111 -0
- package/dist/cli/utils/basicChooseFromListConsoleInteraction.js.map +1 -0
- package/dist/cli/utils/consolePromptQuestion.d.ts +5 -0
- package/dist/cli/utils/consolePromptQuestion.js +80 -0
- package/dist/cli/utils/consolePromptQuestion.js.map +1 -0
- package/dist/cli/utils/getReadablePath.d.ts +1 -0
- package/dist/cli/utils/getReadablePath.js +14 -0
- package/dist/cli/utils/getReadablePath.js.map +1 -0
- package/dist/cli/utils/printCommonInfoLines.js +1 -1
- package/dist/cli/utils/printInfoLine.d.ts +4 -2
- package/dist/cli/utils/printInfoLine.js +15 -6
- package/dist/cli/utils/printInfoLine.js.map +1 -1
- package/dist/cli/utils/resolveCommandGgufPath.d.ts +2 -1
- package/dist/cli/utils/resolveCommandGgufPath.js +490 -2
- package/dist/cli/utils/resolveCommandGgufPath.js.map +1 -1
- package/dist/cli/utils/resolveHeaderFlag.d.ts +1 -0
- package/dist/cli/utils/resolveHeaderFlag.js +21 -0
- package/dist/cli/utils/resolveHeaderFlag.js.map +1 -0
- package/dist/cli/utils/resolveModelRecommendationFileOptions.d.ts +19 -0
- package/dist/cli/utils/resolveModelRecommendationFileOptions.js +7 -0
- package/dist/cli/utils/resolveModelRecommendationFileOptions.js.map +1 -0
- package/dist/cli/utils/splitAnsiToLines.d.ts +1 -0
- package/dist/cli/utils/splitAnsiToLines.js +17 -0
- package/dist/cli/utils/splitAnsiToLines.js.map +1 -0
- package/dist/config.d.ts +3 -0
- package/dist/config.js +5 -2
- package/dist/config.js.map +1 -1
- package/dist/consts.d.ts +2 -0
- package/dist/consts.js +8 -0
- package/dist/consts.js.map +1 -1
- package/dist/evaluator/LlamaChat/LlamaChat.d.ts +8 -1
- package/dist/evaluator/LlamaChat/LlamaChat.js +2 -1
- package/dist/evaluator/LlamaChat/LlamaChat.js.map +1 -1
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.d.ts +9 -2
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js +5 -3
- package/dist/evaluator/LlamaChatSession/LlamaChatSession.js.map +1 -1
- package/dist/evaluator/LlamaCompletion.d.ts +9 -2
- package/dist/evaluator/LlamaCompletion.js +6 -3
- package/dist/evaluator/LlamaCompletion.js.map +1 -1
- package/dist/evaluator/LlamaContext/LlamaContext.d.ts +9 -19
- package/dist/evaluator/LlamaContext/LlamaContext.js +35 -55
- package/dist/evaluator/LlamaContext/LlamaContext.js.map +1 -1
- package/dist/evaluator/LlamaGrammar.d.ts +3 -2
- package/dist/evaluator/LlamaGrammar.js +3 -2
- package/dist/evaluator/LlamaGrammar.js.map +1 -1
- package/dist/evaluator/LlamaModel.d.ts +7 -15
- package/dist/evaluator/LlamaModel.js +4 -201
- package/dist/evaluator/LlamaModel.js.map +1 -1
- package/dist/evaluator/TokenBias.d.ts +22 -0
- package/dist/evaluator/TokenBias.js +33 -0
- package/dist/evaluator/TokenBias.js.map +1 -0
- package/dist/gguf/{GgufInsights.d.ts → insights/GgufInsights.d.ts} +5 -3
- package/dist/gguf/{GgufInsights.js → insights/GgufInsights.js} +46 -35
- package/dist/gguf/insights/GgufInsights.js.map +1 -0
- package/dist/gguf/insights/GgufInsightsConfigurationResolver.d.ts +87 -0
- package/dist/gguf/insights/GgufInsightsConfigurationResolver.js +136 -0
- package/dist/gguf/insights/GgufInsightsConfigurationResolver.js.map +1 -0
- package/dist/gguf/insights/utils/resolveContextContextSizeOption.d.ts +18 -0
- package/dist/gguf/insights/utils/resolveContextContextSizeOption.js +52 -0
- package/dist/gguf/insights/utils/resolveContextContextSizeOption.js.map +1 -0
- package/dist/gguf/insights/utils/resolveModelGpuLayersOption.d.ts +14 -0
- package/dist/gguf/insights/utils/resolveModelGpuLayersOption.js +177 -0
- package/dist/gguf/insights/utils/resolveModelGpuLayersOption.js.map +1 -0
- package/dist/gguf/insights/utils/scoreLevels.d.ts +5 -0
- package/dist/gguf/insights/utils/scoreLevels.js +16 -0
- package/dist/gguf/insights/utils/scoreLevels.js.map +1 -0
- package/dist/gguf/readGgufFileInfo.js +2 -1
- package/dist/gguf/readGgufFileInfo.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/utils/getConsoleLogPrefix.js +1 -1
- package/dist/utils/getReadableContextSize.d.ts +1 -0
- package/dist/utils/getReadableContextSize.js +7 -0
- package/dist/utils/getReadableContextSize.js.map +1 -0
- package/dist/utils/isToken.d.ts +2 -0
- package/dist/utils/isToken.js +4 -0
- package/dist/utils/isToken.js.map +1 -0
- package/dist/utils/isUrl.d.ts +1 -0
- package/dist/utils/isUrl.js +15 -0
- package/dist/utils/isUrl.js.map +1 -0
- package/dist/utils/tokenizeInput.d.ts +1 -1
- package/dist/utils/tokenizeInput.js +3 -0
- package/dist/utils/tokenizeInput.js.map +1 -1
- package/dist/utils/withOra.d.ts +1 -0
- package/dist/utils/withOra.js +13 -7
- package/dist/utils/withOra.js.map +1 -1
- package/dist/utils/withProgressLog.d.ts +23 -0
- package/dist/utils/withProgressLog.js +211 -0
- package/dist/utils/withProgressLog.js.map +1 -0
- package/dist/utils/withStatusLogs.js +1 -1
- package/dist/utils/withStatusLogs.js.map +1 -1
- package/llama/addon.cpp +43 -5
- package/llama/binariesGithubRelease.json +1 -1
- package/llama/gitRelease.bundle +0 -0
- package/llama/grammars/README.md +10 -0
- package/llama/llama.cpp.info.json +1 -1
- package/llamaBins/linux-arm64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-arm64/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-armv7l/llama-addon.node +0 -0
- package/llamaBins/linux-x64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-x64/llama-addon.node +0 -0
- package/llamaBins/linux-x64-cuda/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-x64-cuda/llama-addon.node +0 -0
- package/llamaBins/linux-x64-vulkan/_nlcBuildMetadata.json +1 -1
- package/llamaBins/linux-x64-vulkan/llama-addon.node +0 -0
- package/llamaBins/mac-arm64-metal/_nlcBuildMetadata.json +1 -1
- package/llamaBins/mac-arm64-metal/default.metallib +0 -0
- package/llamaBins/mac-arm64-metal/llama-addon.node +0 -0
- package/llamaBins/mac-x64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/mac-x64/llama-addon.node +0 -0
- package/llamaBins/win-arm64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-arm64/llama-addon.node +0 -0
- package/llamaBins/win-x64/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-x64/llama-addon.node +0 -0
- package/llamaBins/win-x64-cuda/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-x64-cuda/llama-addon.node +0 -0
- package/llamaBins/win-x64-vulkan/_nlcBuildMetadata.json +1 -1
- package/llamaBins/win-x64-vulkan/llama-addon.node +0 -0
- package/package.json +8 -7
- package/dist/gguf/GgufInsights.js.map +0 -1
|
@@ -19,25 +19,30 @@ import { resolveChatWrapper, specializedChatWrapperTypeNames } from "../../chatW
|
|
|
19
19
|
import { GeneralChatWrapper } from "../../chatWrappers/GeneralChatWrapper.js";
|
|
20
20
|
import { printCommonInfoLines } from "../utils/printCommonInfoLines.js";
|
|
21
21
|
import { resolveCommandGgufPath } from "../utils/resolveCommandGgufPath.js";
|
|
22
|
+
import { withProgressLog } from "../../utils/withProgressLog.js";
|
|
23
|
+
import { resolveHeaderFlag } from "../utils/resolveHeaderFlag.js";
|
|
22
24
|
export const ChatCommand = {
|
|
23
25
|
command: "chat [modelPath]",
|
|
24
26
|
describe: "Chat with a Llama model",
|
|
25
27
|
builder(yargs) {
|
|
26
28
|
const isInDocumentationMode = getIsInDocumentationMode();
|
|
27
29
|
return yargs
|
|
28
|
-
.option("
|
|
29
|
-
alias: ["m", "
|
|
30
|
+
.option("modelPath", {
|
|
31
|
+
alias: ["m", "model", "path", "url"],
|
|
30
32
|
type: "string",
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
description: "Llama model file to use for the chat. Can be a path to a local file or a URL of a model file to download"
|
|
34
|
+
})
|
|
35
|
+
.option("header", {
|
|
36
|
+
alias: ["H"],
|
|
37
|
+
type: "string",
|
|
38
|
+
array: true,
|
|
39
|
+
description: "Headers to use when downloading a model from a URL, in the format `key: value`. You can pass this option multiple times to add multiple headers."
|
|
34
40
|
})
|
|
35
41
|
.option("systemInfo", {
|
|
36
42
|
alias: "i",
|
|
37
43
|
type: "boolean",
|
|
38
44
|
default: false,
|
|
39
|
-
description: "Print llama.cpp system info"
|
|
40
|
-
group: "Optional:"
|
|
45
|
+
description: "Print llama.cpp system info"
|
|
41
46
|
})
|
|
42
47
|
.option("systemPrompt", {
|
|
43
48
|
alias: "s",
|
|
@@ -45,194 +50,166 @@ export const ChatCommand = {
|
|
|
45
50
|
default: defaultChatSystemPrompt,
|
|
46
51
|
defaultDescription: " ",
|
|
47
52
|
description: "System prompt to use against the model" +
|
|
48
|
-
(isInDocumentationMode ? "" : (". [default value: " + defaultChatSystemPrompt.split("\n").join(" ") + "]"))
|
|
49
|
-
group: "Optional:"
|
|
53
|
+
(isInDocumentationMode ? "" : (". [default value: " + defaultChatSystemPrompt.split("\n").join(" ") + "]"))
|
|
50
54
|
})
|
|
51
55
|
.option("systemPromptFile", {
|
|
52
56
|
type: "string",
|
|
53
|
-
description: "Path to a file to load text from and use as as the model system prompt"
|
|
54
|
-
group: "Optional:"
|
|
57
|
+
description: "Path to a file to load text from and use as as the model system prompt"
|
|
55
58
|
})
|
|
56
59
|
.option("prompt", {
|
|
57
60
|
type: "string",
|
|
58
|
-
description: "First prompt to automatically send to the model when starting the chat"
|
|
59
|
-
group: "Optional:"
|
|
61
|
+
description: "First prompt to automatically send to the model when starting the chat"
|
|
60
62
|
})
|
|
61
63
|
.option("promptFile", {
|
|
62
64
|
type: "string",
|
|
63
|
-
description: "Path to a file to load text from and use as a first prompt to automatically send to the model when starting the chat"
|
|
64
|
-
group: "Optional:"
|
|
65
|
+
description: "Path to a file to load text from and use as a first prompt to automatically send to the model when starting the chat"
|
|
65
66
|
})
|
|
66
67
|
.option("wrapper", {
|
|
67
68
|
alias: "w",
|
|
68
69
|
type: "string",
|
|
69
70
|
default: "auto",
|
|
70
71
|
choices: ["auto", ...specializedChatWrapperTypeNames],
|
|
71
|
-
description: "Chat wrapper to use. Use `auto` to automatically select a wrapper based on the model's BOS token"
|
|
72
|
-
group: "Optional:"
|
|
72
|
+
description: "Chat wrapper to use. Use `auto` to automatically select a wrapper based on the model's BOS token"
|
|
73
73
|
})
|
|
74
74
|
.option("noJinja", {
|
|
75
75
|
type: "boolean",
|
|
76
76
|
default: false,
|
|
77
|
-
description: "Don't use a Jinja wrapper, even if it's the best option for the model"
|
|
78
|
-
group: "Optional:"
|
|
77
|
+
description: "Don't use a Jinja wrapper, even if it's the best option for the model"
|
|
79
78
|
})
|
|
80
79
|
.option("contextSize", {
|
|
81
80
|
alias: "c",
|
|
82
81
|
type: "number",
|
|
83
82
|
description: "Context size to use for the model context",
|
|
84
83
|
default: -1,
|
|
85
|
-
defaultDescription: "Automatically determined based on the available VRAM"
|
|
86
|
-
group: "Optional:"
|
|
84
|
+
defaultDescription: "Automatically determined based on the available VRAM"
|
|
87
85
|
})
|
|
88
86
|
.option("batchSize", {
|
|
89
87
|
alias: "b",
|
|
90
88
|
type: "number",
|
|
91
|
-
description: "Batch size to use for the model context. The default value is the context size"
|
|
92
|
-
group: "Optional:"
|
|
89
|
+
description: "Batch size to use for the model context. The default value is the context size"
|
|
93
90
|
})
|
|
94
91
|
.option("noTrimWhitespace", {
|
|
95
92
|
type: "boolean",
|
|
96
93
|
alias: ["noTrim"],
|
|
97
94
|
default: false,
|
|
98
|
-
description: "Don't trim whitespaces from the model response"
|
|
99
|
-
group: "Optional:"
|
|
95
|
+
description: "Don't trim whitespaces from the model response"
|
|
100
96
|
})
|
|
101
97
|
.option("grammar", {
|
|
102
98
|
alias: "g",
|
|
103
99
|
type: "string",
|
|
104
100
|
default: "text",
|
|
105
101
|
choices: ["text", "json", "list", "arithmetic", "japanese", "chess"],
|
|
106
|
-
description: "Restrict the model response to a specific grammar, like JSON for example"
|
|
107
|
-
group: "Optional:"
|
|
102
|
+
description: "Restrict the model response to a specific grammar, like JSON for example"
|
|
108
103
|
})
|
|
109
104
|
.option("jsonSchemaGrammarFile", {
|
|
110
105
|
alias: ["jsgf"],
|
|
111
106
|
type: "string",
|
|
112
|
-
description: "File path to a JSON schema file, to restrict the model response to only generate output that conforms to the JSON schema"
|
|
113
|
-
group: "Optional:"
|
|
107
|
+
description: "File path to a JSON schema file, to restrict the model response to only generate output that conforms to the JSON schema"
|
|
114
108
|
})
|
|
115
109
|
.option("threads", {
|
|
116
110
|
type: "number",
|
|
117
111
|
default: 6,
|
|
118
|
-
description: "Number of threads to use for the evaluation of tokens"
|
|
119
|
-
group: "Optional:"
|
|
112
|
+
description: "Number of threads to use for the evaluation of tokens"
|
|
120
113
|
})
|
|
121
114
|
.option("temperature", {
|
|
122
115
|
alias: "t",
|
|
123
116
|
type: "number",
|
|
124
117
|
default: 0,
|
|
125
|
-
description: "Temperature is a hyperparameter that controls the randomness of the generated text. It affects the probability distribution of the model's output tokens. A higher temperature (e.g., 1.5) makes the output more random and creative, while a lower temperature (e.g., 0.5) makes the output more focused, deterministic, and conservative. The suggested temperature is 0.8, which provides a balance between randomness and determinism. At the extreme, a temperature of 0 will always pick the most likely next token, leading to identical outputs in each run. Set to `0` to disable."
|
|
126
|
-
group: "Optional:"
|
|
118
|
+
description: "Temperature is a hyperparameter that controls the randomness of the generated text. It affects the probability distribution of the model's output tokens. A higher temperature (e.g., 1.5) makes the output more random and creative, while a lower temperature (e.g., 0.5) makes the output more focused, deterministic, and conservative. The suggested temperature is 0.8, which provides a balance between randomness and determinism. At the extreme, a temperature of 0 will always pick the most likely next token, leading to identical outputs in each run. Set to `0` to disable."
|
|
127
119
|
})
|
|
128
120
|
.option("minP", {
|
|
129
121
|
alias: "mp",
|
|
130
122
|
type: "number",
|
|
131
123
|
default: 0,
|
|
132
|
-
description: "From the next token candidates, discard the percentage of tokens with the lowest probability. For example, if set to `0.05`, 5% of the lowest probability tokens will be discarded. This is useful for generating more high-quality results when using a high temperature. Set to a value between `0` and `1` to enable. Only relevant when `temperature` is set to a value greater than `0`."
|
|
133
|
-
group: "Optional:"
|
|
124
|
+
description: "From the next token candidates, discard the percentage of tokens with the lowest probability. For example, if set to `0.05`, 5% of the lowest probability tokens will be discarded. This is useful for generating more high-quality results when using a high temperature. Set to a value between `0` and `1` to enable. Only relevant when `temperature` is set to a value greater than `0`."
|
|
134
125
|
})
|
|
135
126
|
.option("topK", {
|
|
136
127
|
alias: "k",
|
|
137
128
|
type: "number",
|
|
138
129
|
default: 40,
|
|
139
|
-
description: "Limits the model to consider only the K most likely next tokens for sampling at each step of sequence generation. An integer number between `1` and the size of the vocabulary. Set to `0` to disable (which uses the full vocabulary). Only relevant when `temperature` is set to a value greater than 0."
|
|
140
|
-
group: "Optional:"
|
|
130
|
+
description: "Limits the model to consider only the K most likely next tokens for sampling at each step of sequence generation. An integer number between `1` and the size of the vocabulary. Set to `0` to disable (which uses the full vocabulary). Only relevant when `temperature` is set to a value greater than 0."
|
|
141
131
|
})
|
|
142
132
|
.option("topP", {
|
|
143
133
|
alias: "p",
|
|
144
134
|
type: "number",
|
|
145
135
|
default: 0.95,
|
|
146
|
-
description: "Dynamically selects the smallest set of tokens whose cumulative probability exceeds the threshold P, and samples the next token only from this set. A float number between `0` and `1`. Set to `1` to disable. Only relevant when `temperature` is set to a value greater than `0`."
|
|
147
|
-
group: "Optional:"
|
|
136
|
+
description: "Dynamically selects the smallest set of tokens whose cumulative probability exceeds the threshold P, and samples the next token only from this set. A float number between `0` and `1`. Set to `1` to disable. Only relevant when `temperature` is set to a value greater than `0`."
|
|
148
137
|
})
|
|
149
138
|
.option("gpuLayers", {
|
|
150
139
|
alias: "gl",
|
|
151
140
|
type: "number",
|
|
152
141
|
description: "number of layers to store in VRAM",
|
|
153
142
|
default: -1,
|
|
154
|
-
defaultDescription: "Automatically determined based on the available VRAM"
|
|
155
|
-
group: "Optional:"
|
|
143
|
+
defaultDescription: "Automatically determined based on the available VRAM"
|
|
156
144
|
})
|
|
157
145
|
.option("repeatPenalty", {
|
|
158
146
|
alias: "rp",
|
|
159
147
|
type: "number",
|
|
160
148
|
default: 1.1,
|
|
161
|
-
description: "Prevent the model from repeating the same token too much. Set to `1` to disable."
|
|
162
|
-
group: "Optional:"
|
|
149
|
+
description: "Prevent the model from repeating the same token too much. Set to `1` to disable."
|
|
163
150
|
})
|
|
164
151
|
.option("lastTokensRepeatPenalty", {
|
|
165
152
|
alias: "rpn",
|
|
166
153
|
type: "number",
|
|
167
154
|
default: 64,
|
|
168
|
-
description: "Number of recent tokens generated by the model to apply penalties to repetition of"
|
|
169
|
-
group: "Optional:"
|
|
155
|
+
description: "Number of recent tokens generated by the model to apply penalties to repetition of"
|
|
170
156
|
})
|
|
171
157
|
.option("penalizeRepeatingNewLine", {
|
|
172
158
|
alias: "rpnl",
|
|
173
159
|
type: "boolean",
|
|
174
160
|
default: true,
|
|
175
|
-
description: "Penalize new line tokens. set
|
|
176
|
-
group: "Optional:"
|
|
161
|
+
description: "Penalize new line tokens. set `--no-penalizeRepeatingNewLine` or `--no-rpnl` to disable"
|
|
177
162
|
})
|
|
178
163
|
.option("repeatFrequencyPenalty", {
|
|
179
164
|
alias: "rfp",
|
|
180
165
|
type: "number",
|
|
181
|
-
description: "For n time a token is in the `punishTokens` array, lower its probability by `n * repeatFrequencyPenalty`. Set to a value between `0` and `1` to enable."
|
|
182
|
-
group: "Optional:"
|
|
166
|
+
description: "For n time a token is in the `punishTokens` array, lower its probability by `n * repeatFrequencyPenalty`. Set to a value between `0` and `1` to enable."
|
|
183
167
|
})
|
|
184
168
|
.option("repeatPresencePenalty", {
|
|
185
169
|
alias: "rpp",
|
|
186
170
|
type: "number",
|
|
187
|
-
description: "Lower the probability of all the tokens in the `punishTokens` array by `repeatPresencePenalty`. Set to a value between `0` and `1` to enable."
|
|
188
|
-
group: "Optional:"
|
|
171
|
+
description: "Lower the probability of all the tokens in the `punishTokens` array by `repeatPresencePenalty`. Set to a value between `0` and `1` to enable."
|
|
189
172
|
})
|
|
190
173
|
.option("maxTokens", {
|
|
191
174
|
alias: "mt",
|
|
192
175
|
type: "number",
|
|
193
176
|
default: 0,
|
|
194
|
-
description: "Maximum number of tokens to generate in responses. Set to `0` to disable. Set to `-1` to set to the context size"
|
|
195
|
-
group: "Optional:"
|
|
177
|
+
description: "Maximum number of tokens to generate in responses. Set to `0` to disable. Set to `-1` to set to the context size"
|
|
196
178
|
})
|
|
197
179
|
.option("noHistory", {
|
|
198
180
|
alias: "nh",
|
|
199
181
|
type: "boolean",
|
|
200
182
|
default: false,
|
|
201
|
-
description: "Don't load or save chat history"
|
|
202
|
-
group: "Optional:"
|
|
183
|
+
description: "Don't load or save chat history"
|
|
203
184
|
})
|
|
204
185
|
.option("environmentFunctions", {
|
|
205
186
|
alias: "ef",
|
|
206
187
|
type: "boolean",
|
|
207
188
|
default: false,
|
|
208
|
-
description: "Provide access to environment functions like `getDate` and `getTime`"
|
|
209
|
-
group: "Optional:"
|
|
189
|
+
description: "Provide access to environment functions like `getDate` and `getTime`"
|
|
210
190
|
})
|
|
211
191
|
.option("debug", {
|
|
212
192
|
alias: "d",
|
|
213
193
|
type: "boolean",
|
|
214
194
|
default: false,
|
|
215
|
-
description: "Print llama.cpp info and debug logs"
|
|
216
|
-
group: "Optional:"
|
|
195
|
+
description: "Print llama.cpp info and debug logs"
|
|
217
196
|
})
|
|
218
197
|
.option("meter", {
|
|
219
198
|
type: "boolean",
|
|
220
199
|
default: false,
|
|
221
|
-
description: "
|
|
222
|
-
group: "Optional:"
|
|
200
|
+
description: "Print how many tokens were used as input and output for each response"
|
|
223
201
|
})
|
|
224
202
|
.option("printTimings", {
|
|
225
203
|
alias: "pt",
|
|
226
204
|
type: "boolean",
|
|
227
205
|
default: false,
|
|
228
|
-
description: "Print llama.cpp timings after each response"
|
|
229
|
-
group: "Optional:"
|
|
206
|
+
description: "Print llama.cpp timings after each response"
|
|
230
207
|
});
|
|
231
208
|
},
|
|
232
|
-
async handler({
|
|
209
|
+
async handler({ modelPath, header, systemInfo, systemPrompt, systemPromptFile, prompt, promptFile, wrapper, noJinja, contextSize, batchSize, noTrimWhitespace, grammar, jsonSchemaGrammarFile, threads, temperature, minP, topK, topP, gpuLayers, repeatPenalty, lastTokensRepeatPenalty, penalizeRepeatingNewLine, repeatFrequencyPenalty, repeatPresencePenalty, maxTokens, noHistory, environmentFunctions, debug, meter, printTimings }) {
|
|
233
210
|
try {
|
|
234
211
|
await RunChat({
|
|
235
|
-
|
|
212
|
+
modelPath, header, systemInfo, systemPrompt, systemPromptFile, prompt, promptFile, wrapper, noJinja, contextSize, batchSize,
|
|
236
213
|
noTrimWhitespace, grammar, jsonSchemaGrammarFile, threads, temperature, minP, topK, topP, gpuLayers,
|
|
237
214
|
lastTokensRepeatPenalty, repeatPenalty, penalizeRepeatingNewLine, repeatFrequencyPenalty, repeatPresencePenalty, maxTokens,
|
|
238
215
|
noHistory, environmentFunctions, debug, meter, printTimings
|
|
@@ -245,15 +222,15 @@ export const ChatCommand = {
|
|
|
245
222
|
}
|
|
246
223
|
}
|
|
247
224
|
};
|
|
248
|
-
async function RunChat({
|
|
225
|
+
async function RunChat({ modelPath: modelArg, header: headerArg, systemInfo, systemPrompt, systemPromptFile, prompt, promptFile, wrapper, noJinja, contextSize, batchSize, noTrimWhitespace, grammar: grammarArg, jsonSchemaGrammarFile: jsonSchemaGrammarFilePath, threads, temperature, minP, topK, topP, gpuLayers, lastTokensRepeatPenalty, repeatPenalty, penalizeRepeatingNewLine, repeatFrequencyPenalty, repeatPresencePenalty, maxTokens, noHistory, environmentFunctions, debug, meter, printTimings }) {
|
|
249
226
|
if (contextSize === -1)
|
|
250
227
|
contextSize = undefined;
|
|
251
228
|
if (gpuLayers === -1)
|
|
252
229
|
gpuLayers = undefined;
|
|
230
|
+
const headers = resolveHeaderFlag(headerArg);
|
|
253
231
|
const trimWhitespace = !noTrimWhitespace;
|
|
254
232
|
if (debug)
|
|
255
233
|
console.info(`${chalk.yellow("Log level:")} debug`);
|
|
256
|
-
const resolvedModelPath = await resolveCommandGgufPath(modelArg);
|
|
257
234
|
const llamaLogLevel = debug
|
|
258
235
|
? LlamaLogLevel.debug
|
|
259
236
|
: LlamaLogLevel.warn;
|
|
@@ -261,6 +238,7 @@ async function RunChat({ model: modelArg, systemInfo, systemPrompt, systemPrompt
|
|
|
261
238
|
logLevel: llamaLogLevel
|
|
262
239
|
});
|
|
263
240
|
const logBatchSize = batchSize != null;
|
|
241
|
+
const resolvedModelPath = await resolveCommandGgufPath(modelArg, llama, headers);
|
|
264
242
|
if (systemInfo)
|
|
265
243
|
console.log(llama.systemInfo);
|
|
266
244
|
if (systemPromptFile != null && systemPromptFile !== "") {
|
|
@@ -278,18 +256,34 @@ async function RunChat({ model: modelArg, systemInfo, systemPrompt, systemPrompt
|
|
|
278
256
|
batchSize = contextSize;
|
|
279
257
|
}
|
|
280
258
|
let initialPrompt = prompt ?? null;
|
|
281
|
-
const model = await
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
259
|
+
const model = await withProgressLog({
|
|
260
|
+
loadingText: chalk.blue.bold("Loading model"),
|
|
261
|
+
successText: chalk.blue("Model loaded"),
|
|
262
|
+
failText: chalk.blue("Failed to load model"),
|
|
263
|
+
liveUpdates: !debug,
|
|
264
|
+
noProgress: debug,
|
|
265
|
+
liveCtrlCSendsAbortSignal: true
|
|
266
|
+
}, async (progressUpdater) => {
|
|
287
267
|
try {
|
|
288
268
|
return await llama.loadModel({
|
|
289
269
|
modelPath: resolvedModelPath,
|
|
290
|
-
gpuLayers: gpuLayers != null
|
|
270
|
+
gpuLayers: gpuLayers != null
|
|
271
|
+
? gpuLayers
|
|
272
|
+
: contextSize != null
|
|
273
|
+
? { fitContext: { contextSize } }
|
|
274
|
+
: undefined,
|
|
275
|
+
ignoreMemorySafetyChecks: gpuLayers != null,
|
|
276
|
+
onLoadProgress(loadProgress) {
|
|
277
|
+
progressUpdater.setProgress(loadProgress);
|
|
278
|
+
},
|
|
279
|
+
loadSignal: progressUpdater.abortSignal
|
|
291
280
|
});
|
|
292
281
|
}
|
|
282
|
+
catch (err) {
|
|
283
|
+
if (err === progressUpdater.abortSignal?.reason)
|
|
284
|
+
process.exit(0);
|
|
285
|
+
throw err;
|
|
286
|
+
}
|
|
293
287
|
finally {
|
|
294
288
|
if (llama.logLevel === LlamaLogLevel.debug) {
|
|
295
289
|
await new Promise((accept) => setTimeout(accept, 0)); // wait for logs to finish printing
|
|
@@ -307,7 +301,8 @@ async function RunChat({ model: modelArg, systemInfo, systemPrompt, systemPrompt
|
|
|
307
301
|
return await model.createContext({
|
|
308
302
|
contextSize: contextSize != null ? contextSize : undefined,
|
|
309
303
|
batchSize: batchSize != null ? batchSize : undefined,
|
|
310
|
-
threads
|
|
304
|
+
threads,
|
|
305
|
+
ignoreMemorySafetyChecks: gpuLayers != null || contextSize != null
|
|
311
306
|
});
|
|
312
307
|
}
|
|
313
308
|
finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/ChatCommand.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChatCommand.js","sourceRoot":"","sources":["../../../src/cli/commands/ChatCommand.ts"],"names":[],"mappings":"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"}
|