Eddie Antonio Santos
2356608b72
Change name to 'placeholder' to match lexical-models.
2019-05-03 08:05:30 -06:00
Eddie Antonio Santos
bc91ee9ec4
Use word breaking function in WordListModel.
2019-05-02 14:53:50 -06:00
Eddie Antonio Santos
dab2d0c2eb
Refactor: move placeholder word breaker to word_breakers directory/namespace.
2019-05-02 14:47:27 -06:00
Eddie Antonio Santos
89ad857210
Have TrieModel use a word-breaker internally.
2019-05-02 14:42:00 -06:00
Eddie Antonio Santos
a4db640621
Add word breaker as a parameter to TrieModel.
2019-05-02 14:33:28 -06:00
Eddie Antonio Santos
d2dd697706
Implement ASCII word breaker.
2019-05-02 13:50:47 -06:00
Eddie Antonio Santos
b2282c0349
Add new interfaces for word breaking.
2019-05-02 13:17:42 -06:00
Eddie Antonio Santos
617d657d69
Remove previous versions of the word breaker.
2019-05-02 12:57:04 -06:00
Eddie Antonio Santos
e3d98dddd3
Merge pull request #1748 from keymanapp/lmlayer-trie
...
[LMLayer] Trie-backed word list model
2019-04-29 21:32:01 -06:00
Eddie Antonio Santos
05de75229c
[LMLayer] Always accept wordlist as array of [word, count] pairs.
2019-04-29 20:39:31 -06:00
Eddie Antonio Santos
19b218cf97
Tweak current priority queue implementation.
2019-04-29 08:37:16 -06:00
Eddie Antonio Santos
dd94e4ba26
Remove checks for unsortedness.
2019-04-29 08:30:22 -06:00
Eddie Antonio Santos
58f429e344
Implement trie.firstN().
2019-04-29 08:25:31 -06:00
Eddie Antonio Santos
7dd22b59bd
Implement looking up a wordform in a trie.
...
This trie implementation allows for word forms to be converted to keys.
Since keys do not have to have the exact same spelling, capitalization,
or even Unicode normalization form as the desried word form, this
enables a somewhat search for word forms based on prefixes.
The implementation was at one point Conrad Irwin's trie-ing,
<9f1d2e0858 ?
but has been heavily modfied since.
2019-04-26 16:28:14 -06:00
Eddie Antonio Santos
3e913e14f0
Merge branch 'master' into lmlayer-cli
2019-04-16 12:43:33 -06:00
Eddie Antonio Santos
9b90c5e06e
Insert hacky code to make current lexical-model stuff working.
2019-03-28 13:45:36 -06:00
Joshua A. Horton
577075d6ab
Fixes #predict unit test.
2019-03-28 15:04:58 +07:00
Joshua A. Horton
66bf2856f5
For Suggestion application: OutputTarget.restoreTo
2019-03-28 10:10:10 +07:00
Joshua A. Horton
0f8c6b4db3
Merge branch 'web-lmlayer-model-registration' into lmlayer-wordbreak-spec
2019-03-06 10:21:37 +07:00
Joshua A. Horton
3b1e715f4b
Adjusts predictive model spec for 'configuring' based on 'capabilities'
2019-03-06 10:15:14 +07:00
Joshua A. Horton
b6cc287cb1
Renames the 'uninitialized' state to 'modelless', fixes (most?) docs.
2019-03-06 09:58:29 +07:00
Joshua A. Horton
473ed67b29
Adds a 'config' state to the LMLayer worker.
2019-03-06 09:35:46 +07:00
Joshua A. Horton
263af9c721
Addresses many of Eddie's PR review comments.
2019-03-06 08:24:57 +07:00
Joshua A. Horton
49bae3c774
Adds basic definitions for pending word-breaker implementation.
2019-03-05 16:16:42 +07:00
Joshua A. Horton
393dc5b270
LMLayer.initialize -> .activateModel, adds .deactivateModel.
2019-03-04 10:25:22 +07:00
Joshua A. Horton
320ac0901d
Implements a shutdown() function on LMLayer, killing the worker.
2019-03-04 09:01:34 +07:00
Joshua A. Horton
2bf999edee
Patches up the integrated tests to work with the model loading change.
2019-02-28 15:52:24 +07:00
Joshua A. Horton
6218b808dd
Retools how the LMLayer adds models, fixes most headless cases.
2019-02-28 14:45:42 +07:00
Joshua A. Horton
fb38399833
Adjusted models and their direct tests to be namespace-compatible.
2019-02-28 12:21:18 +07:00
Joshua A. Horton
b39dcd5588
Namespaces the existing model files in prep for move, to assist Git
2019-02-28 11:52:03 +07:00
Eddie Antonio Santos
82ba375fb5
Enable word list model in the top-level API.
2019-01-18 14:23:16 -07:00
Eddie Antonio Santos
a247bf8119
Implement prediction with multiple words.
2019-01-18 14:00:24 -07:00
Eddie Antonio Santos
baf8bdb12b
Implement predicting for the empty buffer.
2019-01-18 13:23:49 -07:00
Eddie Antonio Santos
89f9d8a2f1
Tidy up: define WordListModel in a IIFE so that it can have private constants.
2019-01-18 13:08:00 -07:00
Eddie Antonio Santos
2c8237c379
Implement simple prefix search for a single word.
2019-01-18 13:00:15 -07:00
Eddie Antonio Santos
4abbbc41a5
Suggest prefix via exhaustive search over word list.
2019-01-17 14:42:59 -07:00
Eddie Antonio Santos
198b6a1e3e
Test prefix queries.
2019-01-17 13:43:22 -07:00
Eddie Antonio Santos
d6b2b96621
Create stub for word list model.
2019-01-17 11:09:06 -07:00
Eddie Antonio Santos
c479d49adb
No longer allow model to be specified as source code.
2019-01-16 15:14:53 -07:00
Eddie Antonio Santos
42ffffc48b
Document the LMLayerWorker with state diagram.
2019-01-14 14:46:47 -07:00
Eddie Antonio Santos
626b9f2898
Remove TODO comments addressed in this PR.
2019-01-14 14:28:58 -07:00
Eddie Antonio Santos
c204f4b793
Implement token tracking in top-level API.
2019-01-14 13:36:57 -07:00
Eddie Antonio Santos
97a59ae8d0
Send back the token in the 'suggestions' message.
2019-01-14 13:17:14 -07:00
Eddie Antonio Santos
c1409c3e62
Update documentation/interfaces to be consistent with each other.
2019-01-11 15:28:34 -07:00
Eddie Antonio Santos
0e1cb0d55b
Rearrange different message type definitions.
2019-01-10 15:56:30 -07:00
Eddie Antonio Santos
f2dde2a7f9
Refactor: extract method: setupInitialState().
2019-01-10 15:39:56 -07:00
Eddie Antonio Santos
d943bdd54e
Refactor: LMLayerWorker now implements the state pattern: uninitialized and ready states.
2019-01-10 15:34:07 -07:00
Eddie Antonio Santos
f2b1335c97
LMLayerWorker [message: predict] works.
2019-01-10 14:35:23 -07:00
Eddie Antonio Santos
c35250c358
Fix how test was sending model.
2019-01-10 14:19:06 -07:00
Eddie Antonio Santos
3bae3faf5e
Change interfaces to allow for the dummy model.
2019-01-10 14:11:31 -07:00