whisper.cpp/examples/addon.node
sandrohanea 59fdcd19c8
whisper : add whisper_state + default state on the whisper_context (#523)
* Added whisper state + default state on the whisper_context

* Fixed some examples and bindings

* Fixed whisper_n_len (which was used in some binding) and added whisper_n_len_from_state

* Fixed comments

* whisper : reuse kv_cache_free() and fix compiler warnings

* whisper : clean-up the API comments

---------

Co-authored-by: Sandro Hanea <sandrohanea@microsoft.com>
Co-authored-by: Georgi Gerganov <ggerganov@gmail.com>
2023-03-05 21:42:19 +02:00
..
__test__ ci : add node addon test and optimize compilation configuration (#468) 2023-02-05 15:02:08 +02:00
.gitignore addon.node : using whisper as a Node.js addon (#443) 2023-02-04 09:10:25 +02:00
CMakeLists.txt examples : refactor in order to reuse code and reduce duplication (#482) 2023-02-15 19:28:10 +02:00
README.md ci : add node addon test and optimize compilation configuration (#468) 2023-02-05 15:02:08 +02:00
addon.cpp whisper : add whisper_state + default state on the whisper_context (#523) 2023-03-05 21:42:19 +02:00
index.js addon.node : using whisper as a Node.js addon (#443) 2023-02-04 09:10:25 +02:00
package.json ci : add node addon test and optimize compilation configuration (#468) 2023-02-05 15:02:08 +02:00

README.md

addon

This is an addon demo that can perform whisper model reasoning in node and electron environments, based on cmake-js. It can be used as a reference for using the whisper.cpp project in other node projects.

Install

npm install

Compile

Make sure it is in the project root directory and compiled with make-js.

npx cmake-js compile -T whisper-addon -B Release

For Electron addon and cmake-js options, you can see cmake-js and make very few configuration changes.

Such as appointing special cmake path:

npx cmake-js compile -c 'xxx/cmake' -T whisper-addon -B Release

Run

cd examples/addon.node

node index.js --language='language' --model='model-path' --fname_inp='file-path'

Because this is a simple Demo, only the above parameters are set in the node environment.

Other parameters can also be specified in the node environment.