UNPKG

node-llama-cpp

Version:

Run AI models locally on your machine with node.js bindings for llama.cpp. Enforce a JSON schema on the model output on the generation level

241 lines 7.7 kB
{ "name": "node-llama-cpp", "version": "3.13.0", "description": "Run AI models locally on your machine with node.js bindings for llama.cpp. Enforce a JSON schema on the model output on the generation level", "main": "./dist/index.js", "type": "module", "types": "./dist/index.d.ts", "bin": { "node-llama-cpp": "dist/cli/cli.js", "nlc": "dist/cli/cli.js" }, "files": [ "dist/", "templates/packed/", "llama/", "bins/", "package.json", "README.md", "LICENSE" ], "exports": { ".": { "import": "./dist/index.js", "node": "./dist/index.js", "types": "./dist/index.d.ts", "default": "./dist/index.js" }, "./commands": { "import": "./dist/commands.js", "node": "./dist/commands.js", "types": "./dist/commands.d.ts", "default": "./dist/commands.js" }, "./commands.js": { "import": "./dist/commands.js", "node": "./dist/commands.js", "types": "./dist/commands.d.ts", "default": "./dist/commands.js" } }, "engines": { "node": ">=20.0.0" }, "scripts": { "prepare": "node --experimental-require-module -e \"process.env.CI !== 'true' && console.log(require('husky').default())\"", "postinstall": "node ./dist/cli/cli.js postinstall", "postversion": "vite-node scripts/postVersion.ts", "prebuild": "rimraf ./dist ./tsconfig.tsbuildinfo", "build": "tsc --build tsconfig.json --force && npm run build:packTemplates", "build:packTemplates": "vite-node scripts/packTemplates.ts", "addPostinstallScript": "npm pkg set scripts.postinstall=\"node ./dist/cli/cli.js postinstall\"", "prewatch": "rimraf ./dist ./tsconfig.tsbuildinfo", "watch": "tsc --build tsconfig.json --watch --force", "cmake-js-llama": "cd llama && cmake-js", "test": "npm run test:typescript && npm run lint:eslint && npm run test:vitest", "test:vitest": "vitest run ./test", "test:standalone": "vitest run ./test/standalone", "test:standalone:interactive": "vitest watch ./test/standalone", "test:modelDependent": "vitest run ./test/modelDependent", "test:modelDependent:interactive": "vitest watch ./test/modelDependent", "test:typescript": "tsc --noEmit --project tsconfig.json", "lint": "npm run lint:eslint", "lint:eslint": "eslint --report-unused-disable-directives .", "format": "npm run lint:eslint -- --fix", "dev:setup:downloadAllTestModels": "vite-node test/utils/scripts/downloadAllTestModels.ts", "dev:setup": "npm run build && node ./dist/cli/cli.js source download --noUsageExample && npm run docs:generateTypedoc && npm run dev:setup:downloadAllTestModels", "dev:build": "npm run build && node ./dist/cli/cli.js source build --noUsageExample", "clean": "rm -rf ./node_modules ./dist ./tsconfig.tsbuildinfo ./test/.models ./docs/api ./docs/api-overrides ./templates/packed", "docs:generateTypedoc": "typedoc && rimraf ./docs/api/index.md ./docs/api/globals.md ./docs/api/functions/LlamaText.md", "docs:dev": "npm run docs:generateTypedoc && vitepress dev --cors", "docs:build": "npm run docs:generateTypedoc && vitepress build", "docs:preview": "npm run docs:generateTypedoc && vitepress preview" }, "repository": { "type": "git", "url": "git+https://github.com/withcatai/node-llama-cpp.git" }, "keywords": [ "llama", "llama-cpp", "llama.cpp", "bindings", "ai", "cmake", "cmake-js", "prebuilt-binaries", "llm", "gguf", "metal", "cuda", "vulkan", "grammar", "embedding", "rerank", "reranking", "json-grammar", "json-schema-grammar", "functions", "function-calling", "token-prediction", "speculative-decoding", "temperature", "minP", "topK", "topP", "seed", "json-schema", "raspberry-pi", "self-hosted", "local", "catai", "mistral", "deepseek", "qwen", "qwq", "gpt", "gpt-oss", "typescript", "lora", "batching", "gpu" ], "author": { "name": "Gilad S.", "url": "https://github.com/giladgd" }, "license": "MIT", "preferUnplugged": true, "bugs": { "url": "https://github.com/withcatai/node-llama-cpp/issues" }, "funding": { "type": "github", "url": "https://github.com/sponsors/giladgd" }, "homepage": "https://node-llama-cpp.withcat.ai", "devDependencies": { "@commitlint/cli": "^19.8.1", "@commitlint/config-conventional": "^19.8.1", "@eslint/compat": "^1.2.9", "@fontsource/inter": "^5.2.5", "@nolebase/vitepress-plugin-git-changelog": "^2.17.0", "@nolebase/vitepress-plugin-og-image": "^2.17.0", "@resvg/resvg-js": "^2.6.2", "@semantic-release/exec": "^7.1.0", "@semantic-release/github": "11.0.5", "@semantic-release/npm": "12.0.2", "@shikijs/vitepress-twoslash": "^3.4.0", "@stylistic/eslint-plugin": "^4.2.0", "@types/async-retry": "^1.4.9", "@types/bytes": "^3.1.5", "@types/cross-spawn": "^6.0.6", "@types/fs-extra": "^11.0.4", "@types/node": "^20.17.50", "@types/proper-lockfile": "^4.1.4", "@types/semver": "^7.7.0", "@types/validate-npm-package-name": "^4.0.2", "@types/which": "^3.0.4", "@types/yargs": "^17.0.33", "@vitest/coverage-v8": "^3.2.4", "@vitest/ui": "^3.2.4", "electron": "^37.2.4", "eslint": "^9.26.0", "eslint-import-resolver-typescript": "^4.4.4", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jsdoc": "^50.6.14", "eslint-plugin-n": "^17.18.0", "feed": "^5.0.0", "husky": "^9.1.7", "rehype": "^13.0.2", "rimraf": "^6.0.1", "semantic-release": "24.2.7", "sharp": "^0.34.1", "tslib": "^2.8.1", "typedoc": "^0.28.9", "typedoc-plugin-markdown": "^4.8.0", "typedoc-plugin-mdn-links": "^5.0.7", "typedoc-vitepress-theme": "^1.1.2", "typescript": "^5.9.2", "typescript-eslint": "^8.39.0", "vite-node": "^3.2.4", "vitepress": "^1.6.3", "vitepress-plugin-llms": "^1.7.2", "vitest": "^3.2.4", "zx": "^8.5.4" }, "dependencies": { "@huggingface/jinja": "^0.5.1", "async-retry": "^1.3.3", "bytes": "^3.1.2", "chalk": "^5.4.1", "chmodrp": "^1.0.2", "cmake-js": "^7.3.1", "cross-spawn": "^7.0.6", "env-var": "^7.5.0", "filenamify": "^6.0.0", "fs-extra": "^11.3.0", "ignore": "^7.0.4", "ipull": "^3.9.2", "is-unicode-supported": "^2.1.0", "lifecycle-utils": "^3.0.1", "log-symbols": "^7.0.0", "nanoid": "^5.1.5", "node-addon-api": "^8.3.1", "octokit": "^5.0.3", "ora": "^8.2.0", "pretty-ms": "^9.2.0", "proper-lockfile": "^4.1.2", "semver": "^7.7.1", "simple-git": "^3.27.0", "slice-ansi": "^7.1.0", "stdout-update": "^4.0.1", "strip-ansi": "^7.1.0", "validate-npm-package-name": "^6.0.0", "which": "^5.0.0", "yargs": "^17.7.2" }, "peerDependencies": { "typescript": ">=5.0.0" }, "peerDependenciesMeta": { "typescript": { "optional": true } }, "optionalDependencies": { "@node-llama-cpp/linux-arm64": "3.13.0", "@node-llama-cpp/linux-armv7l": "3.13.0", "@node-llama-cpp/linux-x64": "3.13.0", "@node-llama-cpp/linux-x64-cuda": "3.13.0", "@node-llama-cpp/linux-x64-cuda-ext": "3.13.0", "@node-llama-cpp/linux-x64-vulkan": "3.13.0", "@node-llama-cpp/mac-arm64-metal": "3.13.0", "@node-llama-cpp/mac-x64": "3.13.0", "@node-llama-cpp/win-arm64": "3.13.0", "@node-llama-cpp/win-x64": "3.13.0", "@node-llama-cpp/win-x64-cuda": "3.13.0", "@node-llama-cpp/win-x64-cuda-ext": "3.13.0", "@node-llama-cpp/win-x64-vulkan": "3.13.0" } }