Skip to main content

Argonaut

PyPI Python versions License: GPL-3.0 Release

Argonaut translates documents — .txt .docx .odt .odp .pptx .epub .html .srt .pdf — without sending them anywhere. Translation runs entirely on your own machine, so it works with no connection and your documents never leave the computer.

This page is the user manual. If you want to build or contribute to Argonaut, see CONTRIBUTING.md.

Installing

pip install argonaut-translator

That provides the argonaut command. You need Python 3.10 or newer.

Before translating anything you need at least one language package. Open Settings → Manage language packages…, pick the pairs you want and press "Install selected". The dialog lists every package available with its version and download size, can filter by what you already have, and flags the ones with a newer version so you can update them in place.

Translating documents

  1. Choose the languages. The ⇄ button swaps them. By default the source is "Detect language": each document's language is worked out on its own, so you can mix files in different languages in the same batch.
  2. Add the documents. Drag files or whole folders onto the window — folders are searched all the way down — or use the "Add…" button, or File → Add files… and File → Add folder…. While the list is empty it tells you so, and a drag held over the window outlines where the files will land. Each file shows its size, and the line below the list shows the total for the batch.
  3. Choose where the translations go, with "Output…", or leave it and each translation is saved next to its original. Tick "Skip files already translated" to leave existing translations alone, which makes an interrupted batch safe to run again.
  4. Press "Translate". Each file is saved with the target language added to its name, like report_es.docx.
  5. You can press "Cancel" at any point, even in the middle of a file. Everything already translated is kept.

The Translate button stays greyed out until there is something to do, and the line above it says what is missing — no documents yet, the same language on both sides, or no model for the pair you picked.

A note on PDFs

PDFs are translated paragraph by paragraph with the layout preserved, so a long one takes a while. The bar shows the real percentage of paragraphs done and an estimate of the time left, and the line beside it names what is happening and which page it is on, so a long book shows progress instead of an apparently idle bar. Text that runs sideways, like vertical watermarks, is left alone, and links from the original are not carried over.

The two engines

Chosen from Settings → Engine.

Argos Translate (the default) uses small models, one per language pair, that you install from the application. A pair with no model of its own is still translated, by going through English: Albanian to Spanish is done as Albanian → English → Spanish. That works, but the text is translated twice and the second pass cannot recover what the first one lost, so the window tells you which language it is going through whenever that happens.

NLLB-200 is a single larger model that translates directly between any two of its 32 languages, with noticeably better results and no detour through English. It is about 630 MB, downloaded the first time you choose it, and can be deleted again from Settings → Delete the NLLB-200 model…. Its weights are licensed for non-commercial use.

Settings

Everything here is remembered between sessions and applies as soon as you change it.

Preferences

  • Interface language — see below.
  • Theme — System (your desktop's own look, the default), Light or Dark.
  • Download speed units — network units (16.8 Mbps) or the ones a download manager shows (2.0 MB/s).

How translation runs

  • Engine — Argos Translate or NLLB-200 (see above).
  • CPU threads — up to the number of cores you have, and using all of them by default. Holding threads back only makes you wait longer.
  • Translation qualityBest quality, or Fast, which is roughly 1.7× quicker for a small loss in accuracy. The two never share cached translations, since what they produce differs.

Translation cache

A paragraph translated once is reused for the rest of the batch and, unless you turn it off, in later sessions too — so the same paragraph repeated across several files reaches the engine only once. The window reports how much each file and the batch as a whole took from the cache.

From Settings → Cache you can switch it off, choose how long unused entries are kept (never, 30 days, 90 days — the default — or a year), see how big it has grown, and clear it. Entries are tied to the engine, the model version and the language pair, so updating a package stops it serving the old model's work.

Translation history

Every file a batch finishes is recorded: what was translated and from which folder, into which language, where the result was written, with which engine, how long it took and how much of it came from the cache. Settings → History → View history… lists them newest first in sortable columns. Double-clicking a row, or the "Open translation" button, opens the translated file; rows whose file has since been moved or deleted stay in the list, greyed out, because the history is a record of what happened rather than a file browser.

The same submenu lets you stop recording, choose how long entries are kept, see the size and clear it. Viewing and clearing keep working while recording is off, and only successful translations are recorded: a file that failed is not history, it is an error.

Interface language

Argonaut starts in the language your desktop is set to, falling back to English when that is one it does not speak. In Settings → Preferences → Interface language you can switch to Spanish, French, German, Italian, Portuguese, Russian, Chinese, Japanese, Dutch, Polish or Turkish. The change applies at once, and that is what gets remembered — until you pick one, the desktop keeps deciding, so changing your system language changes Argonaut's too.

It says interface because it is the language of the buttons and menus, not of the documents. The languages you translate between are the two boxes above the file list.

Those are named in your interface language as well: French reads "Francés" in Spanish and "フランス語" in Japanese, in the language boxes, in the package dialog and in the messages — each list in alphabetical order by the name you actually see.

What is remembered

When you close the window, Argonaut stores the interface language, the source and target languages, the output folder and the window's size and position, and restores them next time. If a saved language is no longer installed, or the folder is gone, it falls back to the default.

Help

The Help menu opens this manual and Report a bug…, which goes straight to the issue tracker. Both open in your browser: translation is offline, but documentation and bug reports are the two things worth having current.

"About Argonaut…" has three tabs: About (version, supported formats and links), Details (a plain-text report with the versions of everything, the active engine and where the cache lives — copyable with one button, ready to paste into a bug report) and Credits and licenses.

Author and license

© 2026 Sergio Rodríguez.

This project is distributed under the GNU GPL v3 license, in line with the license of PyQt5, which the interface depends on.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

argonaut_translator-1.8.0.tar.gz (152.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

argonaut_translator-1.8.0-py3-none-any.whl (123.3 kB view details)

Uploaded Python 3

File details

Details for the file argonaut_translator-1.8.0.tar.gz.

File metadata

  • Download URL: argonaut_translator-1.8.0.tar.gz
  • Upload date:
  • Size: 152.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for argonaut_translator-1.8.0.tar.gz
Algorithm Hash digest
SHA256 5fbcd9c26dee93c597ba50060f5cf28d0ee8e89fc63f50f4f5b46cab20938343
MD5 54f38dde1072142f627d7f52be5552a3
BLAKE2b-256 059f59df92a39a6e26b4640b2ce6e5a033ad3a4c2169606711e216331b01899c

See more details on using hashes here.

Provenance

The following attestation bundles were made for argonaut_translator-1.8.0.tar.gz:

Publisher: publish.yml on Nibblex/Argonaut

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file argonaut_translator-1.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for argonaut_translator-1.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc48af93d79e18b25da0291264d2fd94205305e0cad478870ab99579d9ded8c3
MD5 70f6186bcb87eadc35e9eebae589e12b
BLAKE2b-256 d2a60a15c59a0b0ec9478434113f26c7e14bec4549fafb37271be3b13704f296

See more details on using hashes here.

Provenance

The following attestation bundles were made for argonaut_translator-1.8.0-py3-none-any.whl:

Publisher: publish.yml on Nibblex/Argonaut

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.8.0 This release

2 files

1.7.2

2 files

1.7.1

2 files

1.7.0

2 files

1.6.0

2 files

1.5.0

2 files

1.4.0

2 files

1.3.0

2 files

1.2.0

2 files

1.1.0

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page