node-llama-cpp 2.4.1 → 2.5.0
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/README.md +32 -2
- package/dist/ChatPromptWrapper.d.ts +1 -0
- package/dist/ChatPromptWrapper.js +6 -0
- package/dist/ChatPromptWrapper.js.map +1 -1
- package/dist/chatWrappers/ChatMLPromptWrapper.d.ts +1 -0
- package/dist/chatWrappers/ChatMLPromptWrapper.js +3 -0
- package/dist/chatWrappers/ChatMLPromptWrapper.js.map +1 -1
- package/dist/chatWrappers/FalconChatPromptWrapper.d.ts +19 -0
- package/dist/chatWrappers/FalconChatPromptWrapper.js +33 -0
- package/dist/chatWrappers/FalconChatPromptWrapper.js.map +1 -0
- package/dist/chatWrappers/GeneralChatPromptWrapper.d.ts +1 -0
- package/dist/chatWrappers/GeneralChatPromptWrapper.js +4 -1
- package/dist/chatWrappers/GeneralChatPromptWrapper.js.map +1 -1
- package/dist/chatWrappers/LlamaChatPromptWrapper.d.ts +1 -0
- package/dist/chatWrappers/LlamaChatPromptWrapper.js +3 -0
- package/dist/chatWrappers/LlamaChatPromptWrapper.js.map +1 -1
- package/dist/chatWrappers/generateContextTextFromConversationHistory.d.ts +23 -0
- package/dist/chatWrappers/generateContextTextFromConversationHistory.js +47 -0
- package/dist/chatWrappers/generateContextTextFromConversationHistory.js.map +1 -0
- package/dist/cli/commands/ChatCommand.d.ts +1 -1
- package/dist/cli/commands/ChatCommand.js +4 -1
- package/dist/cli/commands/ChatCommand.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/llamaEvaluator/LlamaChatSession.d.ts +5 -2
- package/dist/llamaEvaluator/LlamaChatSession.js +25 -2
- package/dist/llamaEvaluator/LlamaChatSession.js.map +1 -1
- package/dist/llamaEvaluator/LlamaContext.d.ts +2 -1
- package/dist/llamaEvaluator/LlamaContext.js +8 -4
- package/dist/llamaEvaluator/LlamaContext.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/utils/compileLLamaCpp.js +2 -0
- package/dist/utils/compileLLamaCpp.js.map +1 -1
- package/dist/utils/getBin.js +20 -14
- package/dist/utils/getBin.js.map +1 -1
- package/llama/addon.cpp +2 -9
- package/llama/binariesGithubRelease.json +1 -1
- package/llamaBins/linux-arm64/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l/llama-addon.node +0 -0
- package/llamaBins/linux-ppc64le/llama-addon.node +0 -0
- package/llamaBins/linux-x64/llama-addon.node +0 -0
- package/llamaBins/{mac-arm64-18 → mac-arm64}/llama-addon.node +0 -0
- package/llamaBins/{mac-x64-20 → mac-x64}/llama-addon.node +0 -0
- package/llamaBins/win-x64/llama-addon.node +0 -0
- package/package.json +1 -1
- package/llamaBins/linux-arm64-16/llama-addon.node +0 -0
- package/llamaBins/linux-arm64-17/llama-addon.node +0 -0
- package/llamaBins/linux-arm64-18/llama-addon.node +0 -0
- package/llamaBins/linux-arm64-19/llama-addon.node +0 -0
- package/llamaBins/linux-arm64-20/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l-16/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l-17/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l-18/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l-19/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l-20/llama-addon.node +0 -0
- package/llamaBins/linux-ppc64le-16/llama-addon.node +0 -0
- package/llamaBins/linux-ppc64le-17/llama-addon.node +0 -0
- package/llamaBins/linux-ppc64le-18/llama-addon.node +0 -0
- package/llamaBins/linux-ppc64le-19/llama-addon.node +0 -0
- package/llamaBins/linux-ppc64le-20/llama-addon.node +0 -0
- package/llamaBins/linux-x64-16/llama-addon.node +0 -0
- package/llamaBins/linux-x64-17/llama-addon.node +0 -0
- package/llamaBins/linux-x64-18/llama-addon.node +0 -0
- package/llamaBins/linux-x64-19/llama-addon.node +0 -0
- package/llamaBins/linux-x64-20/llama-addon.node +0 -0
- package/llamaBins/mac-arm64-16/llama-addon.node +0 -0
- package/llamaBins/mac-arm64-17/llama-addon.node +0 -0
- package/llamaBins/mac-arm64-18/ggml-metal.metal +0 -2353
- package/llamaBins/mac-arm64-19/ggml-metal.metal +0 -2353
- package/llamaBins/mac-arm64-19/llama-addon.node +0 -0
- package/llamaBins/mac-arm64-20/ggml-metal.metal +0 -2353
- package/llamaBins/mac-arm64-20/llama-addon.node +0 -0
- package/llamaBins/mac-x64-16/ggml-metal.metal +0 -2353
- package/llamaBins/mac-x64-16/llama-addon.node +0 -0
- package/llamaBins/mac-x64-17/ggml-metal.metal +0 -2353
- package/llamaBins/mac-x64-17/llama-addon.node +0 -0
- package/llamaBins/mac-x64-18/ggml-metal.metal +0 -2353
- package/llamaBins/mac-x64-18/llama-addon.node +0 -0
- package/llamaBins/mac-x64-19/ggml-metal.metal +0 -2353
- package/llamaBins/mac-x64-19/llama-addon.node +0 -0
- package/llamaBins/mac-x64-20/ggml-metal.metal +0 -2353
- package/llamaBins/win-x64-16/llama-addon.node +0 -0
- package/llamaBins/win-x64-17/llama-addon.exp +0 -0
- package/llamaBins/win-x64-17/llama-addon.lib +0 -0
- package/llamaBins/win-x64-17/llama-addon.node +0 -0
- package/llamaBins/win-x64-18/llama-addon.node +0 -0
- package/llamaBins/win-x64-19/llama-addon.exp +0 -0
- package/llamaBins/win-x64-19/llama-addon.lib +0 -0
- package/llamaBins/win-x64-19/llama-addon.node +0 -0
- package/llamaBins/win-x64-20/llama-addon.exp +0 -0
- package/llamaBins/win-x64-20/llama-addon.lib +0 -0
- package/llamaBins/win-x64-20/llama-addon.node +0 -0
- /package/llamaBins/{mac-arm64-16 → mac-arm64}/ggml-metal.metal +0 -0
- /package/llamaBins/{mac-arm64-17 → mac-x64}/ggml-metal.metal +0 -0
- /package/llamaBins/{win-x64-18 → win-x64}/llama-addon.exp +0 -0
- /package/llamaBins/{win-x64-18 → win-x64}/llama-addon.lib +0 -0
package/dist/utils/getBin.js
CHANGED
|
@@ -9,29 +9,25 @@ import { getUsedBinFlag } from "./usedBinFlag.js";
|
|
|
9
9
|
import { getCompiledLlamaCppBinaryPath } from "./compileLLamaCpp.js";
|
|
10
10
|
const require = createRequire(import.meta.url);
|
|
11
11
|
export async function getPrebuildBinPath() {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
function createPath(platform, arch, nodeVersion) {
|
|
15
|
-
return path.join(llamaBinsDirectory, `${platform}-${arch}-${nodeVersion}/llama-addon.node`);
|
|
12
|
+
function createPath(platform, arch) {
|
|
13
|
+
return path.join(llamaBinsDirectory, `${platform}-${arch}/llama-addon.node`);
|
|
16
14
|
}
|
|
17
|
-
async function resolvePath(platform, arch
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
return binPath;
|
|
22
|
-
}
|
|
15
|
+
async function resolvePath(platform, arch) {
|
|
16
|
+
const binPath = createPath(platform, arch);
|
|
17
|
+
if (await fs.pathExists(binPath))
|
|
18
|
+
return binPath;
|
|
23
19
|
return null;
|
|
24
20
|
}
|
|
25
21
|
async function getPath() {
|
|
26
22
|
switch (process.platform) {
|
|
27
23
|
case "win32":
|
|
28
24
|
case "cygwin":
|
|
29
|
-
return resolvePath("win", process.arch
|
|
25
|
+
return resolvePath("win", process.arch);
|
|
30
26
|
case "linux":
|
|
31
27
|
case "android":
|
|
32
|
-
return resolvePath("linux", process.arch
|
|
28
|
+
return resolvePath("linux", process.arch);
|
|
33
29
|
case "darwin":
|
|
34
|
-
return resolvePath("mac", process.arch
|
|
30
|
+
return resolvePath("mac", process.arch);
|
|
35
31
|
}
|
|
36
32
|
return null;
|
|
37
33
|
}
|
|
@@ -45,7 +41,17 @@ export async function loadBin() {
|
|
|
45
41
|
console.warn("Prebuild binaries not found, falling back to to locally built binaries");
|
|
46
42
|
}
|
|
47
43
|
else {
|
|
48
|
-
|
|
44
|
+
try {
|
|
45
|
+
return require(prebuildBinPath);
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
console.error(`Failed to load prebuilt binary for platform "${process.platform}" "${process.arch}". Error:`, err);
|
|
49
|
+
console.info("Falling back to locally built binaries");
|
|
50
|
+
try {
|
|
51
|
+
delete require.cache[require.resolve(prebuildBinPath)];
|
|
52
|
+
}
|
|
53
|
+
catch (err) { }
|
|
54
|
+
}
|
|
49
55
|
}
|
|
50
56
|
}
|
|
51
57
|
const modulePath = await getCompiledLlamaCppBinaryPath();
|
package/dist/utils/getBin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBin.js","sourceRoot":"","sources":["../../src/utils/getBin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EACH,0BAA0B,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,mBAAmB,EAC/H,kBAAkB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,uBAAuB,EAAC,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAC,6BAA6B,EAAC,MAAM,sBAAsB,CAAC;AAEnE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACpC,
|
|
1
|
+
{"version":3,"file":"getBin.js","sourceRoot":"","sources":["../../src/utils/getBin.ts"],"names":[],"mappings":"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"}
|
package/llama/addon.cpp
CHANGED
|
@@ -193,16 +193,9 @@ class LLAMAContext : public Napi::ObjectWrap<LLAMAContext> {
|
|
|
193
193
|
Napi::Value Encode(const Napi::CallbackInfo& info) {
|
|
194
194
|
std::string text = info[0].As<Napi::String>().Utf8Value();
|
|
195
195
|
|
|
196
|
-
std::vector<llama_token> tokens(text
|
|
197
|
-
int n = llama_tokenize(ctx, text.data(), tokens.data(), text.size(), false);
|
|
196
|
+
std::vector<llama_token> tokens = llama_tokenize(ctx, text, false);
|
|
198
197
|
|
|
199
|
-
|
|
200
|
-
Napi::Error::New(info.Env(), "String expected").ThrowAsJavaScriptException();
|
|
201
|
-
return info.Env().Undefined();
|
|
202
|
-
}
|
|
203
|
-
tokens.resize(n);
|
|
204
|
-
|
|
205
|
-
Napi::Uint32Array result = Napi::Uint32Array::New(info.Env(), n);
|
|
198
|
+
Napi::Uint32Array result = Napi::Uint32Array::New(info.Env(), tokens.size());
|
|
206
199
|
for (size_t i = 0; i < tokens.size(); ++i) { result[i] = static_cast<uint32_t>(tokens[i]); }
|
|
207
200
|
|
|
208
201
|
return result;
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|