Arquivos
Uma instância pode traduzir documentos inteiros: texto puro, documentos de escritório, legendas, e-books e mais. Os
formatos aceitos estão em settings().supportedFilesFormat (ex.: .txt, .docx, .pptx, .odt, .epub, .srt,
.pdf), e settings().filesTranslation diz se o recurso está habilitado.
Envio e download
import { readFile, writeFile } from "node:fs/promises";
const data = await readFile("relatorio.docx");
const { translatedFileUrl } = await lt.translateFile({
file: new Blob([data]),
filename: "relatorio.docx",
source: "pt",
target: "en",
});
const translated = await lt.downloadFile(translatedFileUrl);
await writeFile(translated.filename, translated.data);
fileé umBlobou umFile. UmFiletraz o próprio nome; umBlobprecisa defilename, porque a instância escolhe o formato pela extensão.sourcetemautocomo padrão.translateFileresponde a URL de onde a instância serve o resultado.downloadFilea busca como{ data: Uint8Array, filename, contentType }, comfilenamevindo doContent-Dispositiondo servidor.
Uma extensão não suportada ou o recurso desabilitado respondem 400 (LibreTranslateApiError).
A partir de um agente de IA, libretranslate_translate_file faz tudo isso a partir de um caminho local e salva o
resultado ao lado (veja Ferramentas).