78 lines
2.6 KiB
Markdown
78 lines
2.6 KiB
Markdown
# Lokaler LibreTranslate-Server
|
||
|
||
LibreTranslate stellt eine HTTP-API auf dem eigenen Rechner bereit. Es werden keine
|
||
Texte an einen externen Übersetzungsdienst gesendet. Die Standardadresse ist
|
||
`http://localhost:5000`.
|
||
|
||
## Installation unter Linux
|
||
|
||
Voraussetzung: Python 3.8 oder neuer. In einem Terminal:
|
||
|
||
```bash
|
||
python3 -m venv ~/.local/share/libretranslate-venv
|
||
~/.local/share/libretranslate-venv/bin/pip install --upgrade pip libretranslate
|
||
~/.local/share/libretranslate-venv/bin/libretranslate
|
||
```
|
||
|
||
Beim ersten Start werden Sprachmodelle geladen. Für weniger Speicherbedarf kann man
|
||
nur benötigte Sprachen laden, beispielsweise Englisch und Deutsch:
|
||
|
||
```bash
|
||
~/.local/share/libretranslate-venv/bin/libretranslate --load-only en,de
|
||
```
|
||
|
||
Der Server bleibt im Terminal aktiv. Anschließend in Renpy Translation Helper im
|
||
Auswahlfeld **Provider** `LibreTranslate (local)` wählen. Die voreingestellte lokale
|
||
URL `http://localhost:5000` übernehmen oder anpassen. Die verfügbaren Sprachpaare
|
||
werden automatisch geladen.
|
||
|
||
## Nur Englisch und Deutsch nachinstallieren
|
||
|
||
Wurde ein erster Start ohne `--load-only` abgebrochen, können bereits einige
|
||
unpassende Modelle installiert sein. Den Server mit `Strg+C` beenden und die zwei
|
||
benötigten Richtungen explizit installieren:
|
||
|
||
```bash
|
||
~/.local/share/libretranslate-venv/bin/argospm update
|
||
~/.local/share/libretranslate-venv/bin/argospm install translate-en_de
|
||
~/.local/share/libretranslate-venv/bin/argospm install translate-de_en
|
||
~/.local/share/libretranslate-venv/bin/libretranslate --load-only en,de
|
||
```
|
||
|
||
Mit `curl http://127.0.0.1:5000/languages` prüfen, ob sowohl `en` mit Ziel `de`
|
||
als auch `de` mit Ziel `en` aufgelistet wird. Erst dann kann die App diese
|
||
Sprachrichtung anbieten.
|
||
|
||
## Nutzung durch andere Anwendungen
|
||
|
||
Sprachen abfragen:
|
||
|
||
```bash
|
||
curl http://localhost:5000/languages
|
||
```
|
||
|
||
Einen Text übersetzen:
|
||
|
||
```bash
|
||
curl -X POST http://localhost:5000/translate \
|
||
-H 'Content-Type: application/json' \
|
||
-d '{"q":"Hello world","source":"en","target":"de","format":"text"}'
|
||
```
|
||
|
||
Für mehrere Texte kann `q` ein Array sein:
|
||
|
||
```bash
|
||
curl -X POST http://localhost:5000/translate \
|
||
-H 'Content-Type: application/json' \
|
||
-d '{"q":["Hello","Good night"],"source":"en","target":"de","format":"text"}'
|
||
```
|
||
|
||
Die Antwort enthält `translatedText` – bei mehreren Eingaben ebenfalls als Array.
|
||
|
||
## Hinweis zu AMD-Grafikkarten
|
||
|
||
LibreTranslate/Argos Translate verwendet regulär die CPU. Die offiziell dokumentierte
|
||
GPU-Beschleunigung setzt CUDA voraus und ist damit für Nvidia vorgesehen. Eine
|
||
AMD-GPU wird in diesem Standard-Setup nicht genutzt; für normale Ren'Py-Dialoge ist
|
||
der CPU-Betrieb dennoch brauchbar.
|