Simpli Translate
LLM-powered multi-language translation and localization for customer support.
Translate breaks language barriers in customer support. Detect the language of incoming messages, translate between 8+ languages, and culturally adapt responses — all powered by LLMs for context-aware, natural translations.
Simpli Translate provides translation, language detection, and cultural localization for support conversations using LLM-powered analysis.
Configuration
| Variable | Default | Description |
|---|---|---|
APP_PORT | 8009 | Server port |
LITELLM_MODEL | openai/gpt-5-mini | LLM model for translation |
SUPPORTED_LANGUAGES | en,es,fr,de,pt,ja,ko,zh | Comma-separated language codes |
DEFAULT_TARGET_LANGUAGE | en | Default translation target |
CORS_ORIGINS | * | Allowed CORS origins (comma-separated) |
Start the server
simpli-translate serveAPI endpoints
All endpoints are under the /api/v1 prefix.
POST /api/v1/translate
Translate text between languages.
Request:
{
"text": "Your refund has been processed and should appear in 3-5 business days.",
"source_language": "en",
"target_language": "es"
}Response:
{
"translation_id": "t-abc123",
"translated_text": "Su reembolso ha sido procesado y debería aparecer en 3-5 días hábiles.",
"source_language": "en",
"target_language": "es",
"confidence": 0.95
}POST /api/v1/detect
Detect the language of input text.
Request:
{
"text": "Ich kann mich nicht in mein Konto einloggen"
}Response:
{
"language": "de",
"confidence": 0.97,
"alternatives": [{"nl": 0.02}]
}POST /api/v1/localize
Culturally adapt a response for a target audience.
{
"text": "Your refund will arrive in 3-5 business days.",
"target_language": "ja",
"target_region": "JP",
"formality": "formal"
}GET /api/v1/languages
List all supported language codes.
GET /health
Health check.
Integration example
import httpx
client = httpx.Client(base_url="http://localhost:8009")
# Detect language
detected = client.post("/api/v1/detect", json={
"text": "No puedo acceder a mi cuenta",
}).json()
print(detected["language"]) # "es"
# Translate to English for agent
translated = client.post("/api/v1/translate", json={
"text": "No puedo acceder a mi cuenta",
"target_language": "en",
}).json()
print(translated["translated_text"])
# "I can't access my account"
# Translate agent's reply back to customer's language
reply = client.post("/api/v1/translate", json={
"text": "I've reset your password. Please try logging in again.",
"source_language": "en",
"target_language": "es",
}).json()
print(reply["translated_text"])Next steps
- The Ticket Lifecycle — See how Translate fits into multilingual workflows
- Integration Overview — Connect Translate to your helpdesk
- Model Selection — Choose the right model for translation quality