This commit is contained in:
@@ -381,11 +381,11 @@ func rankSearchResults(query string, results []services.SearchResult) []services
|
||||
}
|
||||
switch result.Source {
|
||||
case "Google Video":
|
||||
score += 2
|
||||
score += 1
|
||||
case "Envato":
|
||||
score += 5
|
||||
score += 7
|
||||
case "Artgrid":
|
||||
score += 5
|
||||
score += 7
|
||||
}
|
||||
scored = append(scored, scoredResult{item: result, score: score})
|
||||
}
|
||||
|
||||
@@ -212,6 +212,9 @@ func (g *GeminiService) TranslateQuery(query string) string {
|
||||
if translated, err := g.translateViaGoogle(query); err == nil && translated != "" {
|
||||
return translated
|
||||
}
|
||||
if translated := translateKoreanMediaTerms(query); translated != "" && !strings.EqualFold(translated, strings.TrimSpace(query)) {
|
||||
return translated
|
||||
}
|
||||
return strings.TrimSpace(query)
|
||||
}
|
||||
|
||||
@@ -519,6 +522,40 @@ func looksMostlyASCII(text string) bool {
|
||||
return ascii >= len(runes)*8/10
|
||||
}
|
||||
|
||||
func translateKoreanMediaTerms(query string) string {
|
||||
replacements := map[string]string{
|
||||
"숲속": "forest",
|
||||
"숲": "forest",
|
||||
"다정한": "affectionate",
|
||||
"커플": "couple",
|
||||
"도시": "city",
|
||||
"야경": "night city",
|
||||
"거리": "street",
|
||||
"골목": "alley",
|
||||
"바다": "ocean",
|
||||
"해변": "beach",
|
||||
"노을": "sunset",
|
||||
"자연": "nature",
|
||||
"비": "rain",
|
||||
"눈": "snow",
|
||||
"드론": "drone",
|
||||
"항공샷": "aerial shot",
|
||||
"사람들": "people",
|
||||
"인파": "crowd",
|
||||
"행복한": "happy",
|
||||
"연인": "lovers",
|
||||
"공원": "park",
|
||||
"산": "mountain",
|
||||
}
|
||||
|
||||
translated := strings.TrimSpace(query)
|
||||
for korean, english := range replacements {
|
||||
translated = strings.ReplaceAll(translated, korean, english)
|
||||
}
|
||||
translated = strings.Join(strings.Fields(translated), " ")
|
||||
return strings.TrimSpace(translated)
|
||||
}
|
||||
|
||||
func (g *GeminiService) translateViaGoogle(query string) (string, error) {
|
||||
endpoint := "https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=en&dt=t&q=" + neturl.QueryEscape(query)
|
||||
resp, err := g.Client.Get(endpoint)
|
||||
|
||||
Reference in New Issue
Block a user