Tutorial: motors de traducció automàtica neuronal Aina‐MTUOC - mtuoc/mtuoc.github.io GitHub Wiki

Introducció

El projecte Aina, liderat pel Barcelona Super Computing Center entre moltes altres tecnologies del llenguatge relacionades amb el català, entrena i allibera motors de traducció automàtica neuronal per al català des de i cap a diverses llengües. Aquests motors també estan disponibles a HuggingFace.

Per augmentar la usabilitat d'aquests motors, el BSC i la UOC col·laboren per incorporar aquests motors en el servidor MTUOC. Això possibilita la integració dels motors Aina en entorns productius de traducció, ja que el servidor MTUOC pot treballar amb diversos protocols i fa que es puguin fer servir en diferents eines de traducció assistida.

A més, la col·laboració BSC-UOC ha permès desenvolupar uns algorismes que permeten als motors Aina recuperar les etiquetes XML presents als texts originals de manera molt precisa. Això permet traduir formats complexos amb moltes etiquetes, com per exemple arxius docx o odt, entre d'altres.

Els motors MTUOC-Aina funcionen en diversos sistemes operatius (Windows, Linux i MacOs) i es distribueixen com a codi lliure i com a binaris per aquests sistemes operatius. Els motors poden funcionar tant en grans servidos, amb o sense unitats GPU, com en ordinadors de sobretaula i portàtils d'ús domèstic. Els programes i models es distribueixen sota llicència lliure GNU GPL.

Obtenció dels motors

Els motors estan disponibles en els següents enllaços: (si no funciona l'enllaç directament, copia l'enllaç i enganxa'l al teu navegador).

Posada en marxa dels motors

Els motors es distribueixen en codi Pyhton i en executables per a Windows, Linux i Mac.

Quan es posa en marxa el motor, a més dels models de traducció neuronal el sistema també carrega els models d'alineació. La càrrega dels models d'alineació es una mica lenta i pot trigar alguns segons. Fins que no es carreguen els models d'alineació, el motor no podrà retornar les traduccions, cosa que fa que les primeres traduccions un cop posat en marxa el motor pugui demorar-se una mica.

Posada en marxa de l'executable de Windows

L'executable es pot posar en marxa fent doble clic en el programa MTUOC-server.exe. S'obrirà una pantalla de símbolo de sistema que mostrarà la informació d'IP i de port.

També és possible posar en marxa els motors des de la pantalla de Símbolo de sistema (CMD) escrivint, un cop situats al directori corresponent:

MTUOC-server.exe

Posada en marxa del binari de Linux

El binari de Linux es pot posar en marxa des de terminal, anant al directori corresponent i escrivint:

./MTUOC-server

Si l'arxiu no té permisos d'execució, caldrà donar-los escrivint:

chmod +x MTUOC-server

Posada en marxa del binari de MacOS

TO DO

Posada en marxa a partir del codi Python

Els programes estan escrits en Python versió 3 i es pot executar si disposem de l'intèrpret de Python. Abans d'executar el motor caldrà instal·lar els prerequisits, que estan indicats a l'arxiu requirements_Aina.txt, fent:

pip3 install -r requirements_Aina.txt

(la instrucció pot variar depenent de la vostra instal·lació de Python, sistema operatiu i si feu servir o no entorn virtual.)

Un cop instal·lats els prerequisits es pot posar en marxa el motor escrivint:

python3 MTUOC-server.py

Configuració del motor i protocols disponibles

Per configurar el motor cal editar amb qualsevol editor de textos l'arxiu config-server.py.

El port que fa servir el motor es pot configurar canviant-lo en el camp port i el protocol en el camp type:

MTUOCServer:
  port: 8000
  type: MTUOC

Els protocols disponibles són: MTUOC, Moses, ModernMT, OpenNMT, NMTWizard

Protocol MTUOC

És el protocol propi del projecte MTUOC. Fent servir aquest protocol es pot traduir fent servir els següents programes:

Protocol ModernMT

Amb aquest protocol podem traduir amb tikal i Rainbow de Okapi Tools: https://okapiframework.org/