mai/engines/engine.go
yakumo.izuru b860f0610b Fix bugs, many other changes
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/mai/trunk@67 e410bdd4-646f-c54f-a7ce-fffcc4f439ae
2024-02-07 00:26:14 +00:00

32 lines
773 B
Go

package engines
import (
"os"
)
type TranslationResult struct {
SourceLanguage string `json:"source_language"`
Definitions interface{} `json:"definitions"`
Translations interface{} `json:"translations"`
TranslatedText string `json:"translated_text"`
}
type Engine interface {
DisplayName() string
SourceLanguages() (Language, error)
TargetLanguages() (Language, error)
Translate(text string, from, to string) (TranslationResult, error)
Tts(text, lang string) (string, error)
}
type Language map[string]string
var Engines = map[string]Engine{
"google": &GoogleTranslate{},
"reverso": &Reverso{},
"libretranslate": &LibreTranslate{
InstanceURL: os.Getenv("MAI_LIBRETRANSLATE_INSTANCE"),
APIKey: os.Getenv("MAI_LIBRETRANSLATE_API"),
},
}