An unofficial Java library for translating text using Azure AI Cognitive Services.
- Text Translation: Translate text from one language (or detect) to another or to a list of languages.
- Language Detection: Detect the language of a given text.
- Profanity Handling: Options for handling profanity in translations.
- Text Type Support: We support both plain text and HTML text translation.
- And more.
The following example translates a simple Hello World to Portuguese, Spanish and French.
public class ExampleTranslator {
public static void main(String[] args) {
// Insert your Azure key and region here
String azureKey = "<Your Azure Subscription Key>";
String azureRegion = "<Your Azure Subscription Region>";
AzureApi api = new AzureApiBuilder().setKey(azureKey).region(azureRegion).build();
// Set up translation parameters
List < String > targetLanguages = List.of("pt", "es", "fr");
TranslateParams params =
new TranslateParams("Hello World!", targetLanguages).setSourceLanguage("en");
// Translate the text
Optional < TranslationResponse > translationResult = api.translate(params).join();
// Print the translations
translationResult.ifPresent(
response ->
response.getFirstResult().getTranslations().forEach(ExampleTranslator::logLanguage));
}
public static void logLanguage(Translation translation) {
System.out.println(translation.getLanguageCode() + ": " + translation.getText());
}
}
Expected Output
pt: Olá, Mundo!
es: ¡Hola mundo!
fr: Salut tout le monde!
The recommended way to get AT4J is to use a build manager, like Gradle or Maven.
Gradle
implementation group: 'io.github.brenoepics', name: 'at4j', version: '{_ currentVersion _}'
Maven
<dependency>
<groupId>io.github.brenoepics</groupId>
<artifactId>at4j</artifactId>
<version>{_ currentVersion _}</version>
</dependency>
Sbt
libraryDependencies += "io.github.brenoepics" % "at4j" % "{_ currentVersion _}"
Q: How do I access Azure Translator Keys for my project?
A: You can access your Azure Translator Keys through your Azure portal. Remember to keep your keys secure and refrain from sharing them publicly. If you suspect a key has been compromised, it's crucial to regenerate it promptly. For detailed instructions on generating your own keys, refer to this guide. Additionally, you can explore the Azure Free Tier for more information.
- Microsoft Azure: Supporting our project with a generous grant of $10,000+ in Azure credits, enabling us to use virtual machines, document translation and other essential cloud resources for our development needs.
- We extend our sincere thanks to all contributors for their invaluable contributions.
Contributions of any kind are welcome. You can start contributing to this library by creating issues, submitting pull requests or giving a star to the project.
AT4J is distributed under the Apache license version 2.0.