Files

40 lines
1.2 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package dialogue
import (
"strings"
"ai-operator/internal/dialogue/language"
"ai-operator/internal/dialogue/state"
)
func inferLanguageFromText(text string) state.Language {
n := language.Normalize(text)
if n == "" {
return state.LanguageRU
}
kkSignals := []string{"қ", "ә", "ө", "ү", "ұ", "ң", "ғ", "і", "һ", "сәлем", "қалай", "көмек", "құны", "мекенжай", "байланыс", "облыс", "қала", "қазақша"}
for _, sig := range kkSignals {
if strings.Contains(n, sig) {
return state.LanguageKK
}
}
return state.LanguageRU
}
func isRegionRequiredQuery(query string) bool {
n := language.Normalize(query)
if n == "" {
return false
}
phrases := []string{
"филиал", "адрес", "контакт", "контакты", "где находится", "куда обратиться", "город", "область", "регион",
"мекенжай", "байланыс", "қайда жүгіну", "қайда орналасқан", "қала", "облыс", "аймақ", "өңір",
}
for _, p := range phrases {
if strings.Contains(n, language.Normalize(p)) {
return true
}
}
return false
}