typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
# GPT4All Node.js API
2023-12-15 13:44:39 -05:00
Native Node.js LLM bindings for all.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
```sh
2023-12-15 13:44:39 -05:00
yarn add gpt4all@latest
npm install gpt4all@latest
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
2023-12-15 13:44:39 -05:00
pnpm install gpt4all@latest
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
```
The original [GPT4All typescript bindings ](https://github.com/nomic-ai/gpt4all-ts ) are now out of date.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* New bindings created by [jacoobes ](https://github.com/jacoobes ), [limez ](https://github.com/iimez ) and the [nomic ai community ](https://home.nomic.ai ), for all to use.
* The nodejs api has made strides to mirror the python api. It is not 100% mirrored, but many pieces of the api resemble its python counterpart.
* Everything should work out the box.
* See [API Reference ](#api-reference )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
2023-12-15 13:44:39 -05:00
### Chat Completion
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
```js
import { createCompletion, loadModel } from '../src/gpt4all.js'
2023-12-15 13:44:39 -05:00
const model = await loadModel('mistral-7b-openorca.Q4_0.gguf', { verbose: true });
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
const response = await createCompletion(model, [
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
{ role : 'system', content: 'You are meant to be annoying and unhelpful.' },
{ role : 'user', content: 'What is 1 + 1?' }
]);
```
2023-12-15 13:44:39 -05:00
### Embedding
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
```js
import { createEmbedding, loadModel } from '../src/gpt4all.js'
const model = await loadModel('ggml-all-MiniLM-L6-v2-f16', { verbose: true });
const fltArray = createEmbedding(model, "Pain is inevitable, suffering optional");
```
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
### Build Instructions
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* binding.gyp is compile config
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* Tested on Ubuntu. Everything seems to work fine
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* Tested on Windows. Everything works fine.
* Sparse testing on mac os.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* MingW works as well to build the gpt4all-backend. **HOWEVER** , this package works only with MSVC built dlls.
### Requirements
* git
* [node.js >= 18.0.0 ](https://nodejs.org/en )
* [yarn ](https://yarnpkg.com/ )
* [node-gyp ](https://github.com/nodejs/node-gyp )
* all of its requirements.
* (unix) gcc version 12
* (win) msvc version 143
* Can be obtained with visual studio 2022 build tools
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* python 3
2023-10-18 12:09:52 -04:00
* On Windows and Linux, building GPT4All requires the complete Vulkan SDK. You may download it from here: https://vulkan.lunarg.com/sdk/home
* macOS users do not need Vulkan, as GPT4All will use Metal instead.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
### Build (from source)
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
```sh
git clone https://github.com/nomic-ai/gpt4all.git
cd gpt4all-bindings/typescript
```
* The below shell commands assume the current working directory is `typescript` .
* To Build and Rebuild:
```sh
yarn
```
* llama.cpp git submodule for gpt4all can be possibly absent. If this is the case, make sure to run in llama.cpp parent directory
```sh
git submodule update --init --depth 1 --recursive
```
```sh
yarn build:backend
```
This will build platform-dependent dynamic libraries, and will be located in runtimes/(platform)/native The only current way to use them is to put them in the current working directory of your application. That is, **WHEREVER YOU RUN YOUR NODE APPLICATION**
* llama-xxxx.dll is required.
* According to whatever model you are using, you'll need to select the proper model loader.
* For example, if you running an Mosaic MPT model, you will need to select the mpt-(buildvariant).(dynamiclibrary)
### Test
```sh
yarn test
```
### Source Overview
#### src/
* Extra functions to help aid devex
* Typings for the native node addon
* the javascript interface
#### test/
* simple unit testings for some functions exported.
* more advanced ai testing is not handled
#### spec/
* Average look and feel of the api
* Should work assuming a model and libraries are installed locally in working directory
#### index.cc
* The bridge between nodejs and c. Where the bindings are.
#### prompt.cc
* Handling prompting and inference of models in a threadsafe, asynchronous way.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
### Known Issues
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* why your model may be spewing bull 💩
* The downloaded model is broken (just reinstall or download from official site)
* That's it so far
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
### Roadmap
This package is in active development, and breaking changes may happen until the api stabilizes. Here's what's the todo list:
* \[x] prompt models via a threadsafe function in order to have proper non blocking behavior in nodejs
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* \[ ] ~~createTokenStream, an async iterator that streams each token emitted from the model. Planning on following this [example](https://github.com/nodejs/node-addon-examples/tree/main/threadsafe-async-iterator)~~ May not implement unless someone else can complete
* \[x] proper unit testing (integrate with circle ci)
* \[x] publish to npm under alpha tag `gpt4all@alpha`
* \[x] have more people test on other platforms (mac tester needed)
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* \[x] switch to new pluggable backend
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* \[ ] NPM bundle size reduction via optionalDependencies strategy (need help)
* Should include prebuilds to avoid painful node-gyp errors
* \[ ] createChatSession ( the python equivalent to create\_chat\_session )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
### API Reference
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
<!-- Generated by documentation.js. Update this documentation by updating the source code. -->
##### Table of Contents
* [ModelFile ](#modelfile )
* [gptj ](#gptj )
* [llama ](#llama )
* [mpt ](#mpt )
* [replit ](#replit )
* [type ](#type )
2023-12-15 13:44:39 -05:00
* [InferenceModel ](#inferencemodel )
* [dispose ](#dispose )
* [EmbeddingModel ](#embeddingmodel )
* [dispose ](#dispose-1 )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [LLModel ](#llmodel )
* [constructor ](#constructor )
* [Parameters ](#parameters )
* [type ](#type-1 )
* [name ](#name )
* [stateSize ](#statesize )
* [threadCount ](#threadcount )
* [setThreadCount ](#setthreadcount )
* [Parameters ](#parameters-1 )
* [raw\_prompt ](#raw_prompt )
* [Parameters ](#parameters-2 )
* [embed ](#embed )
* [Parameters ](#parameters-3 )
* [isModelLoaded ](#ismodelloaded )
* [setLibraryPath ](#setlibrarypath )
* [Parameters ](#parameters-4 )
* [getLibraryPath ](#getlibrarypath )
2023-12-15 13:44:39 -05:00
* [initGpuByString ](#initgpubystring )
* [Parameters ](#parameters-5 )
* [hasGpuDevice ](#hasgpudevice )
* [listGpu ](#listgpu )
* [dispose ](#dispose-2 )
* [GpuDevice ](#gpudevice )
* [type ](#type-2 )
* [LoadModelOptions ](#loadmodeloptions )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [loadModel ](#loadmodel )
* [Parameters ](#parameters-6 )
2023-12-15 13:44:39 -05:00
* [createCompletion ](#createcompletion )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [Parameters ](#parameters-7 )
2023-12-15 13:44:39 -05:00
* [createEmbedding ](#createembedding )
* [Parameters ](#parameters-8 )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [CompletionOptions ](#completionoptions )
* [verbose ](#verbose )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* [systemPromptTemplate ](#systemprompttemplate )
* [promptTemplate ](#prompttemplate )
* [promptHeader ](#promptheader )
* [promptFooter ](#promptfooter )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [PromptMessage ](#promptmessage )
* [role ](#role )
* [content ](#content )
* [prompt\_tokens ](#prompt_tokens )
* [completion\_tokens ](#completion_tokens )
* [total\_tokens ](#total_tokens )
* [CompletionReturn ](#completionreturn )
* [model ](#model )
* [usage ](#usage )
* [choices ](#choices )
* [CompletionChoice ](#completionchoice )
* [message ](#message )
* [LLModelPromptContext ](#llmodelpromptcontext )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* [logitsSize ](#logitssize )
* [tokensSize ](#tokenssize )
* [nPast ](#npast )
* [nCtx ](#nctx )
* [nPredict ](#npredict )
* [topK ](#topk )
* [topP ](#topp )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [temp ](#temp )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* [nBatch ](#nbatch )
* [repeatPenalty ](#repeatpenalty )
* [repeatLastN ](#repeatlastn )
* [contextErase ](#contexterase )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [createTokenStream ](#createtokenstream )
2023-12-15 13:44:39 -05:00
* [Parameters ](#parameters-9 )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [DEFAULT\_DIRECTORY ](#default_directory )
* [DEFAULT\_LIBRARIES\_DIRECTORY ](#default_libraries_directory )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* [DEFAULT\_MODEL\_CONFIG ](#default_model_config )
2023-12-15 13:44:39 -05:00
* [DEFAULT\_PROMPT\_CONTEXT ](#default_prompt_context )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* [DEFAULT\_MODEL\_LIST\_URL ](#default_model_list_url )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [downloadModel ](#downloadmodel )
2023-12-15 13:44:39 -05:00
* [Parameters ](#parameters-10 )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* [Examples ](#examples )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [DownloadModelOptions ](#downloadmodeloptions )
* [modelPath ](#modelpath )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* [verbose ](#verbose-1 )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* [url ](#url )
* [md5sum ](#md5sum )
* [DownloadController ](#downloadcontroller )
* [cancel ](#cancel )
* [promise ](#promise )
#### ModelFile
Full list of models available
2023-12-15 13:44:39 -05:00
DEPRECATED!! These model names are outdated and this type will not be maintained, please use a string literal instead
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
##### gptj
List of GPT-J Models
Type: (`"ggml-gpt4all-j-v1.3-groovy.bin"` | `"ggml-gpt4all-j-v1.2-jazzy.bin"` | `"ggml-gpt4all-j-v1.1-breezy.bin"` | `"ggml-gpt4all-j.bin"` )
##### llama
List Llama Models
Type: (`"ggml-gpt4all-l13b-snoozy.bin"` | `"ggml-vicuna-7b-1.1-q4_2.bin"` | `"ggml-vicuna-13b-1.1-q4_2.bin"` | `"ggml-wizardLM-7B.q4_2.bin"` | `"ggml-stable-vicuna-13B.q4_2.bin"` | `"ggml-nous-gpt4-vicuna-13b.bin"` | `"ggml-v3-13b-hermes-q5_1.bin"` )
##### mpt
List of MPT Models
Type: (`"ggml-mpt-7b-base.bin"` | `"ggml-mpt-7b-chat.bin"` | `"ggml-mpt-7b-instruct.bin"` )
##### replit
List of Replit Models
Type: `"ggml-replit-code-v1-3b.bin"`
#### type
Model architecture. This argument currently does not have any functionality and is just used as descriptive identifier for user.
2023-12-15 13:44:39 -05:00
Type: ModelType
#### InferenceModel
InferenceModel represents an LLM which can make chat predictions, similar to GPT transformers.
##### dispose
delete and cleanup the native model
Returns **void**  
#### EmbeddingModel
EmbeddingModel represents an LLM which can create embeddings, which are float arrays
##### dispose
delete and cleanup the native model
Returns **void**  
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
#### LLModel
LLModel class representing a language model.
This is a base class that provides common functionality for different types of language models.
##### constructor
Initialize a new LLModel.
###### Parameters
* `path` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** Absolute path to the model file.
<!-- -->
* Throws ** [Error ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Error )** If the model file does not exist.
##### type
either 'gpt', mpt', or 'llama' or undefined
2023-12-15 13:44:39 -05:00
Returns ** (ModelType | [undefined ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/undefined ))** 
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
##### name
The name of the model.
Returns ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** 
##### stateSize
Get the size of the internal state of the model.
NOTE: This state data is specific to the type of model you have created.
Returns ** [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )** the size in bytes of the internal state of the model
##### threadCount
Get the number of threads used for model inference.
The default is the number of physical cores your computer has.
Returns ** [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )** The number of threads used for model inference.
##### setThreadCount
Set the number of threads used for model inference.
###### Parameters
* `newNumber` ** [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )** The new number of threads.
Returns **void**  
##### raw\_prompt
Prompt the model with a given input and optional parameters.
This is the raw output from model.
Use the prompt function exported for a value
###### Parameters
* `q` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** The prompt input.
* `params` **Partial<[LLModelPromptContext](#llmodelpromptcontext)>** Optional parameters for the prompt context.
* `callback` **function (res: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)): void**  
Returns **void** The result of the model prompt.
##### embed
Embed text with the model. Keep in mind that
not all models can embed text, (only bert can embed as of 07/16/2023 (mm/dd/yyyy))
Use the prompt function exported for a value
###### Parameters
* `text` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** 
* `q` The prompt input.
* `params` Optional parameters for the prompt context.
Returns ** [Float32Array ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Float32Array )** The result of the model prompt.
##### isModelLoaded
Whether the model is loaded or not.
Returns ** [boolean ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean )** 
##### setLibraryPath
Where to search for the pluggable backend libraries
###### Parameters
* `s` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** 
Returns **void**  
##### getLibraryPath
Where to get the pluggable backend libraries
Returns ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** 
2023-12-15 13:44:39 -05:00
##### initGpuByString
Initiate a GPU by a string identifier.
###### Parameters
* `memory_required` ** [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )** Should be in the range size\_t or will throw
* `device_name` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** 'amd' | 'nvidia' | 'intel' | 'gpu' | gpu name.
read LoadModelOptions.device for more information
Returns ** [boolean ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean )** 
##### hasGpuDevice
From C documentation
Returns ** [boolean ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean )** True if a GPU device is successfully initialized, false otherwise.
##### listGpu
GPUs that are usable for this LLModel
* Throws **any** if hasGpuDevice returns false (i think)
Returns ** [Array ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array )< [GpuDevice](#gpudevice)>** 
##### dispose
delete and cleanup the native model
Returns **void**  
#### GpuDevice
an object that contains gpu data on this machine.
##### type
same as VkPhysicalDeviceType
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
#### LoadModelOptions
Options that configure a model's behavior.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
#### loadModel
Loads a machine learning model with the specified name. The defacto way to create a model.
By default this will download a model from the official GPT4ALL website, if a model is not present at given path.
##### Parameters
* `modelName` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** The name of the model to load.
2023-12-15 13:44:39 -05:00
* `options` ** ([LoadModelOptions](#loadmodeloptions) | [undefined ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/undefined ))?** (Optional) Additional options for loading the model.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
2023-12-15 13:44:39 -05:00
Returns ** [Promise ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise )< ([InferenceModel](#inferencemodel) | [EmbeddingModel ](#embeddingmodel ))>** A promise that resolves to an instance of the loaded LLModel.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
#### createCompletion
The nodejs equivalent to python binding's chat\_completion
##### Parameters
2023-12-15 13:44:39 -05:00
* `model` ** [InferenceModel ](#inferencemodel )** The language model object.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* `messages` ** [Array ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array )< [PromptMessage](#promptmessage)>** The array of messages for the conversation.
* `options` ** [CompletionOptions ](#completionoptions )** The options for creating the completion.
Returns ** [CompletionReturn ](#completionreturn )** The completion result.
#### createEmbedding
The nodejs moral equivalent to python binding's Embed4All().embed()
meow
##### Parameters
2023-12-15 13:44:39 -05:00
* `model` ** [EmbeddingModel ](#embeddingmodel )** The language model object.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
* `text` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** text to embed
Returns ** [Float32Array ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Float32Array )** The completion result.
#### CompletionOptions
**Extends Partial\<LLModelPromptContext>**
The options for creating the completion.
##### verbose
Indicates if verbose logging is enabled.
Type: [boolean ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### systemPromptTemplate
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Template for the system message. Will be put before the conversation with %1 being replaced by all system messages.
Note that if this is not defined, system messages will not be included in the prompt.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### promptTemplate
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Template for user messages, with %1 being replaced by the message.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [boolean ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### promptHeader
The initial instruction for the model, on top of the prompt
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
##### promptFooter
The last instruction for the model, appended to the end of the prompt.
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
#### PromptMessage
A message in the conversation, identical to OpenAI's chat message.
##### role
The role of the message.
Type: (`"system"` | `"assistant"` | `"user"` )
##### content
The message content.
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
#### prompt\_tokens
The number of tokens used in the prompt.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
#### completion\_tokens
The number of tokens used in the completion.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
#### total\_tokens
The total number of tokens used.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
#### CompletionReturn
The result of the completion, similar to OpenAI's format.
##### model
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
The model used for the completion.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
##### usage
Token usage report.
Type: {prompt\_tokens: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number ), completion\_tokens: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number ), total\_tokens: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )}
##### choices
The generated completions.
Type: [Array ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array )< [CompletionChoice](#completionchoice)>
#### CompletionChoice
A completion choice, similar to OpenAI's format.
##### message
Response message
Type: [PromptMessage ](#promptmessage )
#### LLModelPromptContext
Model inference arguments for generating completions.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### logitsSize
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The size of the raw logits vector.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### tokensSize
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The size of the raw tokens vector.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### nPast
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The number of tokens in the past conversation.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### nCtx
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The number of tokens possible in the context window.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### nPredict
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The number of tokens to predict.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### topK
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The top-k logits to sample from.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Top-K sampling selects the next token only from the top K most likely tokens predicted by the model.
It helps reduce the risk of generating low-probability or nonsensical tokens, but it may also limit
the diversity of the output. A higher value for top-K (eg., 100) will consider more tokens and lead
to more diverse text, while a lower value (eg., 10) will focus on the most probable tokens and generate
more conservative text. 30 - 60 is a good range for most tasks.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### topP
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The nucleus sampling probability threshold.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Top-P limits the selection of the next token to a subset of tokens with a cumulative probability
above a threshold P. This method, also known as nucleus sampling, finds a balance between diversity
and quality by considering both token probabilities and the number of tokens available for sampling.
When using a higher value for top-P (eg., 0.95), the generated text becomes more diverse.
On the other hand, a lower value (eg., 0.1) produces more focused and conservative text.
The default value is 0.4, which is aimed to be the middle ground between focus and diversity, but
for more creative tasks a higher top-p value will be beneficial, about 0.5-0.9 is a good range for that.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
##### temp
The temperature to adjust the model's output distribution.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Temperature is like a knob that adjusts how creative or focused the output becomes. Higher temperatures
(eg., 1.2) increase randomness, resulting in more imaginative and diverse text. Lower temperatures (eg., 0.5)
make the output more focused, predictable, and conservative. When the temperature is set to 0, the output
becomes completely deterministic, always selecting the most probable next token and producing identical results
each time. A safe range would be around 0.6 - 0.85, but you are free to search what value fits best for you.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### nBatch
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The number of predictions to generate in parallel.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
By splitting the prompt every N tokens, prompt-batch-size reduces RAM usage during processing. However,
this can increase the processing time as a trade-off. If the N value is set too low (e.g., 10), long prompts
with 500+ tokens will be most affected, requiring numerous processing runs to complete the prompt processing.
To ensure optimal performance, setting the prompt-batch-size to 2048 allows processing of all tokens in a single run.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### repeatPenalty
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The penalty factor for repeated tokens.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Repeat-penalty can help penalize tokens based on how frequently they occur in the text, including the input prompt.
A token that has already appeared five times is penalized more heavily than a token that has appeared only one time.
A value of 1 means that there is no penalty and values larger than 1 discourage repeated tokens.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### repeatLastN
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The number of last tokens to penalize.
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
The repeat-penalty-tokens N option controls the number of tokens in the history to consider for penalizing repetition.
A larger value will look further back in the generated text to prevent repetitions, while a smaller value will only
consider recent tokens.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### contextErase
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
The percentage of context to erase if the context window is exceeded.
Type: [number ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number )
#### createTokenStream
TODO: Help wanted to implement this
##### Parameters
* `llmodel` ** [LLModel ](#llmodel )** 
* `messages` ** [Array ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array )< [PromptMessage](#promptmessage)>** 
* `options` ** [CompletionOptions ](#completionoptions )** 
Returns **function (ll: [LLModel](#llmodel)): AsyncGenerator<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>**  
#### DEFAULT\_DIRECTORY
From python api:
models will be stored in (homedir)/.cache/gpt4all/\`
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
#### DEFAULT\_LIBRARIES\_DIRECTORY
From python api:
The default path for dynamic libraries to be stored.
You may separate paths by a semicolon to search in multiple areas.
This searches DEFAULT\_DIRECTORY/libraries, cwd/libraries, and finally cwd.
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
#### DEFAULT\_MODEL\_CONFIG
Default model configuration.
Type: ModelConfig
2023-12-15 13:44:39 -05:00
#### DEFAULT\_PROMPT\_CONTEXT
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Default prompt context.
Type: [LLModelPromptContext ](#llmodelpromptcontext )
#### DEFAULT\_MODEL\_LIST\_URL
Default model list url.
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
#### downloadModel
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Initiates the download of a model file.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
By default this downloads without waiting. use the controller returned to alter this behavior.
##### Parameters
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
* `modelName` ** [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )** The model to be downloaded.
* `options` **DownloadOptions** to pass into the downloader. Default is { location: (cwd), verbose: false }.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
##### Examples
```javascript
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
const download = downloadModel('ggml-gpt4all-j-v1.3-groovy.bin')
download.promise.then(() => console.log('Downloaded!'))
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
```
* Throws ** [Error ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Error )** If the model already exists in the specified location.
* Throws ** [Error ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Error )** If the model cannot be found at the specified url.
Returns ** [DownloadController ](#downloadcontroller )** object that allows controlling the download process.
#### DownloadModelOptions
Options for the model download process.
##### modelPath
location to download the model.
Default is process.cwd(), or the current working directory
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
##### verbose
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Debug mode -- check how long it took to download in seconds
Type: [boolean ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean )
##### url
2023-10-19 15:25:37 -04:00
Remote download url. Defaults to `https://gpt4all.io/models/gguf/<modelName>`
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
##### md5sum
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
MD5 sum of the model file. If this is provided, the downloaded file will be checked against this sum.
If the sums do not match, an error will be thrown and the file will be deleted.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Type: [string ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String )
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
#### DownloadController
Model download controller.
##### cancel
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Cancel the request to download if this is called.
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
Type: function (): void
##### promise
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
A promise resolving to the downloaded models config once the download is done
typescript: fix final bugs and polishing, circle ci documentation (#960)
* fix: esm and cjs compatibility
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update prebuild.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix gpt4all.js
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Fix compile for windows and linux again. PLEASE DON'T REVERT THISgit gui!
* version bump
* polish up spec and build scripts
* lock file refresh
* fix: proper resource closing and error handling
* check make sure libPath not null
* add msvc build script and update readme requirements
* python workflows in circleci
* dummy python change
* no need for main
* second hold for pypi deploy
* let me deploy pls
* bring back when condition
* Typo, ignore list (#967)
Fix typo in javadoc,
Add word to ignore list for codespellrc
---------
Co-authored-by: felix <felix@zaslavskiy.net>
* llmodel: change tokenToString to not use string_view (#968)
fixes a definite use-after-free and likely avoids some other
potential ones - std::string will convert to a std::string_view
automatically but as soon as the std::string in question goes out of
scope it is already freed and the string_view is pointing at freed
memory - this is *mostly* fine if its returning a reference to the
tokenizer's internal vocab table but it's, imo, too easy to return a
reference to a dynamically constructed string with this as replit is
doing (and unfortunately needs to do to convert the internal whitespace
replacement symbol back to a space)
* Initial Library Loader for .NET Bindings / Update bindings to support newest changes (#763)
* Initial Library Loader
* Load library as part of Model factory
* Dynamically search and find the dlls
* Update tests to use locally built runtimes
* Fix dylib loading, add macos runtime support for sample/tests
* Bypass automatic loading by default.
* Only set CMAKE_OSX_ARCHITECTURES if not already set, allow cross-compile
* Switch Loading again
* Update build scripts for mac/linux
* Update bindings to support newest breaking changes
* Fix build
* Use llmodel for Windows
* Actually, it does need to be libllmodel
* Name
* Remove TFMs, bypass loading by default
* Fix script
* Delete mac script
---------
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
* bump llama.cpp mainline to latest (#964)
* fix prompt context so it's preserved in class
* update setup.py
* metal replit (#931)
metal+replit
makes replit work with Metal and removes its use of `mem_per_token`
in favor of fixed size scratch buffers (closer to llama.cpp)
* update documentation scripts and generation to include readme.md
* update readme and documentation for source
* begin tests, import jest, fix listModels export
* fix typo
* chore: update spec
* fix: finally, reduced potential of empty string
* chore: add stub for createTokenSream
* refactor: protecting resources properly
* add basic jest tests
* update
* update readme
* refactor: namespace the res variable
* circleci integration to automatically build docs
* add starter docs
* typo
* more circle ci typo
* forgot to add nodejs circle ci orb
* fix circle ci
* feat: @iimez verify download and fix prebuild script
* fix: oops, option name wrong
* fix: gpt4all utils not emitting docs
* chore: fix up scripts
* fix: update docs and typings for md5 sum
* fix: macos compilation
* some refactoring
* Update index.cc
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* update readme and enable exceptions on mac
* circle ci progress
* basic embedding with sbert (not tested & cpp side only)
* fix circle ci
* fix circle ci
* update circle ci script
* bruh
* fix again
* fix
* fixed required workflows
* fix ci
* fix pwd
* fix pwd
* update ci
* revert
* fix
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* update circle ci script
* prevent rebuild
* revmove noop
* Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* Update binding.gyp
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
* fix fs not found
* remove cpp 20 standard
* fix warnings, safer way to calculate arrsize
* readd build backend
* basic embeddings and yarn test"
* fix circle ci
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Update continue_config.yml
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
fix macos paths
update readme and roadmap
split up spec
update readme
check for url in modelsjson
update docs and inline stuff
update yarn configuration and readme
update readme
readd npm publish script
add exceptions
bruh one space broke the yaml
codespell
oops forgot to add runtimes folder
bump version
try code snippet https://support.circleci.com/hc/en-us/articles/8325075309339-How-to-install-NPM-on-Windows-images
add fallback for unknown architectures
attached to wrong workspace
hopefuly fix
moving everything under backend to persist
should work now
* Update README.md
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
---------
Signed-off-by: Jacob Nguyen <76754747+jacoobes@users.noreply.github.com>
Co-authored-by: Adam Treat <treat.adam@gmail.com>
Co-authored-by: Richard Guo <richardg7890@gmail.com>
Co-authored-by: Felix Zaslavskiy <felix.zaslavskiy@gmail.com>
Co-authored-by: felix <felix@zaslavskiy.net>
Co-authored-by: Aaron Miller <apage43@ninjawhale.com>
Co-authored-by: Tim Miller <drasticactions@users.noreply.github.com>
Co-authored-by: Tim Miller <innerlogic4321@ghmail.com>
2023-07-25 11:46:40 -04:00
feat(typescript)/dynamic template (#1287) (#1326)
* feat(typescript)/dynamic template (#1287)
* remove packaged yarn
* prompt templates update wip
* prompt template update
* system prompt template, update types, remove embed promises, cleanup
* support both snakecased and camelcased prompt context
* fix #1277 libbert, libfalcon and libreplit libs not being moved into the right folder after build
* added support for modelConfigFile param, allowing the user to specify a local file instead of downloading the remote models.json. added a warning message if code fails to load a model config. included prompt context docs by amogus.
* snakecase warning, put logic for loading local models.json into listModels, added constant for the default remote model list url, test improvements, simpler hasOwnProperty call
* add DEFAULT_PROMPT_CONTEXT, export new constants
* add md5sum testcase and fix constants export
* update types
* throw if attempting to list models without a source
* rebuild docs
* fix download logging undefined url, toFixed typo, pass config filesize in for future progress report
* added overload with union types
* bump to 2.2.0, remove alpha
* code speling
---------
Co-authored-by: Andreas Obersteiner <8959303+iimez@users.noreply.github.com>
2023-08-14 12:45:45 -04:00
Type: [Promise ](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise )\<ModelConfig>