@@ -41,6 +41,12 @@ public interface IPhraseSuggester : ISuggester
41
41
42
42
[ JsonProperty ( "smoothing" ) ]
43
43
SmoothingModelContainer Smoothing { get ; set ; }
44
+
45
+ [ JsonProperty ( "token_limit" ) ]
46
+ int ? TokenLimit { get ; set ; }
47
+
48
+ [ JsonProperty ( "force_unigrams" ) ]
49
+ bool ? ForceUnigrams { get ; set ; }
44
50
}
45
51
46
52
public class PhraseSuggester : SuggesterBase , IPhraseSuggester
@@ -56,6 +62,8 @@ public class PhraseSuggester : SuggesterBase, IPhraseSuggester
56
62
public IPhraseSuggestHighlight Highlight { get ; set ; }
57
63
public IPhraseSuggestCollate Collate { get ; set ; }
58
64
public SmoothingModelContainer Smoothing { get ; set ; }
65
+ public int ? TokenLimit { get ; set ; }
66
+ public bool ? ForceUnigrams { get ; set ; }
59
67
}
60
68
61
69
public class PhraseSuggesterDescriptor < T > : SuggestDescriptorBase < PhraseSuggesterDescriptor < T > , IPhraseSuggester , T > , IPhraseSuggester
@@ -72,6 +80,8 @@ public class PhraseSuggesterDescriptor<T> : SuggestDescriptorBase<PhraseSuggeste
72
80
IPhraseSuggestHighlight IPhraseSuggester . Highlight { get ; set ; }
73
81
IPhraseSuggestCollate IPhraseSuggester . Collate { get ; set ; }
74
82
SmoothingModelContainer IPhraseSuggester . Smoothing { get ; set ; }
83
+ int ? IPhraseSuggester . TokenLimit { get ; set ; }
84
+ bool ? IPhraseSuggester . ForceUnigrams { get ; set ; }
75
85
76
86
public PhraseSuggesterDescriptor < T > Text ( string text ) => Assign ( a => a . Text = text ) ;
77
87
@@ -99,5 +109,9 @@ public PhraseSuggesterDescriptor<T> Collate(Func<PhraseSuggestCollateDescriptor<
99
109
100
110
public PhraseSuggesterDescriptor < T > Smoothing ( Func < SmoothingModelContainerDescriptor , SmoothingModelContainer > selector ) =>
101
111
Assign ( a => a . Smoothing = selector ? . Invoke ( new SmoothingModelContainerDescriptor ( ) ) ) ;
112
+
113
+ public PhraseSuggesterDescriptor < T > TokenLimit ( int ? tokenLimit ) => Assign ( a => a . TokenLimit = tokenLimit ) ;
114
+
115
+ public PhraseSuggesterDescriptor < T > ForceUnigrams ( bool ? forceUnigrams = true ) => Assign ( a => a . ForceUnigrams = forceUnigrams ) ;
102
116
}
103
117
}
0 commit comments