@@ -35,6 +35,12 @@ public interface IPhraseSuggester : ISuggester
35
35
36
36
[ JsonProperty ( "smoothing" ) ]
37
37
SmoothingModelContainer Smoothing { get ; set ; }
38
+
39
+ [ JsonProperty ( "token_limit" ) ]
40
+ int ? TokenLimit { get ; set ; }
41
+
42
+ [ JsonProperty ( "force_unigrams" ) ]
43
+ bool ? ForceUnigrams { get ; set ; }
38
44
}
39
45
40
46
public class PhraseSuggester : SuggesterBase , IPhraseSuggester
@@ -48,6 +54,8 @@ public class PhraseSuggester : SuggesterBase, IPhraseSuggester
48
54
public IPhraseSuggestHighlight Highlight { get ; set ; }
49
55
public IPhraseSuggestCollate Collate { get ; set ; }
50
56
public SmoothingModelContainer Smoothing { get ; set ; }
57
+ public int ? TokenLimit { get ; set ; }
58
+ public bool ? ForceUnigrams { get ; set ; }
51
59
}
52
60
53
61
public class PhraseSuggesterDescriptor < T > : SuggestDescriptorBase < PhraseSuggesterDescriptor < T > , IPhraseSuggester , T > , IPhraseSuggester
@@ -62,6 +70,8 @@ public class PhraseSuggesterDescriptor<T> : SuggestDescriptorBase<PhraseSuggeste
62
70
IPhraseSuggestHighlight IPhraseSuggester . Highlight { get ; set ; }
63
71
IPhraseSuggestCollate IPhraseSuggester . Collate { get ; set ; }
64
72
SmoothingModelContainer IPhraseSuggester . Smoothing { get ; set ; }
73
+ int ? IPhraseSuggester . TokenLimit { get ; set ; }
74
+ bool ? IPhraseSuggester . ForceUnigrams { get ; set ; }
65
75
66
76
public PhraseSuggesterDescriptor < T > GramSize ( int ? gramSize ) => Assign ( a => a . GramSize = gramSize ) ;
67
77
@@ -85,5 +95,9 @@ public PhraseSuggesterDescriptor<T> Collate(Func<PhraseSuggestCollateDescriptor<
85
95
86
96
public PhraseSuggesterDescriptor < T > Smoothing ( Func < SmoothingModelContainerDescriptor , SmoothingModelContainer > selector ) =>
87
97
Assign ( a => a . Smoothing = selector ? . Invoke ( new SmoothingModelContainerDescriptor ( ) ) ) ;
98
+
99
+ public PhraseSuggesterDescriptor < T > TokenLimit ( int ? tokenLimit ) => Assign ( a => a . TokenLimit = tokenLimit ) ;
100
+
101
+ public PhraseSuggesterDescriptor < T > ForceUnigrams ( bool ? forceUnigrams = true ) => Assign ( a => a . ForceUnigrams = forceUnigrams ) ;
88
102
}
89
103
}
0 commit comments