@@ -4,6 +4,8 @@ declare module 'wink-nlp' {
4
4
// turn off exporting by default since we don't want to expose internal details
5
5
export { } ;
6
6
7
+ // *** BEGIN Language Model Specific Declarations ***
8
+ // These should be always in sync with the langauge model's type declarations.
7
9
// these types are internal details of the implementing model
8
10
type StemAddon = unknown ;
9
11
type LemmatizeAddon = unknown ;
@@ -40,6 +42,7 @@ declare module 'wink-nlp' {
40
42
featureFn : FeatureFn ;
41
43
addons : ModelAddons ;
42
44
}
45
+ // *** END Language Model Specific Declarations ***
43
46
44
47
// its helpers
45
48
@@ -106,25 +109,25 @@ declare module 'wink-nlp' {
106
109
107
110
// Its
108
111
export interface ItsHelpers {
109
- case ( index : number , token : Token , cache : Cache ) : Case ;
110
- uniqueId ( index : number , token : Token ) : number ;
111
- negationFlag ( index : number , token : Token ) : boolean ;
112
- normal ( index : number , token : Token , cache : Cache ) : string ;
113
- contractionFlag ( index : number , token : Token ) : boolean ;
114
- pos ( index : number , token : Token , cache : Cache ) : PartOfSpeech ;
115
- precedingSpaces ( index : number , token : Token ) : string ;
116
- prefix ( index : number , token : Token , cache : Cache ) : string ;
117
- shape ( index : number , token : Token , cache : Cache ) : string ;
118
- stopWordFlag ( index : number , token : Token , cache : Cache ) : boolean ;
119
- abbrevFlag ( index : number , token : Token , cache : Cache ) : boolean ;
120
- suffix ( index : number , token : Token , cache : Cache ) : string ;
121
- type ( index : number , token : Token , cache : Cache ) : string ;
122
- value ( index : number , token : Token , cache : Cache ) : string ;
123
- stem ( index : number , token : Token , cache : Cache , addons : ModelAddons ) : string ;
124
- lemma ( index : number , token : Token , cache : Cache , addons : ModelAddons ) : string ;
112
+ case ( index : number , rdd : RawDocumentData ) : Case ;
113
+ uniqueId ( index : number , rdd : RawDocumentData ) : number ;
114
+ negationFlag ( index : number , rdd : RawDocumentData ) : boolean ;
115
+ normal ( index : number , rdd : RawDocumentData ) : string ;
116
+ contractionFlag ( index : number , rdd : RawDocumentData ) : boolean ;
117
+ pos ( index : number , rdd : RawDocumentData ) : PartOfSpeech ;
118
+ precedingSpaces ( index : number , rdd : RawDocumentData ) : string ;
119
+ prefix ( index : number , rdd : RawDocumentData ) : string ;
120
+ shape ( index : number , rdd : RawDocumentData ) : string ;
121
+ stopWordFlag ( index : number , rdd : RawDocumentData ) : boolean ;
122
+ abbrevFlag ( index : number , rdd : RawDocumentData ) : boolean ;
123
+ suffix ( index : number , rdd : RawDocumentData ) : string ;
124
+ type ( index : number , rdd : RawDocumentData ) : string ;
125
+ value ( index : number , rdd : RawDocumentData ) : string ;
126
+ stem ( index : number , rdd : RawDocumentData , addons : ModelAddons ) : string ;
127
+ lemma ( index : number , rdd : RawDocumentData , addons : ModelAddons ) : string ;
125
128
vector ( ) : number [ ] ;
126
129
detail ( ) : Detail ;
127
- markedUpText ( index : number , token : Token , cache : Cache ) : string ;
130
+ markedUpText ( index : number , rdd : RawDocumentData ) : string ;
128
131
span ( spanItem : number [ ] ) : number [ ] ;
129
132
sentenceWiseImportance ( rdd : RawDocumentData ) : SentenceImportance [ ] ;
130
133
sentiment ( spanItem : number [ ] ) : number ;
@@ -134,7 +137,7 @@ declare module 'wink-nlp' {
134
137
docBOWArray ( tf : ModelTermFrequencies ) : Bow ;
135
138
bow ( tf : ModelTermFrequencies ) : Bow ;
136
139
idf ( tf : ModelTermFrequencies , idf : ModelInverseDocumentFrequencies ) : Array < [ term : string , frequency : number ] > ;
137
- tf ( tf : ModelTermFrequencies , idf : ModelInverseDocumentFrequencies ) : Array < [ term : string , frequency : number ] > ;
140
+ tf ( tf : ModelTermFrequencies ) : Array < [ term : string , frequency : number ] > ;
138
141
modelJSON ( tf : ModelTermFrequencies , idf : ModelInverseDocumentFrequencies ) : string ;
139
142
}
140
143
@@ -146,6 +149,7 @@ declare module 'wink-nlp' {
146
149
freqTable < T > ( tokens : T [ ] ) : Array < [ token : T , freq : number ] > ;
147
150
bigrams < T > ( tokens : T [ ] ) : Array < [ T , T ] > ;
148
151
unique < T > ( tokens : T [ ] ) : T [ ] ;
152
+ vector ( token : string [ ] ) : number [ ] ;
149
153
}
150
154
151
155
// functions for use with document
@@ -168,19 +172,19 @@ declare module 'wink-nlp' {
168
172
}
169
173
170
174
export interface SelectedTokens {
171
- each ( f : ( token : ItemToken ) => void ) : void ;
172
- filter ( f : ( token : ItemToken ) => boolean ) : SelectedTokens ;
173
- itemAt ( k : number ) : ItemToken | undefined ;
175
+ each ( cb : ( ( item : ItemToken ) => void ) | ( ( item : ItemToken , index : number ) => void ) ) : void ;
176
+ filter ( cb : ( item : ItemToken ) => boolean ) : SelectedTokens ;
177
+ itemAt ( k : number ) : ItemToken ;
174
178
length ( ) : number ;
175
179
out ( ) : string [ ] ;
176
180
out < T > ( itsf : ItsFunction < T > ) : T [ ] | string [ ] ;
177
181
out < T , U > ( itsf : ItsFunction < T > , asf : AsFunction < T , U > ) : U | T [ ] | string [ ] ;
178
182
}
179
183
180
184
export interface Tokens {
181
- each ( f : ( token : ItemToken ) => void ) : void ;
182
- filter ( f : ( token : ItemToken ) => boolean ) : SelectedTokens ;
183
- itemAt ( k : number ) : ItemToken | undefined ;
185
+ each ( cb : ( ( item : ItemToken ) => void ) | ( ( item : ItemToken , index : number ) => void ) ) : void ;
186
+ filter ( cb : ( item : ItemToken ) => boolean ) : SelectedTokens ;
187
+ itemAt ( k : number ) : ItemToken ;
184
188
length ( ) : number ;
185
189
out ( ) : string [ ] ;
186
190
out < T > ( itsf : ItsFunction < T > ) : T [ ] | string [ ] ;
@@ -189,7 +193,7 @@ declare module 'wink-nlp' {
189
193
190
194
export interface ItemEntity {
191
195
parentDocument ( ) : Document ;
192
- markup ( beginMarker : string , endMarker : string ) : void ;
196
+ markup ( beginMarker ? : string , endMarker ? : string ) : void ;
193
197
out ( ) : string ;
194
198
out < T > ( itsf : ItsFunction < T > ) : T | string ;
195
199
parentSentence ( ) : ItemSentence ;
@@ -198,19 +202,19 @@ declare module 'wink-nlp' {
198
202
}
199
203
200
204
export interface SelectedEntities {
201
- each ( f : ( entity : ItemEntity ) => void ) : void ;
202
- filter ( f : ( entity : ItemEntity ) => boolean ) : SelectedEntities ;
203
- itemAt ( k : number ) : ItemEntity | undefined ;
205
+ each ( cb : ( ( item : ItemEntity ) => void ) | ( ( item : ItemEntity , index : number ) => void ) ) : void ;
206
+ filter ( cb : ( item : ItemEntity ) => boolean ) : SelectedEntities ;
207
+ itemAt ( k : number ) : ItemEntity ;
204
208
length ( ) : number ;
205
209
out ( ) : string [ ] ;
206
210
out < T > ( itsf : ItsFunction < T > ) : T [ ] | string [ ] ;
207
211
out < T , U > ( itsf : ItsFunction < T > , asf : AsFunction < T , U > ) : U | T [ ] | string [ ] ;
208
212
}
209
213
210
214
export interface Entities {
211
- each ( f : ( entity : ItemEntity ) => void ) : void ;
212
- filter ( f : ( entity : ItemEntity ) => boolean ) : SelectedEntities ;
213
- itemAt ( k : number ) : ItemEntity | undefined ;
215
+ each ( cb : ( ( item : ItemEntity ) => void ) | ( ( item : ItemEntity , index : number ) => void ) ) : void ;
216
+ filter ( cb : ( item : ItemEntity ) => boolean ) : SelectedEntities ;
217
+ itemAt ( k : number ) : ItemEntity ;
214
218
length ( ) : number ;
215
219
out ( ) : string [ ] ;
216
220
out < T > ( itsf : ItsFunction < T > ) : T [ ] | string [ ] ;
@@ -219,7 +223,7 @@ declare module 'wink-nlp' {
219
223
220
224
export interface ItemCustomEntity {
221
225
parentDocument ( ) : Document ;
222
- markup ( beginMarker : string , endMarker : string ) : void ;
226
+ markup ( beginMarker ? : string , endMarker ? : string ) : void ;
223
227
out ( ) : string ;
224
228
out < T > ( itsf : ItsFunction < T > ) : T | string ;
225
229
parentSentence ( ) : ItemSentence ;
@@ -228,19 +232,19 @@ declare module 'wink-nlp' {
228
232
}
229
233
230
234
export interface SelectedCustomEntities {
231
- each ( f : ( entity : ItemCustomEntity ) => void ) : void ;
232
- filter ( f : ( entity : ItemCustomEntity ) => boolean ) : SelectedCustomEntities ;
233
- itemAt ( k : number ) : ItemCustomEntity | undefined ;
235
+ each ( cb : ( ( item : ItemCustomEntity ) => void ) | ( ( item : ItemCustomEntity , index : number ) => void ) ) : void ;
236
+ filter ( cb : ( item : ItemCustomEntity ) => boolean ) : SelectedCustomEntities ;
237
+ itemAt ( k : number ) : ItemCustomEntity ;
234
238
length ( ) : number ;
235
239
out ( ) : string [ ] ;
236
240
out < T > ( itsf : ItsFunction < T > ) : T [ ] | string [ ] ;
237
241
out < T , U > ( itsf : ItsFunction < T > , asf : AsFunction < T , U > ) : U | T [ ] | string [ ] ;
238
242
}
239
243
240
244
export interface CustomEntities {
241
- each ( f : ( entity : ItemCustomEntity ) => void ) : void ;
242
- filter ( f : ( entity : ItemCustomEntity ) => boolean ) : SelectedCustomEntities ;
243
- itemAt ( k : number ) : ItemCustomEntity | undefined ;
245
+ each ( cb : ( ( item : ItemCustomEntity ) => void ) | ( ( item : ItemCustomEntity , index : number ) => void ) ) : void ;
246
+ filter ( cb : ( item : ItemCustomEntity ) => boolean ) : SelectedCustomEntities ;
247
+ itemAt ( k : number ) : ItemCustomEntity ;
244
248
length ( ) : number ;
245
249
out ( ) : string [ ] ;
246
250
out < T > ( itsf : ItsFunction < T > ) : T [ ] | string [ ] ;
@@ -249,7 +253,7 @@ declare module 'wink-nlp' {
249
253
250
254
export interface ItemSentence {
251
255
parentDocument ( ) : Document ;
252
- markup ( beginMarker : string , endMarker : string ) : void ;
256
+ markup ( beginMarker ? : string , endMarker ? : string ) : void ;
253
257
out ( ) : string ;
254
258
out < T > ( itsf : ItsFunction < T > ) : T | string ;
255
259
entities ( ) : Entities ;
@@ -259,8 +263,8 @@ declare module 'wink-nlp' {
259
263
}
260
264
261
265
export interface Sentences {
262
- each ( f : ( entity : ItemSentence ) => void ) : void ;
263
- itemAt ( k : number ) : ItemSentence | undefined ;
266
+ each ( cb : ( ( item : ItemSentence ) => void ) | ( ( item : ItemSentence , index : number ) => void ) ) : void ;
267
+ itemAt ( k : number ) : ItemSentence ;
264
268
length ( ) : number ;
265
269
out ( ) : string [ ] ;
266
270
out < T > ( itsf : ItsFunction < T > ) : T [ ] | string [ ] ;
@@ -277,6 +281,8 @@ declare module 'wink-nlp' {
277
281
sentences ( ) : Sentences ;
278
282
tokens ( ) : Tokens ;
279
283
printTokens ( ) : void ;
284
+ pipeConfig ( ) : string [ ] ;
285
+ contextualVectors ( lemma : boolean , specifcWordVectors : string [ ] , similarWordVectors : boolean , wordVectorsLimit : number ) : string ;
280
286
}
281
287
282
288
export interface CerExample {
@@ -295,6 +301,18 @@ declare module 'wink-nlp' {
295
301
patterns : string [ ] ;
296
302
}
297
303
304
+ // Wink word embeddings structure, should stay in sync with emdedding repo.
305
+ interface WordEmbedding {
306
+ precision : number ;
307
+ l2NormIndex : number ;
308
+ wordIndex : number ;
309
+ dimensions : number ;
310
+ unkVector : number [ ] ;
311
+ size : number ;
312
+ words : string [ ] ;
313
+ vectors : Record < string , number [ ] > ;
314
+ }
315
+
298
316
export interface WinkMethods {
299
317
readDoc ( text : string ) : Document ;
300
318
// returns number of learned entities
@@ -303,7 +321,7 @@ declare module 'wink-nlp' {
303
321
as : AsHelpers ;
304
322
}
305
323
306
- export default function WinkFn ( theModel : Model , pipe ?: string [ ] ) : WinkMethods ;
324
+ export default function WinkFn ( theModel : Model , pipe ?: string [ ] , wordEmbeddings ?: WordEmbedding ) : WinkMethods ;
307
325
}
308
326
309
327
declare module 'wink-nlp/utilities/bm25-vectorizer' {
@@ -348,6 +366,9 @@ declare module 'wink-nlp/utilities/similarity' {
348
366
tversky < T > ( setA : Set < T > , setB : Set < T > , alpha ?: number , beta ?: number ) : number ;
349
367
oo < T > ( setA : Set < T > , setB : Set < T > ) : number ;
350
368
} ;
369
+ vector : {
370
+ cosine ( vectorA : number [ ] , vectorB : number [ ] ) : number ;
371
+ } ;
351
372
}
352
373
353
374
const similarity : SimilarityHelper ;
0 commit comments