A python implementation of OpenNMT
Project description
OpenNMT-py: Open-Source Neural Machine Translation
OpenNMT-py is the PyTorch version of the OpenNMT project, an open-source (MIT) neural machine translation (and beyond!) framework. It is designed to be research friendly to try out new ideas in translation, language modeling, summarization, and many other NLP tasks. Some companies have proven the code to be production ready.
We love contributions! Please look at issues marked with the contributions welcome tag.
Before raising an issue, make sure you read the requirements and the Full Documentation examples.
Unless there is a bug, please use the Forum or Gitter to ask questions.
For beginners:
There is a new step-by-step and explained tuto (Thanks to Yasmin Moslem): Tutorial
Please try to read and/or follow before raising newbies issues.
Otherwise you can just have a look at the Quickstart steps
If you used previous versions of OpenNMT-py, you can check the Changelog or the Breaking Changes
Tutorials:
- How to finetune NLLB-200 with your dataset: Tuto Finetune NLLB-200
- How to create a simple OpenNMT-py REST Server: Tuto REST
- How to create a simple Web Interface: Tuto Streamlit
- Replicate the WMT17 en-de experiment: WMT17 ENDE
Setup
OpenNMT-py requires:
- Python >= 3.8
- PyTorch >= 1.13 <2
Install OpenNMT-py
from pip
:
pip install OpenNMT-py
or from the sources:
git clone https://github.com/OpenNMT/OpenNMT-py.git
cd OpenNMT-py
pip install -e .
Note: if you encounter a MemoryError
during installation, try to use pip
with --no-cache-dir
.
(Optional) Some advanced features (e.g. working pretrained models or specific transforms) require extra packages, you can install them with:
pip install -r requirements.opt.txt
Features
-
Encoder-decoder models with multiple RNN cells (LSTM, GRU) and attention types (Luong, Bahdanau)
-
Mixed-precision training with APEX, optimized on Tensor Cores
-
Model export to CTranslate2, a fast and efficient inference engine
Documentation
Acknowledgements
OpenNMT-py is run as a collaborative open-source project. Project was incubated by Systran and Harvard NLP in 2016 in Lua and ported to Pytorch in 2017.
Current maintainers:
Ubiqus Team: François Hernandez and Team.
Vincent Nguyen (Seedfall)
Citation
If you are using OpenNMT-py for academic work, please cite the initial system demonstration paper published in ACL 2017:
@inproceedings{klein-etal-2017-opennmt,
title = "{O}pen{NMT}: Open-Source Toolkit for Neural Machine Translation",
author = "Klein, Guillaume and
Kim, Yoon and
Deng, Yuntian and
Senellart, Jean and
Rush, Alexander",
booktitle = "Proceedings of {ACL} 2017, System Demonstrations",
month = jul,
year = "2017",
address = "Vancouver, Canada",
publisher = "Association for Computational Linguistics",
url = "https://www.aclweb.org/anthology/P17-4012",
pages = "67--72",
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file OpenNMT-py-3.1.1.tar.gz
.
File metadata
- Download URL: OpenNMT-py-3.1.1.tar.gz
- Upload date:
- Size: 187.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2191d17df6872ebc0e4f5886a35eb22d49c92528bd6eb019d01b2c46247dcc71 |
|
MD5 | 6d5d30bb20a7c3b0e02f72dd643bdb41 |
|
BLAKE2b-256 | 915bdaa281e38e31800f12ab36188865e0001e0a13d860594324b1442db6936f |
File details
Details for the file OpenNMT_py-3.1.1-py3-none-any.whl
.
File metadata
- Download URL: OpenNMT_py-3.1.1-py3-none-any.whl
- Upload date:
- Size: 227.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6081249b0628d1aba003a9ed23334c8e0978325af6ac590723552f24ad760b1f |
|
MD5 | 99492a2b8bd51d2c7b5da20143778fb9 |
|
BLAKE2b-256 | 49db2dbdffcc5ddf0ddee2a7a7118242b6b01bb510f52239539663f305114e01 |