Wisty.js is a JavaScript natural language processing library to build contextual chatbots or virtual assistants on the web.
-
Powered by machine learning thanks to TensorFlow.js.
-
Supports training and inference in Node.js and most browsers : you can integrate a bot into your front-end without having to rely on some infrastructure or a cloud service.
-
It reduces the amount of hardcoded logic you have to write : new features are just a few training dialogs away.
The project is in alpha : the API is unstable as new feature keeps being added.
$ npm install wisty
import * as wisty from 'wisty';
wisty.tools.parseStories(...);
If you intend to run Wisty on Node.js, then the TensorFlow C Backend can speeds up your bot :
$ npm install @tensorflow/tfjs-node
const tf = require('@tensorflow/tfjs-node');
const wisty = require('wisty');
You can also use CDNs :
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"></script>
<!--
If you intend to use Universal Sentence Encoder model :
<script src="https://cdn.jsdelivr.net/npm/@tensorflow-models/universal-sentence-encoder"></script>
If you attend to parse WistyML Training files :
<script src="commonmark.min.js"></script>
(see https://github.com/commonmark/commonmark.js)
-->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/index.umd.min.js"></script>
As the API is currently unstable, it is recommended to use a fixed version.
You can find open source demos of chatbots running with Wisty.js in the demos folder.
-
Passwords : An assistant trying to help you identify yourself on a web site if you have troubles logging in.
- The implementation is quick and dirty JavaScript in the HTML and a customized style for BotUI.
-
Restaurant : A chatbot taking orders for a restaurant.
- Implemented from scratch with Vue.js 3 and Vite.
For the moment, only the API reference is available on GitHub Pages.
Wisty.js is licensed under the MIT license.