Translate a Document¶
Translate a multi-paragraph document using batch processing:
from fasiri import Fasiri
client = Fasiri(api_key="fsri_...")
def translate_document(text: str, target: str) -> str:
paragraphs = [p.strip() for p in text.split("\n\n") if p.strip()]
items = [
{"id": str(i), "text": p, "target": target}
for i, p in enumerate(paragraphs)
]
batch = client.translate_batch(items)
translated = {int(r.id): r.translated_text for r in batch.successful()}
return "\n\n".join(
translated.get(i, paragraphs[i])
for i in range(len(paragraphs))
)
with open("document.txt") as f:
text = f.read()
result = translate_document(text, target="sw")
print(result)