withcatai/node-llama-cpp
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
解決する課題
Node.js を使用してローカルマシン上で大規模言語モデル(LLM)を実行する方法を提供し、複雑なセットアップや外部 API が不要になります。事前ビルドされたバイナリと自動ハードウェアアクセラレーションにより、AI モデルを JavaScript/TypeScript プロジェクトに統合する作業が簡素化されます。
仕組み
このプロジェクトは llama.cpp 用のバインディングセットとして機能し、Node.js 開発者が GGUF 形式のモデルをロードして実行できるようにします。利用可能なハードウェアアクセラレーション(Metal、CUDA、Vulkan)を自動検出・使用してパフォーマンスを最適化します。また、コードを書かずにモデルと即座に対話できる CLI も含まれています。
対象者
llama.cpp の複雑な C++ ビルドプロセスを管理したくない、またはクラウドベースの AI サービスに依存したくない、ローカル LLM をアプリに組み込みたい Node.js と TypeScript の開発者向けです。
ハイライト
- ハードウェアアクセラレーション:Metal、CUDA、Vulkan をネイティブにサポートし、ローカル推論を高速化。
- 構造化出力:JSON 応答を強制したり、特定の JSON スキーマに従わせることが可能。
- エージェント機能:関数呼び出しをサポートし、モデルが外部ツールと連携できるようにします。
- 開発者体験:完全な TypeScript サポートと、macOS、Linux、Windows 用の事前ビルドバイナリを提供。
- 高度な機能:埋め込みベクトルと再ランク付けのサポートを含む。
- セキュリティ:特殊トークン注入攻撃から保護。