mirror of
https://github.com/mudler/LocalAI.git
synced 2024-12-19 12:47:54 +00:00
ea330d452d
* models(gallery): add mistral-0.3 and command-r, update functions Add also disable_parallel_new_lines to disable newlines in the JSON output when forcing parallel tools. Some models (like mistral) might be very sensible to that when being used for function calling. Signed-off-by: Ettore Di Giacinto <mudler@localai.io> * models(gallery): add aya-23-8b Signed-off-by: Ettore Di Giacinto <mudler@localai.io> --------- Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
39 lines
791 B
Go
39 lines
791 B
Go
package functions
|
|
|
|
type GrammarOption struct {
|
|
PropOrder string
|
|
Suffix string
|
|
MaybeArray bool
|
|
DisableParallelNewLines bool
|
|
MaybeString bool
|
|
NoMixedFreeString bool
|
|
}
|
|
|
|
func (o *GrammarOption) Apply(options ...func(*GrammarOption)) {
|
|
for _, l := range options {
|
|
l(o)
|
|
}
|
|
}
|
|
|
|
var EnableMaybeArray = func(o *GrammarOption) {
|
|
o.MaybeArray = true
|
|
}
|
|
|
|
var DisableParallelNewLines = func(o *GrammarOption) {
|
|
o.DisableParallelNewLines = true
|
|
}
|
|
|
|
var EnableMaybeString = func(o *GrammarOption) {
|
|
o.MaybeString = true
|
|
}
|
|
|
|
var NoMixedFreeString func(*GrammarOption) = func(o *GrammarOption) {
|
|
o.NoMixedFreeString = true
|
|
}
|
|
|
|
func SetPrefix(suffix string) func(*GrammarOption) {
|
|
return func(o *GrammarOption) {
|
|
o.Suffix = suffix
|
|
}
|
|
}
|