@@ -514,30 +514,30 @@ func (c *ModelConfig) GetModelConfigFile() string {
514514 return c .modelConfigFile
515515}
516516
517- type ModelConfigUsecases int
517+ type ModelConfigUsecase int
518518
519519const (
520- FLAG_ANY ModelConfigUsecases = 0b000000000000
521- FLAG_CHAT ModelConfigUsecases = 0b000000000001
522- FLAG_COMPLETION ModelConfigUsecases = 0b000000000010
523- FLAG_EDIT ModelConfigUsecases = 0b000000000100
524- FLAG_EMBEDDINGS ModelConfigUsecases = 0b000000001000
525- FLAG_RERANK ModelConfigUsecases = 0b000000010000
526- FLAG_IMAGE ModelConfigUsecases = 0b000000100000
527- FLAG_TRANSCRIPT ModelConfigUsecases = 0b000001000000
528- FLAG_TTS ModelConfigUsecases = 0b000010000000
529- FLAG_SOUND_GENERATION ModelConfigUsecases = 0b000100000000
530- FLAG_TOKENIZE ModelConfigUsecases = 0b001000000000
531- FLAG_VAD ModelConfigUsecases = 0b010000000000
532- FLAG_VIDEO ModelConfigUsecases = 0b100000000000
533- FLAG_DETECTION ModelConfigUsecases = 0b1000000000000
520+ FLAG_ANY ModelConfigUsecase = 0b000000000000
521+ FLAG_CHAT ModelConfigUsecase = 0b000000000001
522+ FLAG_COMPLETION ModelConfigUsecase = 0b000000000010
523+ FLAG_EDIT ModelConfigUsecase = 0b000000000100
524+ FLAG_EMBEDDINGS ModelConfigUsecase = 0b000000001000
525+ FLAG_RERANK ModelConfigUsecase = 0b000000010000
526+ FLAG_IMAGE ModelConfigUsecase = 0b000000100000
527+ FLAG_TRANSCRIPT ModelConfigUsecase = 0b000001000000
528+ FLAG_TTS ModelConfigUsecase = 0b000010000000
529+ FLAG_SOUND_GENERATION ModelConfigUsecase = 0b000100000000
530+ FLAG_TOKENIZE ModelConfigUsecase = 0b001000000000
531+ FLAG_VAD ModelConfigUsecase = 0b010000000000
532+ FLAG_VIDEO ModelConfigUsecase = 0b100000000000
533+ FLAG_DETECTION ModelConfigUsecase = 0b1000000000000
534534
535535 // Common Subsets
536- FLAG_LLM ModelConfigUsecases = FLAG_CHAT | FLAG_COMPLETION | FLAG_EDIT
536+ FLAG_LLM ModelConfigUsecase = FLAG_CHAT | FLAG_COMPLETION | FLAG_EDIT
537537)
538538
539- func GetAllModelConfigUsecases () map [string ]ModelConfigUsecases {
540- return map [string ]ModelConfigUsecases {
539+ func GetAllModelConfigUsecases () map [string ]ModelConfigUsecase {
540+ return map [string ]ModelConfigUsecase {
541541 // Note: FLAG_ANY is intentionally excluded from this map
542542 // because it's 0 and would always match in HasUsecases checks
543543 "FLAG_CHAT" : FLAG_CHAT ,
@@ -561,23 +561,25 @@ func stringToFlag(s string) string {
561561 return "FLAG_" + strings .ToUpper (s )
562562}
563563
564- func GetUsecasesFromYAML (input []string ) * ModelConfigUsecases {
564+ func GetUsecasesFromYAML (input []string ) * ModelConfigUsecase {
565565 if len (input ) == 0 {
566566 return nil
567567 }
568568 result := FLAG_ANY
569569 flags := GetAllModelConfigUsecases ()
570570 for _ , str := range input {
571- flag , exists := flags [stringToFlag (str )]
572- if exists {
573- result |= flag
571+ for _ , flag := range []string {stringToFlag (str ), str } {
572+ f , exists := flags [flag ]
573+ if exists {
574+ result |= f
575+ }
574576 }
575577 }
576578 return & result
577579}
578580
579581// HasUsecases examines a ModelConfig and determines which endpoints have a chance of success.
580- func (c * ModelConfig ) HasUsecases (u ModelConfigUsecases ) bool {
582+ func (c * ModelConfig ) HasUsecases (u ModelConfigUsecase ) bool {
581583 if (c .KnownUsecases != nil ) && ((u & * c .KnownUsecases ) == u ) {
582584 return true
583585 }
@@ -587,7 +589,7 @@ func (c *ModelConfig) HasUsecases(u ModelConfigUsecases) bool {
587589// GuessUsecases is a **heuristic based** function, as the backend in question may not be loaded yet, and the config may not record what it's useful at.
588590// In its current state, this function should ideally check for properties of the config like templates, rather than the direct backend name checks for the lower half.
589591// This avoids the maintenance burden of updating this list for each new backend - but unfortunately, that's the best option for some services currently.
590- func (c * ModelConfig ) GuessUsecases (u ModelConfigUsecases ) bool {
592+ func (c * ModelConfig ) GuessUsecases (u ModelConfigUsecase ) bool {
591593 if (u & FLAG_CHAT ) == FLAG_CHAT {
592594 if c .TemplateConfig .Chat == "" && c .TemplateConfig .ChatMessage == "" && ! c .TemplateConfig .UseTokenizerTemplate {
593595 return false
0 commit comments